Fix filenotify.el issue for kqueue
[emacs.git] / ChangeLog.2
bloba9e1dd2a11773a4d16cf5125e69cd4519289953b
1 2017-02-18  Noam Postavsky  <npostavs@gmail.com>
3         * lisp/woman.el (woman): Fix docstring prefix arg description.
5 2017-02-18  Eli Zaretskii  <eliz@gnu.org>
7         Mention "editor" in Emacs man page header
9         * doc/man/emacs.1.in: Mention "editor" in the header line.
10         (Bug#25771, Bug#25779)
12 2017-02-18  Eli Zaretskii  <eliz@gnu.org>
14         Document problems with nerd-fonts
16         * etc/PROBLEMS (fonts): Describe the potential problems with
17         nerd-fonts that cause slow display.  (Bug#25697)
19 2017-02-13  Stefan Monnier  <monnier@iro.umontreal.ca>
21         * doc/lispref/modes.texi (Derived Modes): Make example more idiomatic
23 2017-02-12  Eli Zaretskii  <eliz@gnu.org>
25         Clarify what is the "cursor"
27         * doc/lispref/windows.texi (Window Point): Clarify the notion of
28         "cursor".
30 2017-02-10  Eli Zaretskii  <eliz@gnu.org>
32         Improve commentary in lisp.h
34         * src/lisp.h: Explain in the comment why enlarging a Lisp_Misc
35         object is discouraged.
37 2017-02-08  Noam Postavsky  <npostavs@gmail.com>
39         Disable native completion for ipython (Bug#25067)
41         * lisp/progmodes/python.el:
42         (python-shell-completion-native-disabled-interpreters): Add "ipython".
44 2017-02-07  Eli Zaretskii  <eliz@gnu.org>
46         Fix a typo in ada-mode manual
48         * doc/misc/ada-mode.texi (Project file variables): Add a missing
49         right bracket.  Reported by Jean-Christophe Helary
50         <jean.christophe.helary@gmail.com>.
52 2017-02-05  Eli Zaretskii  <eliz@gnu.org>
54         Clarify documentation of 'bufferpos-to-filepos' and 'filepos-to-bufferpos'
56         * doc/lispref/nonascii.texi (Text Representations): Clarify that
57         'exact' value of QUALITY argument to 'bufferpos-to-filepos' and
58         'filepos-to-bufferpos' can lead to expensive and slow processing.
60         * lisp/international/mule-util.el (filepos-to-bufferpos)
61         (bufferpos-to-filepos): Doc fix.  (Bug#25626)
63 2017-02-03  Nicolas Petton  <nicolas@petton.fr>
65         Bump Emacs version to 25.2 RC1
67         * README:
68         * configure.ac:
69         * msdos/sed2v2.inp:
70         * nt/README.W32: Bump Emacs version.
71         * lisp/ldefs-boot.el: Update.
73 2017-02-03  Nicolas Petton  <nicolas@petton.fr>
75         * admin/make-tarball.txt: Add documentation regarding the release banner.
77 2017-02-03  Tino Calancha  <tino.calancha@gmail.com>
79         * CONTRIBUTE (Documenting your changes): Index new vars/commands in manual.
81 2017-01-31  Eli Zaretskii  <eliz@gnu.org>
83         Index byte-compile-debug
85         * doc/lispref/compile.texi (Compilation Functions): Index
86         byte-compile-debug.
88 2017-01-31  Philipp Stephani  <phst@google.com>
90         Document `byte-compile-debug' in the ELisp manual
92         * doc/lispref/compile.texi: Document variable `byte-compile-debug'.
94 2017-01-31  Philipp Stephani  <phst@google.com>
96         Document variable `byte-compile-debug'
98         * lisp/emacs-lisp/bytecomp.el (byte-compile-debug): Document variable.
100 2017-01-31  Noam Postavsky  <npostavs@gmail.com>
102         Fix call to debugger on assertion failure
104         * lisp/emacs-lisp/cl-preloaded.el (cl--assertion-failed): The first
105         argument must be `error', and the second is a list of arguments for
106         `signal'.
108 2017-01-29  Noam Postavsky  <npostavs@gmail.com>
110         Call modification hooks in org-src fontify buffers
112         * lisp/org/org-src.el (org-src-font-lock-fontify-block): Let-bind
113         `inhibit-modification-hooks' to nil, since this function can be called
114         from jit-lock-function which binds that variable to t (Bug#25132).
116 2017-01-28  Eli Zaretskii  <eliz@gnu.org>
118         Improve documentation of 'format' conversions
120         * src/editfns.c (Fformat): More accurate description of %g and
121         effects of the various flags on it.  More accurate description of
122         integer conversions.
124         * doc/lispref/strings.texi (Formatting Strings): More accurate
125         description of %g and effects of the various flags on it.  More
126         accurate description of integer conversions.  (Bug#25557)
128 2017-01-27  Vladimir Panteleev  <git@thecybershadow.net>  (tiny change)
130         Remove stale functions from ert manual
132         * doc/misc/ert.texi (Useful Techniques when Writing Tests):
133         Replace ert--mismatch references with its cl-lib replacement,
134         cl-mismatch.
136 2017-01-27  Eli Zaretskii  <eliz@gnu.org>
138         Fix a typo in Eshell manual
140         * doc/misc/eshell.texi (History): Fix a typo.  Reported by Mak
141         Kolybabi <mak@kolybabi.com>.
143 2017-01-20  Eli Zaretskii  <eliz@gnu.org>
145         Improve documentation of hooks related to saving buffers
147         * lisp/files.el (write-file-functions, write-contents-functions)
148         (before-save-hook, after-save-hook): Note that these are only used
149         by save-buffer.
151         * doc/lispref/backups.texi (Auto-Saving):
152         * doc/lispref/files.texi (Saving Buffers): Mention that
153         save-related hooks are not run by auto-saving.  (Bug#25460)
155 2017-01-20  Eli Zaretskii  <eliz@gnu.org>
157         Improve documentation of auto-save-visited-file-name
159         * doc/emacs/files.texi (Auto Save Files): Mention subtle
160         differences between saving the buffer and auto-saving with
161         auto-save-visited-file-name set non-nil.  (Bug#25478)
163 2017-01-18  Tom Tromey  <tom@tromey.com>
165         fix typo in mailcap-mime-extensions
167         * lisp/gnus/mailcap.el (mailcap-mime-extensions): Use "text/x-patch",
168         not "test/x-patch".  (Bug#25472)
170 2017-01-18  Lele Gaifax  <lele@metapensiero.it>  (tiny change)
172         Fix typos in flymake.el
174         * lisp/progmodes/flymake.el (flymake-check-patch-master-file-buffer):
175         Spelling fixes in the doc string.
177 2017-01-17  Glenn Morris  <rgm@gnu.org>
179         More NEWS checking for admin.el's set-version
181         * admin/admin.el (set-version): Warn if temporary NEWS markup
182         still present in release candidates.
184 2017-01-17  Michael Albinus  <michael.albinus@gmx.de>
186         Fix auto-save-file-name problem in Tramp on MS Windows. Do not merge
188         * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
189         Fix a problem when running on MS Windows.
191 2017-01-16  Ian Dunn  <dunni@gnu.org>  (tiny change)
193         * lisp/net/eww.el (eww-tag-meta): Handle single quoted URLs (Bug#25445).
195 2017-01-14  Stefan Monnier  <monnier@iro.umontreal.ca>
197         * lisp/progmodes/sql.el (sql-product-alist): Doc tweak
199         `:sqli-comint-func' does not have to be a symbol.
201 2017-01-14  Eli Zaretskii  <eliz@gnu.org>
203         * lisp/progmodes/sql.el (sql-product-alist): Doc fix.  (Bug#25440)
205 2017-01-13  Eli Zaretskii  <eliz@gnu.org>
207         Improve documentation of dabbrevs
209         * doc/emacs/abbrevs.texi (Dynamic Abbrevs): Add a cross reference
210         to "Dabbrev Customization".
211         (Dabbrev Customization): More details about the default value of
212         dabbrev-abbrev-char-regexp and use cases when it might not be good
213         enough.  (Bug#25432)
215 2017-01-12  Noam Postavsky  <npostavs@gmail.com>
217         Clarify that easy-menu-add is a nop (Bug#25382)
219         * lisp/emacs-lisp/easymenu.el (easy-menu-add): Make it into an alias of
220         `ignore', like `easy-menu-remove'.
222 2017-01-12  Glenn Morris  <rgm@gnu.org>
224         * lisp/textmodes/rst.el (rst-package-emacs-version-alist): Fix entry.
226 2017-01-11  Eli Zaretskii  <eliz@gnu.org>
228         Revert "Add DNS keywords and remove duplications"
230         This reverts commit 1cb9aa5b14867983d0013a61709b4d0af18364ff.
232 2017-01-11  Alexander Kuleshov  <kuleshovmail@gmail.com>
234         Add DNS keywords and remove duplications
236         * lisp/textmodes/dns-mode.el (dns-mode-types): Add two TLSA and
237         NSEC" DNS related keywords and remove duplication of "NSAP".
239 2017-01-10  Eli Zaretskii  <eliz@gnu.org>
241         Improve documentation of coding-systems
243         * doc/lispref/nonascii.texi (Coding System Basics): Mention
244         'prefer-utf-8'.  Index it and 'undecided'.
245         (Encoding and I/O): Fix a typo.
246         (User-Chosen Coding Systems): Improve the documentation of
247         ACCEPT-DEFAULT-P argument to select-safe-coding-system.  Document
248         select-safe-coding-system-function.
249         (Specifying Coding Systems): Document coding-system-require-warning.
251 2017-01-09  Eli Zaretskii  <eliz@gnu.org>
253         Improve definition of 'variable-pitch' face on MS-Windows
255         * lisp/faces.el (variable-pitch): Don't specify too many
256         attributes of the font, otherwise faces that request different
257         weight or slant or size will not get them.
259 2017-01-09  Eli Zaretskii  <eliz@gnu.org>
261         Fix an error message in python.el
263         * lisp/progmodes/python.el (python-shell-get-process-or-error):
264         Don't repeat the same key binding twice.  (Bug#25405)
266 2017-01-07  Noam Postavsky  <npostavs@gmail.com>
268         Clarify major mode switching
270         * doc/emacs/modes.texi (Major Modes):
271         * doc/lispref/modes.texi (Modes, Major Modes): Explictly say that each
272         buffer has exactly one major mode and can't be "turned off", only
273         switched away from (Bug#25357).
275 2017-01-07  Noam Postavsky  <npostavs@gmail.com>
277         Add helpful comment to compile-command's docstring
279         * lisp/progmodes/compile.el (compile-command): Mention trailing space in
280         docstring (Bug#25337).
282 2017-01-06  Eli Zaretskii  <eliz@gnu.org>
284         Fix ':version' of 'select-enable-primary'
286         * lisp/select.el (select-enable-primary): Fix a typo in
287         ':version'.  (Bug#25375)
289 2017-01-04  Glenn Morris  <rgm@gnu.org>
291         Update remaining copyright years with admin.el M-x set-copyright
293         * etc/refcards/ru-refcard.tex (cyear): Set to 2017.
295 2017-01-04  Glenn Morris  <rgm@gnu.org>
297         * lisp/ffap.el (ffap-lax-url): Bump :version after recent change.
299 2017-01-03  Philipp Stephani  <phst@google.com>
301         Document that functions in 'ffap-alist' can use the match data
303         * lisp/ffap.el (ffap-alist): Document that ffap sets the match data
304         while walking 'ffap-alist'.
306 2017-01-01  Paul Eggert  <eggert@cs.ucla.edu>
308         Fix copyright years by hand
310         These are dates that admin/update-copyright did not update, or
311         updated incorrectly.
313 2017-01-01  Paul Eggert  <eggert@cs.ucla.edu>
315         Update copyright year to 2017
317         Run admin/update-copyright.
319 2016-12-30  Nicolas Petton  <nicolas@petton.fr>
321         Bump Emacs version to 25.1.91
323         * README:
324         * configure.ac:
325         * msdos/sed2v2.inp:
326         * nt/README.W32: Bump Emacs version.
327         * lisp/ldefs-boot.el: Update.
329 2016-12-30  Alan Mackenzie  <acm@muc.de>
331         Backport: Remove an ambiguity from defvar's doc string.  Fixes bug #25292.
333         The ambiguity was whether INITVALUE is evaluated when it's not going to be
334         used to set SYMBOL's value.
336         * src/eval.c (defvar): Rewrite a paragraph of the doc string.
338         (cherry picked from commit 8295e97f18490a535d1188a3daf0b0fd1bf4fa0d)
340 2016-12-28  Stefan Monnier  <monnier@iro.umontreal.ca>
342         * lisp/emacs-lisp/inline.el: Fix apply-conversion (bug#25280)
344         (inline--dont-quote): Quote the function with #' when passing it to `apply'.
345         Cherry picked from commit e6161f648903d821865b9610b3b6aa0f82a5dcb7.
347 2016-12-26  Eli Zaretskii  <eliz@gnu.org>
349         Document 'default-toplevel-value' and 'set-default-toplevel-value'
351         * doc/lispref/variables.texi (Default Value): Document
352         'default-toplevel-value' and 'set-default-toplevel-value'.
354 2016-12-25  Leo Liu  <sdl.web@gmail.com>
356         Don't modify minibuffer variables globally
358         * lisp/files.el (cd): Use setq-local instead.  (Bug#25260)
360 2016-12-24  Eli Zaretskii  <eliz@gnu.org>
362         Revert to pre-25.1 behavior in ffap
364         * lisp/ffap.el (ffap-lax-url): Change the default to t, to produce
365         the same behavior as in Emacs 24.x.  (Bug#25264)
366         Explain the trade-offs of customizing this in the doc string.
368 2016-12-24  Noam Postavsky  <npostavs@gmail.com>
370         * lisp/ffap.el: Fix obsolete comment referencing ffap-bug.
372 2016-12-23  Eli Zaretskii  <eliz@gnu.org>
374         Attempt to fix 64-bit AIX build
376         * src/unexaix.c (make_hdr, copy_text_and_data, write_segment): Fix
377         type-casts that assumed 32-bit pointers.  (Bug#25141)
379 2016-12-23  Philipp Stephani  <phst@google.com>
381         Clarify usage of 'ediff-cleanup-hook' (Bug#24675)
383         * doc/misc/ediff.texi (Hooks): Clarify usage of 'ediff-cleanup-hook'
385 2016-12-23  Philipp Stephani  <phst@google.com>
387         Document that variable binding order is unspecified
389         * doc/lispref/variables.texi (Local Variables):
390         * doc/misc/cl.texi (Modify Macros): Document that binding order in 'let' and
391         'cl-letf' is unspecified.
393 2016-12-23  Eli Zaretskii  <eliz@gnu.org>
395         * lisp/desktop.el (desktop-buffers-not-to-save): Doc fix.
397 2016-12-23  Stefan Monnier  <monnier@IRO.UMontreal.CA>
399         Fix M-x hints on Mac port
401         * lisp/simple.el (execute-extended-command--shorter): Call
402         input-pending-p to trigger input processing on some systems, such
403         as Mac port.  (Bug#23002)
405 2016-12-22  Martin Rudalics  <rudalics@gmx.at>
407         Work around reporting a dpi change in apply_xft_settings
409         * src/xsettings.c (apply_xft_settings): Don't report a change
410         when dpi settings do not differ substantially.
412 2016-12-20  Alan Mackenzie  <acm@muc.de>
414         Amend the version number of CC Mode 5.33 -> 5.32.99.  Don't merge to trunk.
416         lisp/progmodes/cc-defs.el: Amend the version number.
417         etc/NEWS: Add an item explaining the change.
419 2016-12-20  Noam Postavsky  <npostavs@gmail.com>
421         Improve skeleton docstrings
423         * lisp/skeleton.el (skeleton-end-newline): Remove mention of
424         `skeleton-end-hook', its default code was moved into `skeleton-insert'.
425         (skeleton-insert): Mention `skeleton-end-newline' and move reference to
426         `skeleton-end-hook' above the explanation of skeleton syntax.
428 2016-12-19  Eli Zaretskii  <eliz@gnu.org>
430         Improve documentation of 'w32-scroll-lock-modifier'
432         * doc/emacs/msdos.texi (Windows Keyboard): Document how to set up
433         w32-scroll-lock-modifier so that Scroll Lock toggles the LED.
435         * src/w32fns.c (syms_of_w32fns) <w32-scroll-lock-modifier>: Doc
436         fix.  (Bug#25204)
438 2016-12-19  Eli Zaretskii  <eliz@gnu.org>
440         Document 'describe-fontset'
442         * doc/emacs/mule.texi (Fontsets): Document 'describe-fontset'.
443         (Bug#25216)
445 2016-12-19  Eli Zaretskii  <eliz@gnu.org>
447         Document 'describe-fontset'
449         * doc/emacs/mule.texi (Fontsets): Document 'describe-fontset'.
450         (Bug#25216)
452 2016-12-17  Eli Zaretskii  <eliz@gnu.org>
454         Repair desktop restoration on text terminals
456         * lisp/desktop.el (desktop-restoring-frameset-p): Test for the GUI
457         frame here, instead of in desktop-restoring-frameset.  That's
458         because desktop-read wants to know whether frameset will actually
459         be restored, and has fallback procedures up its sleeve when it
460         won't be; these fallbacks need to be invoked when the frameset is
461         not going to be restored.  (Bug#24298)
463 2016-12-17  Dmitry Gutov  <dgutov@yandex.ru>
465         Ignore forward-sexp-function in js-mode indentation code
467         * lisp/progmodes/js.el (js--multi-line-declaration-indentation)
468         (js--maybe-goto-declaration-keyword-end):
469         Bind forward-sexp-function to nil (bug#25215).
471 2016-12-16  Eli Zaretskii  <eliz@gnu.org>
473         Improve documentation of 'define-coding-system'
475         * lisp/international/mule.el (define-coding-system): Warn against
476         possible infinite recursion in pre-write-conversion and
477         post-read-conversion functions.  (Bug#25203)
479 2016-12-11  Michael Albinus  <michael.albinus@gmx.de>
481         Fix Bug#25162
483         * doc/emacs/files.texi (Reverting): Document
484         auto-revert-remote-files and auto-revert-verbose.
486         * lisp/autorevert.el (auto-revert-verbose, auto-revert-mode)
487         (auto-revert-tail-mode, global-auto-revert-mode): Fix docstring.
489 2016-12-11  Glenn Morris  <rgm@gnu.org>
491         Fix a typo in define-abbrev-table
493         * lisp/abbrev.el (define-abbrev-table): Fix typo in docstring handling.
495 2016-12-11  Glenn Morris  <rgm@gnu.org>
497         Bump makeinfo requirement from 4.7 to 4.13
499         * configure.ac: Bump makeinfo version requirement from 4.7 to 4.13.
500         We need at least 4.8, and that may be buggy, so go for the last
501         of the 4 series, which is 8 years old.  (Bug#25108)
503 2016-12-11  Glenn Morris  <rgm@gnu.org>
505         Fixes related to select-enable-clipboard
507         * lisp/menu-bar.el (clipboard-yank, clipboard-kill-ring-save)
508         (clipboard-kill-region):
509         * lisp/eshell/esh-io.el (eshell-virtual-targets)
510         (eshell-clipboard-append):
511         Replace option gui-select-enable-clipboard with
512         select-enable-clipboard; renamed October 2014.  (Bug#25145)
514 2016-12-10  Noam Postavsky  <npostavs@gmail.com>
516         Define struct predicate before acccesors
518         The accessor functions use the predicate function, which causes problems
519         when reloading after unload-feature: the compiler-macro property is
520         still present on the predicate symbol, and the compiler fails to find
521         the definition when trying to inline it into the accessor
522         function (Bug#25088).
524         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Move predicate definition
525         before field accessor definitions.
527 2016-12-08  Glenn Morris  <rgm@gnu.org>
529         Doc fix for vc-git
531         * lisp/vc/vc-git.el (vc-git-region-history): Add a doc string.
533 2016-12-08  Glenn Morris  <rgm@gnu.org>
535         Further improve make-dist checking
537         * make-dist: Print status messages when checking.
539 2016-12-08  Glenn Morris  <rgm@gnu.org>
541         Improve previous make-dist change
543         * make-dist: Let make check the info files more thoroughly.
545 2016-12-08  Glenn Morris  <rgm@gnu.org>
547         Make make-dist --snapshot do some sanity checks
549         * make-dist: Snapshot mode no longer disables checks.
550         Checks now includes checks for freshness.  (Bug#25084)
551         Checks now exits with an error if problems were found.
553 2016-12-07  Paul Eggert  <eggert@cs.ucla.edu>
555         Fix minor quoting problems in doc strings
557 2016-12-07  Philipp Stephani  <p.stephani2@gmail.com>
559         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode): Fix docstring
561         so that it matches the actual implementation.
562         See https://lists.gnu.org/archive/html/help-gnu-emacs/2016-04/msg00071.html
564 2016-12-07  Noam Postavsky  <npostavs@gmail.com>
566         Don't assume window-point and point are the same
568         The function `cursor-sensor--detect' calls `bobp' to decide whether to
569         check properties at (1- (window-point)).  However, (window-point) may be
570         at beginning of buffer, even if (point) is not.  In this case an
571         `args-out-of-range' error will be signaled (Bug#25104).
573         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor--detect): Check the
574         value of (window-point) against (point-min), rather than (bobp) to
575         decide if (1- (window-point)) is accessible.
577 2016-12-02  Nicolas Petton  <nicolas@petton.fr>
579         Fix bug#25087
581         * etc/themes/manoj-dark-theme.el: Fix two typos.
583         (cherry picked from commit 66d6e7e9ecf5e481f8c2c3a4f88411f66c869a6e)
585 2016-12-02  Eli Zaretskii  <eliz@gnu.org>
587         * lisp/vc/ediff-util.el (ediff-janitor): Doc fix.  (Bug#25046)
589 2016-12-02  Eli Zaretskii  <eliz@gnu.org>
591         Improve indexing of 'man'
593         * doc/emacs/programs.texi (Man Page): Index 'man', not
594         'manual-entry', as the latter is an alias for the former.
595         Suggested by Hong Xu <hong@topbug.net>.  (Bug#25033)
597 2016-12-02  Paul Eggert  <eggert@cs.ucla.edu>
599         Port to Sun C 5.14
601         Backport from master.  Sun C 5.14 supports C11 but not GCC
602         extensions, and so refuses to compile Emacs without this patch.
603         * src/alloc.c (lmalloc, lrealloc): Don't use INT_ADD_WRAPV on
604         size_t, as in general this macro is restricted to signed types.
606 2016-12-02  Richard Stallman  <rms@gnu.org>
608         Fix mail-combine-fields
610         * lisp/mail/sendmail.el (mail-combine-fields): Call `save-excursion' to
611         avoid losing our place in the search loop.
613         (cherry picked from commit 5fbba6cceaf843cfca449eb000a0a65243b61808)
615 2016-12-01  Martin Rudalics  <rudalics@gmx.at>
617         Fix documentation of `window-combination-resize'
619         * src/window.c (Vwindow_combination_resize): Fix doc-string.
620         * doc/lispref/windows.texi (Recombining Windows): Fix
621         documentation of `window-combination-resize'.
623 2016-11-29  Bogdan Creanga  <bogdan.creanga@gmail.com>  (tiny change)
625         Typo fixes in elisp manual
627         * doc/lispref/sequences.texi: Add missing '4' in result (Bug#25047).
628         * doc/lispref/strings.texi (Text Comparison): Avoid duplicate
629         definitions of 'string-prefix-p' and 'string-suffix-p'.
630         * doc/lispref/symbols.texi (Definitions): Pluralize 'definitions'.
632 2016-11-28  Eli Zaretskii  <eliz@gnu.org>
634         Fix 'expand-file-name' during startup on MS-Windows
636         * src/w32.c (w32_init_file_name_codepage): New function, resets
637         file_name_codepage and w32_ansi_code_page to undo the values
638         recorded during dumping.
639         (codepage_for_filenames): Fix an embarrassing typo.  Ignore the
640         cached value of file-name encoding if it is nil, i.e. not
641         initialized yet.  Actually cache the last used file-name encoding
642         to avoid calling APIs when not necessary.
644         * src/w32.h (w32_init_file_name_codepage): Add prototype.
646         * src/w32term.c (syms_of_w32term): Set the value of
647         w32_unicode_filenames according to the OS version.  This avoids
648         resetting it during startup, which then causes temacs to run with
649         the incorrect value.
651         * src/emacs.c (main): Call w32_init_file_name_codepage early
652         during the startup.
654         * src/fileio.c (Fexpand_file_name) [WINDOWSNT]: Update 'newdir'
655         after converting $HOME to a UTF-8 string, so that 'newdirlim' is
656         consistent with it.  (Bug#25038)
658         * lisp/international/mule-cmds.el (set-locale-environment): Set
659         'default-file-name-coding-system' to the ANSI codepage even in
660         non-interactive sessions.
662         * lisp/files.el (directory-abbrev-alist, abbreviated-home-dir):
663         Doc fix.
664         (abbreviate-file-name): Decode 'abbreviated-home-dir' if it is a
665         unibyte string.
667         * doc/lispref/files.texi (Directory Names): Index
668         'directory-abbrev-alist'.
670 2016-11-28  Nicolas Petton  <nicolas@petton.fr>
672         * admin/authors.el (authors-renamed-files-alist): Addition.
674 2016-11-28  Glenn Morris  <rgm@gnu.org>
676         Tweak refcard note about documentation location
678         * etc/refcards/calccard.tex, etc/refcards/cs-dired-ref.tex:
679         * etc/refcards/cs-refcard.tex, etc/refcards/cs-survival.tex:
680         * etc/refcards/de-refcard.tex, etc/refcards/dired-ref.tex:
681         * etc/refcards/fr-dired-ref.tex, etc/refcards/fr-refcard.tex:
682         * etc/refcards/fr-survival.tex, etc/refcards/gnus-refcard.tex:
683         * etc/refcards/orgcard.tex, etc/refcards/pl-refcard.tex:
684         * etc/refcards/pt-br-refcard.tex, etc/refcards/refcard.tex:
685         * etc/refcards/ru-refcard.tex, etc/refcards/sk-dired-ref.tex:
686         * etc/refcards/sk-refcard.tex, etc/refcards/sk-survival.tex:
687         * etc/refcards/survival.tex, etc/refcards/vipcard.tex:
688         * etc/refcards/viperCard.tex: Tweak documentation url.
690 2016-11-28  Glenn Morris  <rgm@gnu.org>
692         Improve treatment of Fortran's "class is"
694         * lisp/progmodes/f90.el (f90-start-block-re, f90-no-block-limit):
695         Handle "class is".  (Bug#25039)
696         * test/automated/f90.el (f90-test-bug25039): New test.
698 2016-11-28  Nicolas Petton  <nicolas@petton.fr>
700         Bump Emacs version to 25.1.90
702         * README:
703         * configure.ac:
704         * msdos/sed2v2.inp:
705         * nt/README.W32: Bump Emacs version to 25.1.90
707 2016-11-27  Nicolas Petton  <nicolas@petton.fr>
709         Bump Emacs version
711         * README:
712         * configure.ac:
713         * etc/NEWS:
714         * msdos/sed2v2.inp:
715         * nt/README.W32: Bump Emacs version to 25.2.90
717 2016-11-26  Karl Fogel  <kfogel@red-bean.com>
719         Handle TeX comments when making new paragraph
721         * lisp/textmodes/tex-mode.el (tex-handle-newline): New function.
722           Handle comment case directly, and dispatch to `tex-terminate-paragraph'
723           for original behavior in non-comment case.
724           (tex-mode-map): Bind above to C-j, replacing `tex-terminate-paragraph'.
726 2016-11-25  Eli Zaretskii  <eliz@gnu.org>
728         Restore keystroke echo in 'C-q'
730         * lisp/simple.el (read-quoted-char): Use 'read-event' instead of
731         'read-key', to avoid losing the keystroke echo in 'C-q'.  (Bug#24635)
733 2016-11-25  Eli Zaretskii  <eliz@gnu.org>
735         Improve documentation of 'current-word'
737         * lisp/simple.el (current-word): Clarify and improve the doc
738         string.  (Bug#24979)
740 2016-11-25  Chunyang Xu  <mail@xuchunyang.me>
742         Fix a typo in an Eshell defcustom
744         * lisp/eshell/esh-mode.el (eshell-scroll-to-bottom-on-output): Fix
745         a typo in the 'others' standard value.  (Bug#24983)
747 2016-11-24  Hong Xu  <hong@topbug.net>  (tiny change)
749         Minor copyedits of electric-pair-mode
751         * doc/emacs/programs.texi (Matching): Add index entries.  Fix
752         typos.  (Bug#25012)
754 2016-11-24  Eli Zaretskii  <eliz@gnu.org>
756         Fix documentation of 'invocation-directory'
758         * doc/lispref/os.texi (System Environment): Fix wording of the
759         description of 'invocation-directory'.  (Bug#24999)
761 2016-11-23  Glenn Morris  <rgm@gnu.org>
763         * admin/authors.el (authors-aliases): Add an entry.
765 2016-11-22  Philipp Stephani  <phst@google.com>
767         Guard terminal parameter in XTerm mouse mode
769         It has been observed (in the HTerm terminal emulator) that the
770         event stored in the 'xterm-mouse-last-down' terminal parameter gets
771         overwritten during a mouse drag operation, causing Emacs to attempt to
772         synthesize the non-existing <drag-mouse-0> event.  Copy the event into
773         the terminal parameter to protect against such modifications.
775         * lisp/xt-mouse.el (xterm-mouse-translate-1): Guard against modification
776         of input event list.
778 2016-11-21  Nicolas Petton  <nicolas@petton.fr>
780         * etc/AUTHORS: Regenerate the AUTHORS file
782 2016-11-21  Nicolas Petton  <nicolas@petton.fr>
784         Update ChangeLog files and authors.el
786         * admin/authors.el (authors-renamed-files-alist): Add entries for
787           obsolete files.
788         * ChangeLog.2: Update.
790 2016-11-21  Eli Zaretskii  <eliz@gnu.org>
792         Fix menu bindings of Dired 'A' and 'Q' commands
794         * lisp/dired.el (dired-mode-map): Rebind "Search Files" and "Query
795         Replace in Files" menu items to 'dired-do-find-regexp' and
796         'dired-do-find-regexp-and-replace', respectively.  (Bug#24977)
798 2016-11-20  Eli Zaretskii  <eliz@gnu.org>
800         Avoid errors in shr-pixel-column due to dedicated windows
802         * lisp/net/shr.el (shr-pixel-column): If we are switching to
803         another buffer in the selected window, make that window
804         temporarily non-dedicated.  (Bug#24950)
806 2016-11-20  Tino Calancha  <tino.calancha@gmail.com>
808         Update format-time-string documentation
810         * doc/lispref/os.texi (Time Parsing):
811         Document %F, %g, %G, %u and %V.
813 2016-11-19  Eli Zaretskii  <eliz@gnu.org>
815         * admin/release-process: Update versions and blocking bug numbers.
817 2016-11-18  Eli Zaretskii  <eliz@gnu.org>
819         Improve documentation of functions that accept time values
821         * doc/lispref/os.texi (Time Calculations): Mention the meaning of
822         'nil' or a scalar number as the time-value argument.  Add a
823         cross-reference to 'float-time' for computing a time difference as
824         a scalar number of seconds.
826         * src/editfns.c (Fformat_time_string, Ftime_less_p)
827         (Ftime_subtract, Ftime_add, Fdecode_time, Fcurrent_time_string)
828         (Fcurrent_time_zone): Mention in the doc strings the meaning of
829         nil argument and the fact that a time value can be a scalar number
830         of seconds since the epoch.
831         (Ftime_subtract): Mention 'float-time'.
833 2016-11-18  Daniel Colascione  <dancol@dancol.org>
835         Speed up initialization by preferring /dev/urandom to GnuTLS
837         * src/sysdep.c (init_random): Try /dev/urandom before GnuTLS.
839         (cherry picked from commit a37eba849eddc41375ad73974f6fcb1258aa8eba)
841 2016-11-18  Glenn Morris  <rgm@gnu.org>
843         Add a comment in generated refcards about the source
845         * etc/refcards/calccard.tex, etc/refcards/cs-dired-ref.tex:
846         * etc/refcards/cs-refcard.tex, etc/refcards/cs-survival.tex:
847         * etc/refcards/de-refcard.tex, etc/refcards/dired-ref.tex:
848         * etc/refcards/fr-dired-ref.tex, etc/refcards/fr-refcard.tex:
849         * etc/refcards/fr-survival.tex, etc/refcards/gnus-refcard.tex:
850         * etc/refcards/orgcard.tex, etc/refcards/pl-refcard.tex:
851         * etc/refcards/pt-br-refcard.tex, etc/refcards/refcard.tex:
852         * etc/refcards/ru-refcard.tex, etc/refcards/sk-dired-ref.tex:
853         * etc/refcards/sk-refcard.tex, etc/refcards/sk-survival.tex:
854         * etc/refcards/survival.tex, etc/refcards/vipcard.tex:
855         * etc/refcards/viperCard.tex: Add comment about the source.
857 2016-11-17  Dmitry Gutov  <dgutov@yandex.ru>
859         js-mode: Fix indent problem after a regexp
861         * lisp/progmodes/js.el (js--looking-at-operator-p): Check that the
862         slash is not ending a regexp (bug#24854).
864 2016-11-16  Eli Zaretskii  <eliz@gnu.org>
866         Fix sluggish display of symbols in UTF-8 language environment
868         * lisp/international/fontset.el (setup-default-fontset): Make sure
869         Symbola and FreeMono are set up in the default fontset as belonging
870         to the "iso10646-1" registry.  In the UTF-8 locale, this avoids a
871         long and futile search for a suitable font, whose side effect is a
872         lot of consing, which then hits the font-cache compacting issue,
873         and causes very sluggish redisplay of characters displayed by
874         these fonts.  All this happens because the default for the
875         registry is "iso8859-1".  (Bug#24953)
877 2016-11-16  Glenn Morris  <rgm@gnu.org>
879         Don't confuse how Texinfo outputs @var with the input
881         * doc/emacs/rmail.texi (Movemail):
882         * doc/lispref/control.texi (Pattern matching case statement):
883         * doc/lispref/frames.texi (Size and Position):
884         * doc/lispref/processes.texi (Asynchronous Processes):
885         * doc/lispref/text.texi (Document Object Model):
886         * doc/lispref/windows.texi (Coordinates and Windows):
887         Do not upper-case the argument of @var.
889 2016-11-16  Glenn Morris  <rgm@gnu.org>
891         * doc/lispref/display.texi (Scroll Bars):
892         * doc/lispref/frames.texi (Size and Position):
893         * doc/lispref/windows.texi (Window Sizes): Fix arglist typos.
895         * doc/emacs/cmdargs.texi (Initial Options): Copyedit for --daemon.
897 2016-11-15  Eli Zaretskii  <eliz@gnu.org>
899         More fixes in copyright notices in etc/refcards/
901         * etc/refcards/calccard.tex:
902         * etc/refcards/cs-dired-ref.tex:
903         * etc/refcards/cs-refcard.tex:
904         * etc/refcards/cs-survival.tex:
905         * etc/refcards/de-refcard.tex:
906         * etc/refcards/dired-ref.tex:
907         * etc/refcards/fr-dired-ref.tex:
908         * etc/refcards/fr-refcard.tex:
909         * etc/refcards/fr-survival.tex:
910         * etc/refcards/orgcard.tex:
911         * etc/refcards/pl-refcard.tex:
912         * etc/refcards/pt-br-refcard.tex:
913         * etc/refcards/refcard.tex:
914         * etc/refcards/ru-refcard.tex:
915         * etc/refcards/sk-dired-ref.tex:
916         * etc/refcards/sk-refcard.tex:
917         * etc/refcards/sk-survival.tex:
918         * etc/refcards/survival.tex:
919         * etc/refcards/vipcard.tex:
920         * etc/refcards/viperCard.tex: Change "GNU Emacs" to "this
921         document" in copyright notices.  (Bug#24520)
923 2016-11-13  Eli Zaretskii  <eliz@gnu.org>
925         Update copyright text in refcards
927         * etc/refcards/viperCard.tex:
928         * etc/refcards/vipcard.tex:
929         * etc/refcards/survival.tex:
930         * etc/refcards/sk-survival.tex:
931         * etc/refcards/sk-dired-ref.tex:
932         * etc/refcards/sk-refcard.tex:
933         * etc/refcards/ru-refcard.tex:
934         * etc/refcards/refcard.tex:
935         * etc/refcards/pt-br-refcard.tex:
936         * etc/refcards/pl-refcard.tex:
937         * etc/refcards/orgcard.tex:
938         * etc/refcards/gnus-refcard.tex:
939         * etc/refcards/fr-survival.tex:
940         * etc/refcards/fr-refcard.tex:
941         * etc/refcards/fr-dired-ref.tex:
942         * etc/refcards/dired-ref.tex:
943         * etc/refcards/de-refcard.tex:
944         * etc/refcards/cs-survival.tex:
945         * etc/refcards/cs-refcard.tex:
946         * etc/refcards/cs-dired-ref.tex:
947         * etc/refcards/calccard.tex: Update the copyright blurb.  (Bug#24520)
949 2016-11-12  Eli Zaretskii  <eliz@gnu.org>
951         Fix Outline command names
953         * doc/emacs/text.texi (Foldout): Use the outline-* names instead
954         of the obsolete aliases.  (Bug#24890)
956 2016-11-10  Philipp Stephani  <phst@google.com>
958         Send text received by bracketed paste to process
960         See Bug#24639.
962         * lisp/term.el (term--xterm-paste): New function.
963         (term-raw-map): Use it.
964         (xterm--pasted-text): Declare function from xterm.el.
966 2016-11-10  Alan Mackenzie  <acm@muc.de>
968         Correct the statement about programming modes always running prog-mode-hook.
970         * doc/emacs/modes.texi (Major Modes): Amend the statement about programming
971         modes running prog-mode-hook to say that it applies to many (not all) such
972         modes, and specifying exactly which modes.
974 2016-11-10  Eli Zaretskii  <eliz@gnu.org>
976         Improve documentation of 'occur'
978         * doc/emacs/search.texi (Other Repeating Search): Clarify how to
979         use Occur with search strings from last Isearch.  (Bug#24890)
981 2016-11-09  Noam Postavsky  <npostavs@gmail.com>
983         Do call debugger on failed cl-assert
985         "Don't call debug on failed cl-assert..." removed the call to `debug' in
986         cl--assertion-failed because `debug' calls `kill-emacs' in batch mode,
987         thus messing up ert test runs.  However, calling the debugger is useful
988         because it allows catching failed assertions even inside
989         `condition-case' calls.  The problem with ert can be avoided by calling
990         `debugger' instead of `debug' directly, since ert installs its own
991         debugger while running tests.
993         * lisp/emacs-lisp/cl-preloaded.el (cl--assertion-failed): Call
994         `debugger' if `debug-on-error' is non-nil.
996 2016-11-09  Daniel Colascione  <dancol@dancol.org>
998         Avoid infloop in python
1000         Fix bug#24905
1002         * lisp/progmodes/python.el (python-info-docstring-p): Improve
1003         infloop avoidance: replace (bobp) with generic test for
1004         forward progress.
1005         * test/automated/python-tests.el (python-bob-infloop-avoid): Add
1006         test for bug#24905
1008 2016-11-07  Eli Zaretskii  <eliz@gnu.org>
1010         Don't refer to obsolete FEATURE-unload-hook
1012         * doc/lispref/tips.texi (Coding Conventions): Refer to
1013         FEATURE-unload-function rather than its obsolete variant
1014         FEATURE-unload-hook.  (Bug#24890)
1016 2016-11-07  Eli Zaretskii  <eliz@gnu.org>
1018         Improve documentation of dabbrevs
1020         * lisp/dabbrev.el (dabbrev-expand): Doc fix.  (Bug#24890)
1022         * doc/emacs/abbrevs.texi (Dynamic Abbrevs): Mention
1023         'dabbrev-check-all-buffers', 'dabbrev-check-other-buffers', and
1024         'dabbrev-ignored-buffer-names' and their purpose.  (Bug#24890)
1026 2016-11-07  Eli Zaretskii  <eliz@gnu.org>
1028         * lisp/chistory.el (list-command-history): Doc fix.  (Bug#24890)
1030         * lisp/simple.el (set-mark-command): Doc fix.  (Bug#24890)
1032 2016-11-07  Eli Zaretskii  <eliz@gnu.org>
1034         Improve documentation of some Help commands
1036         * doc/emacs/help.texi (Help Mode): Fix mistake in key sequences.
1037         Mention the 'l' and 'r' keys.
1038         (Misc Help): Mention that 'C-h m' describes key bindings.
1039         (Bug#24890)
1041 2016-11-07  Eli Zaretskii  <eliz@gnu.org>
1043         Fix documentation of yes-or-no prompts
1045         * doc/emacs/mini.texi (Yes or No Prompts): Fix mistakes in key
1046         sequences.  (Bug#24890)
1048 2016-11-07  Eli Zaretskii  <eliz@gnu.org>
1050         Fix documentation of partial completion style
1052         * doc/emacs/mini.texi (Completion Styles): Fix the description of
1053         the wildcard '*'.  (Bug#24890)
1055 2016-11-07  Eli Zaretskii  <eliz@gnu.org>
1057         Fix documentation of the mode line on emacsclient frames
1059         * doc/emacs/screen.texi (Mode Line): Document the '@' indicator on
1060         emacsclient frames.
1062 2016-11-07  Eli Zaretskii  <eliz@gnu.org>
1064         Fix description of 'C-z' in User manual
1066         * doc/emacs/entering.texi (Exiting): 'C-z' is bound to
1067         'suspend-frame'.  (Bug#24890)
1069 2016-11-07  Eli Zaretskii  <eliz@gnu.org>
1071         Improve and clarify documentation of Outline Mode
1073         * doc/emacs/text.texi (Outline Visibility): Use the outline-*
1074         names instead of the obsolete aliases.  (Bug#24890)
1076         * lisp/outline.el (outline-hide-sublevels, outline-hide-other)
1077         (outline-hide-body): Doc fixes.  (Bug#24890)
1079 2016-11-06  Eli Zaretskii  <eliz@gnu.org>
1081         Add Emacs version number to nt/README.W32
1083         * nt/README.W32: Include the version number of the latest Emacs
1084         release.
1086         * admin/admin.el (set-version): Update the version in nt/README.W32.
1088 2016-11-06  Noam Postavsky  <npostavs@gmail.com>
1090         Fix python-mode hideshow regexp
1092         2015-02-07 "Fix hideshow integration[...]" changed the regexp added to
1093         `hs-special-modes-alist' so that it worked when not searching from the
1094         beginning of the line.  However, this allows matching tokens ending in
1095         "def" or "class", not just those keywords.  This results in an infinite
1096         loop in hs-hide-all (Bug #24815).
1098         * lisp/progmodes/python.el (python-mode): Add symbol boundaries around
1099         the def|class matching part of the regexp added to
1100         hs-special-modes-alist.
1102 2016-11-06  Paul Eggert  <eggert@cs.ucla.edu>
1104         Modernize usage of 'macOS' in doc and comments
1106         Apple changed the spelling of its operating system again, to "macOS",
1107         effective with macOS 10.12 Sierra (2016-09-20).  Change Emacs
1108         documentation and comments to match this.  Stick with older OS
1109         spellings ("OS X", "Mac OS X") when talking about older releases where
1110         the older names are more correct.
1112 2016-11-06  Paul Eggert  <eggert@cs.ucla.edu>
1114         Prefer comments /* like this */ in C code
1116         Emacs C code assumes C99 features, but has long used traditional
1117         comments /* like this */ instead of C99-style comments // like this.
1118         Stick with traditional comments for now, partly for style, partly as
1119         it may be safer with compilers that are not fully in C99 mode.
1121 2016-11-05  Noam Postavsky  <npostavs@gmail.com>
1123         * doc/lispref/loading.texi (Autoload): Better link (Bug#24845).
1125 2016-11-05  Eli Zaretskii  <eliz@gnu.org>
1127         Clarify documentation of face attribute functions
1129         * doc/lispref/display.texi (Attribute Functions): Make sure to
1130         document that an omitted FRAME argument means the same as nil.
1131         (Bug#24879)
1133 2016-11-05  Noam Postavsky  <npostavs@gmail.com>
1135         Don't call debug on failed cl-assert
1137         Doing this causes problems when running ert tests, for
1138         instance (Bug#24778).  The call to `debug` when `debug-on-error' is
1139         non-nil was introduced in 2015-02-14 "* lisp/emacs-lisp/cl*.el: Use
1140         define-inline and move some code...".
1142         * lisp/emacs-lisp/cl-preloaded.el (cl--assertion-failed): Don't call
1143         `debug' directly.
1145 2016-11-04  Phillip Lord  <phillip.lord@russet.org.uk>
1147         Update README for precompiled windows Emacs.
1149          * nt/README.W32: Describe 64 and 32-bit downloads, optional
1150            dependencies bundle. Remove old material on sourcing dependencies.
1151            Remove references to Windows 95. Update GUI references to recent
1152            Windows. Remove references to Usenet.
1154 2016-11-04  Hong Xu  <hong@topbug.net>
1156         Clarify documentation of 'vc-responsible-backend' wrt symlinks
1158         * lisp/vc/vc.el (vc-responsible-backend): Clarify that symlinks
1159         are not resolved when the VC backend is reported.
1161         * doc/lispref/files.texi (Truenames): Document
1162         'vc-responsible-backend'.  (Bug#23436)
1163         * doc/emacs/maintaining.texi (Version Control Systems): Fix a
1164         typo.
1166 2016-11-04  Eli Zaretskii  <eliz@gnu.org>
1168         Clarify doc string of 'transpose-sexps'
1170         * lisp/simple.el (transpose-sexps): Clarify the conditions for
1171         transposing sexps that are lists or strings.  Mention the effect
1172         of the prefix argument.  (Bug#24860)
1174 2016-11-04  Tibor Csögör  <tibi@tiborius.net>  (tiny change)
1176         Fix docstring of 'browse-url-firefox-new-window-is-tab'
1178         * lisp/net/browse-url.el (browse-url-firefox-new-window-is-tab):
1179         Remove obsolete note from docstring (obsoleted by previous commits).
1180         (Bug#24843)
1182 2016-11-04  Eli Zaretskii  <eliz@gnu.org>
1184         Improve documentation of 'font-lock-remove-keywords'
1186         * doc/lispref/modes.texi (Customizing Keywords): Clarify the
1187         'keywords' argument of 'font-lock-remove-keywords'.  Suggested by
1188         Hong Xu <hong@topbug.net>.  (Bug#24830)
1190 2016-11-04  Eli Zaretskii  <eliz@gnu.org>
1192         Fix documentation of the command summary key
1194         * doc/misc/info.texi (Help-^L, Help-Xref, Top): Emacs Info uses
1195         '?' for the summary of commands, whereas the stand-alone reader
1196         uses 'H'.  (Bug#24825)
1198 2016-11-04  Eli Zaretskii  <eliz@gnu.org>
1200         Mark relocation workarounds with REL_ALLOC
1202         * src/search.c (boyer_moore): Mark workarounds for ralloc.c
1203         relocation of buffer text with "#ifdef REL_ALLOC".
1205 2016-11-02  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
1207         Fix documentation for 'eudc-options-file'
1209         * doc/misc/eudc.texi (The Server Hotlist): Update the default
1210         value of 'eudc-options-file'.
1212         Backport:
1214         (cherry picked from commit 0575fd95d0b92a9a0ebff8df183a449190f74dbc)
1216 2016-11-02  Tibor Csögör  <tibi@tiborius.net>
1218         Fix documentation of 'eudc-inline-expansion-format'
1220         * doc/misc/eudc.texi (Inline Query Expansion): Fix the default value of
1221         'eudc-inline-expansion-format'. (Bug#24840)
1223         Backport:
1225         (cherry picked from commit 1fef1387c387d80f8ece326621539b89a6965702)
1227 2016-10-31  Clément Pit--Claudel  <clement.pitclaudel@live.com>
1229         python.el: Fix detection of native completion in Python 3 (bug #24401)
1231         With Python 3.5, (python-shell-completion-native-get-completions ... "")
1232         would return an empty list, causing python.el to think that native
1233         completion was unavailable (the difference between Python 2 and Python 3
1234         is due to https://bugs.python.org/issue25660).
1236         * lisp/progmodes/python.el (python-shell-completion-native-try): Use "_"
1237           to check whether native completion is available instead of "".
1239 2016-10-26  Glenn Morris  <rgm@gnu.org>
1241         * Makefile.in (install-arch-indep): Skip etc/refcards/emacsver.tex.in.
1243 2016-10-26  Stefan Monnier  <monnier@iro.umontreal.ca>
1245         * lisp/subr.el (set-transient-map): Exit for unbound events (bug#24755).
1247 2016-10-26  Eli Zaretskii  <eliz@gnu.org>
1249         Update category-table for Chinese characters
1251         * lisp/international/characters.el (standard-category-table):
1252         Update the ranges of Han and Chinese characters.  (Bug#24798)
1254 2016-10-26  Noam Postavsky  <npostavs@gmail.com>
1256         Inhibit buffer relocation during regex searches
1258         * src/search.c (looking_at_1, fast_looking_at, search_buffer): Prevent
1259         relocation of buffer contents during calls to re_search_2.  This ensures
1260         the pointers into buffer text won't be invalidated by
1261         r_alloc_sbrk (called from malloc with configurations where
1262         REL_ALLOC=yes).
1264 2016-10-26  Noam Postavsky  <npostavs@gmail.com>
1266         Revert fixes to allocation of regex matching
1268         The fix was not complete, and completing it was proving too complicated.
1270         - Revert "* src/regex.c (re_search_2): Make new code safe for
1271                   -Wjump-misses-init."
1272           This reverts commit c2a17924a57483d14692c8913edbe8ad24b5ffbb.
1273         - Revert "Port to GCC 6.2.1 + --enable-gcc-warnings"
1274           This reverts commit f6134bbda259c115c06d4a9a3ab5c39340a15949.
1275         - Revert "Fix handling of allocation in regex matching"
1276           This reverts commit ad66b3fadb7ae22a4cbb82bb1507c39ceadf3897.
1277         - Revert "Fix handling of buffer relocation in regex.c functions"
1278           This reverts commit ee04aedc723b035eedaf975422d4eb242894121b.
1280 2016-10-25  Eli Zaretskii  <eliz@gnu.org>
1282         Comment for bug#24793
1284         * lisp/info.el (Info-mode-font-lock-keywords): Add a comment
1285         explaining why `..' quoting is not fontified using the
1286         'Info-quoted' face.  (Bug#24793)
1288 2016-10-25  Paul Eggert  <eggert@cs.ucla.edu>
1290         Default REL_ALLOC to 'no'
1292         This should make ralloc-related bugs less likely on GNU/Linux
1293         systems with bleeding-edge glibc.  See the email thread containing:
1294         http://lists.gnu.org/archive/html/emacs-devel/2016-10/msg00801.html
1295         Do not merge to master.
1296         * configure.ac (REL_ALLOC): Default to 'no' on all platforms, not
1297         merely on platforms with Doug Lea malloc.  Although bleeding-edge
1298         glibc no longer exports __malloc_initialize_hook and so longer
1299         passes the configure-time test for Doug Lea malloc, ralloc tickles
1300         longstanding bugs like Bug#24358 and Bug#24764 and Emacs is likely
1301         to be more reliable without it.  This patch is not needed on
1302         master, which uses hybrid malloc in this situation.
1304 2016-10-24  Eli Zaretskii  <eliz@gnu.org>
1306         Yet another fix for using pointers into buffer text
1308         * src/search.c (boyer_moore): Update pointers to buffer text
1309         after call to set_search_regs.  (Bug#24358)
1311 2016-10-24  Eli Zaretskii  <eliz@gnu.org>
1313         Another fix for using pointer to buffer text
1315         * src/search.c (Freplace_match): Move the call to BYTE_POS_ADDR
1316         after the call to xpalloc, to avoid the danger of buffer text
1317         relocation after its address was taken.  (Bug#24358)
1319 2016-10-24  Michael Albinus  <michael.albinus@gmx.de>
1321         Fix Bug#24478
1323         * lisp/net/tramp-sh.el (tramp-histfile-override): Change default value
1324         to "~/.tramp_history".
1325         (tramp-open-shell): Check proper HISTFILE setting.
1326         (tramp-maybe-open-connection): Cleanup also for errors.  (Bug#24478)
1328 2016-10-24  Paul Eggert  <eggert@cs.ucla.edu>
1330         Port --enable-gcc-warnings to bleeding-edge glibc
1332         Bleeding-edge glibc sets emacs_cv_var_doug_lea_malloc to 'no'.
1333         Do not merge to master.
1334         * configure.ac: Check for valloc decl when compiling gmalloc.c.
1335         * src/gmalloc.c (emacs_abort) [emacs]: Adjust decl to match
1336         what is in lisp.h.  Remove duplicate decl.
1337         (aligned_alloc): #undef before defining.
1338         (aligned_alloc, memalign) [!MSDOS]: Declare.
1339         (valloc) [HAVE_DECL_VALLOC]: Remove duplicate decl.
1341 2016-10-23  Eli Zaretskii  <eliz@gnu.org>
1343         Fix handling of buffer relocation in regex.c functions
1345         * src/search.c (search_buffer): Updated the base pointer to buffer
1346         text after the call to re_search_2.  (Bug#24358)
1348 2016-10-23  Eli Zaretskii  <eliz@gnu.org>
1350         Avoid relocating buffers while libxml2 reads its text
1352         * src/xml.c (parse_region) [REL_ALLOC]: Freeze the ralloc arena
1353         while libxml2 reads the current buffer's text.  (Bug#24764)
1355 2016-10-23  Eli Zaretskii  <eliz@gnu.org>
1357         Attempt to catch reads from a buffer that is relocated
1359         * src/xml.c (parse_region): Add assertion to ensure buffer text is
1360         not relocated while libxml2 is reading it.  (Bug#24764)
1362 2016-10-23  Eli Zaretskii  <eliz@gnu.org>
1364         Revert "* lisp/simple.el (process-menu-mode, list-processes--refresh):"
1366         This reverts commit a4285bcb1114e29200001f33af9b4802167d6140.
1367         Do not merge to master!
1369 2016-10-23  Eli Zaretskii  <eliz@gnu.org>
1371         Revert "* lisp/ibuf-ext.el (ibuffer-do-shell-command-file):"
1373         This reverts commit b0c447e4668116cecfda91d0203cb7cac2486d92.
1374         Do not merge to master!
1376 2016-10-23  Eli Zaretskii  <eliz@gnu.org>
1378         Revert "* lisp/ibuffer.el (ibuffer): Improve 'other-window' case.  (Bug#23617)"
1380         This reverts commit cf3c19b0298236293d9c56d5ba425af4f42c1f8e.
1381         Do not merge to master!
1383 2016-10-23  Eli Zaretskii  <eliz@gnu.org>
1385         ;* src/w32heap.c: Fix typo and wording of the comments.
1387 2016-10-23  Paul Eggert  <eggert@cs.ucla.edu>
1389         electric-quote mode no longer worries about coding
1391         * doc/emacs/text.texi (Quotation Marks), etc/NEWS: Document this.
1392         * lisp/electric.el (electric--insertable-p): Remove.
1393         All uses removed (Bug#24759).
1395 2016-10-23  Paul Eggert  <eggert@cs.ucla.edu>
1397         * src/regex.c (re_search_2): Make new code safe for -Wjump-misses-init.
1399 2016-10-23  Paul Eggert  <eggert@cs.ucla.edu>
1401         Port to GCC 6.2.1 + --enable-gcc-warnings
1403         * src/regex.c (ENSURE_FAIL_STACK, re_search_2):
1404         Redo recent regex changes to avoid complaints from GCC 6.2.1 when
1405         Emacs is configured with --enable-gcc-warnings.  Also, work around
1406         GCC bug 78081, which was uncovered by this new code.
1408 2016-10-22  Noam Postavsky  <npostavs@gmail.com>
1410         Explain how to debug emacsclient lisp errors
1412         * doc/lispref/debugging.texi (Error Debugging): Mention that
1413         debug-on-signal is useful for getting backtraces from
1414         emacsclient (Bug#24616).
1416 2016-10-22  Noam Postavsky  <npostavs@gmail.com>
1418         Let describe-function work for lambda again
1420         Since commit "* lisp/help-fns.el (describe-function): More type
1421         checking[...]", `describe-function' throws a user-error when given a
1422         non-symbol.  This prevents the [back] button in a *Help* buffer from
1423         working when the page it goes back to describes an anonymous
1424         function (e.g., the result of `describe-key' on a key which is bound to
1425         a lambda form).
1427         * lisp/help-fns.el (describe-function): Move the checks on FUNCTION
1428         being an fbound symbol into the `interactive' form.  This allows
1429         non-interactive calls to pass an anonymous function (Bug #24221).  Note
1430         that passing a non-bound symbol non-interactively will still trigger a
1431         `void-function' error from `describe-function-1'.
1433 2016-10-22  Noam Postavsky  <npostavs@gmail.com>
1435         Fix kill-line's docstring
1437         * lisp/simple.el (kill-line): The effect of show-trailing-whitespace is
1438         important lines with *no* nonblanks (Bug #16654).
1440 2016-10-22  Noam Postavsky  <npostavs@gmail.com>
1442         Fix handling of allocation in regex matching
1444         `re_match_2_internal' uses pointers to the lisp objects that it
1445         searches.  Since it may call malloc when growing the "fail stack", these
1446         pointers may be invalidated while searching, resulting in memory
1447         curruption (Bug #24358).
1449         To fix this, we check the pointer that the lisp object (as specified by
1450         re_match_object) points to before and after growing the stack, and
1451         update existing pointers accordingly.
1453         * src/regex.c (STR_BASE_PTR): New macro.
1454         (ENSURE_FAIL_STACK, re_search_2): Use it to convert pointers into
1455         offsets before possible malloc call, and back into pointers again
1456         afterwards.
1457         (POS_AS_IN_BUFFER): Add explanatory comment about punning trick.
1458         * src/search.c (search_buffer): Instead of storing search location as
1459         pointers, store them as pointers and recompute the corresponding address
1460         for each call to `re_search_2'.
1461         (string_match_1, fast_string_match_internal, fast_looking_at):
1462         * src/dired.c (directory_files_internal): Set `re_match_object' to Qnil
1463         after calling `re_search' or `re_match_2'.
1464         * src/regex.h (re_match_object): Mention new usage in commentary.
1466 2016-10-21  Paul Eggert  <eggert@cs.ucla.edu>
1468         * lisp/electric.el (electric-quote-mode): Improve doc (Bug#24759).
1470 2016-10-20  Tino Calancha  <tino.calancha@gmail.com>
1472         vc-region-history: Search just on lines intersecting the region
1474         * lisp/vc/vc.el (vc-region-history): If region ends in the beginning
1475         of a line, then exclude that line from the search (Bug#24725).
1477 2016-10-19  Eli Zaretskii  <eliz@gnu.org>
1479         Fix documentation of 'alist-get'
1481         * doc/lispref/lists.texi (Association Lists): Fix the signature of
1482         'alist-get'.  Fix the markup, the wording, and the punctuation in
1483         the description. (Bug#24740)
1485 2016-10-19  Eli Zaretskii  <eliz@gnu.org>
1487         * src/regex.h (re_match_object): Improve commentary.
1489 2016-10-19  Alan Third  <alan@idiocy.org>
1491         Fix cursor at bottom left of rectangle (bug#24364)
1493         * lisp/rect.el (rectangle--col-pos): Don't assume point at EOL doesn't
1494         require rectangle--point-crutches to be set.
1496 2016-10-19  Michael Albinus  <michael.albinus@gmx.de>
1498         Change Tramp version to "2.2.13.25.2"
1500         * doc/misc/trampver.texi:
1501         * lisp/net/trampver.el: Change version to "2.2.13.25.2".
1503 2016-10-19  Eli Zaretskii  <eliz@gnu.org>
1505         * lisp/emacs-lisp/autoload.el (update-directory-autoloads): Fix last change.
1507 2016-10-19  Eli Zaretskii  <eliz@gnu.org>
1509         Don't scan compiled module files for autoloads
1511         * lisp/emacs-lisp/autoload.el (update-directory-autoloads): Ignore
1512         compiled module files.  Make sure the extension really ends the
1513         file name.
1515 2016-10-18  Michael Albinus  <michael.albinus@gmx.de>
1517         Fix Bug#24698
1519         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
1520         Don't send "stty tab0" to *BSD and Darwin machines.  (Bug#24698)
1522 2016-10-18  Eli Zaretskii  <eliz@gnu.org>
1524         * lisp/subr.el (start-process): Doc fix.  (Bug#24693)
1526 2016-10-18  Göktuğ Kayaalp  <self@gkayaalp.com>
1528         Fix display of vc-dir CVS file statuses in subdirectories
1530         * lisp/vc/vc-cvs.el (vc-cvs-dir-status-files): Use 'cvs update'
1531         instead of 'cvs status'.  It's faster, easier to parse, and
1532         relieves us of the need to use vc-expand-dirs.  (Bug#24082)
1533         (vc-cvs-after-dir-status): Parse its output.
1535 2016-10-17  Eli Zaretskii  <eliz@gnu.org>
1537         Update URL of MS-Windows optional DLLs
1539         * nt/README.W32:
1540         * nt/INSTALL: Update the URL of the MS-Windows binaries of the
1541         optional libraries built with MSYS2/MinGW64 project tools.
1543 2016-10-17  Eli Zaretskii  <eliz@gnu.org>
1545         Fix time-related data types in 2 editfns.c functions
1547         * src/editfns.c (format_time_string, Fcurrent_time_zone): Pass a
1548         pointer to time_t value to emacs_localtime_rz and gmtime_r,
1549         instead of relying on struct timespec's tv_sec member to be of
1550         compatible type.
1552 2016-10-17  Tino Calancha  <f92capac@gmail.com>
1554         * lisp/simple.el (process-menu-mode, list-processes--refresh):
1555         Include PID.  (Bug#21725)
1557         (cherry picked from commit b7adc2f23787eb72015cd705b873e229db6a5049)
1559 2016-10-17  Tino Calancha  <f92capac@gmail.com>
1561         * lisp/ibuf-ext.el (ibuffer-do-shell-command-file):
1562         Fix non-file-visiting-buffer case.  (Bug#22678)
1564         (cherry picked from commit 738738259ba77fe17e433c64e0758ea59ab5bc75)
1566 2016-10-17  Tino Calancha  <f92capac@gmail.com>
1568         * lisp/ibuffer.el (ibuffer): Improve 'other-window' case.  (Bug#23617)
1570         (cherry picked from commit f4ef1a1fea15aa58fbb5e7a59bff260720658e49)
1572 2016-10-17  Paul Eggert  <eggert@cs.ucla.edu>
1574         Port to Ubuntu 16.10, which needs gcc -nopie
1576         * configure.ac (emacs_cv_prog_cc_no_pie): Rename from
1577         emacs_cv_prog_cc_nopie.  All usages changed.  Check for -no-pie in
1578         preference to -nopie (Bug#24682).  Backport from master.
1580 2016-10-17  Glenn Morris  <rgm@gnu.org>
1582         * lisp/cus-start.el (exec-path): Handle nil elements.  (Bug#24471)
1584 2016-10-16  Andreas Politz  <politza@hochschule-trier.de>
1586         Catch the imenu-unavailable error in sh-mode completion table
1588         * lisp/progmodes/sh-script.el (sh--cmd-completion-table):
1589         Catch the imenu-unavailable error (bug#24238).
1591 2016-10-16  Eli Zaretskii  <eliz@gnu.org>
1593         More char-width fixes
1595         * lisp/international/characters.el (char-width-table): More fixes
1596         according to the latest EastAsianWidth.txt.  (Bug#24705)
1598 2016-10-15  Eli Zaretskii  <eliz@gnu.org>
1600         Fix char-width-table values for some Emoji
1602         * lisp/international/characters.el (char-width-table): Add missing
1603         range U+1F400..U+1F43E.  (Bug#24699)
1605         * admin/notes/unicode: Mention the need to verify char-width-table
1606         setting against data in EastAsianWidth.txt.
1608 2016-10-15  Eli Zaretskii  <eliz@gnu.org>
1610         Keep point when switching from and to *terminal* buffer
1612         * lisp/term.el (term-reset-size): Don't reset the size if it
1613         didn't change.  If the size did change, restore point after
1614         adjusting the size.  (Bug#24465)
1616 2016-10-15  Michael Albinus  <michael.albinus@gmx.de>
1618         * INSTALL: Use correct Emacs release number 25.
1620 2016-10-14  Eli Zaretskii  <eliz@gnu.org>
1622         Avoid crashes due to objects read with the #n=object form
1624         * src/lread.c (read1): Use Fcons for 'placeholder', not AUTO_CONS,
1625         because elements of the list in 'read_objects' cannot be allocated
1626         off the stack.  (Bug#24640)
1628 2016-10-13  Eli Zaretskii  <eliz@gnu.org>
1630         Improve doc string of 'completion-at-point-functions'
1632         * lisp/minibuffer.el (completion-at-point-functions): Doc fix.
1633         (Bug#24663)
1635 2016-10-13  Philipp Stephani  <phst@google.com>
1637         Fix crash in evaluating functions
1639         See Bug#24673
1641         * src/eval.c (funcall_lambda): Fix crash for bogus functions such
1642         as (closure).
1644 2016-10-13  Paul Eggert  <eggert@cs.ucla.edu>
1646         * src/filelock.c (current_lock_owner): Update comment.
1648 2016-10-12  Paul Eggert  <eggert@cs.ucla.edu>
1650         Port --enable-gcc-warnings to GCC 6.2.1
1652         Backport from master.
1653         * src/conf_post.h (GNUC_PREREQ): New macro.
1654         * src/keyboard.c: Use it to work around GCC bug 54561.
1655         * src/process.c (would_block): New function.
1656         (server_accept_connection, wait_reading_process_output, send_process):
1657         Use it.
1659 2016-10-12  Paul Eggert  <eggert@cs.ucla.edu>
1661         Work around Samba bug with ':' in symlink contents
1663         * src/filelock.c (current_lock_owner): When reading the contents
1664         of a lock, treat the UTF-8 for U+F022 as if it were ':' (Bug#24656).
1665         Backport from master.
1667 2016-10-12  Paul Eggert  <eggert@cs.ucla.edu>
1669         Port last_marked change to full-program optimizers
1671         * src/alloc.c (last_marked): Now EXTERNALLY_VISIBLE.
1673 2016-10-12  Eli Zaretskii  <eliz@gnu.org>
1675         Adapt GDB scripts to '--enable-check-lisp-object-type' builds
1677         * etc/emacs-buffer.gdb <$qnil>: New variable.
1678         (ybuffer-list, yset-buffer): Use $qnil for comparing against
1679         'nil', as direct comparison with Qnil doesn't work in a build with
1680         '--enable-check-lisp-object-type'.
1682         * src/.gdbinit: Adapt commands of the temporary breakpoint in
1683         init_sys_modes to a build with '--enable-check-lisp-object-type'.
1685 2016-10-11  Eli Zaretskii  <eliz@gnu.org>
1687         Avoid optimizing out the last_marked[] array
1689         * src/alloc.c <last_marked>: No longer 'static', to avoid having
1690         it optimized out in optimized builds, which then makes debugging
1691         GC problems harder.
1693 2016-10-09  Alan Mackenzie  <acm@muc.de>
1695         CC Mode manual: remove reference to former Emacs variable last-command-char
1697         * doc/misc/cc-mode.texi (Hanging Semicolons and Commas): Replace reference to
1698         variable last-command-char by one to macro c-last-command-char.
1700 2016-10-08  Eli Zaretskii  <eliz@gnu.org>
1702         Allow to disable compaction of font caches
1704         * src/font.c (syms_of_font) <inhibit-compacting-font-caches>: New
1705         boolean variable.
1706         * src/alloc.c (compact_font_caches): Use it to bypass the call to
1707         compact_font_cache_entry.  (Bug#24634)  (Bug#24565)
1709         * etc/NEWS: Mention the new variable.
1711 2016-10-08  Eli Zaretskii  <eliz@gnu.org>
1713         Allow selection of font for symbols as in Emacs 24.x
1715         * src/fontset.c (syms_of_fontset) <use-default-font-for-symbols>:
1716         New boolean variable.
1717         (face_for_char): Use it to fall back to pre-Emacs 25.1 behavior
1718         when selecting fonts for displaying symbol and punctuation
1719         characters.  (Bug#24644)
1721         * etc/NEWS: Mention the new variable.
1723 2016-10-08  Eli Zaretskii  <eliz@gnu.org>
1725         Fix horizontal scrolling during Isearch
1727         * lisp/isearch.el (isearch-update): Compute the window's body
1728         width in a way that is correct when there are no fringes.
1729         (Bug#24584)
1731 2016-10-08  Eli Zaretskii  <eliz@gnu.org>
1733         Fix infloop in redisplay due to truncated lines and invisible text
1735         * src/xdisp.c (forward_to_next_line_start): Don't call
1736         'get_next_display_element' after finding the end of line.  This
1737         avoids setting the row's end position to the wrong value when the
1738         next screen line begins with invisible text; that wrong value
1739         caused set_cursor_from_row position the cursor in the wrong screen
1740         line, and eventually triggered bug#24109.
1742 2016-10-07  David Engster  <deng@randomsample.de>
1744         gitmerge: Add cherry pick to gitmerge-skip-regexp
1746         * admin/gitmerge.el (gitmerge-skip-regexp): Add "cherry picked
1747         from commit", which is the string appended by 'git cherry-pick
1748         -x'.
1750         (cherry picked from commit f648e4866981b142fca788372e1fd9013a0bb16a)
1752 2016-10-06  Eli Zaretskii  <eliz@gnu.org>
1754         Improve documentation of 'menu-bar-open'
1756         * lisp/term/w32-win.el (w32-menu-bar-open): Clarify that sometimes
1757         two ESC keypresses are needed to exit the menu.
1759         * doc/emacs/screen.texi (Menu Bar): Qualify the description of how
1760         to exit menus.  (Bug#24596)
1762 2016-10-06  Eli Zaretskii  <eliz@gnu.org>
1764         Fix compilation with MinGW runtime 3.22.2 and w32api 3.18.2
1766         * nt/inc/ms-w32.h (_WIN32_WINNT) [!MINGW_W64]: Undefine before
1767         defining to avoid redefinition warnings.
1769         * nt/inc/sys/stat.h (_SYS_STAT_H, _INC_STAT_H): Define, to avoid
1770         inclusion of sys/stat.h from the system headers, which could then
1771         lead to compilation errors due to redefinition of 'struct stat'
1772         etc.  This is needed because latest versions of MinGW runtime
1773         include sys/stat.h from wchar.h.
1775         * src/image.c (__MINGW_MAJOR_VERSION) [WINDOWSNT]: Temporarily
1776         redefine to 4 to avoid conflict between 2 definitions of
1777         MemoryBarrier.  (Bug#24613)
1779         Do not merge to master!
1781 2016-10-05  John Wiegley  <johnw@newartisans.com>
1783         Add documentation note from Alex
1785 2016-10-05  Aurelien Aptel  <aaptel@suse.com>
1787         * src/alloc.c: call only non-null finalizers
1789 2016-10-04  Karl Fogel  <kfogel@red-bean.com>
1791         Clarify that doc fixes are okay in feature freeze
1793         * CONTRIBUTE (branches): Explain that doc fixes are always safe, even
1794         on a release branch in feature freeze.  Tweak wording of paragraph
1795         after that to avoid a misleading contrast.
1797 2016-10-04  Eli Zaretskii  <eliz@gnu.org>
1799         Avoid crashes when setting the cursor
1801         * src/xdisp.c (display_and_set_cursor): Don't index glyphs of a
1802         glyph row if hpos is out of valid bounds.  This avoids crashes in
1803         some rare cases.  (Bug#24614)
1805 2016-10-04  Philippe Vaucher  <philippe.vaucher@gmail.com>
1807         Restore 'command-debug-status' functionality
1809         * src/callint.c (Fcall_interactively): Bind command-debug-status
1810         to nil.  This restores functionality inadvertently removed in
1811         Emacs 25.1.  (Bug#24555)
1813         * lisp/subr.el (command-debug-status): Declare obsolete.
1815         * doc/lispref/debugging.texi (Internals of Debugger): Document
1816         that 'command-debug-status' is obsolete.
1818 2016-10-03  Karl Fogel  <kfogel@red-bean.com>
1820         Document yank behavior in the right place
1822         * lisp/simple.el (yank): Document the handling of the
1823         `yank-handled-properties' and `yank-excluded-properties' variables,
1824         and the `yank-handler' text property.
1825         (yank-pop): Refer to `yank' now (bug#286)
1827         * lisp/subr.el (insert-for-yank): Refer to `yank' now.
1828         (insert-for-yank-1): Refer to `insert-for-yank' now.
1830         See this thread for discussion:
1832           https://lists.gnu.org/archive/html/emacs-devel/2016-09/threads.html#00329
1833           From: Karl Fogel
1834           To: Emacs Devel
1835           Subject: Question about intended behavior of 'insert-for-yank-1'.
1836           Date: Mon, 12 Sep 2016 00:17:14 -0500
1837           Message-ID: <874m5lr92d.fsf@red-bean.com>
1839 2016-10-03  Philipp Stephani  <phst@google.com>
1841         Document nil args of compare-buffer-substrings
1843         * src/editfns.c (Fcompare_buffer_substrings): Document behavior when
1844         the arguments are nil.
1846 2016-10-03  Katsumi Yamaoka  <yamaoka@jpl.org>
1848         * doc/misc/message.texi (Bcc Warning): Fix markup.
1850         * doc/misc/message.texi (Bcc Warning):
1851         Document mml-secure-safe-bcc-list.
1853 2016-10-02  Noam Postavsky  <npostavs@gmail.com>
1855         Don't require isearch-update before isearch-done
1857         It is useful to be able to call `isearch-done' unconditionally to
1858         ensure a non-isearching state.
1860         * lisp/isearch.el (isearch-done): Check that `isearch--current-buffer'
1861         is a live buffer before using it (Bug #21091).
1862         * test/automated/isearch-tests.el (isearch--test-done): Test it.
1864         (cherry picked from commit 68f4b5292781bc331b040105c4079902b993835c)
1866 2016-10-02  Peder O. Klingenberg  <peder@klingenberg.no>
1868         Avoid error in icalendar--read-element
1870         * lisp/calendar/icalendar.el (icalendar--read-element): Avoid a regex
1871         stack overflow by not using regex to extract values from calendar
1872         events. (Bug#24315)
1874         (cherry picked from commit 55dde6c1a21a792d3d75c19e612c74dd054aaf1e)
1876 2016-10-02  Lars Ingebrigtsen  <larsi@gnus.org>
1878         Make a menu less ambiguous
1880         * doc/emacs/custom.texi (Key Bindings): The Modifier Keys node
1881         is about using modifier keys, not binding them (bug#10942).
1883         (cherry picked from commit 214f85a0a68b96a552ca605d601b33f6eef5c4ca)
1885 2016-10-02  Devon Sean McCullough  <Emacs-Hacker2012@jovi.net>
1887         Doc fix for url-http
1889         * lisp/url/url-http.el (url-http): Document better return values
1890           (bug#13187) (tiny change)
1892         (cherry picked from commit 344303c8d9cb03d4778a73940e80e966280aa694)
1894 2016-10-01  Eli Zaretskii  <eliz@gnu.org>
1896         * lisp/frame.el (blink-cursor-delay): Doc fix.  (Bug#24372)
1898 2016-09-30  Katsumi Yamaoka  <yamaoka@jpl.org>
1900         * lisp/gnus/gnus-art.el (gnus-button-handle-library): Fix typo.
1902 2016-09-27  Paul Eggert  <eggert@cs.ucla.edu>
1904         Regexp Functions doc minor fixes
1906         * doc/lispref/searching.texi (Regexp Functions):
1907         Fix misspelling of “matching”.  Use @table for table.
1908         Reformat code example to fit into info file width (Bug#17862).
1910 2016-09-27  Katsumi Yamaoka  <yamaoka@jpl.org>
1912         Backport mm-convert-shr-links fix from master (bug#23964)
1914         * lisp/gnus/mm-decode.el (mm-convert-shr-links):
1915         Preserve key bindings that shr adds (bug#23964).
1917 2016-09-26  Eli Zaretskii  <eliz@gnu.org>
1919         Improve documentation of 'expand-abbrev' and wrapper hooks
1921         * lisp/simple.el (filter-buffer-substring-functions)
1922         (buffer-substring--filter): Add a link to 'with-wrapper-hook' as
1923         the place to look for documentation of wrapper hooks.
1924         * lisp/minibuffer.el (completion-in-region-functions)
1925         (completion--in-region): Add a link to 'with-wrapper-hook' as the
1926         place to look for documentation of wrapper hooks.
1927         * lisp/abbrev.el (expand-abbrev, abbrev--default-expand): Clarify
1928         the doc strings.  (Bug#24540)
1930         * doc/lispref/text.texi (Buffer Contents): Mention
1931         'with-wrapper-hook's doc string as the place to learn about that
1932         obsolete facility.
1934 2016-09-25  Eli Zaretskii  <eliz@gnu.org>
1936         Minor copyedits of MS-Windows installation instructions
1938         * nt/INSTALL:
1939         * nt/README.W32: Add URL of Emacs dependencies on alpha.gnu.org.
1941 2016-09-23  Eli Zaretskii  <eliz@gnu.org>
1943         Fix display of cursor when 'blink-cursor-delay' has small value
1945         * lisp/frame.el (blink-cursor-check, blink-cursor-mode):
1946         Protect ourselves against too small values of blink-cursor-delay.
1947         This avoids erratic display of the cursor, or even failure to
1948         display it, when user types text at high speed or leans on a key
1949         to invoke the keyboard auto-repeat feature.  (Bug#24372)
1951 2016-09-23  Eli Zaretskii  <eliz@gnu.org>
1953         Improve the doc string of 'format'
1955         * src/editfns.c (Fformat): Fix ambiguity in the doc string's usage
1956         of a literal period.  (Bug#24407)
1958         This was backported from master
1959         (cherry picked from commit 7123896626b06c26c4e37839ab41e41980c8f433)
1961 2016-09-23  Eli Zaretskii  <eliz@gnu.org>
1963         Improve doc strings in whitespace.el
1965         * lisp/whitespace.el (whitespace-mode, whitespace-newline-mode)
1966         (global-whitespace-mode, global-whitespace-newline-mode): Improve
1967         the doc strings.  (Bug#24413)
1969         This was backported from master
1970         (cherry picked from commit 3462fe73351f3da5bc3ebf8296ee44dd2e6b1dbc)
1972 2016-09-23  Eli Zaretskii  <eliz@gnu.org>
1974         Improve detectability of 'next-logical-line' and 'previous-logical-line'
1976         * lisp/simple.el (next-line, previous-line): Mention
1977         'next-logical-line' and 'previous-logical-line' in the doc
1978         strings.  (Bug#24443)
1980         This was backported from master
1981         (cherry picked from commit e95d0d15bb1534803b0adb3c3a927c8beb7d4e79)
1983 2016-09-23  Martin Rudalics  <rudalics@gmx.at>
1985         Fix (next-frame nil t) crash (Bug#24281)
1987         * src/frame.c (candidate_frame): Check minibuf argument before
1988         comparing it to zero (Bug#24281).
1990         This was backported from master
1991         (cherry picked from commit dc491c3df305a73908fe8de20b7c428a5b38c846)
1993 2016-09-23  Noam Postavsky  <npostavs@gmail.com>
1995         Fix debugging of string-match-p errors
1997         * src/eval.c (call_debugger): Bind inhibit-changing-match-data to nil so
1998         that debugger code that needs to do regexp match won't break
1999         (Bug #23949, Bug #24166, Bug#16294).
2001         This was backported from master
2002         (cherry picked from commit 7fb75680b38fe0805c2ff7e9cca3bec8121ba984)
2004 2016-09-23  Eli Zaretskii  <eliz@gnu.org>
2006         Fix region display while dragging mouse
2008         * lisp/mouse.el (mouse-drag-track): Reset deactivate-mark in the
2009         buffer of the drag event, to allow mark to be set and the region
2010         be shown as we drag the mouse.  (Bug#24030)
2012         This was backported from master
2013         (cherry picked from commit 7d58b02f363ab02961faa950d1ba727df96f2f19)
2015 2016-09-23  Eli Zaretskii  <eliz@gnu.org>
2017         Fix 'vertical-motion' and 'posn-at-point' under 'visual-line-mode'
2019         * src/xdisp.c (move_it_in_display_line_to): Don't assume we can
2020         wrap on a whitespace character if it's followed by another
2021         whitespace character.  When returning under WORD_WRAP for a screen
2022         line that is continued, restore to wrap point when atpos/atx
2023         position would be displayed on the next screen line due to
2024         line-wrap.  (Bug#23570)
2026         This is backported from master
2027         (cherry picked from commit 99848b37d2c3e14c0af45fc6da437a806aa58a80)
2029 2016-09-23  Paul Eggert  <eggert@cs.ucla.edu>
2031         Improve display of tex-verbatim and Info quoted
2033         Problem reported by Glenn Morris (Bug#19889).
2034         * doc/emacs/display.texi (Standard Faces):
2035         * doc/lispref/display.texi (Basic Faces):
2036         * etc/NEWS: Mention fixed-pitch-serif.
2037         * lisp/faces.el (face-font-family-alternatives):
2038         New family alias Monospace Serif.
2039         (fixed-pitch-serif): New face, which uses the new family.
2040         * lisp/info.el (Info-quoted):
2041         * lisp/textmodes/tex-mode.el (tex-verbatim): Use the new face.
2042         * test/automated/font-parse-tests.el (font-parse-tests--data):
2043         Add test case for Monospace Serif.
2045         This is backport from master
2046         (cherry picked from commit 36906806ccfc0e53f1d8c365ab0d7151288b7833)
2048 2016-09-23  Lars Ingebrigtsen  <larsi@gnus.org>
2050         Document how to check for ImageMagick support
2052         * doc/lispref/display.texi (ImageMagick Images): Say how to
2053         check for ImageMagick support, which isn't quite obvious
2054         (bug#20702).
2056         This is backport from master
2057         (cherry picked from commit faf07d646575c78d6d956ce91820ebbf38308553)
2059 2016-09-23  Tino Calancha  <f92capac@gmail.com>
2061         Run find-function-after-hook after finding a symbol
2063         * lisp/emacs-lisp/find-func.el (find-library):
2064         * lisp/help-mode.el (help-function-def, help-variable-def):
2065         Run `find-function-after-hook' inside the help-function of the
2066         buttons (bug#22583).
2067         * etc/NEWS: Mention the change.
2069         This is a backport from master.
2070         (cherry picked from commit f069d854508946bcc03e4c77ceb430748e3ab6d7)
2072 2016-09-23  Eli Zaretskii  <eliz@gnu.org>
2074         Document 'timerp'
2076         * doc/lispref/os.texi (Timers): Document 'timerp'.  (Bug#24511)
2077         Improve indexing.
2079 2016-09-23  Eli Zaretskii  <eliz@gnu.org>
2081         Improve documentation of overlay priorities
2083         * doc/lispref/display.texi (Overlay Properties): Minor copyedits.
2084         By popular demand, mention the '(PRIMNARY . SECONDARY)' form of
2085         overlay properties used for the region.  (Bug#20253)
2087 2016-09-23  Eli Zaretskii  <eliz@gnu.org>
2089         Fix 'dired-compress-files'
2091         * lisp/dired-aux.el (dired-do-compress-to): Make sure the archive
2092         file name is fully expanded by running it through
2093         'expand-file-name'.  Suggested by Drew Adams <drew.adams@oracle.com>.
2094         (Bug#24486)  Doc fix.
2095         * lisp/dired.el: Regenerated changes in autoloads.
2097 2016-09-23  Eli Zaretskii  <eliz@gnu.org>
2099         Update commentary of STRING_CHAR and FETCH_MULTIBYTE_CHAR
2101         * src/character.h (STRING_CHAR):
2102         * src/buffer.h (FETCH_MULTIBYTE_CHAR): Update commentary: these
2103         two macros no longer do any character unification, so the caveats
2104         in those comments are no longer pertinent.
2106 2016-09-23  Eli Zaretskii  <eliz@gnu.org>
2108         Increment Emacs version to 25.1.50
2110         * README:
2111         * configure.ac:
2112         * etc/NEWS:
2113         * msdos/sed2v2.inp: Bump the version to 25.1.50.
2115 2016-09-21  Eli Zaretskii  <eliz@gnu.org>
2117         Document the optional zlib library in MS-Windows builds
2119         * nt/README.W32:
2120         * nt/INSTALL.W64:
2121         * nt/INSTALL: Mention the optional text decompression support and
2122         the zlib library.
2124 2016-09-21  Eli Zaretskii  <eliz@gnu.org>
2126         Fix tagging of DEFUN by etags
2128         * lib-src/etags.c (C_entries): Tag DEFUN twice: once with its C
2129         name, and then again with its Lisp name.  This restores the
2130         ability to find Lisp primitives by their C name, which was lost
2131         when the etags back-end was switched to a more strict search
2132         criteria.
2134         * test/etags/ETAGS.good_1:
2135         * test/etags/ETAGS.good_2:
2136         * test/etags/ETAGS.good_3:
2137         * test/etags/ETAGS.good_4:
2138         * test/etags/ETAGS.good_5:
2139         * test/etags/ETAGS.good_6:
2140         * test/etags/CTAGS.good: Adapt to the changes in etags.c wrt
2141         tagging DEFUN.
2143 2016-09-21  Eli Zaretskii  <eliz@gnu.org>
2145         Avoid resetting track-mouse by mouse clicks
2147         * lisp/mouse.el (mouse-drag-line, mouse-drag-track): Don't assume
2148         the previous value of track-mouse is nil; instead, save and
2149         restore the previous value.  (Bug#24480)
2151 2016-09-20  Eli Zaretskii  <eliz@gnu.org>
2153         Improve nt/README.W32 instructions
2155         * nt/README.W32: Add instructions for installing 64-bit builds of
2156         optional libraries.  (Bug#24470)
2158 2016-09-17  Eli Zaretskii  <eliz@gnu.org>
2160         Document that desktop file overrides frame parameters
2162         * doc/emacs/misc.texi (Saving Emacs Sessions):
2163         * doc/emacs/frames.texi (Frame Parameters): Document that frame
2164         parameters restored by desktop.el take precedence over the
2165         customizations in the init file, and explain how to countermand
2166         that.  For the details of the issue, see
2167         http://lists.gnu.org/archive/html/emacs-devel/2016-09/msg00318.html.
2169 2016-09-15  Nicolas Petton  <nicolas@petton.fr>
2171         * etc/AUTHORS: Regenerate the AUTHORS file
2173 2016-09-16  Nicolas Petton  <nicolas@petton.fr>
2175         * Version 25.1 released.
2177 2016-09-15  Nicolas Petton  <nicolas@petton.fr>
2179         * etc/AUTHORS: Regenerate the AUTHORS file
2181 2016-09-15  Eli Zaretskii  <eliz@gnu.org>
2183         Update admin/authors.el
2185         * admin/authors.el (authors-fixed-entries): Add an entry for Bob
2186         Weiner.
2188 2016-09-14  Eli Zaretskii  <eliz@gnu.org>
2190         Update Antinews in ELisp manual
2192         * doc/lispref/anti.texi (Antinews): Update for Emacs 25.1.
2193         * doc/lispref/elisp.texi (Top): Update the main menu entry for
2194         Antinews.
2196 2016-09-11  Noam Postavsky  <npostavs@gmail.com>
2198         Fix comments on window height macros
2200         * src/window.h (WINDOW_MODE_LINE_HEIGHT, WINDOW_HEADER_LINE_HEIGHT): Fix
2201         confusing claim that "height is in pixels and in lines"; in fact it's in
2202         pixels.
2204 2016-09-10  Toke Høiland-Jørgensen  <toke@toke.dk>  (tiny change)
2206         Fix 'url-http-create-request' when cookies are used
2208         * lisp/url/url-http.el (url-http-create-request): Make sure the
2209         cookie headers are a unibyte string.  For the details, see
2210         http://lists.gnu.org/archive/html/emacs-devel/2016-09/msg00202.html.
2212 2016-09-08  Martin Rudalics  <rudalics@gmx.at>
2214         Fix cross reference in frames.texi
2216         * doc/lispref/frames.texi (Minibuffers and Frames): Fix cross
2217         reference.
2219 2016-09-04  immerrr  <immerrr@gmail.com>
2221         Fix regexp-opt documentation (bug #17862)
2223         * lisp/emacs-lisp/regexp-opt.el (regexp-opt):
2224         * doc/lispref/searching.texi (Regexp Functions): Update PAREN doc.
2226 2016-08-31  Nicolas Richard  <youngfrog@members.fsf.org>
2228         * lisp/emacs-lisp/gv.el (gv-ref): Fix example of PLACE in docstring.
2230 2016-08-27  Noam Postavsky  <npostavs@gmail.com>
2232         Fix tags-query-replace docstring
2234         * lisp/progmodes/etags.el (tags-query-replace): Remove incorrect info
2235         regarding non-existent parameters.
2237 2016-08-26  Eli Zaretskii  <eliz@gnu.org>
2239         Clarify documentation of precision in format specs
2241         * doc/lispref/strings.texi (Formatting Strings): Be less
2242         definitive wrt what precision means in format specs other than
2243         floating-point, %s and %S.  (Bug#24314)
2245 2016-08-24  Eli Zaretskii  <eliz@gnu.org>
2247         Improve and clarify documentation of subprocesses
2249         * doc/lispref/processes.texi (Subprocess Creation, Shell Arguments):
2250         Mention 'make-process' rather than 'start-process'.  Update wrt
2251         standard destinations of standard output/error streams and due to
2252         different formats of arguments accepted by 'make-process'.
2253         (Processes): Mention process objects that represent connections.
2254         (Synchronous Processes): Minor clarifications.
2255         (Asynchronous Processes): Describe 'make-process' and
2256         'make-pipe-process' before 'start-process'.  Update and expand the
2257         documentation.
2258         (Deleting Processes, Process Information, Input to Processes)
2259         (Signals to Processes, Query Before Exit, Network): Update and
2260         expand the documentation, especially wrt process objects that
2261         represent connections.
2262         (Output from Processes): Mention the possibility of separating
2263         stderr via 'make-process'.
2264         (Filter Functions): Mention that stderr by default arrives at the
2265         filter function together with stdout.  (Bug#24287)
2267         * src/process.c (Fprocess_id, Fprocess_command)
2268         (Fprocess_contact, Fprocess_type, Fstop_process): Doc fixes for
2269         process objects that represent connections.
2271 2016-08-23  Paul Eggert  <eggert@cs.ucla.edu>
2273         * etc/PROBLEMS: Mention gnutls-cli 3.5.3 (Bug#24247).
2275 2016-08-21  Nicolas Petton  <nicolas@petton.fr>
2277         * etc/AUTHORS: Update the AUTHORS file
2279 2016-08-20  Philipp Stephani  <phst@google.com>
2281         Some assorted documentation clarifications
2283         * src/fileio.c (Fwrite_region): Clarify that END is ignored if
2284         START is nil.
2285         * src/editfns.c (Fbuffer_size): Add short discussion about
2286         narrowing.
2287         * src/callproc.c (Fcall_process_region): Discuss behavior when
2288         START and END are not buffer positions.
2290 2016-08-18  Eli Zaretskii  <eliz@gnu.org>
2292         Improve commentary in src/character.h
2294         * src/character.h (BYTES_BY_CHAR_HEAD, MULTIBYTE_LENGTH)
2295         (MULTIBYTE_LENGTH_NO_CHECK, STRING_CHAR_AND_LENGTH): Remove stale
2296         info from commentary and improve it.
2298 2016-08-17  Dmitry Gutov  <dgutov@yandex.ru>
2300         * etc/NEWS: Mention the change in json-encode-string.
2302         The change was made to fix bug#20154, and came up again in bug#24239.
2304 2016-08-16  Eli Zaretskii  <eliz@gnu.org>
2306         * src/doc.c (Fsubstitute_command_keys): Another fix for smart quotes.
2308         (Bug#24206)
2310 2016-08-16  Eli Zaretskii  <eliz@gnu.org>
2312         Avoid segfaults due to quoting in 'substitute-command-keys'
2314         * src/doc.c (Fsubstitute_command_keys): Correct character counts
2315         when the input string is unibyte.  (Bug#24206)
2317 2016-08-16  Martin Rudalics  <rudalics@gmx.at>
2319         In NEWS describe new handling of window margins (Bug#24193)
2321         * etc/NEWS: Describe new handling of margins when splitting or
2322         resizing windows (Bug#24193).
2324 2016-08-16  Martin Rudalics  <rudalics@gmx.at>
2326         Facultatively ignore margins when splitting and resizing windows (Bug#24193)
2328         Provide a new window parameter 'min-margins' which allows to
2329         ignore the actual widths of a window's margins when splitting or
2330         resizing that window horizontally.  This should serve as a
2331         workaround for handling the problems raised by Bug#24193.
2333         * lisp/window.el (window--min-size-1): Handle new window
2334         parameter 'min-margins'.
2335         (split-window): Fix text of error messages.
2336         * doc/lispref/windows.texi (Window Parameters): Describe new
2337         parameter 'min-margins'.
2339 2016-08-14  Noam Postavsky  <npostavs@gmail.com>
2341         Document CATEGORY arg to modify-category-entry
2343         * src/category.c (Fmodify_category_entry): Document CATEGORY argument.
2345 2016-08-13  Noam Postavsky  <npostavs@gmail.com>
2347         Document char-script-table's effect on word motion
2349         * doc/lispref/positions.texi (Word Motion): Talk about
2350         char-script-table (Bug #10494).
2352 2016-08-13  Eli Zaretskii  <eliz@gnu.org>
2354         Further fix for 'url-http-create-request' and multibyte strings
2356         * lisp/url/url-http.el (url-http-create-request): Run
2357         url-mime-charset-string through url-http--encode-string.
2358         (Bug#24117)
2360 2016-08-13  Noam Postavsky  <npostavs@gmail.com>
2362         Fix docstring of eval-expression
2364         * lisp/simple.el (eval-expression): Fix the docstring to reflect the
2365         fact that the prefix argument does not affect formatting for
2366         integers (Bug #20691).
2368 2016-08-11  Eli Zaretskii  <eliz@gnu.org>
2370         Clarify when 'cursor' property is in effect
2372         * doc/lispref/text.texi (Special Properties): Minor copyedits.
2373         (Bug#24179)
2375 2016-08-11  Dmitry Gutov  <dgutov@yandex.ru>
2377         Convert the remaining strings to unibyte before concatenating
2379         * lisp/url/url-http.el (url-http--encode-string): New function.
2380         (url-http-create-request): Use it to convert ASCII to unibyte.
2381         (Bug#24117)
2383 2016-08-11  Eli Zaretskii  <eliz@gnu.org>
2385         Fix bug with handling the bidi cache
2387         * src/xdisp.c (redisplay_window): Save and restore the state of
2388         the bidi cache before reusing the iterator after calls to
2389         try_window and try_window_reusing_current_matrix.
2391 2016-08-10  Eli Zaretskii  <eliz@gnu.org>
2393         * doc/lispref/text.texi (Change Hooks): Minor copyedits.
2395 2016-08-09  Eli Zaretskii  <eliz@gnu.org>
2397         Clarify documentation of before/after-change-functions
2399         * doc/lispref/text.texi (Change Hooks): Clarify that the hooks are
2400         not called in balanced pairs.
2402 2016-08-06  Noam Postavsky  <npostavs@gmail.com>
2404         Document use of vectors in keymaps
2406         * doc/lispref/keymaps.texi (Format of Keymaps): Mention vector
2407         format (Bug #14797).
2409 2016-08-03  Alan Third  <alan@idiocy.org>
2411         Post AppDefined events from the main thread ONLY (bug#23934)
2413         * src/nsterm.h: Make nextappdefined var not just GNUStep.
2414         * src/nsterm.m (ns_send_appdefined, sendFromMainThread): Remove GNUStep
2416 2016-08-03  John Wiegley  <johnw@newartisans.com>
2418         Update to the AUTHORS file for Bob Weiner
2420                 * etc/AUTHORS: Update the packages attributed to Bob Weiner
2422 2016-08-02  John Wiegley  <johnw@newartisans.com>
2424         Revert "Fix local printer set to left aligned string formatter."
2426         This reverts commit 8a38e948b039516e70176ebe20c5349e2ade6ac5.
2428 2016-08-02  John Wiegley  <johnw@newartisans.com>
2430         Revert "Fix ses-delete-blanks to delete only blanks + documentation."
2432         This reverts commit 3c97b0f7589e06aeb1ab0147f0ee32974c32926d.
2434 2016-08-02  John Wiegley  <johnw@newartisans.com>
2436         Revert "Fix English."
2438         This reverts commit b275cc76f0c5ab49e81445fcc3420c8772aefd42.
2440 2016-08-01  Eli Zaretskii  <eliz@gnu.org>
2442         Improve doc strings of 'gud-gdb' and 'gdb'
2444         * lisp/progmodes/gdb-mi.el (gdb):
2445         * lisp/progmodes/gud.el (gud-gdb): Doc fix.  (Bug#24125)
2447 2016-08-01  Eli Zaretskii  <eliz@gnu.org>
2449         Fix doc string of 'minibuffer-message-timeout'
2451         * src/keyboard.c (syms_of_keyboard) <minibuffer-message-timeout>:
2452         Doc fix.  (Bug#24123)
2454 2016-07-29  Vincent Belaïche  <vincentb1@users.sourceforge.net>
2456         Fix English.
2458         * doc/misc/ses.texi (Nonrelocatable references): Fix grammatically
2459           incorrect English.
2461 2016-07-29  Vincent Belaïche  <vincentb1@users.sourceforge.net>
2463         Fix ses-delete-blanks to delete only blanks + documentation.
2465         * doc/misc/ses.texi (Quick Tutorial): Mention the '!'
2466         'ses-range' modifier as an alternative to 'ses+'.
2467         (Advanced Features): Add a refernce to node 'Nonrelocatable
2468         references' concerning function 'ses-rename-cell'.
2469         (Standard formula functions): Mention the '!' 'ses-range'
2470         modifier as an alternative to 'ses-delete-blanks'.
2471         (More on cell printing): Fix fallback printer
2472         definition.  Minor editorial formatting changes.
2473         (Nonrelocatable references): Document the use of
2474         'ses-rename-cell' as a better way to make cell reference
2475         non-relocatable.
2476         (The data area): Document the presence of local printer
2477         definitions in the data area.
2479         * lisp/ses.el (ses-delete-blanks): Do not remove
2480         *error*.  Any error in an argument should propagate into the
2481         using formula rather than being silently hidden !
2483 2016-07-29  Noam Postavsky  <npostavs@gmail.com>
2485         profiler: document prefix arg for tree expansion
2487         * doc/lispref/debugging.texi (Profiling):
2488         * lisp/profiler.el (profiler-report-toggle-entry): Document use of
2489         prefix argument to expand whole call trees.
2491 2016-07-29  Noam Postavsky  <npostavs@gmail.com>
2493         Clarify usage of eshell-visual-options
2495         * lisp/eshell/em-term.el (eshell-visual-options): Add second option to
2496         example usage (Bug #19627).
2498 2016-07-29  Noam Postavsky  <npostavs@gmail.com>
2500         Fix comment in files-in-below-directory
2502         * doc/lispintro/emacs-lisp-intro.texi (Files List): Comment should not
2503         say append, since the code is adding to front of list (Bug #21589).
2505 2016-07-28  Vincent Belaïche  <vincentb1@users.sourceforge.net>
2507         Fix local printer set to left aligned string formatter.
2509         * lisp/ses.el (ses-local-printer-compile): Add missing case
2510         for left-aligned string formatter.
2512 2016-07-24  Nicolas Petton  <nicolas@petton.fr>
2514         Bump Emacs version to 25.1 for the first RC
2516         * README:
2517         * configure.ac:
2518         * lisp/ldefs-boot.el:
2519         * msdos/sed2v2.inp: Bump Emacs version to 25.1.
2521 2016-07-24  Nicolas Petton  <nicolas@petton.fr>
2523         * etc/AUTHORS: Update the AUTHORS file
2525         ;; * ChangeLog.2: ChangeLog update.
2527 2016-07-24  Nicolas Petton  <nicolas@petton.fr>
2529         * admin/authors.el (authors-valid-file-names): Addition.
2531 2016-07-23  Eli Zaretskii  <eliz@gnu.org>
2533         Warn about Cairo-related problems
2535         * etc/NEWS: Warn about known problems in the Cairo build.
2536         (Bug#23925)
2538 2016-07-23  Paul Pogonyshev  <pogonyshev@gmail.com>
2540         Don't let completion break `declare' handling
2542         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point): Fix to not alter
2543         `defun-declarations-alist' by side effect (Bug #23648).
2545 2016-07-23  Noam Postavsky  <npostavs@gmail.com>
2547         Adjust match data before calling after-change-funs
2549         It's important to adjust the match data in between calling
2550         before-change-functions and after-change-functions, so that buffer
2551         change hooks will always see match-data consistent with buffer content.
2552         (Bug #23917)
2554         * src/insdel.c (replace_range): Add new parameter ADJUST_MATCH_DATA, if
2555         true call update_search_regs.  Update all callers (except
2556         Freplace_match) to pass 0 for the new parameter.
2557         * src/search.c (update_search_regs): New function, extracted from
2558         Freplace_match.
2559         (Freplace_match): Remove match data adjustment code, pass 1 for
2560         ADJUST_MATCH_DATA to replace_range instead.
2562 2016-07-21  Mark Oteiza  <mvoteiza@udel.edu>
2564         Do not show string-rectangle preview if minibuffer is empty
2566         * lisp/rect.el (rectangle--string-preview): Remove condition that sets
2567         preview string to the default replacement string.
2569 2016-07-21  Achim Gratz  <Stromeko@nexgo.de>
2571         * etc/PROBLEMS: Add entry about selection problems under Plasma 5.
2573         Bug#24013
2575 2016-07-21  Paul Eggert  <eggert@cs.ucla.edu>
2577         Port to glibc 2.24 (pre-release) + ppc64
2579         Backport from master (Bug#24033).
2580         Inspired by a suggestion by Florian Weimer in:
2581         https://sourceware.org/ml/libc-alpha/2016-07/msg00425.html
2582         * src/emacs.c (main) [__PPC64__]:
2583         Special case for __PPC64__, which needs ASLR disabled in
2584         dumped Emacs too.
2586 2016-07-21  Katsumi Yamaoka  <yamaoka@jpl.org>
2588         * lisp/net/shr.el (shr-fill-line): Withdraw the last commit (4157159).
2590         * lisp/net/shr.el (shr-fill-line):
2591         Preserve text properties in folded lines (bug#24034).
2593 2016-07-17  Robert Cochran  <robert-git@cochranmail.com>  (tiny change)
2595         Expand FIXME near definition of fboundp
2597         This expansion of the FIXME is so that future developers are aware of
2598         the potential problems of aliasing fboundp to symbol-function without
2599         taking backwards compatibility into account.
2601         * src/data.c (fboundp): Note potential backwards compatibility issues in
2602         FIXME.
2604 2016-07-17  Noam Postavsky  <npostavs@gmail.com>
2606         kill-rectangle should mention killed-rectangle
2608         * lisp/rect.el (kill-rectangle): Mention `killed-rectangle' in docstring
2609         and warning message, rather than kill ring (Bug#19773).
2611 2016-07-16  Eli Zaretskii  <eliz@gnu.org>
2613         Avoid assertion violations in nhexl-mode
2615         * src/bidi.c (bidi_resolve_neutral): Convert an assertion to real
2616         code executed in all builds.  (Bug#24001)
2618 2016-07-15  Fredrik Bergroth  <fbergroth@gmail.com>  (tiny change)
2620         Use memmove instead of memcpy on overlapping regions
2622         * src/editfns.c (Ftranspose_regions): Regions may overlap, so
2623         use memmove instead of memcpy (bug#19213).
2626         This is a backport from trunk.
2627         (cherry picked from commit 354f9f0fc6cc05ed98883447f9b2f37943d79160)
2629 2016-07-15  Noam Postavsky  <npostavs@gmail.com>
2631         Document buffer-swap-text+save-excursion interaction
2633         * doc/lispref/buffers.texi (Swapping Text):
2634         * src/buffer.c (Fbuffer_swap_text): Add warning about interaction of
2635         `buffer-swap-text' and `save-excursion' (Bug #4655).
2637 2016-07-14  Stefan Monnier  <monnier@iro.umontreal.ca>
2639         Fix eieio vs cl-generic incompatibilities found in Rudel (bug#23947)
2641         * lisp/emacs-lisp/cl-generic.el (cl-generic-apply): New function.
2642         * lisp/emacs-lisp/eieio-compat.el (eieio--defmethod): Fix incorrect
2643         mapping between cl-no-applicable-method and EIEIO's no-applicable-method.
2644         * lisp/emacs-lisp/eieio-core.el (eieio--class-precedence-c3):
2645         `class' is not a symbol but a class object.
2647 2016-07-14  Stefan Monnier  <monnier@iro.umontreal.ca>
2649         Include cl-generic in package--builtin-versions (bug#22817)
2651         * lisp/emacs-lisp/cl-generic.el (package--builtin-versions):
2652         Add ourselves manually.  Don't merge since there's a better fix on master.
2654 2016-07-14  Michael Albinus  <michael.albinus@gmx.de>
2656         Improve timing in `tramp-test29-environment-variables'
2658         * test/automated/tramp-tests.el
2659         (tramp-test--shell-command-to-string-asynchronously):
2660         Add additional `accept-process-output' call.
2661         (tramp-test29-environment-variables): Remove additional sleep calls.
2663 2016-07-14  Michael Albinus  <michael.albinus@gmx.de>
2665         Add test for handling environment variables in Tramp
2667         * test/automated/tramp-tests.el
2668         (tramp-test--shell-command-to-string-asynchronously): New defun.
2669         (tramp-test29-environment-variables): New test.
2670         (tramp-test30-vc-registered)
2671         (tramp-test31-make-auto-save-file-name)
2672         (tramp-test32-special-characters)
2673         (tramp-test32-special-characters-with-stat)
2674         (tramp-test32-special-characters-with-perl)
2675         (tramp-test32-special-characters-with-ls, tramp-test33-utf8)
2676         (tramp-test33-utf8-with-stat, tramp-test33-utf8-with-perl)
2677         (tramp-test33-utf8-with-ls)
2678         (tramp-test34-asynchronous-requests)
2679         (tramp-test35-recursive-load, tramp-test36-unload): Rename.
2681 2016-07-13  Glenn Morris  <rgm@gnu.org>
2683         * lisp/emacs-lisp/package.el (describe-package-1)
2684         (package-status-external): Fix face references.  (Bug#23927)
2686 2016-07-12  Stephen Berman  <stephen.berman@gmx.net>
2688         Improve documentation of search functions
2690         Make the documentation of the search functions more accurate,
2691         complete, and uniform; in particular, extend the description of
2692         the effect when the 'count' parameter is a negative number to all
2693         of these functions.
2695         * src/search.c (Fsearch_backward, Fsearch_forward)
2696         (Fre_search_backward, Fre_search_forward)
2697         (Fposix_search_backward, Fposix_search_forward):
2698         * lisp/isearch.el (word-search-backward, word-search-forward)
2699         (word-search-backward-lax, word-search-forward-lax): Improve doc
2700         strings as described above.
2702         * doc/lispref/searching.texi (String Search, Regexp Search)
2703         (POSIX Regexps): Use 'count' instead of 'repeat' as the name of
2704         the fourth parameter of the *-search-{forward,backward} functions
2705         and improve documentation as described above.
2707 2016-07-12  Michael Albinus  <michael.albinus@gmx.de>
2709         Delete environment variables in Tramp when needed
2711         * lisp/net/tramp-sh.el (tramp-get-env-with-u-option): New defun.
2712         (tramp-sh-handle-start-file-process)
2713         (tramp-sh-handle-process-file, ): Use it.  (Bug#23952)
2715 2016-07-12  Eli Zaretskii  <eliz@gnu.org>
2717         Add "New in Emacs 25" section to the FAQ
2719         * doc/misc/efaq.texi (Latest version of Emacs): Update for later
2720         versions.
2721         (New in Emacs 25): New node.
2722         (Status of Emacs): Add it to the menu.
2724 2016-07-10  Eli Zaretskii  <eliz@gnu.org>
2726         Fix 'vertical-motion' in non-interactive sessions
2728         * src/indent.c (Fvertical_motion): Don't return uninitialized
2729         value in non-interactive session.  This fixes random errors in
2730         batch mode, see
2731         http://lists.gnu.org/archive/html/emacs-devel/2016-06/msg00609.html
2732         and
2733         http://lists.gnu.org/archive/html/emacs-devel/2016-07/msg00500.html
2734         for the details.
2736 2016-07-10  Andreas Schwab  <schwab@linux-m68k.org>
2738         Fix memory leak in imagemagick-types
2740         * src/image.c (Fimagemagick_types): Use AcquireExceptionInfo to
2741         avoid memory leak.
2743 2016-07-10  Eli Zaretskii  <eliz@gnu.org>
2745         Update ELisp manual to match 'string-collate-equalp' doc string
2747         * doc/lispref/strings.texi (Text Comparison): Remove reference to
2748         sorting from the description of 'string-collate-equalp'.  (Bug#23902)
2750 2016-07-09  Noam Postavsky  <npostavs@gmail.com>
2752         Clarify docstring of find-feature-regexp
2754         * lisp/emacs-lisp/find-func.el (find-feature-regexp): Explain that `%s'
2755         is optional (Bug #23520).
2757 2016-07-09  Noam Postavsky  <npostavs@gmail.com>
2759         Add details to cl-lib defining macros' docstrings
2761         * lisp/emacs-lisp/cl-macs.el (cl-defun, cl-defmacro): Add terse summary
2762         of supported arglist forms (Bug #22462).
2764 2016-07-09  Eli Zaretskii  <eliz@gnu.org>
2766         Clarify doc string of 'save-buffer'
2768         * lisp/files.el (save-buffer): Clarify that backups might not be
2769         made even if this command is invoked with 2 or 3 "C-u"s.
2770         (Bug#3702)
2772 2016-07-08  Eli Zaretskii  <eliz@gnu.org>
2774         Un-confuse doc string of 'string-collate-equalp'
2776         * src/fns.c (Fstring_collate_equalp): Remove confusing text from
2777         doc string.  (Bug#23902)
2779 2016-07-07  Eli Zaretskii  <eliz@gnu.org>
2781         Clarify documentation of 'mouse-on-link-p'
2783         * lisp/mouse.el (mouse-on-link-p): Clarify the form of the POS
2784         argument.  (Bug#23899)
2786 2016-07-06  Phillip Lord  <phillip.lord@russet.org.uk>
2788         Fix missing undo-boundary on revert-buffer.
2790         * lisp/simple.el (undo-auto--undoable-change-no-timer): New function.
2791         * src/fileio.c (insert-buffer-contents): Call
2792           undo-auto--undoably-changed-buffers before changes.
2794         Addresses Bug#23785.
2796         Do not merge to master as c98bc98 also addresses the same bug.
2798 2016-07-06  Martin Rudalics  <rudalics@gmx.at>
2800         Amend last addition to etc/PROBLEMS
2802         * etc/PROBLEMS: Mention GTK+ problem with unexpected frame widenings
2804 2016-07-06  Paul Eggert  <eggert@cs.ucla.edu>
2806         Fix open-network-stream responsiveness
2808         Problem reported by Christer Ekholm (Bug#23864).
2809         Backport from master.
2810         * src/process.c (wait_reading_process_output):
2811         Fix typo introduced in 2015-07-06T02:19:13Z!eggert@cs.ucla.edu
2812         when wait == INFINITY and got_output_end_time is invalid.
2813         In this case the code should break, not continue.
2815 2016-07-05  Phillip Lord  <phillip.lord@russet.org.uk>
2817         Fix missing point information in undo
2819         * src/undo.c (record_insert): Use record_point instead of
2820           prepare_record, and do so unconditionally.
2821           (prepare_record): Do not record first change.
2822           (record_point): Now conditional on state before the last command.
2823           (record_delete): Call record_point unconditionally.
2824           (record_property_change): Use prepare_record.
2825           (record_marker_adjustments): Use prepare_record.
2827         Addresses Bug# 21722
2829 2016-07-04  Eli Zaretskii  <eliz@gnu.org>
2831         Avoid crashes when buffer modification hooks clobber match data
2833         * src/search.c (Freplace_match): Error out if buffer modification
2834         hooks triggered by buffer changes in replace_range, upcase-region,
2835         and upcase-initials-region clobber the match data needed to be
2836         adjusted for the replacement.  (Bug#23869)
2838 2016-07-03  Noam Postavsky  <npostavs@gmail.com>
2840         Note combine-and-quote-strings doesn't shell quote
2842         * doc/lispref/processes.texi (Shell Arguments):
2843         * lisp/subr.el (combine-and-quote-strings): Add a note that
2844         combine-and-quote-strings doesn't protect arguments against shell
2845         evaluation (Bug #20333).
2847 2016-07-03  Noam Postavsky  <npostavs@gmail.com>
2849         Explain when package-initialize isn't called
2851         * doc/lispref/os.texi (Startup Summary): Explain that package-initialize
2852         is not called when options -q, -Q, or --batch were passed (Bug #19151).
2854 2016-07-03  Noam Postavsky  <npostavs@gmail.com>
2856         Fix escaping in sh-indent-after-continuation docstr
2858         * lisp/progmodes/sh-script.el (sh-indent-after-continuation): Properly
2859         escape backslashes in docstring (Bug#23046).
2861 2016-07-02  Eli Zaretskii  <eliz@gnu.org>
2863         Clarify the documentation of back-references in replacements
2865         * doc/emacs/search.texi (Regexp Replace): Clarify that \D starts
2866         with \1, not \0.
2868         * lisp/replace.el (query-replace-regexp)
2869         (query-replace-regexp-eval, replace-regexp): Doc fix (Bug#23884)
2871 2016-07-01  Noam Postavsky  <npostavs@gmail.com>
2873         Clarify lexical binding with symbol args behavior
2875         * doc/lispref/variables.texi (Lexical Binding): Clarify that symbol
2876         arguments always refer to dynamic values (Bug #23781).  Remove mention
2877         of obsolete restriction regarding lexical binding for defun and
2878         defmacro, this no longer applies since 61b108cc 2012-05-29 "*
2879         lisp/emacs-lisp/byte-run.el (defmacro, defun): Move from C...".
2881 2016-06-30  Michael Albinus  <michael.albinus@gmx.de>
2883         * lisp/net/tramp-sh.el (tramp-remote-path): Doc fix.
2885 2016-06-29  Eli Zaretskii  <eliz@gnu.org>
2887         * lisp/net/tramp-sh.el (tramp-remote-path): Doc fix.  (Bug#23865)
2889 2016-06-29  Eli Zaretskii  <eliz@gnu.org>
2891         Avoid assertion violations when rendering some fonts
2893         * src/dispextern.h (FONT_TOO_HIGH): Don't consider a font "too
2894         high" if its pixel_size value is zero.  This avoids assertion
2895         violations at the end of x_produce_glyphs.
2897 2016-06-28  Noam Postavsky  <npostavs@gmail.com>
2899         Document more details of package activation
2901         * doc/emacs/package.texi (Package Installation): Explain that package
2902         activation adds to load-path (Bug #21704).
2904 2016-06-28  Noam Postavsky  <npostavs@gmail.com>
2906         Fixup warning message regarding HOME a bit more
2908         * src/w32.c (init_environment): The manual section title is "Windows
2909         HOME" (Bug #11612).  Move newline so warning fits in 80 character lines.
2911 2016-06-27  Eli Zaretskii  <eliz@gnu.org>
2913         * lisp/leim/quail/indian.el ("bengali-probhat"): Change indicator to BngPB.
2915 2016-06-27  Michael Albinus  <michael.albinus@gmx.de>
2917         Fix input method "probhat" for Bengali
2919         Author: উৎসব রায় <uroybd@gmail.com>
2921         * lisp/leim/quail/indian.el ("bengali-probhat"): Fix entry.
2923 2016-06-27  Noam Postavsky  <npostavs@gmail.com>
2925         Add to elisp-completion-at-point's docstring
2927         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point): Document
2928         position dependent behavior (Bug #19854).
2930 2016-06-27  Noam Postavsky  <npostavs@gmail.com>
2931             Eli Zaretskii  <eliz@gnu.org>
2933         Give more helpful warning about setting HOME
2935         * src/w32.c (init_environment): Improve warning message that pops when
2936         Emacs sets HOME according to existence of C:\.emacs (Bug #11612).
2938 2016-06-26  Eli Zaretskii  <eliz@gnu.org>
2940         Fix slow redisplay in term-mode
2942         * lisp/term.el (term-mode): Move the setting of
2943         bidi-paragraph-direction from 'ansi-term' to here, since term-mode
2944         is also affected.  Do not merge to master, since there the problem
2945         is solved in bidi.c by changing the regexps that delimit a
2946         paragraph.  (Bug#23801)
2948 2016-06-26  উৎসব রায়  <uroybd@gmail.com>
2950         New input method "probhat" for Bengali
2952         * lisp/leim/quail/indian.el ("probhat"): New input method.
2953         (Bug#23822)
2955         * etc/NEWS: Mention the new input method.
2957 2016-06-25  Noam Postavsky  <npostavs@gmail.com>
2958             Drew Adams  <drew.adams@oracle.com>
2960         Update docs for `customize-mode'
2962         * lisp/cus-edit.el (customize-mode): This function works with both major
2963         and minor modes, make docstring and prompt reflect that (Bug #23649).
2965         * doc/lispref/modes.texi (Derived Modes): Remove note about
2966         customize-mode being experimental; it has been around since Emacs
2967         22 (Bug #11299).
2969 2016-06-23  Eli Zaretskii  <eliz@gnu.org>
2971         Fix documentation of 'assoc-string' and 'compare-strings'
2973         * src/minibuf.c (Fassoc_string): Clarify how CASE-FOLD affects the
2974         string comparison.  (Bug#23833)
2975         * src/fns.c (Fcompare_strings): Fix the description of how
2976         IGNORE-CASE affects the comparison.
2978         * doc/lispref/strings.texi (Text Comparison): Clarify how
2979         CASE-FOLD affects the string comparison in 'assoc-string'.  Fix
2980         the description of how IGNORE-CASE affects the comparison in
2981         'compare-strings'.
2983 2016-06-22  Dmitry Gutov  <dgutov@yandex.ru>
2985         Error on multibyte characters in HTTP request
2987         * lisp/url/url-http.el (url-http-create-request): Check the
2988         constructed request in the end to verify that it does not contain
2989         multibyte characters (bug#23750).
2991 2016-06-22  Katsumi Yamaoka  <yamaoka@jpl.org>
2993         * lisp/gnus/mm-decode.el (mm-convert-shr-links):
2994         Mask keys that launch `widget-button-click' (bug#22157).
2996 2016-06-22  Dmitry Gutov  <dgutov@yandex.ru>
2998         Unset GIT_DIR when calling Git commands
3000         * lisp/vc/vc-git.el (vc-git--call, vc-git-command):
3001         Unset GIT_DIR (bug#23769).
3003 2016-06-21  Phillip Lord  <phillip.lord@russet.org.uk>
3005         Ensure undo-boundary after insert-file-contents.
3007         * src/fileio.c: Record undoable change during insert-file-contents.
3009         Addresses Bug #23785.
3011 2016-06-21  Eli Zaretskii  <eliz@gnu.org>
3013         Clarify documentation of 'line-spacing' and 'line-height'
3015         * doc/lispref/display.texi (Line Height): Clarify how the line
3016         height is determined via variables and text properties.  (Bug#23806)
3018 2016-06-20  Eli Zaretskii  <eliz@gnu.org>
3020         Fix removal of variables from process-environment
3022         * src/callproc.c (add_env): Fix comparison of a variable with a
3023         value against the same variable without a value.  (Bug#23779)
3025 2016-06-20  Glenn Morris  <rgm@gnu.org>
3027         * admin/authors.el (authors-ignored-files, authors-valid-file-names)
3028         (authors-renamed-files-alist): Additions.
3030         * admin/authors.el (authors-aliases, authors-fixed-case): Additions.
3032 2016-06-18  Noam Postavsky  <npostavs@gmail.com>
3034         Fix documentation of completion functions
3036         So that the described behavior matches the code (and docstrings).
3038         * doc/lispref/minibuf.texi (Basic Completion): Symbol keys of hash table
3039         collections are used like string keys, not ignored (Bug #10416).
3041 2016-06-18  Eli Zaretskii  <eliz@gnu.org>
3043         Clarify documentation of 'font-lock-maximum-decoration'
3045         * doc/emacs/display.texi (Font Lock): Explain how to make the
3046         customization of 'font-lock-maximum-decoration' effective for an
3047         existing buffer.  (Bug#23783)
3049 2016-06-17  Glenn Morris  <rgm@gnu.org>
3051         * doc/misc/cl.texi (Usage): Add some more details.
3053 2016-06-17  Noam Postavsky  <npostavs@gmail.com>
3055         Fbackward_prefix_chars: stay within buffer bounds
3057         The commit 1fd3172d "(Fbackward_prefix_chars): Set point properly while
3058         scanning" (1998-03-18), moved the check against of the position against the
3059         buffer beginning out the loop condition so that we might end up checking
3060         the syntax of characters before the beginning of the buffer.  This can
3061         cause segfaults or trigger a "Point before start of properties" error in
3062         `update_interval' (called indirectly from `char_quoted').
3064         * src/syntax.c (Fbackward_prefix_chars): Stop the loop when beginning of
3065         buffer is reached (Bug #3552, Bug #17132, Bug #19379).
3067 2016-06-16  Paul Eggert  <eggert@cs.ucla.edu>
3069         Fix ifdef-vs-if typo with RANDR13_LIBRARY
3071         * src/xfns.c (x_get_monitor_attributes_xrandr): Use #if, not #ifdef.
3072         This ports to systems that predate xrandr 1.3. See Christian Lynbech in:
3073         http://lists.gnu.org/archive/html/emacs-devel/2016-06/msg00198.html
3075         (cherry picked from commit dce99f222f1ca33265cd56ddb157817be1dc078e)
3077 2016-06-16  Stephen Berman  <stephen.berman@gmx.net>
3079         Fix last todo-mode change
3081         * lisp/calendar/todo-mode.el (todo-read-category): Return the
3082         keymap in order to use its defined key bindings.
3084 2016-06-15  Stephen Berman  <stephen.berman@gmx.net>
3086         Improve last todo-mode fix
3088         * lisp/calendar/todo-mode.el (todo-read-category): Use
3089         set-keymap-parent instead of copy-keymap, and default (as
3090         previously) to the global binding (for rationale, see
3091         http://lists.gnu.org/archive/html/emacs-devel/2016-06/msg00217.html).
3093 2016-06-14  Stephen Berman  <stephen.berman@gmx.net>
3095         Fix todo-mode use of minibuffer completion keymap (bug#23695).
3097         * lisp/calendar/todo-mode.el (todo-read-category): Don't
3098         override minibuffer-local-completion-map globally (bug#23695).
3099         Bind <SPC> key to self-insert-command.
3101 2016-06-14  Glenn Morris  <rgm@gnu.org>
3103         * src/alloc.c (ALIGN): Avoid error on DragonFly BSD.  (Bug#23764)
3105         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
3106         Avoid mangling autoloads with unspecified arguments.  (Bug#21299)
3108 2016-06-13  Glenn Morris  <rgm@gnu.org>
3110         * lisp/help-fns.el (describe-function-1): Avoid reporting advised
3111         autoloads as aliases.  (Bug#21299)
3113 2016-06-13  Stephen Berman  <stephen.berman@gmx.net>
3115         Minor grammar fix (bug#23746)
3117         * doc/lispref/processes.texi (Synchronous Processes):
3118         Another minor grammar fix (bug#23746).
3120 2016-06-13  Stephen Berman  <stephen.berman@gmx.net>
3122         Doc fixes for grammar and typos (bug#23746)
3124         * doc/emacs/files.texi (Customize Save):
3125         * doc/emacs/frames.texi (Window Dividers):
3126         * doc/emacs/misc.texi (Printing):
3127         * doc/lispref/compile.texi (Compiler Errors):
3128         * doc/lispref/keymaps.texi (Changing Key Bindings):
3129         * doc/lispref/loading.texi (Named Features):
3130         * doc/lispref/markers.texi (Marker Insertion Types):
3131         * doc/lispref/modes.texi (Mode Hooks):
3132         * doc/lispref/text.texi (Undo):
3133         * src/floatfns.c (Fldexp):
3134         * src/xfaces.c (syms_of_xfaces):
3135         Minor doc fixes for grammar and typos (bug#23746).
3137 2016-06-13  Eli Zaretskii  <eliz@gnu.org>
3139         * doc/lispref/processes.texi (Process Buffers): Minor rewording.  (Bug#23446)
3141 2016-06-13  Eli Zaretskii  <eliz@gnu.org>
3143         Add cross-reference to ELisp manual
3145         * doc/lispref/commands.texi (Classifying Events): Add
3146         cross-reference to "Motion Events".  (Bug#23756)
3148 2016-06-11  Stefan Monnier  <monnier@iro.umontreal.ca>
3150         * lisp/emacs-lisp/macroexp.el (macroexp--expand-all): Fix (bug#19704)
3152         Don't rewrite (funcall 'f ...) to (f ...).
3154 2016-06-11  Phillip Lord  <phillip.lord@russet.org.uk>
3156         Restore initial undo boundary with viper
3158         * lisp/emulation/viper-cmd.el (viper-adjust-undo): Add back last undo
3159           boundary if it has been removed.
3161         Addresses Bug#22295.
3163 2016-06-11  Phillip Lord  <phillip.lord@russet.org.uk>
3165         Revert "Fix viper undo breakage from undo-boundary changes"
3167         This reverts commit c0139e32f1f3bb287b04e02a69a7848d6a040003.
3169 2016-06-11  Ken Brown  <kbrown@cornell.edu>
3171         Fix dbus crash on 32-bit Cygwin
3173         * src/dbusbind.c (Fdbus__init_bus): Use make_save_pointer to store
3174         connection address.  (Bug#23741)
3175         (xd_lisp_dbus_to_dbus): Use XSAVE_POINTER to retrieve connection
3176         address.
3178 2016-06-10  Nicolas Petton  <nicolas@petton.fr>
3180         Bump version to 25.0.95
3182         * README:
3183         * configure.ac:
3184         * lisp/ldefs-boot.el:
3185         * msdos/sed2v2.inp: Bump Emacs version to 25.0.95.
3187 2016-06-10  Nicolas Petton  <nicolas@petton.fr>
3189         * etc/AUTHORS: Update the AUTHORS file
3191 2016-06-10  Nicolas Petton  <nicolas@petton.fr>
3193         add entries to authors.el
3195         * admin/authors.el (authors-renamed-files-alist): Add char-fold files.
3197 2016-06-10  Jules Tamagnan  <jtamagnan@gmail.com>
3199         Fix eldoc-related freezes in python mode
3201         * lisp/progmodes/python.el (python-eldoc-get-doc): New defvar.
3202         (python-eldoc-function-timeout)
3203         (python-eldoc-function-timeout-permanent): New defcustoms.
3204         (python-eldoc-function): If python-eldoc--get-doc-at-point times
3205         out, effectively turn off ElDoc in current buffer.  (Bug#23609)
3207 2016-06-09  Martin Rudalics  <rudalics@gmx.at>
3209         Handle mouse leaving initial window in `mouse-set-region' (Bug#23707)
3211         * lisp/mouse.el (mouse-set-region): If the mouse ends up in
3212         another window or on the menu bar, use `window-point' of
3213         selected window instead of `posn-point' of the event end
3214         (Bug#23707).
3216 2016-06-08  Marco Wahl  <marcowahlsoft@gmail.com>
3218         org.el: Fix bindings of < and > for calendar scrolling
3220         [This patch taken from upstream Org repo with 8b63dc9 dated
3221         2014-10-20 (Bug#23725).]
3222         * lisp/org/org.el (org-read-date-minibuffer-local-map):
3223         Switch to the current calendar API for scrolling the calendar.
3225 2016-06-08  Phillip Lord  <phillip.lord@russet.org.uk>
3227         Fix undo boundary in recursive edit (Bug#23632)
3229          * src/keyboard.c (recursive_edit_1): specbind
3230            undo-auto--undoably-changed-buffers.
3231          * lisp/simple.el (undo-auto--undoably-changed-buffers):
3232            fix docstring.
3234 2016-06-07  Glenn Morris  <rgm@gnu.org>
3236         Doc fixes re alist-get.  (Bug#23548)
3238         * lisp/subr.el (alist-get): Doc fix.
3239         * doc/lispref/lists.texi (Association Lists): Improve alist-get.
3241 2016-06-07  Glenn Morris  <rgm@gnu.org>
3243         * lisp/progmodes/python.el (inferior-python-mode):
3244         Avoid tabs.  (Bug#23616)
3246         * src/syntax.c (syms_of_syntax) <comment-end-can-be-escaped>: Doc fix.
3248 2016-06-07  Tino Calancha  <f92capac@gmail.com>
3250         * lisp/help-fns.el (describe-function-1):
3251         Fix handling of file name for aliases.  (Bug#21950)
3253         * lisp/emacs-lisp/cl-macs.el (cl-loop): Doc fix re "by".
3255         * doc/misc/cl.texi (Mapping over Sequences): Fix cl-notevery.
3257 2016-06-07  Paul Eggert  <eggert@cs.ucla.edu>
3259         Fix crash in syntax.c after GC
3261         Problem reported by Vincent Belaïche (Bug#23704).
3262         * src/syntax.c (skip_chars): Recompute pointers into the
3263         buffer after every call to update_syntax_table_forward,
3264         as it can GC.
3266 2016-06-06  Dmitry Gutov  <dgutov@yandex.ru>
3268         Improve squiggly heredoc support in non-SMIE Ruby mode
3270         * lisp/progmodes/ruby-mode.el (ruby-parse-partial): Support
3271         squiggly heredocs here, too (port from upstream).
3273 2016-06-06  Stephen Berman  <stephen.berman@gmx.net>
3275         Fix doc string quoting
3277         * lisp/files.el (shell-quote-wildcard-pattern):
3278         * lisp/progmodes/vhdl-mode.el (vhdl-mode):
3279         * lisp/subr.el (replace-regexp-in-string):
3280         * lisp/view.el (view-mode):
3281         * src/nsfns.m (syms_of_nsfns):
3282         * src/syntax.c (Fbackward_prefix_chars):
3283         Fix quoting problems in doc strings (Bug#23696).
3285 2016-06-05  Martin Rudalics  <rudalics@gmx.at>
3287         Fix mouse dragging of vertical dividers with scroll bars on left (Bug#23690)
3289         * lisp/mouse.el (mouse-drag-line): With scroll bars on the left
3290         adjust trailing edge of window on the left when dragging the
3291         vertical divider of the mode line.  (Bug#23690)
3293 2016-06-04  Eli Zaretskii  <eliz@gnu.org>
3295         * etc/PROBLEMS: Mention the link-time problems on FreeBSD 11.
3297         (Bug#23641)
3299 2016-05-31  Glenn Morris  <rgm@gnu.org>
3301         * test/automated/viper-tests.el (viper-test-undo-kmacro):
3302         Delete temp-file at end.
3304         * lisp/mail/footnote.el (footnote-mode): Fix doc typo.
3306         * doc/misc/smtpmail.texi (Encryption): Fix 2012-12-22 typo.
3308         * lisp/emacs-lisp/lisp-mode.el (lisp--mode-syntax-table):
3309         Fix typo.  (Bug#23654)
3311 2016-05-30  Stefan Monnier  <monnier@iro.umontreal.ca>
3313         * lisp/recentf.el (recentf-dialog-mode-map): Remove follow-link (bug#22434)
3315 2016-05-30  Bill Wohler  <wohler@newt.com>
3317         Correct cl-flet usage (Bug#22317)
3319         * lisp/mh-e/mh-compat.el: Rename mh-cl-flet to mh-flet and convert alias to
3320         macro using patch from Katsumi Yamaoka <yamaoka@jpl.org>.
3321         * lisp/mh-e/mh-thread.el (mh-thread-set-tables):
3322         * lisp/mh-e/mh-show.el (mh-gnus-article-highlight-citation):
3323         * lisp/mh-e/mh-mime.el (mh-display-with-external-viewer):
3324         (mh-mime-display, mh-press-button, mh-push-button):
3325         (mh-display-emphasis): Call mh-flet instead of mh-cl-flet.
3327 2016-05-30  Bill Wohler  <wohler@newt.com>
3329         Release MH-E manual version 8.6
3331         * doc/misc/mh-e.texi (VERSION, EDITION, UPDATED, UPDATE-MONTH):
3332         Update for release 8.6.
3334 2016-05-30  Mike Kupfer  <m.kupfer@acm.org>
3336         Update MH-E's documentation about HTML renderers
3338         * doc/misc/mh-e.texi (HTML): Remove the footnote with the minimum Gnus
3339         version (we are no longer trying to support multiple Emacs
3340         releases). Sort the table of HTML renderers by name (the previous
3341         ordering was based on a 10-year-old survey). Add shr and gnus-w3m to
3342         the table. Remove the entry for w3 (no longer available).  Update
3343         existing entries so that they are more consistent about what features
3344         are discussed, and to reflect recent testing (Debian 8). Small tweaks
3345         to existing text.
3347 2016-05-30  Dmitry Gutov  <dgutov@yandex.ru>
3349         Fx the we->the typo
3351         * doc/emacs/trouble.texi (Sending Patches):
3352         Fix the typo (bug#23657).
3354 2016-05-30  Paul Eggert  <eggert@cs.ucla.edu>
3356         Restore frames into the current display by default
3358         * lisp/desktop.el (desktop-restore-in-current-display):
3359         Default to t, not nil (Bug#23604).
3360         * etc/NEWS: Mention the change.
3362 2016-05-29  Stefan Monnier  <monnier@iro.umontreal.ca>
3364         * lisp/recentf.el (recentf-open-files-item): Quick fix for (bug#22434).
3366         etc/TODO: Remove out-of-place issue
3368 2016-05-29  Eli Zaretskii  <eliz@gnu.org>
3370         Clarify doc string of 'file-name-sans-extension'
3372         * lisp/files.el (file-name-sans-extension, file-name-extension):
3373         Clarify in the doc strings what is the extension, and which
3374         leading period doesn't count.  (Bug#23643)
3376 2016-05-28  Eli Zaretskii  <eliz@gnu.org>
3378         Fix the MSDOS build
3380         * msdos/sed1v2.inp (PAXCTL_dumped, PAXCTL_notdumped): Define to
3381         empty, and remove the lines which use them in recipes, as that
3382         causes weird error message from Make and breaks the MSDOS build.
3384 2016-05-28  Andreas Schwab  <schwab@linux-m68k.org>
3386         * lisp/progmodes/elisp-mode.el (elisp-function-argstring): Call
3387         substitute-command-keys to undo help--docstring-quote. (Bug#23634)
3389 2016-05-27  Eli Zaretskii  <eliz@gnu.org>
3391         * src/dired.c (Ffile_name_all_completions): Doc fix.  (Bug#23631)
3393 2016-05-27  Eli Zaretskii  <eliz@gnu.org>
3395         Fix infloop in 'number-sequence'
3397         * lisp/subr.el (number-sequence): Avoid overflow leading to an
3398         infloop.  (Bug#23627)
3400         * test/automated/subr-tests.el (number-sequence-test): New test.
3402 2016-05-26  Glenn Morris  <rgm@gnu.org>
3404         * lisp/emacs-lisp/find-func.el (find-function-library):
3406         Update for symbol-function no longer erroring.  (Bug#23626)
3408 2016-05-26  Glenn Morris  <rgm@gnu.org>
3410         * lisp/w32-fns.el (set-message-beep, w32-get-locale-info)
3411         (w32-get-valid-locale-ids): Improve declarations.
3413 2016-05-26  Vincent Belaïche  <vincentb1@users.sourceforge.net>
3415         Correct old cell name unbinding when renaming cell.
3417         Bug is to unbind old cell names when renaming a cell with
3418         'makunbound'. when the old cell name is of A1 type, then
3419         'kill-local-variable' must be used instead, so that only the current
3420         spreadsheet is affected. When the old cell name is a renamed cell,
3421         then 'ses--unbind-cell-name' must be used in order to remove the old
3422         name from the name hashmap.
3424         * lisp/ses.el (ses-rename-cell): check consistency of cell symbol from
3425         text-property and from array object. Instead of 'makunbound', use
3426         either 'ses--unbind-cell-name' or 'kill-local-variable' depending on
3427         whether the cell old name is a named cell or an A1 type cell
3429 2016-05-25  Vincent Belaïche  <vincentb1@users.sourceforge.net>
3431         Document problem: slow screen refresh on missing font.
3433         See discussion of bug#22519 for more on this.
3435 2016-05-25  Glenn Morris  <rgm@gnu.org>
3437         * admin/admin.el (add-release-logs): Basic check of existing ChangeLog.
3439 2016-05-25  Glenn Morris  <rgm@gnu.org>
3441         * build-aux/gitlog-to-emacslog: Handle empty generated ChangeLog.
3443         This is relevant for M-x add-release-logs right after M-x authors.
3445 2016-05-25  Glenn Morris  <rgm@gnu.org>
3447         * admin/admin.el (add-release-logs): Generate ChangeLog if needed.
3449 2016-05-25  Paul Eggert  <eggert@cs.ucla.edu>
3451         * doc/misc/texinfo.tex: Revert previous change (Bug#23611).
3453 2016-05-25  Glenn Morris  <rgm@gnu.org>
3455         * admin/authors.el (authors): First update the ChangeLog.
3457         * admin/make-tarball.txt: Related updates.
3459 2016-05-24  Dmitry Gutov  <dgutov@yandex.ru>
3461         Rename vc-stay-local back to vc-cvs-stay-local
3463         * lisp/vc/vc-cvs.el (vc-cvs-stay-local): Rename back from
3464         vc-stay-local (bug#19548).  Improve the docstring.
3465         (vc-cvs-stay-local-p): Update accordingly.
3467 2016-05-24  Glenn Morris  <rgm@gnu.org>
3469         * doc/emacs/files.texi (Comparing Files):
3470         * doc/emacs/trouble.texi (Sending Patches): Fix external xrefs.
3472         * doc/misc/eww.texi (Advanced): Fix xref.
3474 2016-05-24  Eli Zaretskii  <eliz@gnu.org>
3476         Fix cross-references between manuals
3478         * doc/misc/viper.texi (Viper Specials):
3479         * doc/misc/url.texi (Tramp):
3480         * doc/misc/sem-user.texi (Smart Jump):
3481         * doc/lispintro/emacs-lisp-intro.texi (Finding More):
3482         * doc/misc/efaq.texi (Replacing text across multiple files): Fix
3483         cross-references between manuals.  (Bug#23612)
3484         * doc/lispintro/emacs-lisp-intro.texi (etags): Node deleted: no
3485         longer relevant to Emacs Lisp programming.
3487 2016-05-24  Glenn Morris  <rgm@gnu.org>
3489         * doc/misc/vhdl-mode.texi (Sample Init File): Rename node to avoid ".".
3491         * admin/admin.el (add-release-logs): Also update etc/HISTORY.
3493 2016-05-24  Eli Zaretskii  <eliz@gnu.org>
3495         Avoid aborting due to errors in arguments of 'set-face-attribute'
3497         * src/xfaces.c (Finternal_set_lisp_face_attribute): Check the
3498         FRAME argument before using it.  This avoids gratuitous aborts in
3499         Emacs built with --enable-checking when the luser was unlucky
3500         enough to get the argument list in wrong order.
3502 2016-05-23  Phillip Lord  <phillip.lord@russet.org.uk>
3504         Add automated test for viper-tests.el
3506 2016-05-23  Phillip Lord  <phillip.lord@russet.org.uk>
3508         Fix viper undo breakage from undo-boundary changes
3510         * lisp/simple.el (undo-auto-disable-boundaries): New variable
3511         * lisp/emulation/viper-init.el (viper-undo-in-complex-command,
3512           viper-undo-needs-adjustment): Rename
3513           variable to reflect new purpose,
3514           (viper-buffer-undo-list-mark): Remove
3515         * lisp/emulation/viper-cmd.el (viper-set-complex-command-for-undo):
3516           Add undo using `undo-boundary', disable default undo-boundary
3517           addition.
3518         * lisp/emulation/viper-cmd.el
3519           (viper-complete-complex-command-for-undo,viper-adjust-undo):
3520           Change function name, remove old undo list manipulation.
3521         * lisp/emulation/viper-cmd.el (viper-undo,viper-repeat,
3522           viper-change-state-to-vi,viper-change-state):
3523           Update for function name change.
3525         Addresses Bug #22295
3527 2016-05-22  Kaushal Modi  <kaushal.modi@gmail.com>
3529         Fix reference to obsolete fn ps-eval-switch
3531         lpr-eval-switch is functionally the same as ps-eval-switch,
3532         which was obsoleted in 2cdeb903c57126d3ad5f0cbd72e182584b76ee29.
3533         So use that instead (Bug#19717).
3534         * lisp/printing.el (pr-switches): Use lpr-eval-switch instead of
3535         ps-eval-switch.
3537 2016-05-22  Paul Eggert  <eggert@cs.ucla.edu>
3539         Do not trash symlinks to init file
3541         If the user’s init file is a symbolic link, do not break the link
3542         when initializing the package system.  Problem reported by Jackson
3543         Hamilton (Bug#23050).
3544         * lisp/emacs-lisp/package.el (package--ensure-init-file):
3545         Bind find-file-visit-truename when visiting the init file, and
3546         save and restore the buffer name the way cus-edit does in a
3547         similar situation (Bug#454).
3549 2016-05-22  Alan Mackenzie  <acm@muc.de>
3551         Don't print the "decomposition" line for control chars in what-cursor-position
3553         This is a temporary workaround for bug #23594, where the decomposition line
3554         for linefeed corrupted the display on a Linux virtual terminal.
3556         * lisp/descr-text.el (describe-char): Remove `decomposition' from the list of
3557         character code properties printed for control characters.
3559 2016-05-22  Paul Eggert  <eggert@cs.ucla.edu>
3561         Bring back xterm pasting with middle mouse
3563         Problem reported by Jan Synáček.
3564         Solution suggested by Stefan Monnier (Bug#23519).
3565         * lisp/isearch.el (isearch-mode-map): Add a binding for xterm-paste.
3566         (xterm--pasted-text): New decl.
3567         (isearch-xterm-paste): New function.
3568         * lisp/term/xterm.el (xterm--pasted-text): New function,
3569         taken from xterm-paste internals.
3570         (xterm-paste): Use it.
3572 2016-05-22  Eli Zaretskii  <eliz@gnu.org>
3574         Provide workaround for xftfont rendering problem
3576         * src/xftfont.c (syms_of_xftfont) <xft-font-ascent-descent-override>:
3577         New variable.
3578         (xftfont_open): Use it to work around problems with rendering some
3579         fonts.  (Bug#23360)
3581 2016-05-21  Jun Hao  <jun_hao@aol.com>
3583         * lisp/desktop.el: Disable restore frameset if in non-graphic display.
3585         (Bug#17693)
3587 2016-05-21  Eli Zaretskii  <eliz@gnu.org>
3589         Mention GTK+ problems in etc/PROBLEMS
3591         * etc/PROBLEMS (GDK_SCALE, GDK_DPI_SCALE): Mention the possible
3592         problems this could create and the workaround.  (Bug#23587)
3594 2016-05-20  Artur Malabarba  <bruce.connor.am@gmail.com>
3596         * lisp/emacs-lisp/package.el (package-refresh-contents):
3598         Don't change the value of `package-check-signature'.
3599         (package-check-signature): Use `epg-find-configuration'
3600         instead of `executable-find'.
3602 2016-05-20  Daiki Ueno  <ueno@gnu.org>
3604         Revert "epg: Add a way to detect gpg1 executable for tests"
3606         This reverts commit d4ae6d7033b34e8b75c59aaf1584131e439ef2d5.
3608 2016-05-19  Eli Zaretskii  <eliz@gnu.org>
3610         Avoid errors with Czech and Slovak input methods
3612         * lisp/leim/quail/slovak.el (slovak, slovak-prog-1, slovak-prog-2)
3613         (slovak-prog-3): Remove the kp-* key bindings, they are not needed
3614         and cause errors in "C-u C-x =".
3615         * lisp/leim/quail/czech.el (czech, czech-qwerty, czech-prog-1)
3616         (czech-prog-2, czech-prog-3): Remove the kp-* key bindings.
3617         (Bug#23559)
3619 2016-05-19  Daiki Ueno  <ueno@gnu.org>
3621         epg: Add a way to detect gpg1 executable for tests
3623         Fixes bug#23561.
3625         * test/automated/epg-tests.el
3626         (epg-tests-program-alist-for-passphrase-callback): New
3627         constant.
3628         (epg-tests-find-usable-gpg-configuration): New function,
3629         renamed from `epg-tests-gpg-usable'.  All callers changed.
3630         (epg-tests-gpg-usable): Remove.
3632         * lisp/epg-config.el (epg-config--program-alist): Factor out
3633         constructor element to...
3634         (epg-config--configuration-constructor-alist): ...here.
3635         (epg-find-configuration): Rename FORCE argument to NO-CACHE,
3636         and add PROGRAM-ALIST argument.
3638 2016-05-18  Artur Malabarba  <bruce.connor.am@gmail.com>
3640         * lisp/emacs-lisp/package.el: Fix free variable warnings.
3642         (package--with-response-buffer): Replace two usages of
3643         `macroexp-let2*' with `let'.
3645 2016-05-18  Artur Malabarba  <bruce.connor.am@gmail.com>
3647         * lisp/emacs-lisp/package.el (package--with-response-buffer):
3649         Fix some macro locals leaking into body.  (Bug#22440)
3651         * test/automated/package-test.el (package-test-signed):
3652         Manually check all possible values of `package-check-signature'.
3654 2016-05-18  Eli Zaretskii  <eliz@gnu.org>
3656         Improve documentation of 'server-name'
3658         * doc/emacs/misc.texi (Emacs Server): Fix example of setting
3659         'server-name'.  Mention how to do that with daemon sessions.
3660         (Bug#23576)
3662 2016-05-18  Paul Eggert  <eggert@cs.ucla.edu>
3664         Modernize ASLR advice in etc/PROBLEMS
3666         * etc/PROBLEMS (Segfault during 'make'): Modernize advice for
3667         seccomp, Docker, and NetBSD (Bug#23529).
3669 2016-05-17  Juri Linkov  <juri@linkov.net>
3671         * lisp/char-fold.el: Rename from character-fold.el.
3673         * lisp/replace.el (replace-char-fold): Rename from replace-character-fold.
3674         * test/automated/char-fold-tests.el: Rename from character-fold-tests.el.
3675         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00529.html
3677 2016-05-17  Nicolas Petton  <nicolas@petton.fr>
3679         Bump version to 25.0.94
3681         * README:
3682         * configure.ac:
3683         * msdos/sed2v2.inp: Bump Emacs version to 25.0.94.
3685 2016-05-17  Nicolas Petton  <nicolas@petton.fr>
3687         etc/AUTHORS: Update the AUTHORS file
3689 2016-05-16  Alan Third  <alan@idiocy.org>
3691         Fix bug#23462: Crash when iconifying frame on OS X.
3693         * src/nsterm.m (x_iconify_frame): Block input while miniaturize is
3694         running.
3696 2016-05-16  Paul Eggert  <eggert@cs.ucla.edu>
3698         Avoid shrinking windows with Gtk+ 3.20.3
3700         Problem reported by Matthias Clasen (Bug#23144).
3701         This was fixed in a different way in master.
3702         Do not merge to master.
3703         * src/xterm.c (handle_one_xevent) [GTK_CHECK_VERSION (3, 20, 3)]:
3704         Do not call xg_frame_resized in the MapNotify case.
3706 2016-05-16  Eli Zaretskii  <eliz@gnu.org>
3708         Fix bug in default setting of 'ps-paper-type'
3710         * lisp/international/mule-cmds.el (set-locale-environment): Don't
3711         inherit the value of locale from previous examination of different
3712         environment variables, which didn't look at LC_PAPER, and so using
3713         that value would effectively ignore the setting of LC_PAPER.
3714         (Bug#23544)
3716 2016-05-13  Paul Eggert  <eggert@cs.ucla.edu>  (tiny change)
3718         Properly reject malformed or empty package sigs
3720         Problem report and fix by Lizzie Dixon (Bug#23513).
3721         * lisp/emacs-lisp/package.el (package--check-signature-content):
3722         Report an error if no good signatures OR if a fatal error.  Not AND.
3724 2016-05-13  Paul Eggert  <eggert@cs.ucla.edu>
3726         Remove buggy non-native image scrolling
3728         This never worked, and could cause infinite recursion.
3729         Problem reported by Glenn Morris (Bug#22465).
3730         * lisp/xwidget.el (xwidget-webkit-scroll-behavior): Remove.
3731         All uses removed.
3733 2016-05-13  Paul Eggert  <eggert@cs.ucla.edu>
3735         * doc/misc/texinfo.tex: Sync from gnulib.
3737 2016-05-12  Glenn Morris  <rgm@gnu.org>
3739         * lisp/emacs-lisp/find-func.el (find-feature-regexp)
3740         (find-alias-regexp): Fix :version.
3742 2016-05-11  Dmitry Gutov  <dgutov@yandex.ru>
3744         Do not mistake colon at the end of regexp for slash symbol
3746         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize):
3747         Check the parse state in the "Symbols with special characters"
3748         rule (bug#23515).
3750 2016-05-11  Dmitry Gutov  <dgutov@yandex.ru>
3752         Make package-install-from-buffer not move point
3754         * lisp/emacs-lisp/package.el (package-install-from-buffer):
3755         Use save-excursion here (bug#22616).
3757 2016-05-11  Dmitry Gutov  <dgutov@yandex.ru>
3759         Redo the fix for bug#21839
3761         * lisp/help.el (help-add-fundoc-usage): Undo the previous change.
3762         (help--make-usage-docstring): Escape newlines when printing.
3764         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
3765         Ditto (bug#21839).
3767 2016-05-10  Dmitry Gutov  <dgutov@yandex.ru>
3769         Don't treat JS spread as contination method call
3771         * lisp/progmodes/js.el (js--indent-operator-re):
3772         Allow only one dot (bug#23492).
3774         * test/indent/js.js (default): Add a corresponding example.
3776 2016-05-09  Dmitry Gutov  <dgutov@yandex.ru>
3778         Allow newlines inside cl function arglists
3780         * lisp/help.el (help-add-fundoc-usage): Allow newlines inside
3781         ARGLIST (bug#21839).
3783 2016-05-09  Dmitry Gutov  <dgutov@yandex.ru>
3785         Publicize cl--generic-all-functions
3787         * lisp/emacs-lisp/cl-generic.el (cl-generic-all-functions):
3788         Rename from cl--generic-all-functions.  Update both callers.
3790         * lisp/cedet/semantic/db-el.el
3791         (semanticdb-find-tags-external-children-of-type-method):
3792         And use it here (bug#23042).
3794 2016-05-09  Alan Mackenzie  <acm@muc.de>
3796         Add some "safe-local-variable" declarations for compatibility with master.
3798         These enable C files from the master repository to be visited in Emacs 25
3799         without generating irritating questions about configuration variable safety.
3801         * lisp/progmodes/cc-vars.el: (c-string-list-p, c-string-or-string-list-p): New
3802         functions.
3803         (c-noise-macro-names, c-noise-macro-with-parens-names): give the
3804         safe-local-variable property c-string-list-p.
3805         (c-macro-names-with-semicolon): give the safe-local-variable property
3806         c-string-or-string-list-p.
3808 2016-05-09  Lars Ingebrigtsen  <larsi@gnus.org>
3810         Fix doc string in `insert'
3812         * src/editfns.c (Finsert_and_inherit): The before-insertion
3813         markers do not move.
3814         (Finsert): Ditto.
3816 2016-05-08  Paul Eggert  <eggert@cs.ucla.edu>
3818         * doc/misc/emacs-mime.texi (time-date): Document now-builtins better.
3820 2016-05-07  Dmitry Gutov  <dgutov@yandex.ru>
3822         Say 'All results processed' at the end
3824         * lisp/progmodes/xref.el (xref--query-replace-1):
3825         Say 'All results processed' at the end if the user hadn't
3826         cancelled the process (bug#23284).
3828 2016-05-07  Eli Zaretskii  <eliz@gnu.org>
3830         Document automatic adjustment of process' logical window dimensions
3832         * doc/lispref/processes.texi (Process Buffers): Document
3833         'set-process-window-size' and
3834         'window-adjust-process-window-size-function'.
3836         * etc/NEWS: Mention the new functionality and variable.
3838         * src/process.c (Fset_process_window_size): Improve the doc string.
3840 2016-05-06  Michael Albinus  <michael.albinus@gmx.de>
3842         tramp-sh.el: Work around a stat bug (backport from master)
3844         * lisp/net/tramp-sh.el (tramp-get-remote-stat): Do not use
3845         stat versions which produce shell quoted output.  See also
3846         coreutils Bug#23422.
3848         (cherry picked from commit 6aad36ace9953b9672b13be68416d205532d5e59)
3850 2016-05-05  Paul Eggert  <eggert@cs.ucla.edu>
3852         Doc fixes for fclist and grep
3854         A newline is needed between two fc-list calls.
3855         egrep and fgrep have been withdrawn from POSIX,
3856         so document grep -E and grep -F instead.
3858 2016-05-05  Paul Eggert  <eggert@cs.ucla.edu>
3860         Minor doc fixes for quoting
3862         * doc/lispref/control.texi (Signaling Errors):
3863         * doc/lispref/display.texi (Displaying Messages):
3864         Don’t say that formats “generate”.  Try to word more clearly.
3865         * etc/NEWS: Coalesce near-duplicate entries.
3867 2016-05-05  Dmitry Gutov  <dgutov@yandex.ru>
3869         `nreverse' the marker pairs list
3871         * lisp/progmodes/xref.el (xref--buf-pairs-iterator): `nreverse'
3872         the marker pairs list for each buffer before returning.
3874 2016-05-04  Dmitry Gutov  <dgutov@yandex.ru>
3876         Use save-excursion in xref-location-marker more
3878         * lisp/progmodes/elisp-mode.el (xref-location-marker): Use
3879         save-excursion, in order not to alter the value of point if the
3880         buffer is currently open in the background (problem reported by
3881         Robert Weiner).
3883         * lisp/progmodes/etags.el (xref-location-marker): Same.
3885 2016-05-04  Dmitry Gutov  <dgutov@yandex.ru>
3887         shell-quote-argument DIR when appropriate
3889         * lisp/progmodes/project.el (project-file-completion-table):
3890         `shell-quote-argument' DIR as well.
3892         * lisp/progmodes/xref.el (xref--rgrep-command): Pass DIR through
3893         `shell-quote-argument' (bug#23453).  Thanks for Kaushal Modi for
3894         pointing out the problem.  Assert that DIR doesn't start with `~'.
3896 2016-05-04  Dmitry Gutov  <dgutov@yandex.ru>
3898         Rework xref-query-replace-in-results
3900         * lisp/progmodes/xref.el (xref-query-replace-in-results): Collect
3901         all xrefs from the buffer first, then delegate most of the
3902         processing to the value returned by xref--buf-pairs-iterator.
3903         (xref--buf-pairs-iterator): New function.  Return an "iterator"
3904         which partitions returned markers into buffers, and only processes
3905         markers from one buffer at a time.  When an xref is out of date,
3906         skip it with a message instead of signaling error (bug#23284).
3907         (xref--outdated-p): Extract from xref--buf-pairs-iterator.  Trim
3908         CR from both strings before comparing.
3909         (xref--query-replace-1): Remove the variable current-buf, no need
3910         to track it anymore.  Simplify the filter-predicate and search
3911         functions accordingly.  Iterate over buffer-markers pairs returned
3912         by the iterator, and call `perform-replace' for each of them.  Use
3913         multi-query-replace-map (bug#23284).  Use `switch-to-buffer' every
3914         time after the first, in order not to jump between windows.
3916         * test/automated/xref-tests.el
3917         (xref--buf-pairs-iterator-groups-markers-by-buffers-1)
3918         (xref--buf-pairs-iterator-groups-markers-by-buffers-2)
3919         (xref--buf-pairs-iterator-cleans-up-markers): New tests.
3921 2016-05-04  Juri Linkov  <juri@linkov.net>
3923         * lisp/replace.el (query-replace-read-from): Use minibuffer-with-setup-hook
3925         to set minibuffer-local value of text-property-default-nonsticky.
3926         (Bug#23418, bug#23127)
3928 2016-05-04  Stephen Berman  <stephen.berman@gmx.net>
3930         Fix todo-mode bug involving archived items (bug#23447)
3932         * lisp/calendar/todo-mode.el (todo-jump-to-category): When jumping
3933         from Todo Categories mode to a category with only archived items
3934         and todo-skip-archived-categories is non-nil, make sure the
3935         archive file buffer is in Todo Archive mode to prevent
3936         todo-category-select from raising an error, and don't set
3937         todo-current-todo-file, since that makes todo-show display the
3938         archived category.  Remove a no-op call to kill-buffer, which is
3939         already called in todo-insert-category-line.
3941 2016-05-03  Dmitry Gutov  <dgutov@yandex.ru>
3943         Handle "empty line" regexp in xref searches
3945         * lisp/progmodes/xref.el (xref--collect-matches-1): Stop after one
3946         match if re-search-forward doesn't move point (bug#23426).
3948         * test/automated/xref-tests.el
3949         (xref-collect-matches-finds-an-empty-line-regexp-match):
3950         Uncomment test.
3952 2016-05-03  Dmitry Gutov  <dgutov@yandex.ru>
3954         Add tests for xref-collect-matches
3956         * test/automated/xref-tests.el: New file.  Add tests for
3957         xref-collect-matches.
3959 2016-05-03  Dmitry Gutov  <dgutov@yandex.ru>
3961         Use grep-find-ignored-directories instead of vc-directory-exclusion-list
3963         * lisp/dired-aux.el (dired-do-find-regexp):
3964         Use grep-find-ignored-directories instead of
3965         vc-directory-exclusion-list.  The result should be functionally
3966         similar (the former uses the latter as the default value), but it
3967         should be more consistent and appropriate WRT user
3968         customizations.
3969         (dired-do-find-regexp-and-replace): Update the docstring.
3971         * lisp/dired.el: Update the corresponding autoloads.
3973         * doc/emacs/dired.texi (Operating on Files): Update the
3974         documentation accordingly.
3976 2016-05-03  Dmitry Gutov  <dgutov@yandex.ru>
3978         Clear buffer-undo-list when showing xrefs
3980         * lisp/progmodes/xref.el (xref--show-xref-buffer): Clear
3981         buffer-undo-list and temporarily bind it to t while rendering the
3982         buffer contents.
3984 2016-05-03  Alan Mackenzie  <acm@muc.de>
3986         Note the quote translation in `message' in section "incompatible changes".
3988         * etc/NEWS: Note that `message' translates quotes, that the translation
3989         cannot be disabled, and that `format' can be used to get the old
3990         behavior back.
3992 2016-05-03  Paul Eggert  <eggert@cs.ucla.edu>
3994         * etc/NEWS: Mention (message "%s" (format ...)).
3996 2016-05-03  Lars Ingebrigtsen  <larsi@gnus.org>
3998         (Common Keywords): Correct what missing :group means
4000         * doc/lispref/customize.texi (Common Keywords): Correct what
4001         missing :group means.
4003 2016-05-03  Eli Zaretskii  <eliz@gnu.org>
4005         Improve documentation of Dired's 'A' and 'Q' commands
4007         * lisp/dired-aux.el (dired-do-find-regexp)
4008         (dired-do-find-regexp-and-replace): Mention
4009         'grep-find-ignored-files' and 'vc-directory-exclusion-list', and
4010         also the fact that REGEXP should be palatable by Grep.  (Bug#23426)
4011         * lisp/dired.el: Update the corresponding autoload forms.
4013         * doc/emacs/dired.texi (Operating on Files): Mention
4014         'grep-find-ignored-files' and 'vc-directory-exclusion-list'.
4015         (Bug#23429)
4017 2016-05-03  Paul Eggert  <eggert@cs.ucla.edu>
4019         Doc fixes for quoting
4021         * doc/emacs/text.texi, doc/lispintro/emacs-lisp-intro.texi:
4022         * doc/lispref/control.texi, doc/lispref/display.texi:
4023         * doc/lispref/help.texi, doc/lispref/strings.texi, lisp/subr.el:
4024         * src/callint.c, src/doprnt.c, src/editfns.c:
4025         Document quoting a bit more systematically.
4026         Problem reported by Alan Mackenzie (Bug#23425).
4028 2016-05-02  Lars Ingebrigtsen  <larsi@gnus.org>
4030         posnp doc clarification
4032         * lisp/subr.el (posnp): Mention that a posn object is returned
4033         from `event-start' (bug#18211).
4035 2016-05-02  Lars Ingebrigtsen  <larsi@gnus.org>
4037         Mention what a missing :group does
4039         * doc/lispref/customize.texi (Common Keywords): Document that
4040         a missing :group reuses the group from the preceding item (bug#21601).
4042 2016-05-02  Eli Zaretskii  <eliz@gnu.org>
4044         Fix documentation of dired-aux search/replace commands
4046         * lisp/dired-aux.el (dired-do-find-regexp)
4047         (dired-do-find-regexp-and-replace): Doc fixes.  (Bug#23429)
4048         * lisp/dired.el: Update the corresponding autoload forms.
4050 2016-05-02  Paul Eggert  <eggert@cs.ucla.edu>
4052         Fix quoting problem in cc-engine debug message
4054         * lisp/progmodes/cc-engine.el (c-replay-parse-state-state):
4055         Use "%s" format to pass through ‘'’ unscathed (Bug#23425), and
4056         likewise for ‘`’, and ‘%’.
4058 2016-05-02  Philipp Stephani  <phst@google.com>
4060         Add electric-quote-string unit test
4062         * test/automated/electric-tests.el (electric-quote-string): New test.
4064 2016-05-02  Paul Eggert  <eggert@cs.ucla.edu>
4066         Don’t electrically quote ‘'’ in Python
4068         Problem reported by Philipp Stephani (Bug#23387).
4069         * lisp/electric.el (electric-quote-post-self-insert-function):
4070         Do not requote a string starter or ender.
4072 2016-05-02  Dmitry Gutov  <dgutov@yandex.ru>
4074         `nreverse' Grep hits before passing them to xref--convert-hits
4076         * lisp/progmodes/xref.el (xref-collect-matches): `nreverse' hits
4077         before passing them to xref--convert-hits.  Fixes a regression
4078         from cc0b7132.
4080 2016-05-01  Paul Eggert  <eggert@cs.ucla.edu>
4082         * doc/misc/texinfo.tex: Sync from gnulib.
4084 2016-05-01  Juri Linkov  <juri@linkov.net>
4086         * lisp/isearch.el (isearch-forward-symbol-at-point): Add isearch-push-state.
4088         (Bug#23410)
4090 2016-05-01  Michael Albinus  <michael.albinus@gmx.de>
4092         tramp.texi: Revert last change due to backward compatibility
4094         (cherry picked from commit 910f9a0a936aacbffe9b9b790d7f698dfd287aac)
4096 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4098         cua-prefix-override-inhibit-delay doc fix
4100         * lisp/emulation/cua-base.el
4101         (cua-prefix-override-inhibit-delay): Typo fix in doc string
4102         (bug#23401).
4104         (cherry picked from commit 2b4c099822811ede787fc6e575bfbb17b3cc0681)
4106 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4108         global-eldoc-mode doc fix
4110         * lisp/emacs-lisp/eldoc.el (global-eldoc-mode): Be more
4111         specific about what "applicable" means (bug#23071).
4113         (cherry picked from commit 25e95b5dd8cd92e03788e589bf99a4b399f03114)
4115 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4117         normal-top-level-add-subdirs-to-load-path doc fix
4119         * lisp/startup.el (normal-top-level-add-subdirs-to-load-path):
4120         Doc fix (bug#21962).
4122         (cherry picked from commit 28aaa6d20586e3330a23b017a65e56dd6461c003)
4124 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4126         isearch-search-fun-function doc tweak
4128         * lisp/isearch.el (isearch-search-fun-function): Mention what
4129         the STRING parameter is (bug#21552).
4131         (cherry picked from commit cafc2a5940cdc523cfea6dcf1cf540f48367c62a)
4133 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4135         Fill some imenu--index-alist doc lines
4137         * lisp/imenu.el (imenu--index-alist): Fill some doc lines (bug#21269).
4139         (cherry picked from commit 4b7bb8f596550628eaa83b82c0f7eabe59a84964)
4141 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4143         Fmarker_position doc string clarification
4145         * src/marker.c (Fmarker_position): Clarify the doc string
4146         (bug#21231).
4148         (cherry picked from commit eeac7c57273cec3f9408b18392dd2bafe3be4450)
4150 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4152         Further define-obsolete-* doc fixups
4154         * lisp/emacs-lisp/byte-run.el (define-obsolete-face-alias):
4155         Fix up last change.
4156         (define-obsolete-variable-alias): Ditto.
4158         (cherry picked from commit 28e9f4390d8391c2c36be4ef515cf3a2c679a5a5)
4160 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4162         Describe WHEN in all the define-obsolete- macros
4164         * lisp/emacs-lisp/byte-run.el (define-obsolete-face-alias):
4165         Say more verbosely what WHEN is (bug#21225).
4166         (define-obsolete-function-alias): Describe the WHEN parameter.
4167         (define-obsolete-variable-alias): Ditto.
4169         (cherry picked from commit 247c388f160581d207e41ca5926990bbf69d4a0f)
4171 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4173         Mention with-silent-modifications in the lispref manual
4175         * doc/lispref/text.texi (Changing Properties): Document
4176         with-silent-modifications (bug#21171).
4178         (cherry picked from commit fcd0d854eef6e439d51e8f07cf734d5e34e502b3)
4180 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4182         with-silent-modifications doc clarification
4184         * lisp/subr.el (with-silent-modifications): Rearrange the doc
4185         string a bit so that the most pertinent information is at the
4186         top (bug#21171).
4188         (cherry picked from commit e0e70f030e69d9696a963a86f5f7caaff4df06eb)
4190 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4192         clear-visited-file-modtime doc string fix
4194         * lisp/files.el (clear-visited-file-modtime): Fix possibly
4195         confusing doc string wording (bug#21169).
4197         (cherry picked from commit 1aaeaf1450756a71c9254a2a5b174c72084ca67a)
4199 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4201         Document mode mode line variables
4203         * doc/lispref/modes.texi (Mode Line Variables): Document
4204         `mode-line-front-space, `mode-line-misc-info',
4205         `mode-line-end-spaces' (bug#21014).
4207         (cherry picked from commit bf7a630b0a5d3900f2afb0e7a881ce62e2b9f935)
4209 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4211         Add a cross ref to Optional Mode Line
4213         * doc/lispref/modes.texi (Mode Line Variables): Add a cross
4214         reference to the Emacs mode line node that explains things
4215         like `display-time-string' (bug#21002).
4217         (cherry picked from commit a3151a28789f413af73b14fbba557b2a587fca53)
4219 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4221         Add a doc string to display-time-string
4223         * lisp/time.el: Add a doc string to `display-time-string',
4224         because it's referred to in the manual, and is too mysterious
4225         otherwise (bug#21002).
4227         (cherry picked from commit 45559c584e5a4ddeed1539b028b50b95baa372f8)
4229 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4231         custom-buffer-style doc fix
4233         * lisp/cus-edit.el (custom-buffer-style): Document the `tree'
4234         value (bug#20724).
4236         (cherry picked from commit bcf0291d0cd02095b0809b1eb91f1e5c5c2ac5e3)
4238 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4240         Rearrange the doc of query-replace slightly
4242         * lisp/replace.el (query-replace): Move the mention of the
4243         interactive prefix arg earlier so that users can find it
4244         (bug#20654).
4246         (cherry picked from commit bcc10761c3b968fa4534718116a0a601ed7da389)
4248 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4250         apropos-print doc fix
4252         * lisp/apropos.el (apropos-print): Document the undocumented
4253         parameters (bug#20520).
4255         (cherry picked from commit 0714d7387812a151f59993ac77c7321724ef79b1)
4257 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4259         completion-table-with-predicate doc string fix
4261         * lisp/minibuffer.el (completion-table-with-predicate): t ->
4262         non-nil in the doc string (bug#20460).
4264         (cherry picked from commit b6a4d162208f239bc7804696d611ae52c686f138)
4266 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4268         Fill the completion-table-with-predicate doc string
4270         * lisp/minibuffer.el (completion-table-with-predicate): Fill
4271         the doc string (bug#20460).
4273         (cherry picked from commit 207a31432c1ed8b548003a3e4af32c49aa3441e9)
4275 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4277         replace-match-maybe-edit doc clarification
4279         * lisp/replace.el (replace-match-maybe-edit): Say what
4280         MATCH-DATA is (bug#20304).
4282         (cherry picked from commit 139874ba53c2e2de9868f8e5234d6ea2bcb97af8)
4284 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4286         add-timeout doc fix
4288         * lisp/emacs-lisp/timer.el (add-timeout): Mention the return
4289         value (bug#20181).
4291         (cherry picked from commit 921b40476f597c84d7c34aa289cd43caeb389c4a)
4293 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4295         Extremely minor doc fix in Choosing Window
4297         * doc/lispref/windows.texi (Choosing Window): There's only one
4298         action alist, I think (bug#20158).
4300         (cherry picked from commit 6c7e7f421d02d9290d6d1d85320737371160aef7)
4302 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4304         Transform mentions of `eval-after-load' to `with-eval-after-load'
4306         * doc/lispref/loading.texi (Hooks for Loading): Update text to
4307         not mention `eval-after-load' (bug#20038).
4309         (cherry picked from commit 9392193be56eebdfac702a0bbb5e954088371c7a)
4311 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4313         cursor-type doc fix
4315         * src/buffer.c (syms_of_buffer): Mention that cursor-type's
4316         WIDHT/HEIGHT can't exceed the frame char size (bug#19215).
4318         (cherry picked from commit 77c5f4554ebb3b7c7d49bc881e45a550f6c93987)
4320 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4322         Add a link from Tool Bar to Images
4324         * doc/lispref/keymaps.texi (Tool Bar): Add a link to the
4325         Images node (bug#19722).
4327         (cherry picked from commit da5d0786163a91400eced4fddba4a92b652458d1)
4329 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4331         (default-mode-line-format): More explicit obsolete info
4333         * lisp/subr.el (default-mode-line-format): Be more explicit in
4334         how default values are now handled (bug#19424).
4336         (cherry picked from commit 9dc5f6d830e72420dc4d41c8f6ca1ca6b28609c0)
4338 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4340         Fcompare_buffer_substrings doc string clarification
4342         * src/editfns.c (Fcompare_buffer_substrings): Extremely minor
4343         doc string clarification (bug#19255).
4345         (cherry picked from commit aa692acbb598a1cc8219ed7a87dde25fd7626ba5)
4347 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4349         insert-file-contents-literally doc fix
4351         * lisp/files.el (insert-file-contents-literally): Say that the
4352         parameters are explained in the other function (bug#18317).
4354         (cherry picked from commit b6481b19bc9592492b1f70dfecb4de6256f537fe)
4356 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4358         Fix custom types for cursor-in-non-selected-windows
4360         * lisp/cus-start.el (standard): Use the same custom types for
4361         cursor-in-non-selected-windows as for cursor-type (bug#19214).
4363         (cherry picked from commit b66bc0cced786e0320e1c3b0758bd3c434d4e8b5)
4365 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4367         Doc clarification to mwheel-scroll
4369         * lisp/mwheel.el (mwheel-scroll): Mention that the restriction
4370         does not apply to Windows (bug#19209).
4372         (cherry picked from commit 696052b5fdfbc5c25dff3c6b081aebe70f6d06c7)
4374 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4376         Clarify the doc of eval-expression-print-format
4378         * lisp/simple.el (eval-expression-print-format): Doc
4379         clarification (bug#19114).
4381         (cherry picked from commit cd193a871f5a8e1c81ba86fc398ac382fa814383)
4383 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4385         Explictly explain that package-initialize loads the packages
4387         * lisp/emacs-lisp/package.el (package-initialize): Be explicit
4388         in saying that `package-initialize' obviates adjusting the
4389         path or requiring the packages, as this is a question that
4390         apparently comes up now and then (bug#18829).
4392         (cherry picked from commit 619e0aedb2f3dbfe6821ac34e2d25b4e5c181117)
4394 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4396         Have the doc strings of `load-path' and `require' mention each other
4398         * src/fns.c (Frequire): Mention `load-path' and fill the doc
4399         string (bug#18829).
4401         * src/lread.c (syms_of_lread): Mention that `require' uses
4402         `load-path'.
4404         (cherry picked from commit 3eca9a03816f95da0030665223c0b5262f223ba7)
4406 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4408         Doc fix for insert-pair-alist
4410         * lisp/emacs-lisp/lisp.el (insert-pair-alist): Say what
4411         COMMAND-CHAR is (bug#18809).
4413         (cherry picked from commit 2824c587e9749a8f350f1d3dddd65176b4561dcb)
4415 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4417         Move doc of backup-directory-alist to the Backup node
4419         * doc/emacs/files.texi (Backup): Move the documentation of
4420         `backup-directory-alist' here from the "Single or Numbered
4421         Backups" node, because it doesn't seem to have much to do with
4422         numbering (bug#18692).
4424         (cherry picked from commit e77b8d84b4161f2cf8720dec2bf44a3e50134398)
4426 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4428         Tiny doc clarification for create-fontset-from-fontset-spec
4430         * lisp/international/fontset.el (create-fontset-from-fontset-spec):
4431         Clarify what the optional part is (bug#18686).
4433         (cherry picked from commit c05d186455ce9907eeb6b21ea4227e453996c681)
4435 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4437         Fill the doc string of font-lock-keywords
4439         * lisp/font-lock.el (font-lock-keywords): Fill the lines and
4440         reorganise some explanations (bug#21427).
4442         (cherry picked from commit c05716d3a26ea7518b89eacfccaf70c9d0731df7)
4444 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4446         Doc fix for font-lock-remove-keywords
4448         * lisp/font-lock.el (font-lock-remove-keywords): Add a link to
4449         `font-lock-add-keywords' to describe KEYWORDS (bug#18634).
4451         (cherry picked from commit bc00dcf12983cd399127d0eea39647f29778eb02)
4453 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4455         Clarify whitespace-style doc string
4457         * lisp/whitespace.el (whitespace-style): Doc clarification
4458         (bug#18296).
4460         (cherry picked from commit d96c720d0cca7c9ffbb4c712ad315bb707d6625c)
4462 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4464         Doc fixed for next-error-buffer-p
4466         * lisp/simple.el (next-error-buffer-p): Clarify doc string
4467         (bug#18202).
4469         (cherry picked from commit a10eb168cc96db9f0dab2d75550cbd8f08be2363)
4471 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4473         Tiny doc fix
4475         * src/fileio.c (Ffile_accessible_directory_p): Tiny doc fix
4476         (and fill) (bug#18201).
4478         (cherry picked from commit 2ef0040e2363a669d9b93df935d31c98fa130132)
4480 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4482         Doc fix
4484         * src/keymap.c (Fdefine_prefix_command): Clarify doc string
4485         slightly (bug#18092).
4487         (cherry picked from commit 6b769c81d024f7eeb90b167e7df6f87d859614d4)
4489 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4491         delsel doc touch ups
4493         * lisp/delsel.el (delete-selection-helper): Use non-nil
4494         instead of t and clarify function return values (bug#18089).
4496         (cherry picked from commit d7a5b5be9a5869bcd233434ec3103dd1976d7df7)
4498 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4500         Doc fixes for menu-bar.el
4502         * lisp/menu-bar.el (clipboard-kill-ring-save): Describe the
4503         REGION parameter (bug#18028).
4504         (clipboard-kill-region): Ditto.
4506         (cherry picked from commit 33d2c67bff0992ecbc0fe38556683242b9d1a4ae)
4508 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4510         Doc fix
4512         * lisp/rect.el (delete-whitespace-rectangle): Doc fix (bug#18026).
4514         (cherry picked from commit 6baca4911ec901579749dbf7596011d90fea3781)
4516 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4518         Minor doc clarification
4520         * lisp/subr.el (y-or-n-p): Document the return value from "n"
4521         (bug#18024).
4523         (cherry picked from commit 5d1f3192d484edee92caa46cd7d699da3e920259)
4525 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4527         Fill font-lock-mode doc string
4529         * lisp/font-core.el (font-lock-mode): Fill the text to make it
4530         narrower (bug#18008).
4532         (cherry picked from commit 27abf372836532c57be2e9e3ed23413729cc07fc)
4534 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4536         Wrap the auto-generated doc string
4538         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode): Wrap a
4539         string to make it less likely that we get overlong lines
4540         (bug#17999).
4542         (cherry picked from commit 323b69664914d687fd4b48593479cea223dfbcb4)
4544 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4546         Clarify hi-lock-find-patterns
4548         * lisp/hi-lock.el (hi-lock-find-patterns): Doc clarification
4549         (bug#17989).
4551         (cherry picked from commit 552e90ce7dff3a7107243fdf71c4de3af443e13a)
4553 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4555         Add a doc string to `winner-mode'
4557         * lisp/winner.el (winner-mode): Add a doc string based on the
4558         comments in the file (bug#17716).
4560         (cherry picked from commit 2c3ab9b6e39a3d600e7d82deacc24effaec051bb)
4562 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4564         Doc fix for align-newline-and-indent
4566         * lisp/align.el (align-newline-and-indent): Mention that
4567         alignment is done by `align' (bug#17707).
4569         (cherry picked from commit 340a224ec3e01706112a07164da9a9f3f369a5aa)
4571 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4573         Doc fix for `kbd'
4575         * lisp/subr.el (kbd): Describe more fully the format of the
4576         parameter (bug#17039).
4578         (cherry picked from commit 3a33afe25d8518f194fa4706eaccdb2a786a0348)
4580 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4582         Doc tweak
4584         * lisp/simple.el (use-empty-active-region): Doc tweak.
4585         There's only one region (bug#16513).
4587         (cherry picked from commit 35fb7897f161d5e5a87e039dc1e427094640b0c8)
4589 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4591         Link from (emacs)Exiting to (lisp)Killing Emacs
4593         * doc/emacs/entering.texi (Exiting): Link to the lispref
4594         manual for further customisations (bug#15445).
4596         (cherry picked from commit bc5f27aa099cdde02ca66e71501b89300685ab28)
4598 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4600         find-lisp doc touchups
4602         * lisp/find-lisp.el (find-lisp-format): Copy over the doc
4603         string (bug#15047).
4604         (find-lisp-find-files): Clarify doc.
4606         (cherry picked from commit e4c7657b0d1a31d64ca24bc64b5480cd7687e332)
4608 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4610         Don't have the manual claim that it lists all CL incompatibilities
4612         * doc/misc/cl.texi (Common Lisp Compatibility): The list of
4613         incompatibilities isn't exhaustive, so don't say that it is
4614         (bug#15171).
4616         (cherry picked from commit fb685bc91a72508c97ce7e30f970d4157677f371)
4618 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4620         Change all occurrences of "Mouse-[0-9]" to "mouse-[0-9]"
4622         * doc/emacs/*.texi: Change all occurrences of "Mouse-[0-9]" to
4623         "mouse-[0-9]".  These are case sensitive, and the keys are lower case
4624         (bug#14554).
4626         (cherry picked from commit e4c26271f2c2fe08f8490e25c63a436ab2a804ca)
4628 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4630         Doc string change to enable-recursive-minibuffers
4632         * src/minibuf.c (syms_of_minibuf): Mention
4633         minibuffer-depth-indicator-mode in the doc string to
4634         enable-recursive-minibuffers (bug#14147).
4636         (cherry picked from commit 23ba488a5e8290c4de91e0ff4161641efa364c0d)
4638 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4640         Clarify the `interactive' doc string slightly
4642         * src/callint.c (Finteractive): Clarify the doc string slightly
4643           (bug#14577).
4645         (cherry picked from commit cd993be60da2d12db0d390001373d486c1091c47)
4647 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4649         Clarify some doc strings
4651         * lisp/emacs-lisp/syntax.el (syntax-propertize-via-font-lock):
4652         Clarify doc string (bug#8693).
4653         (syntax-propertize): Clarify doc string.
4655         (cherry picked from commit ad3ef417f3c40f086de9c547d6272e5685595e42)
4657 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4659         Add some concept index entries for custom types
4661         * doc/lispref/customize.texi (Composite Types): Add concept
4662         index entries for restricted-sexp, radio and choice (bug#7385).
4664         (cherry picked from commit 388bb723fa078158d3148de05e942f9c01e95dd8)
4666 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4668         Mention `lisp-indent-function' in the lispref manual
4670         * doc/lispref/macros.texi (Indenting Macros): Mention
4671         `lisp-indent-function' (bug#3393).
4673         (cherry picked from commit a1627691a896b2afaa264f93534178bc763564c9)
4675 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4677         Clarify doc string of internal compilation function
4679         * lisp/progmodes/compile.el (compilation-get-file-structure):
4680         Clarify doc string (bug#3137).
4682         (cherry picked from commit 123191decb7428db3b32a6c01631fa755088393a)
4684 2016-05-01  Paul Eggert  <eggert@cs.ucla.edu>
4686         Use ‘T *restrict’ proto, not ‘T[restrict]’
4688         * src/fns.c (sort_vector_copy): Use a different way to attempt to
4689         work around GCC 3.0-and-earlier incompatibility with C99, one that
4690         does not have problems with modern non-GCC compilers.
4692 2016-05-01  Eli Zaretskii  <eliz@gnu.org>
4694         Fix documentation of 'url-retrieve-synchronously'
4696         * doc/misc/url.texi (Retrieving URLs): Update argument list of
4697         'url-retrieve-synchronously'.  (Bug#23411)
4699 2016-05-01  Eli Zaretskii  <eliz@gnu.org>
4701         * lisp/url/url.el (url-retrieve-synchronously): Doc fix.  (Bug#23411)
4703 2016-04-30  Leo Liu  <sdl.web@gmail.com>
4705         Fix last change to isearch-update (bug#23406)
4707         * lisp/isearch.el (isearch-update): Remove (setq cursor-sensor-inhibit
4708           nil) ie remove the original (unless (boundp 'cursor-sensor-inhibit)
4709           ...) form.
4711 2016-04-30  Leo Liu  <sdl.web@gmail.com>
4713         Autoload cursor-sensor-inhibit (bug#23406)
4715         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor-inhibit): Autoload.
4716         * lisp/isearch.el (isearch-update): Remove boundp check.
4718 2016-04-30  Phillip Lord  <phillip.lord@newcastle.ac.uk>
4720         org-map-entries: Fix org-agenda-prepare-buffers call
4722         * lisp/org/org.el (org-map-entries): Check that buffer-file-name is non-nil
4723           before passing to org-agenda-prepare-buffers.
4725         This is a backport of commit 44c8cd7136e3fcd1e6bfa08895cac437b7a691fa
4726         from upstream org-mode. Addresses bug #23365.
4728 2016-04-30  Eli Zaretskii  <eliz@gnu.org>
4730         Followup for last commit in the user manual
4732         * doc/emacs/basic.texi (Moving Point): Clarify that
4733         set-goal-column has buffer-local effect.  (Bug#23405)
4735 2016-04-30  Eli Zaretskii  <eliz@gnu.org>
4737         Improve doc string of 'set-goal-column'
4739         * lisp/simple.el (set-goal-column): Doc fix.  (Bug#23405)
4741 2016-04-30  Eli Zaretskii  <eliz@gnu.org>
4743         Fix the MSDOS build
4745         * config.bat:
4746         * msdos/sedlisp.inp:
4747         * msdos/sedlibmk.inp:
4748         * msdos/sedleim.inp:
4749         * msdos/sedadmin.inp:
4750         * msdos/sed6.inp:
4751         * msdos/sed3v2.inp:
4752         * msdos/sed2v2.inp:
4753         * msdos/sed1v2.inp: Adapt to Emacs 25.
4755         * src/process.c (remove_slash_colon): Move out of "#ifdef
4756         subprocesses" block, as it its called unconditionally.  Move
4757         ADD_SUBFEATURE calls into "#ifdef subprocesses" block, as they
4758         reference variables only defined in that block.
4759         * src/msdos.h: Provide prototypes for IT_set_frame_parameters,
4760         faccessat, msdos_fatal_signal, syms_of_msdos, pthread_sigmask,
4761         dos_keysns, dos_keyread, run_msdos_command, and
4762         syms_of_win16select, to avoid compiler warnings.
4763         * src/msdos.c (SYS_ENVIRON): Define to either '_environ' or
4764         'environ', depending on the DJGPP version.
4765         Remove declarations of externally-visible Lisp objects, like
4766         Qbackground_color and Qreverse.
4767         (run_msdos_command): First argument is not signed, not unsigned.
4768         Use SYS_ENVIRON.
4769         (sys_select): Use 'timespec_cmp' instead of 'timespec_sign', as
4770         the latter doesn't work when 'time_t' is an unsigned data type.
4771         This caused idle timers to behave incorrectly: they only fired
4772         after a keyboard input event.
4773         * src/frame.c (adjust_frame_size) [MSDOS]: Account for
4774         FRAME_TOP_MARGIN that isn't counted in the frame's number of
4775         lines, but dos_set_window_size needs it to be added.
4776         * src/lread.c (INFINITY, NAN) [DJGPP < 2.05]: Provide definitions.
4777         * src/fns.c (sort_vector_copy) [__GNUC__ < 4]: Provide a prototype
4778         that works around compilation errors with older GCC versions.
4779         * src/w16select.c: Don't declare QCLIPBOARD and QPRIMARY as Lisp
4780         Objects.
4781         * src/filelock.c [MSDOS]: Ifdef away most of the code.  Provide
4782         no-op implementations for 'lock_file' and 'unlock_file'.
4783         (Ffile_locked_p) [MSDOS]: Always return nil.  This avoids multiple
4784         ifdefs in all users of filelock.c functionality.
4785         * src/conf_post.h (EOVERFLOW, SIZE_MAX) [DJGPP < 2.04]: Define.
4786         * src/emacs.c [MSDOS]: Include dosfns.h, to avoid compiler
4787         warnings.
4788         * src/dosfns.h: Provide prototypes for dos_cleanup,
4789         syms_of_dosfns, and init_dosfns.
4790         * src/deps.mk (atimer.o): Depend on msdos.h.
4791         (emacs.o): Depend on dosfns.h.
4792         * src/atimer.c [MSDOS]: Include msdos.h, to avoid compiler
4793         warnings.
4795         * lisp/window.el (window--adjust-process-windows): Skip the body
4796         if 'process-list' is not available.  This avoids failure to start
4797         up on MS-DOS.
4798         * lisp/vc/diff.el (diff-no-select): Test 'make-process', not
4799         'start-process', as the latter is now available on all platforms.
4800         * lisp/textmodes/ispell.el (ispell-async-processp): Replace
4801         'start-process' with 'make-process' in a comment.
4802         * lisp/term/internal.el (IT-unicode-translations): Modify and add
4803         a few translations to display Info files with Unicode markup.  Fix
4804         an ancient off-by-one mismatch error with Unicode codepoints.
4805         * lisp/progmodes/compile.el (compilation-start): Test
4806         'make-process', not 'start-process', as the latter is now
4807         available on all platforms.
4808         * lisp/man.el (Man-build-man-command, Man-getpage-in-background):
4809         Test 'make-process', not 'start-process', as the latter is now
4810         available on all platforms.
4811         * lisp/international/mule-cmds.el (set-coding-system-map): Test
4812         'make-process', not 'start-process', as the latter is now
4813         available on all platforms.
4814         * lisp/eshell/esh-cmd.el (eshell-do-pipelines-synchronously): Doc
4815         fix.
4816         (eshell-execute-pipeline): Test 'make-process', not
4817         'start-process', as the latter is now available on all platforms.
4819 2016-04-30  Andreas Schwab  <schwab@linux-m68k.org>
4821         Remove \= from format string (bug#18190)
4823         * lisp/emacs-lisp/eieio.el (defclass): Remove \= from format
4824         string.
4826 2016-04-30  Eli Zaretskii  <eliz@gnu.org>
4828         Fix variable-pitch font on MS-Windows
4830         * lisp/faces.el (variable-pitch) [w32]: Name a variable-pitch font
4831         explicitly, to avoid Emacs picking up a bold-italic variant on
4832         some MS-Windows systems.  See this thread for details:
4833         http://lists.gnu.org/archive/html/emacs-devel/2016-04/msg00746.html.
4835 2016-04-29  Alan Mackenzie  <acm@muc.de>
4837         Restore follow-scroll-up/down to scrolling by the combined size of all windows
4839         Also rename the current follow-scroll-up/down functions to
4840         follow-scroll-up-window and follow-scroll-down-window.  These scroll by the
4841         height of the current window.
4843         This fixes bug #23347.
4845         * lisp/follow.el (follow-mode): Tweak the doc string.
4846         (follow-scroll-up-arg, follow-scroll-down-arg): new functions, extracted from
4847         follow-scroll-up/down.
4848         (follow-scroll-up-window, follow-scroll-down-window): Functions renamed from
4849         follow-scroll-up/down.
4850         (follow-scroll-up, follow-scroll-down): Restore the historic functionality.
4852 2016-04-29  Alan Mackenzie  <acm@muc.de>
4854         Revert unneeded change which harms syntactic parsing.  This fixes bug #23308.
4856         * lisp/progmodes/cc-engine.el (c-invalidate-state-cache): User
4857         c-state-old-cpp-end as an argument to c-with-all-but-one-cpps-commented-out
4858         regardless of the value of `here'.
4860 2016-04-29  Alan Mackenzie  <acm@muc.de>
4862         Correct indentation of ids in a C++ enum after a protection keyword.
4864         Also correct the misfontification of the last enum identifier.
4866         * lisp/progmodes/cc-engine.el (c-forward-keyword-prefixed-id): setq
4867         c-last-identifier-range to nil to ensure that only types recognized by this
4868         macro are set for fontification as types.
4869         (c-backward-typed-enum-colon): Function renamed from
4870         c-backward-colon-prefixed-type.  On finding a colon in the backward search,
4871         check it is preceded by an identifier rather than a keyword.
4873 2016-04-27  Glenn Morris  <rgm@gnu.org>
4875         * lisp/window.el (window--process-window-list): No-op if no processes.
4877         This avoids an issue with save-selected-window (from walk-windows)
4878         failing if frame.el is not loaded, eg if the terminal is resized
4879         during startup of a -nw CANNOT_DUMP build.  (Bug#23369).
4881 2016-04-27  Paul Eggert  <eggert@penguin.cs.ucla.edu>
4883         Port dumping to NetBSD with PaX
4885         Problem reported by Thomas Klausner (Bug#23371).
4886         * configure.ac (PAXCTL_dumped, PAXCTL_notdumped): New vars.
4887         Set them to setfattr and/or paxctl commands appropriate for
4888         GNU/Linux and/or NetBSD; the latter prefers paxctl +a.  Search
4889         for paxctl only if setfattr is not found.
4890         * src/Makefile.in (PAXCTL_dumped, PAXCTL_notdumped):
4891         New vars, replacing PAXCTL_if_present and SETFATTR_if_present.
4892         All uses changed.
4894 2016-04-27  Dmitry Gutov  <dgutov@yandex.ru>
4896         Don't mistake `for' inside a function for a part of array comprehension
4898         * lisp/progmodes/js.el (js--indent-in-array-comp): Also check the
4899         depth in parens between the bracket and `for' (bug#23391).
4901         * test/indent/js.js: Add a corresponding example.
4903 2016-04-27  Anders Lindgren  <andlind@gmail.com>
4905         Fix bug#22891: wrong terminal width when a fringe width is zero.
4907         When either fringe width is zero, Emacs reserved one column for a
4908         continuation glyph. Terminal windows does not take this into
4909         account when the frame is resized.
4911         * lisp/window.el (window-adjust-process-window-size): Use
4912         `window-max-chars-per-line' instead of `window-body-width'.
4913         * lisp/term.el (term-window-width): Remove function. (It does the
4914         same as `window-max-chars-per-line' but without recent bug fixes.)
4915         (term-mode): Use `window-max-chars-per-line' instead of
4916         `term-window-width'.
4918         Backport
4920         (cherry picked from commit 5b5403289888efe8783ae6a405845b925f544ec1)
4922 2016-04-27  Leo Liu  <sdl.web@gmail.com>
4924         Improve last change to vc-git-mode-line-string
4926         * lisp/vc/vc-git.el (vc-git-mode-line-string): Better fix that caches
4927           the result.
4929 2016-04-27  Stephen Berman  <stephen.berman@gmx.net>
4931         Todo mode doc bug fix
4933         * lisp/calendar/todo-mode.el (todo-show): Correct obsolete and no
4934         longer correct information in doc string.
4936 2016-04-27  Leo Liu  <sdl.web@gmail.com>
4938         Fix revision calculation in vc-git-mode-line-string
4940         * lisp/vc/vc-git.el (vc-git-mode-line-string): Use
4941           vc-git-working-revision because vc-working-revision needs to decide
4942           the backend and may return nil.
4944 2016-04-26  Jorgen Schaefer  <contact@jorgenschaefer.de>
4946         Add Python 3.5 keyword "await"
4948         * lisp/progmodes/python.el (python-font-lock-keywords): Add await as
4949         keyword.
4951 2016-04-26  Lele Gaifax  <lele@metapensiero.it>
4953         Add new keywords of Python 3.5
4955         Python 3.5, released in mid September 2015, introduced a few new
4956         keywords to better support asynchronous code, "async" and "await"
4957         in particular. See https://www.python.org/dev/peps/pep-0492/ for
4958         details. (Bug#21783)
4959         * lisp/progmodes/python.el (python-rx-constituents): Add async
4960         def/for/with as block-start and async def as defun.
4961         * lisp/progmodes/python.el (python-font-lock-keywords): Add async
4962         def/for/with as keyword.
4963         * test/automated/python-tests.el (python-indent-after-async-block-1,
4964         python-indent-after-async-block-2, python-indent-after-async-block-3,
4965         python-nav-beginning-of-defun-3): New tests to test indentation and
4966         navigation for the async keyword.
4968 2016-04-26  Mark Oteiza  <mvoteiza@udel.edu>
4970         Partially revert previous change.
4972         This commit partially reverts 0f332848cdb2ed6d46771914a911cbca194cd51a.
4973         * lisp/rect.el (rectangle--highlight-for-redisplay): Use region face.
4974         This function is for rectangle-mark-mode, not string-rectangle.
4976 2016-04-25  Paul Eggert  <eggert@penguin.cs.ucla.edu>
4978         Say why text-quoting-style is not a user option
4980         * doc/lispref/help.texi (Keys in Documentation):
4981         * etc/NEWS: Document why text-quoting-style is not a
4982         customizable variable (Bug#23372).
4984 2016-04-25  Glenn Morris  <rgm@gnu.org>
4986         * lisp/emacs-lisp/autoload.el (update-directory-autoloads):
4987         Future-proof against non-time-values.
4989 2016-04-25  Eli Zaretskii  <eliz@gnu.org>
4991         Don't mention ~/.emacs.bmk literally in doc strings
4993         * lisp/bookmark.el (bookmark-save-flag, bookmark-load): Don't
4994         mention "~/.emacs.bmk" explicitly as the default bookmark file in
4995         the doc strings.  (Bug#23350)
4997 2016-04-25  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
4999         * etc/NEWS: Explain why multicolor font display is disabled on OS X Cocoa.
5001 2016-04-24  Paul Eggert  <eggert@cs.ucla.edu>
5003         Port to Ubuntu 16.04 --enable-gcc-warnings
5005         * src/image.c (gif_load) [HAVE_GIF]: Fix pointer signedness problem.
5007 2016-04-24  Paul Eggert  <eggert@cs.ucla.edu>
5009         * etc/NEWS: Improve wording of vc-git-log-output-coding-system etc.
5011 2016-04-24  Tino Calancha  <f92capac@gmail.com>
5013         Don't kill ~/ if it's the top level directory
5015         * lisp/dired-aux.el (dired-kill-subdir): Don't kill ~/ if it's
5016         the top level directory (bug#23017).
5018 2016-04-23  Tino Calancha  <f92capac@gmail.com>  (tiny change)
5020         describe-char: fix insert char documentation
5022         * lisp/descr-text.el (describe-char):
5023         Only 'ucs-names' entries can be inserted by unicode name (Bug#23325).
5025 2016-04-23  Dmitry Gutov  <dgutov@yandex.ru>
5027         (vc-git-mode-line-string): Don't use `replace-regexp-in-string'
5029         * lisp/vc/vc-git.el (vc-git-mode-line-string): Use `substring'
5030         instead of `replace-regexp-in-string', because REV can be nil
5031         (e.g. when FILE is a directory, bug#23344), and we actually know
5032         we only need the first 4 characters.
5034 2016-04-22  Nicolas Petton  <nicolas@petton.fr>
5036         Bump version to 25.0.93
5038         * README:
5039         * configure.ac:
5040         * msdos/sed2v2.inp: Bump Emacs version to 25.0.93.
5042 2016-04-22  Nicolas Petton  <nicolas@petton.fr>
5044         * etc/AUTHORS: Update the AUTHORS file
5046         * admin/update_autogen: Use #!/usr/bin/env bash
5048         * admin/authors.el (authors-ignored-files): Additions.
5050 2016-04-22  Martin Rudalics  <rudalics@gmx.at>
5052         In x_set_window_size restore do_pending_window_change calls
5054         * src/xterm.c (x_set_window_size):
5055         * src/w32term.c (x_set_window_size): Restore
5056         do_pending_window_change calls after their stupid removal on
5057         2015-08-31.
5059 2016-04-21  Ilya Zakharevich  <ilya@math.berkeley.edu>
5061         Fix Alt-modified keys on some European MS-Windows keyboards
5063         * src/w32fns.c (deliver_wm_chars): If the reported character is
5064         ASCII, AND Meta modifier is a candidate, behave as if Meta is
5065         present, i.e. fall back to the legacy code.  (Bug#23251)
5067 2016-04-20  Eli Zaretskii  <eliz@gnu.org>
5069         Document 'help-go-forward'
5071         * doc/emacs/help.texi (Help Mode): Document and index
5072         'help-go-forward'.  (Bug#23323)
5074 2016-04-20  Eli Zaretskii  <eliz@gnu.org>
5076         Revert "Allow to customize names of executables used by grep.el"
5078         This reverts commit c93ae7a1e5a94541189a8f36984014344d561ffc.
5080 2016-04-20  Eli Zaretskii  <eliz@gnu.org>
5082         Revert "Don't use 'find-program'"
5084         This reverts commit 10597c977d55cbf9304b51c3b364ce58199384a0.
5086 2016-04-20  Eli Zaretskii  <eliz@gnu.org>
5088         Revert "Use 'grep-find-program' in check-declare.el"
5090         This reverts commit 33bef6e90bfd20609d044b8a076c1570c627684a.
5092 2016-04-20  Eli Zaretskii  <eliz@gnu.org>
5094         Clarify documentation of 'dired-mark-files-containing-regexp'
5096         * doc/emacs/dired.texi (Marks vs Flags): Clarify that for files
5097         visited in buffers, 'dired-mark-files-containing-regexp' searches
5098         the buffer rather than the file on disk.  (Bug#22694)
5100         * lisp/dired.el (dired-mark-files-containing-regexp): Clarify that
5101         for files visited in buffers, 'dired-mark-files-containing-regexp'
5102         searches the buffer rather than the file on disk.  (Bug#22694)
5104 2016-04-19  Eli Zaretskii  <eliz@gnu.org>
5106         Make tmm-menubar work in correct order again
5108         * lisp/tmm.el (tmm-prompt): Don't reverse 'tmm-km-list' right at the
5109         beginning; instead, pass a reversed copy to 'tmm--completion-table'.
5110         (Bug#23309)
5111         (tmm-menubar): Fix an off-by-one error in determining the menu
5112         item when the function is called with a non-nil 'x-position'
5113         argument.
5115 2016-04-18  Dmitry Gutov  <dgutov@yandex.ru>
5117         Remove the Meta-CVS VC backend
5119         * lisp/obsolete/vc-mcvs.el: Remove the file (bug#20475).
5121         * lisp/vc/log-view.el (log-view-extract-comment): Remove the MCVS
5122         reference.
5124         * doc/misc/efaq-w32.texi (Version control): Same.
5126 2016-04-18  Michael Albinus  <michael.albinus@gmx.de>
5128         Fix Bug#23276
5130         * lisp/autorevert.el (auto-revert-handler): Ignore errors
5131         coming from `revert-buffer'.  (Bug#23276)
5133 2016-04-17  Reto Zimmermann  <reto@gnu.org>
5135         Sync with upstream vhdl mode v3.38.1.
5137         * lisp/progmodes/vhdl-mode.el (vhdl-version, vhdl-time-stamp): Update.
5138         (vhdl-mode): No longer set comment-padding.
5139         (vhdl-begin-p): Handle missing space between keyword and parenthesis.
5140         (vhdl-beginning-of-statement-1): Fix indentation for "else generate".
5141         (vhdl-template-else, vhdl-template-elsif): Support generate statement.
5142         (vhdl-re-search-forward, vhdl-re-search-backward): Save match data.
5144 2016-04-16  Paul Eggert  <eggert@cs.ucla.edu>
5146         Tweak configure.ac syntax in recent module patch
5148         * configure.ac: Use proper Autoconf parenthesization in
5149         recent HAVE_MODULES patch.  Although this doesn’t fix any bugs,
5150         the previous syntax was confusing.
5152 2016-04-16  Paul Eggert  <eggert@cs.ucla.edu>
5154         Port to GCC 5.3.1 20160406 (Red Hat 5.3.1-6)
5156         * src/indent.c (Fvertical_motion): Pacify --enable-gcc-warnings
5157         when using the April 6 Fedora patch to GCC.
5159 2016-04-16  Mark Oteiza  <mvoteiza@udel.edu>
5161         Make sh-electric-here-document-mode accessible in sh-mode-hook. (Bug#3226)
5163         * lisp/progmodes/sh-script.el (sh-mode-hook): Add
5164         sh-electric-here-document-mode as an option and the default value.
5165         (sh-mode): Mention sh-mode-hook in docstring.
5166         (sh-mode): Remove sh-electric-here-document-mode invocation.
5168 2016-04-16  Glenn Morris  <rgm@gnu.org>
5170         * configure.ac (HAVE_MODULES): Exclude gnu-kfreebsd from previous.
5172 2016-04-16  Mark Oteiza  <mvoteiza@udel.edu>
5174         Make use of rectangle-preview custom variable.
5176         lisp/rect.el (rectangle--string-preview): Only create a preview if
5177         rectangle-preview is non-nil (Bug#23248).
5179 2016-04-16  Mark Oteiza  <mvoteiza@udel.edu>
5181         Make use of rectangle-preview face.
5183         * lisp/rect.el (rectangle--string-preview):
5184         (rectangle--highlight-for-redisplay): Replace 'region with
5185         'rectangle-preview (Bug#23248).
5187 2016-04-16  Eli Zaretskii  <eliz@gnu.org>
5189         Use 'grep-find-program' in check-declare.el
5191         * lisp/emacs-lisp/check-declare.el (check-declare-directory): Use
5192         'grep-find-program', not 'find-program'.
5194 2016-04-16  Eli Zaretskii  <eliz@gnu.org>
5196         Improve "C-h S" for cl-lib symbols
5198         * lisp/info-look.el: Add cl.info lookup to emacs-lisp-mode related
5199         manuals.  (Bug#23289)
5201 2016-04-16  Eli Zaretskii  <eliz@gnu.org>
5203         Fix minor issues with removing left or right fringes
5205         * lisp/window.el (window-max-chars-per-line): Account for
5206         'left-fringe-width' and 'right-fringe-width' variables.
5208         * doc/lispref/windows.texi (Window Sizes): Document the effect on
5209         window text width when setting the width of one or both fringes to
5210         zero.
5211         * doc/emacs/display.texi (Fringes): Document the effect on window
5212         text width when setting the width of one or both fringes to zero.
5213         (Bug#22891)
5215 2016-04-16  Eli Zaretskii  <eliz@gnu.org>
5217         Speed up redisplay in ansi-term mode
5219         * lisp/term.el (ansi-term): Force L2R 'bidi-paragraph-direction'.
5220         (Bug#20611)
5222 2016-04-16  Philipp Stephani  <phst@google.com>
5224         Simplify 8-bit character handling by terminal for 'raw-text'
5226         * lisp/international/mule.el (set-keyboard-coding-system): Treat
5227         'raw-text' as another coding type that requires 8-bit characters.
5228         * lisp/xt-mouse.el (xterm-mouse--read-coordinate): Use 'no-conversion'
5229         instead of 'latin-1'.
5231 2016-04-15  Glenn Morris  <rgm@gnu.org>
5233         * configure.ac (HAVE_MODULES): Treat gnu like gnu-linux.  (Bug#22722)
5235 2016-04-15  Eli Zaretskii  <eliz@gnu.org>
5237         Fix w32 memory-management problem when extending buffer text
5239         * src/w32heap.c (mmap_realloc): Only attempt extending a region if
5240         the following region has the same allocation base.  Also, use the
5241         original allocation base and enlarged size to commit reserved
5242         memory, to ensure that the allocation base stays at its original
5243         value.  This fixes several hard-to-debug problems whereby part of
5244         buffer text was overwritten with binary nulls, because
5245         mmap_realloc copied only part of buffer text when extending it.
5246         See
5247         http://lists.gnu.org/archive/html/emacs-devel/2016-04/msg00325.html
5248         and http://debbugs.gnu.org/cgi/bugreport.cgi?bug=23223#55 for two
5249         examples of the related problems.
5251 2016-04-14  Michael Albinus  <michael.albinus@gmx.de>
5253         Fix Bug#20637.  Do not merge to master
5255         * lisp/vc/vc-hooks.el (vc-state, vc-working-revision):
5256         Use `vc-backend' instead of `vc-responsible-backend'.  (Bug#20637)
5258         * test/automated/vc-tests.el (vc-test--state)
5259         (vc-test--working-revision): Deactivate now failing checks.
5261 2016-04-14  Paul Eggert  <eggert@cs.ucla.edu>
5263         substitute-command-keys keeps quotes’ text props
5265         Problem reported by Clément Pit--Claudel (Bug#23254).
5266         * src/doc.c: Include intervals.h.
5267         (Fsubstitute_command_keys): If the only substitutions are for
5268         quotes, copy the source string’s text properties too, since no
5269         substring lengths have changed.
5271 2016-04-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
5273         * src/xwidget.c (x_draw_xwidget_glyph_string): More clipping fixes.
5275 2016-04-12  Dmitry Gutov  <dgutov@yandex.ru>
5277         Add semantic-symref-filepattern-alist entry for lisp-interaction-mode
5279         * lisp/cedet/semantic/symref/grep.el
5280         (semantic-symref-filepattern-alist):
5281         Add entry for lisp-interaction-mode
5282         (http://debbugs.gnu.org/cgi/bugreport.cgi?bug=23223#47)
5284 2016-04-12  Dmitry Gutov  <dgutov@yandex.ru>
5286         Perform xref searches without visiting unopened files
5288         * lisp/progmodes/xref.el (xref-collect-references): Instead of
5289         calling `semantic-symref-find-references-by-name', use
5290         `semantic-symref-instantiate' and `semantic-symref-perform-search'
5291         directly.  Ask for `line-and-text' results (bug#23223).
5292         (xref-collect-matches): Include the line text in the "hit"
5293         structure.
5294         (xref--convert-hits): New function, split off from
5295         `xref-collect-references' and `xref-collect-matches', to convert
5296         "hits" to xref instance list.  Create a temporary buffer here, to
5297         use it for post-processing all hit lines.
5298         (xref--collect-matches): Use a different approach for non-visited
5299         files.  Insert the line text into the temp buffer, apply the
5300         file's major mode the best we can without reading its whole
5301         contents, syntax-propertize, and search in the result.
5302         (xref--collect-matches-1): Extract, to handle the common logic
5303         between two cases.
5304         (xref--find-buffer-visiting): New function, a wrapper around
5305         `find-buffer-visiting' to amortize its cost.
5307         * lisp/cedet/semantic/symref/idutils.el
5308         (semantic-symref-idutils--line-re): New constant.
5309         (semantic-symref-parse-tool-output-one-line): Support result type
5310         `line-and-text'.
5312         * lisp/cedet/semantic/symref/grep.el
5313         (semantic-symref-grep--line-re)
5314         (semantic-symref-parse-tool-output-one-line): Same.
5316         * lisp/cedet/semantic/symref/cscope.el
5317         (semantic-symref-cscope--line-re)
5318         (semantic-symref-parse-tool-output-one-line): Same.
5320         * lisp/cedet/semantic/symref/global.el
5321         (semantic-symref-global--line-re)
5322         (semantic-symref-parse-tool-output-one-line): Same.
5324 2016-04-12  Phillip Lord  <phillip.lord@newcastle.ac.uk>
5326         Revert "Prevent bootstrap autoload backup files"
5328         This reverts commit c23c965bb9d0a4bcc1b6158833ff99aa20fd53e9.
5330 2016-04-12  Paul Eggert  <eggert@cs.ucla.edu>
5332         Improve time zone documentation
5334         * doc/lispref/os.texi (Time Zone Rules):
5335         New section, mostly with material moved here from other sections.
5336         * doc/emacs/cmdargs.texi (General Variables):
5337         * doc/lispref/os.texi (Time Conversion, Time Parsing):
5338         Xref new section.
5339         * etc/NEWS, etc/PROBLEMS:
5340         * lisp/org/org.el (org-timestamp-format):
5341         * src/editfns.c (Fformat_time_string, Fdecode_time)
5342         (Fencode_time, Fcurrent_time_string, Fcurrent_time_zone)
5343         (Fset_time_zone_rule):
5344         When documenting time zone rule strings, mention the TZ
5345         environment variable in preference to mentioning the
5346         sort-of-internal function set-time-zone-rule.
5348 2016-04-12  Phillip Lord  <phillip.lord@russet.org.uk>
5350         Prevent bootstrap autoload backup files
5352          * lisp/emacs-lisp/autoload.el (autoload-find-generated-file): Suppress
5353            backups in newly created file.
5355           (autoload-ensure-default-file): Function split into two.
5356           (autoload-ensure-file-writeable): New function from split.
5358           (Bug#23203)
5360 2016-04-11  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
5362         Disable multicolor fonts on OS X since they are not supported on free systems
5364         * src/macfont.m (macfont_list): Don't use color bitmap fonts.
5366 2016-04-11  Paul Eggert  <eggert@cs.ucla.edu>
5368         Capitalize “Universal Time” in documentation
5370         It’s a proper noun.
5371         * lisp/vc/add-log.el (add-log-time-zone-rule): Also, fix typo by
5372         mentioning ‘format-time-string’ instead of ‘set-time-zone-rule’.
5374 2016-04-11  Eli Zaretskii  <eliz@gnu.org>
5376         Don't use 'find-program'
5378         * lisp/progmodes/project.el (project-file-completion-table): Use
5379         'grep-find-program', rather than the obsolete 'find-program'.
5381 2016-04-11  Paul Eggert  <eggert@cs.ucla.edu>
5383         Sync with gnulib
5385         This is for picky compilers whose stdint.h fails our C11 tests.
5386         Problem reported for clang by Philipp Stephani (Bug#23261).
5387         This incorporates:
5388         2016-04-11 stdint: port to strict C11 left shift
5389         * doc/misc/texinfo.tex, lib/stdint.in.h: Copy from gnulib.
5391 2016-04-11  Leo Liu  <sdl.web@gmail.com>
5393         Fix last change on 2016-01-02
5395         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2): Move
5396           `cl-errs-re' before `lisp--el-match-keyword'; don't use `prepend'
5397           which highlights `cl-errs-re' even in comments or strings.
5399 2016-04-11  Paul Eggert  <eggert@cs.ucla.edu>
5401         Port run-prolog EMACS to SWI-Prolog 7.2.3
5403         * lisp/progmodes/prolog.el (prolog-ensure-process):
5404         Work around incompatibility of SWI-Prolog 7.2.3 and earlier
5405         with the new way of dealing with the EMACS and INSIDE_EMACS
5406         environment variables.
5408 2016-04-10  Eli Zaretskii  <eliz@gnu.org>
5410         Avoid crashes due to unreasonably large or small text scaling
5412         * lisp/face-remap.el (text-scale-min-amount)
5413         (text-scale-max-amount): New functions.
5414         (text-scale-set, text-scale-increase): Use them to limit the text
5415         scaling to a reasonable range of values.  (Bug#23259)
5417 2016-04-10  Eli Zaretskii  <eliz@gnu.org>
5419         Improve documentation of 'with-eval-after-load'
5421         * lisp/subr.el (with-eval-after-load): Doc fix.  (Bug#23258)
5423 2016-04-10  Eli Zaretskii  <eliz@gnu.org>
5425         Improve handling of non-ASCII characters in Git log messages
5427         * lisp/vc/vc-git.el (vc-git-commits-coding-system): Now a defcustom.
5428         (vc-git-log-output-coding-system): New defcustom.
5429         (vc-git-print-log, vc-git-command, vc-git--call): Use
5430         'vc-git-log-output-coding-system' for reading stuff from Git.
5431         Don't override values of 'coding-system-for-read/write' if they
5432         are bound by caller -- this allows the user to force an encoding
5433         via "C-x RET c".
5434         (vc-git-checkin): On MS-Windows, pass the log message via a
5435         temporary file, to work around the limitations on passing
5436         non-ASCII characters via command-line arguments.  Force using the
5437         'locale-coding-system' for Git command-line arguments.  This fixes
5438         problems with non-ASCII commit log messages on MS-Windows.
5439         (Bug#23076)
5441         * etc/NEWS: Mention the new vc-git related defcustoms.
5443 2016-04-09  Philipp Stephani  <phst@google.com>
5445         Remove undefined behavior in OS X dumper.
5447         Found by Address Sanitizer.
5449         * src/unexmacosx.c (unexec_write): Use Mach virtual memory API to
5450         avoid undefined behavior when reading arbitrary memory.
5452 2016-04-09  Joakim Verona  <joakim@verona.se>
5454         Fix clipping of xwidgets
5456         * src/xwidget.c (x_draw_xwidget_glyph_string): Use window_box
5457         instead of calculating the clipping borders manually.  Suggested
5458         by YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>.
5460 2016-04-09  Eli Zaretskii  <eliz@gnu.org>
5462         Improve Lisp-level documentation of tooltips
5464         * doc/lispref/display.texi (Tooltips): New section.  (Bug#23246)
5465         (Display): Update the chapter menu.
5466         * doc/lispref/text.texi (Special Properties): Make the "tooltip"
5467         index entry more concrete.  Change the cross-reference to point to
5468         "Tooltips" in the ELisp manual.
5469         * doc/lispref/elisp.texi (Top): Update the master menu.
5470         * doc/emacs/frames.texi (Tooltips): Include more customization
5471         variables.  Add a cross-reference to the ELisp manual.
5473 2016-04-08  Glenn Morris  <rgm@gnu.org>
5475         Faces names should not end in "-face".
5477         * lisp/rect.el (rectangle-preview): Rename from rectangle-preview-face.
5478         * lisp/vc/vc-hooks.el (vc-state-base): Rename from vc-state-base-face.
5480 2016-04-08  Paul Eggert  <eggert@cs.ucla.edu>
5482         * src/xsmfns.c (syms_of_xsmfns): Remove stray "s in doc strings.
5484 2016-04-08  Paul Eggert  <eggert@cs.ucla.edu>
5486         Comint and compile no longer set EMACS
5488         This mostly restores the change that I reverted on March 23,
5489         fixing most of Bug#20202.  The only part of the change that is
5490         still reverted is the change to M-x term, where compatibility with
5491         current Bash constrains us from moving too quickly (Bug#20484).
5492         Problem reported by Phillip Lord in: http://bugs.gnu.org/20484#108
5493         * etc/NEWS: Document this.
5494         * lisp/comint.el (comint-exec-1):
5495         * lisp/net/tramp-sh.el (tramp-remote-process-environment):
5496         * lisp/progmodes/compile.el (compilation-start):
5497         Don’t set EMACS=t in the subsidiary process.
5499 2016-04-08  Stefan Monnier  <monnier@iro.umontreal.ca>
5501         * lisp/subr.el (read-key): Don't let the prompt linger (bug#22714)
5503 2016-04-08  Eli Zaretskii  <eliz@gnu.org>
5505         Allow to customize names of executables used by grep.el
5507         * lisp/progmodes/grep.el (grep-find-program): Renamed from
5508         'find-program', which was a variable.  All uses changed.
5509         (grep-xargs-program): Renamed from 'xargs-program', which was a
5510         variable.  All uses changed.
5511         (grep-program): Now a defcustom rather than a simple variable.
5512         (Bug#23219)
5514 2016-04-08  Alan Third  <alan@idiocy.org>
5516         Set locale encoding to UTF-8 when run from OS X GUI.
5518         * src/nsterm.m (ns_init_locale): Append .UTF-8 when setting LANG.
5520 2016-04-08  Eli Zaretskii  <eliz@gnu.org>
5522         Avoid signaling errors in 'M-n' at the 'C-x C-f' prompt
5524         * lisp/ffap.el (ffap-guess-file-name-at-point): Ignore errors
5525         while 'ffap-guesser' runs.  (Bug#23218)
5527 2016-04-08  Marcin Borkowski  <mbork@mbork.pl>
5529         Avoid infinite loop in 'studlify-word'
5531         * lisp/play/studly.el (studlify-region): Call
5532         'forward-word-strictly' and 'backward-word-strictly' instead of
5533         'forward-word' and 'backward-word'.  (Bug#19940)
5535 2016-04-07  Paul Eggert  <eggert@cs.ucla.edu>
5537         Don’t recommend obsolete EMACS env var
5539         * doc/misc/efaq.texi (Escape sequences in shell output):
5540         Remove long-obsolete (and now-confusing) notes about
5541         the EMACS environment variable in Emacs 21.1 and earlier.
5542         * doc/misc/efaq.texi (^M in the shell buffer):
5543         * etc/PROBLEMS:
5544         Remove obsolescent recommendation to consult the EMACS environment
5545         variable.
5547 2016-04-07  Glenn Morris  <rgm@gnu.org>
5549         * lisp/emacs-lisp/package.el: Change from a few days ago needs seq.
5551         * lisp/emacs-lisp/seq.el: Load cl-lib, not cl-extra.
5553 2016-04-07  Leo Liu  <sdl.web@gmail.com>
5555         Fix "Beginning of buffer" error in forward-page
5557         * lisp/textmodes/page.el (forward-page): Check before move to prevent
5558           "Beginning of buffer" error.
5560 2016-04-06  Dmitry Gutov  <dgutov@yandex.ru>
5562         Add a `transient' project type
5564         * lisp/progmodes/project.el (project-roots): Implement for the
5565         `transient' project type (bug#23224).
5566         (project-current): Instead of signaling an error, return a
5567         transient project instance rooted in the chosen directory.
5569 2016-04-06  Lars Magne Ingebrigtsen  <larsi@gnus.org>
5571         Revert "Backport HTTPS proxy fix"
5573         This reverts commit 2d1a6054b161bd1055d4feb11c8c5ac95543f5db.
5575         It's too late in the Emacs 25 release cycle to add things like this to
5576         Emacs 25.1.  It's border line new feature.
5578 2016-04-06  Tao Fang  <fangtao0901@gmail.com>
5580         Backport HTTPS proxy fix
5582         Cherry-picked from 3c623c26ae7d695746e05d8a2e16a67a6256b024
5584         Backport:
5586 2016-04-06  Paul Eggert  <eggert@cs.ucla.edu>
5588         Fix stability confusion in sort-tests
5590         Problem reported by Philipp Stephani (Bug#23205).
5591         * test/automated/sort-tests.el:
5592         (sort-tests--insert-words-sort-and-compare):
5593         Don’t assume that reversing a sorted list is the same
5594         as sorting with the reverse predicate.  This is not true
5595         for stable sorts when items compare equal.
5597 2016-04-05  Paul Eggert  <eggert@cs.ucla.edu>
5599         Avoid describe-key error with lambdas
5601         Problem reported by Sho Takemori (Bug#22716).
5602         * lisp/cedet/mode-local.el (describe-mode-local-overload)
5603         (xref-mode-local-overload): Use function-overload-p instead
5604         of assuming the argument is a symbol.
5606 2016-04-04  Artur Malabarba  <bruce.connor.am@gmail.com>
5608         * lisp/emacs-lisp/package.el (package-install-selected-packages):
5610         Skip unavailable packages.
5612 2016-04-04  Paul Eggert  <eggert@cs.ucla.edu>
5614         Sync with gnulib
5616         This incorporates:
5617         2016-04-03 stdint: detect good enough pre-C++11 stdint.h in C++ mode
5618         2016-04-01 stddef: support configuring with g++
5619         * doc/misc/texinfo.tex, lib/stddef.in.h, m4/stdint.m4:
5620         Copy from gnulib.
5622 2016-04-03  Paul Eggert  <eggert@cs.ucla.edu>
5624         Fix doc for Universal Time
5626         * doc/lispref/os.texi (Time of Day, Time Conversion):
5627         Be more careful about distinguishing UTC (which is not valid for
5628         pre-1961 time stamps) and UT (which is).
5629         (Time Parsing): Remove stray obsolete paragraph about a
5630         UNIVERSAL argument for ‘format-time-string’.
5632 2016-04-03  Michael Albinus  <michael.albinus@gmx.de>
5634         Handle Bug#23186
5636         * lisp/net/tramp.el (tramp-encoding-command-switch)
5637         (tramp-encoding-command-interactive):
5638         * lisp/net/tramp-sh.el (tramp-maybe-open-connection):
5639         `tramp-encoding-shell' could be nil.  (Bug#23186)
5641 2016-04-03  Paul Eggert  <eggert@cs.ucla.edu>
5643         More format-time-string change fixups
5645         * lisp/net/tramp-sh.el (tramp-sh-handle-set-file-times):
5646         * lisp/org/org.el (org-timestamp-format):
5647         Fix doc to match new format-time-string behavior.
5648         * lisp/org/ox-icalendar.el (org-icalendar-convert-timestamp):
5649         Use (not (not X)) to treat non-nil values of utc arg as UTC.
5651 2016-04-02  Paul Eggert  <eggert@cs.ucla.edu>
5653         make-xwidget unused arg cleanup
5655         * doc/lispref/display.texi (Xwidgets): Remove stray refs.
5656         * src/xwidget.c (syms_of_xwidget): Qwebkit, not Qwebkit_osr.
5658 2016-04-02  Joakim Verona  <joakim@verona.se>
5660         Remove unused arguments from make-xwidget
5662         The arguments BEG and END were unused, and are now removed.
5664         * doc/emacs/display.texi (Xwidgets): Document the change
5665         * lisp/xwidget.el (make-xwidget, xwidget-insert)
5666         (xwidget-webkit-new-session): Reflect changed arguments
5667         * src/xwidget.c (Fmake_xwidget, syms_of_xwidget): Reflect changed arguments
5669 2016-04-02  Eli Zaretskii  <eliz@gnu.org>
5671         Document incompatible changes in 'format-time-string'
5673         * etc/NEWS: Mention the incompatible change in the interpretation
5674         of the 3rd argument to 'format-time-string'.  (Bug#21943)
5676 2016-04-02  Eli Zaretskii  <eliz@gnu.org>
5678         Improve documentation of byte-code objects
5680         * doc/lispref/compile.texi (Byte-Code Objects): Document the
5681         integer format of the argument descriptor.  (Bug#23061)
5683 2016-04-02  Eli Zaretskii  <eliz@gnu.org>
5685         Adapt calls to 'format-time-string' to changes in Emacs 25
5687         * lisp/vc/pcvs-info.el (cvs-fileinfo-from-entries): Use t as the
5688         last argument to format-time-string.  (Bug#23128)
5689         * lisp/gnus/gmm-utils.el (gmm-format-time-string): Use t as the
5690         last argument to format-time-string, when the TZ argument is not a
5691         number, per the doc string.
5693 2016-04-02  Eli Zaretskii  <eliz@gnu.org>
5695         Improve vc-diff with Git backend
5697         * lisp/vc/vc-git.el (vc-git-command): Don't override
5698         coding-system-for-read/write if they are already bound.
5699         Suggested by joaotavora@gmail.com (João Távora).  (Bug#20892)
5700         (vc-git-print-log): Don't override coding-system-for-read if it's
5701         already bound.
5703 2016-04-01  Dmitry Gutov  <dgutov@yandex.ru>
5705         (js--continued-expression-p): Special-case unary plus and minus
5707         * lisp/progmodes/js.el (js--continued-expression-p): Make an
5708         effort to recognize unary plus and minus, in the contexts where
5709         they make sense (https://github.com/mooz/js2-mode/issues/322).
5711 2016-04-01  Alan Mackenzie  <acm@muc.de>
5713         Prevent C++ Mode wrongly fontifying some identifiers near templates as types
5715         This fixes debbugs #7917.
5717         * lisp/progmodes/cc-engine.el (c-forward-keyword-prefixed-id): Accept 'maybe
5718         (from c-forward-type) as sufficient to record an id.  Record type id as well
5719         as ref ids.
5720         (c-forward-name): Bind c-last-identifier-range around the call to
5721         c-forward-<>-arglist to prevent it getting corrupted.  Don't automatically
5722         assume an identifier is a type when a template ">" is followed by a "(".
5723         (c-forward-type): Don't automatically assume an identifier is a type when a
5724         template ">" is followed by a "(".
5726         * lisp/progmodes/cc-fonts.el (c-font-lock-<>-arglists): Don't fontify an
5727         identifier as a type when its associated ">" is followed by a "(".
5729 2016-04-01  Eli Zaretskii  <eliz@gnu.org>
5731         Avoid crashes due to insanely large columns in tabulated-list-format
5733         * src/xdisp.c (append_stretch_glyph, produce_xwidget_glyph)
5734         (produce_image_glyph): Limit the pixel width of the produced glyph
5735         to SHRT_MAX.  (Bug#23178)
5736         (append_composite_glyph, append_glyph, append_glyphless_glyph):
5737         Add assertions to verify that the pixel width of the glyph will
5738         never overflow a 'short'.
5739         * src/term.c (append_composite_glyph): Add assertion to verify
5740         that the pixel width of the glyph will never overflow a 'short'.
5742 2016-03-31  Mark Oteiza  <mvoteiza@udel.edu>
5744         Teach M-x disassemble a default argument.
5746         Adopts default argument in the same way as `describe-function'.
5747         * lisp/emacs-lisp/disass.el (disassemble): Default to function at point,
5748         if any.
5750 2016-03-31  Eli Zaretskii  <eliz@gnu.org>
5752         Fix EOL decoding in vc-annotate with SVN back-end on MS-Windows
5754         * lisp/vc/vc-annotate.el (vc-annotate): Force DOS EOL decoding on
5755         MS-Windows and MS-DOS, when processing the output of "svn annotate".
5757 2016-03-31  Michael Albinus  <michael.albinus@gmx.de>
5759         Fix OS X specific settings in tramp-tests
5761         * lisp/net/tramp-sh.el (tramp-maybe-open-connection): Use it.
5763         * lisp/net/tramp.el (tramp-get-local-locale): New defun.
5765         * test/automated/tramp-tests.el (tramp--test-darwin-p): Remove.
5766         (tramp--test-utf8): Improve settings of coding systems.
5767         Do not use `tramp--test-darwin-p' anymore.  (Bug#22145)
5769 2016-03-30  Alan Mackenzie  <acm@muc.de>
5771         Finish fixing a cacheing bug in CC Mode (see 2016-03-09)
5773         * lisp/progmodes/cc-cmds.el: (c-beginning-of-defun, c-end-of-defun): Remove
5774         superfluous invocations of c-self-bind-state-cache.
5776         * lisp/progmodes/cc-defs.el: (c-self-bind-state-cache): Copy and terminate
5777         markers correctly.
5779         * lisp/progmodes/cc-engine.el (c-record-parse-state-state): Terminate stale
5780         markers.
5782 2016-03-30  Alan Mackenzie  <acm@muc.de>
5784         Merge branch 'emacs-25' of /home/acm/emacs/emacs.git/emacs-25 into emacs-25
5786 2016-03-29  Xue Fuqiao  <xfq.free@gmail.com>
5788         * doc/lispref/text.texi (Columns): Remove a nonexistent reference.
5790         The example was removed by Chong Yidong on Mar 5, 2012.
5792 2016-03-29  Paul Eggert  <eggert@cs.ucla.edu>
5794         * doc/man/emacsclient.1: Document +line:column option.
5796 2016-03-29  Eli Zaretskii  <eliz@gnu.org>
5798         Fix rare problems with echo-area display and multiple frames
5800         * src/xdisp.c (redisplay_window): Bind inhibit-redisplay non-nil
5801         around the call to x_consider_frame_title, to prevent
5802         resize_mini_window from undoing echo-area display.  (Bug#23124)
5804 2016-03-29  Alan Mackenzie  <acm@muc.de>
5806         In M-%, avoid making buffer-local binding of text-property-default-nonsticky
5808         This would happen when that variable already has a buffer local binding.  Such
5809         a binding would not be seen by read-from-minibuffer.  This fixes bug #23127.
5811         * lisp/replace.el (query-replace-read-from): Move the binding of
5812         text-property-default-nonsticky to inside of a new with-current-buffer buffer
5813         form with the minibuffer as argument.
5815 2016-03-27  Dmitry Gutov  <dgutov@yandex.ru>
5817         Remove prog-indentation-context
5819         * lisp/progmodes/prog-mode.el: (prog-indentation-context)
5820         (prog-first-column, prog-widen): Remove, as discussed in
5821         http://lists.gnu.org/archive/html/emacs-devel/2016-03/msg01425.html.
5823         * doc/lispref/text.texi (Mode-Specific Indent): Remove references
5824         to them.
5826         * etc/NEWS: Ditto.
5828         * lisp/progmodes/python.el: (prog-widen, prog-first-column):
5829         Remove the compatibility aliases and all uses.
5831         Do not merge to master.
5833 2016-03-27  Paul Eggert  <eggert@cs.ucla.edu>
5835         * src/font.c (QCuser_spec): Add missing colon to :user-spec.
5837 2016-03-27  Eli Zaretskii  <eliz@gnu.org>
5839         Don't start the 'midnight' timer twice
5841         * lisp/midnight.el (midnight-mode): Avoid starting the midnight
5842         timer twice when activating the mode the first time.  (Bug#23123)
5844 2016-03-27  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
5846         * src/xwidget.c (Fxwidget_resize): Fix inappropriate use of XFASTINT.
5848 2016-03-26  Stephen Berman  <stephen.berman@gmx.net>
5850         Fix todo-mode category movement
5852         * lisp/calendar/todo-mode.el (todo-move-category): Use moved
5853         category's existing categories sexp instead of invoking
5854         todo-update-categories-sexp in file moved to, in order to take
5855         archived items into account.  If the moved category has archived
5856         items, handle the source archive buffer properly.  Remove
5857         superfluous code.
5859 2016-03-26  Glenn Morris  <rgm@gnu.org>
5861         * lisp/xt-mouse.el (xterm-mouse-utf-8): Add :version.
5863 2016-03-26  Eli Zaretskii  <eliz@gnu.org>
5865         Ignore non-nil. non-cons values of unread-command-events
5867         * src/keyboard.c (requeued_events_pending_p, read_char)
5868         (Finput_pending_p): Use CONSP instead of !NILP to see if there are
5869         unread command events to be processed.  (Bug#22976)
5871 2016-03-26  Eli Zaretskii  <eliz@gnu.org>
5873         Improve documentatuon of 'truncate-partial-width-windows'
5875         * src/xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>:
5876         Clarify in the doc string how the width of partial-width windows
5877         is computed for the purposes of truncation decision.  (Bug#4338)
5879         * doc/emacs/windows.texi (Split Window): Clarify how the width of
5880         windows is calculated for the purposes of truncation decision.
5881         * doc/emacs/display.texi (Line Truncation): Remove a redundant
5882         index entry.
5884 2016-03-25  Paul Eggert  <eggert@cs.ucla.edu>
5886         * src/ftfont.c (ftfont_shape_by_flt): Parenthesize as per GNU style.
5888 2016-03-25  Eli Zaretskii  <eliz@gnu.org>
5890         Fix 'dired-goto-file' in Dired buffers produced by find-dired
5892         * lisp/dired.el (dired-goto-file): Try looking for the file as a
5893         relative name with leading sub-directories, before looking for the
5894         basename alone.  (Bug#23089)
5896 2016-03-25  Nicolas Petton  <nicolas@petton.fr>
5898         Fix map-put and map-delete for alists (Bug#23105)
5900         * lisp/emacs-lisp/map.el (map-put): Do not bind the evaluated place
5901         expression to a new symbol.
5902         * test/automated/map-tests.el: Add a regression test.
5904 2016-03-25  Eli Zaretskii  <eliz@gnu.org>
5906         Minor copyedits of documentation for temporary displays
5908         * doc/emacs/windows.texi (Temporary Displays): Improve indexing.
5909         Minor changes in wording.
5910         (Window Choice, Displaying Buffers, Pop Up Window): Disambiguate
5911         index entries for 'display-buffer'.
5913         * etc/NEWS: Minor rewording of the entry about temporary displays.
5915 2016-03-25  Philipp Stephani  <phst@google.com>
5917         Add customization option for using UTF-8 coordinates in xt-mouse
5919         * lisp/xt-mouse.el (xterm-mouse-utf-8): New customization option.
5920         (xterm-mouse--read-coordinate): New function to replace
5921         `xterm-mouse--read-utf8-char'; uses UTF-8 only if enabled.
5922         (xterm-mouse--read-number-from-terminal): Adapt to new name.
5923         (xterm-mouse-tracking-enable-sequence)
5924         (xterm-mouse-tracking-disable-sequence): Replace constants with
5925         functions, mark constants as obsolete.
5926         (xterm-mouse--tracking-sequence): New helper function.
5927         (turn-on-xterm-mouse-tracking-on-terminal): Use new functions;
5928         enable UTF-8 only if customization option says so; store UTF-8
5929         flag in terminal parameter.  (Bug#23009)
5931         * test/automated/xt-mouse-tests.el: Add tests for xt-mouse.el.
5933 2016-03-25  Eli Zaretskii  <eliz@gnu.org>
5935         Minor doc string fixes in replace.el
5937         * lisp/replace.el (query-replace, query-replace-regexp)
5938         (query-replace-regexp-eval, map-query-replace-regexp)
5939         (replace-string, replace-regexp): Clarify in doc strings that
5940         these commands operate from point to the end of the buffer's
5941         accessible portion.  (Bug#23067)
5943 2016-03-25  Eli Zaretskii  <eliz@gnu.org>
5945         Fix scrolling upwards with 'xwidget-webkit-browse-url'
5947         * src/xwidget.c (Fxwidget_set_adjustment): Use CHECK_NUMBER instead
5948         of CHECK_NATNUM.  Suggested by Shayan Pirani <shayanpirani@gmail.com>.
5949         (Bug#22918)
5951 2016-03-25  K. Handa  <handa@gnu.org>
5953         Fix display of Indic scripts
5955         * src/ftfont.c (ftfont_shape_by_flt): For combining characters out
5956         of the range U+300...U+36F, use the "combining" FLT only with
5957         non-OTF fonts.
5959 2016-03-25  Eli Zaretskii  <eliz@gnu.org>
5961         Fix splash screen display at startup
5963         * src/frame.c (DEFAULT_ROWS): Enlarge to 36, so that the initial
5964         window displayed by "emacs -q" has enough space to show the whole
5965         text even if it includes 2 lines talking about recovering crashes
5966         sessions.  (Bug#23074)
5968         * lisp/startup.el (use-fancy-splash-screens-p): Fix off-by-one
5969         error when computing the window-height from frame-height.
5971         * etc/NEWS: Mention the change.
5973 2016-03-25  Martin Rudalics  <rudalics@gmx.at>
5975         Describe temporary displays in Emacs manual
5977         * doc/emacs/emacs.texi (Temporary Displays): New subsubsection.
5978         * doc/emacs/windows.texi (Window Choice): Minor fixes.
5979         (Temporary Displays): New subsubsection describing display of
5980         temporary buffers and `temp-buffer-resize-mode'.
5982 2016-03-24  Paul Eggert  <eggert@cs.ucla.edu>
5984         Avoid stray As next to IDLW icons
5986         * lisp/progmodes/idlw-toolbar.el (idlwave-toolbar-add-everywhere):
5987         Use "" for empty labels, not "a", as the latter now displays stray
5988         "A"s (Bug#18997).
5990 2016-03-24  Paul Eggert  <eggert@cs.ucla.edu>
5992         Avoid GTK 3 crash with icons and masks
5994         Problem reported by Mosè Giordano (Bug#18997).
5995         * src/gtkutil.c (xg_get_pixbuf_from_pixmap): Remove.
5996         (xg_get_pixbuf_from_pix_and_mask): Do not use
5997         xg_get_pixbuf_from_pixmap, as it is poorly documented.  Instead,
5998         invoke XGetPixel directly.  This is slow but speed is not
5999         important here.  Also, fail for unusual situations (not TrueColor,
6000         or images that are not 8 bits per sample) instead of displaying
6001         junk or crashing.
6003 2016-03-24  Juri Linkov  <juri@linkov.net>
6005         * lisp/minibuffer.el (minibuffer-completion-help): Use fit-window-to-buffer
6007         instead of shrink-window-if-larger-than-buffer.  (Bug#23092)
6009 2016-03-24  Eli Zaretskii  <eliz@gnu.org>
6011         Define make_save_ptr_ptr unconditionally
6013         * src/alloc.c (make_save_ptr_ptr): Remove the !(defined
6014         USE_X_TOOLKIT || defined USE_GTK) conditional.  Reported by
6015         Philipp Stephani <phst@google.com>.  (Bug#23101)
6017 2016-03-24  Eli Zaretskii  <eliz@gnu.org>
6019         Preserve current buffer when popping up TTY menus
6021         * src/term.c (tty_menu_show): Be sure to save and restore the
6022         current buffer around TTY menu pop-ups.  (Bug#23101)
6024 2016-03-24  Eli Zaretskii  <eliz@gnu.org>
6026         Improve font selection by family on MS-Windows
6028         * src/w32font.c (w32font_list_internal): Allow 'ascii-0' charset,
6029         in addition to 'iso10646-1', 'unicode-bmp', and 'unicode-sip'.
6030         This avoids rejecting many font families whose members are shown
6031         by 'font-family-list', in particular 'courier' requested by
6032         info.el.  Without this change, many values of ':family' attribute
6033         of a face have no effect on MS-Windows, because they are rejected
6034         due to bogus mismatch of the charset.
6036 2016-03-23  Paul Eggert  <eggert@penguin.cs.ucla.edu>
6038         Comint, term, and compile now set EMACS
6040         This fixes directory tracking in ansi-term, at the expense of
6041         breaking some usages of 'configure'.  Setting EMACS is meant to be
6042         a somewhat temporary measure, until Bash 4.4 comes out and is
6043         common.  (Bug#20484).
6044         * etc/NEWS: Document this.
6045         * lisp/comint.el (comint-exec-1):
6046         * lisp/net/tramp-sh.el (tramp-remote-process-environment):
6047         * lisp/progmodes/compile.el (compilation-start):
6048         * lisp/term.el (term-exec-1):
6049         Go back to setting the EMACS environment variable, for backward
6050         compatibility to Bash 4.3 and earlier.
6052 2016-03-23  Paul Eggert  <eggert@penguin.cs.ucla.edu>
6054         Ignore more merges when generating ChangeLog
6056         * build-aux/gitlog-to-emacslog: Ignore all merges from gnu.org,
6057         not merely those from master and emacs-NN.  The ChangeLog entries
6058         they generate are not that useful.
6060 2016-03-23  Paul Eggert  <eggert@cs.ucla.edu>
6062         Sync with gnulib
6064         This incorporates:
6065         2016-03-22 gitlog-to-changelog: suppress ignored chatter
6066         2016-03-21 sys_select: port to new Cygwin
6067         * build-aux/gitlog-to-changelog, doc/misc/texinfo.tex:
6068         * lib/sys_select.in.h: Copy from gnulib.
6070 2016-03-23  Paul Eggert  <eggert@cs.ucla.edu>
6072         Resurrect GNUS-NEWS autogeneration
6074         * doc/misc/gnus-coding.texi (Gnus Maintenance Guide): Update
6075         GNUS-NEWS section to match current file locations and procedure.
6076         * etc/GNUS-NEWS: Regenerate by using new procedure.
6077         * lisp/Makefile.in (update-gnus-news): New rule, containing a
6078         procedure for building GNUS-NEWS.  The old procedure got lost
6079         somehow when Gnus was merged into Emacs.
6081 2016-03-22  Anders Lindgren  <andlind@gmail.com>
6083         Make `toggle-frame-maximized' respect the dock on OS X (bug#22988).
6085         * src/nsterm.m (ns_screen_margins): New function.
6086         (ns_screen_margins_ignoring_hidden_dock): New function.
6087         (ns_menu_bar_height): Reimplement in terms of `ns_screen_margins'.
6088         ([EmacsWindow zoom:]): Take all screen margins (except those
6089         originating from a hidden dock) into account.
6091 2016-03-22  Eli Zaretskii  <eliz@gnu.org>
6093         Fix bug in displaying header line with a box face
6095         * src/xdisp.c (get_next_display_element): Handle the case when a
6096         display string acquires the box face from an underlying string,
6097         not from the buffer.  (Bug#23091)
6099 2016-03-21  Kaushal Modi  <kaushal.modi@gmail.com>
6101         Fix an Isearch var to be a string (Bug#23038)
6103         * lisp/isearch.el (isearch--describe-regexp-mode): The `description' var
6104           needs to always be a string.  Add the missing default case for the
6105           cond form that ensures that.
6107         Before this bug fix, for the events when `regexp-function' and
6108         `search-default-mode' both were nil, `description' also stayed nil.  So
6109         when `space-before' was non-nil, the "non-string" `description'
6110         (with a value of nil) got passed as an argument to
6111         `replace-regexp-in-string' (where a string was expected).  That caused
6112         the error described in Bug#23038.
6114 2016-03-21  Leo Liu  <sdl.web@gmail.com>
6116         Fix (args-out-of-range 1) error in cursor-sensor--detect
6118         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor--detect): Don't
6119           hard-code (point-min) as 1 which fails in narrowed buffers.
6121 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
6123         Render empty <ul><li><ul> correctly
6125         * lisp/net/shr.el (shr-tag-ul): Render empty <ul><li><ul>
6126         correctly (bug#22964).
6127         (cherry picked from commit 4f6ea3988b66cf132c67fd0cc26d12eb9a300ba1)
6129         Backport:
6131 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
6133         Ignore invalid base64 encoded embedded images
6135         * lisp/net/shr.el (shr-image-from-data): Ignore invalid base64
6136         encoded embedded images (bug#22928).
6137         (cherry picked from commit f2da80d0e1ccd121c4891e869a45aeb9c6b1795d)
6139         Backport:
6141 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
6143         Fix <p> and <div> newlines with or without <li> in shr
6145         * lisp/net/shr.el (shr-ensure-newline): Respect that we're in
6146         a <li>, if we are, and don't insert newlines there.
6147         (shr-ensure-paragraph): When mixing newlines and paragraph
6148         ensurements, don't insert too many blank lines.
6149         (shr-tag-div): A <div> shouldn't introduce a paragraph, but a
6150         new line.
6151         (cherry picked from commit 292921facaff2f02ac4e8602c1f7ecbdcfe7ef45)
6153         Backport:
6155 2016-03-19  Eli Zaretskii  <eliz@gnu.org>
6157         Avoid errors in 'newline'
6159         * lisp/simple.el (newline): Don't barf if invoked with
6160         non-positive argument in the middle of a line.  (Bug#22490)
6162 2016-03-19  Michael Albinus  <michael.albinus@gmx.de>
6164         Fix Bug#23032
6166         * doc/misc/eshell.texi (Arguments): Mention the pipe symbol in
6167         remote file names.  (Bug#23032)
6169 2016-03-19  Eli Zaretskii  <eliz@gnu.org>
6171         Adjudicate review comments in abbrevs.texi
6173         * doc/lispref/abbrevs.texi (Abbrev Files, Abbrev Expansion):
6174         * doc/emacs/abbrevs.texi (Dabbrev Customization): State the
6175         default values of variables.  Suggested by Steve Byrne
6176         <sbb@penguinis.org>.  (Bug#23016)
6178         * admin/release-process (Check manuals): Mark files reviewed by
6179         Steve Byrne.
6181 2016-03-18  Dmitry Gutov  <dgutov@yandex.ru>
6183         Fixup the "normal" matcher; highlight global var symbols, too
6185         * lisp/progmodes/ruby-mode.el (ruby-font-lock-keywords): Highlight
6186         operator name symbols with the "normal" matcher (it actually
6187         needed updating).  Highlight global variable symbols, too.
6189 2016-03-18  Marcin Borkowski  <mbork@mbork.pl>
6191         Honor prefix arg in doc-view-next-line-or-next-page
6193         * lisp/doc-view.el (doc-view-next-line-or-next-page): Take the
6194         prefix argument into consideration when continuous scrolling is
6195         not in effect (i.e., by default) (bug#19559).
6197 2016-03-18  Paul Eggert  <eggert@cs.ucla.edu>
6199         Port to strict C99 offsetof
6201         * src/bidi.c (bidi_copy_it):
6202         * src/lisp.h (CHAR_TABLE_EXTRA_SLOTS):
6203         Use only a single identifier as the second argument of offsetof.
6204         Found by using clang -pedantic.
6206 2016-03-18  Paul Eggert  <eggert@cs.ucla.edu>
6208         Port to GTK with strict C11 compiler
6210         * src/gtkutil.c (xg_create_frame_widgets, xg_toggle_notify_cb):
6211         Cast from function type to void * where the C standard requires this.
6212         This works around a problem in the prototypes for
6213         g_signal_handler_find and g_signal_handlers_block_by_func, which
6214         use gpointer instead of GCallback.  Found by using gcc -pedantic.
6216 2016-03-18  Paul Eggert  <eggert@cs.ucla.edu>
6218         Port to GTK with strict C99 compiler
6220         * src/emacsgtkfixed.c: Use workaround for GNOME bug 683906 only
6221         in glib 2.35.6 and earlier, since the bug is fixed in 2.35.7.
6222         * src/emacsgtkfixed.c (EmacsFixedPrivate):
6223         * src/emacsgtkfixed.h (EmacsFixedClass):
6224         Remove duplicate typedef, which strict C99 does not allow (Bug#23003).
6226 2016-03-17  Anders Lindgren  <andlind@gmail.com>
6228         Avoid screen artifacts with new OS X visible bell after scrolling
6230         * src/nsterm.m (EmacsBell): Save NSView when displaying the
6231         visible bell and set `needsDisplay' when removed.
6232         (hide_bell): Trace.
6233         (ns_copy_bits): Trace.
6235 2016-03-17  Michael Albinus  <michael.albinus@gmx.de>
6237         Suppress some Tramp tests for OSX, do not merge with master
6239         * test/automated/tramp-tests.el (tramp--test-darwin-p): New defun.
6240         (tramp--test-utf8): Use it.  (Bug#22145)
6242 2016-03-17  Glenn Morris  <rgm@gnu.org>
6244         * lisp/progmodes/xref.el (xref-buffer-name, xref--window):
6245         Move definitions before use.
6247         * lisp/gnus/mm-decode.el (gnus-format-message): Autoload it.
6249         * lisp/mail/rmail.el (rmail-mime-entity-truncated): Declare.
6251 2016-03-17  Glenn Morris  <rgm@gnu.org>
6253         Address compilation warnings due to 2016-01-03 mml refactoring.
6255         * lisp/gnus/mml-sec.el (password-cache, mm-encode): Require.
6256         (message-options-get): Autoload.
6257         (message-options-set): Declare.
6258         (mml-secure-cache-passphrase, mml-secure-passphrase-cache-expiry):
6259         Simplify default value.
6260         * lisp/gnus/mml-smime.el (message-options-set): Remove declaration.
6261         * lisp/gnus/mml1991.el, lisp/gnus/mml2015.el:
6262         No longer a need for password-cache.
6264 2016-03-16  Stefan Monnier  <monnier@iro.umontreal.ca>
6266         * lisp/emacs-lisp/smie.el (smie-indent-keyword): Don't burp in strings
6268         (bug#22960).
6270 2016-03-16  Glenn Morris  <rgm@gnu.org>
6272         * lisp/dired-x.el (dired-omit-here-always): Correct error message
6273         for 2016-01-25 change.
6275         * lisp/dired-x.el (dired-omit-here-always): Replace undefined function
6276         removed 2016-01-30.
6278         * lisp/xml.el (xml-parse-tag-1): Replace undefined function.
6280 2016-03-16  Eli Zaretskii  <eliz@gnu.org>
6282         Avoid segfaults due to frame image cache being absent
6284         * src/image.c (cache_image): If the frame doesn't have an image
6285         cache, create it.  (Bug#23028)
6287 2016-03-16  Eli Zaretskii  <eliz@gnu.org>
6289         Improve documentation of glyphless-character display
6291         * doc/emacs/display.texi (Text Display): Document and index the
6292         'glyphless-char' face.
6294 2016-03-16  Dmitry Gutov  <dgutov@yandex.ru>
6296         Support safe navigation operator in non-SMIE indentation code
6298         * lisp/progmodes/ruby-mode.el (ruby-calculate-indent):
6299         Support safe navigation operator in non-SMIE indentation code.
6300         Cherry-picked from
6301         https://github.com/ruby/ruby/commit/68e16ddd7961b86e5013e62ae2954e88638de058.
6303 2016-03-16  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
6305         Move xsd:base64Binary decoding fix to debbugs.el 0.9.1
6307         * lisp/net/soap-client.el (soap-encode-xs-basic-type): Do not
6308         assume xsd:base64Binary values are UTF-8 strings.
6309         (soap-decode-xs-basic-type): Likewise.
6310         (soap-invoke): Document xsd:base64Binary handling.
6312 2016-03-15  Dmitry Gutov  <dgutov@yandex.ru>
6314         Fix Ruby's operator precedence
6316         * lisp/progmodes/ruby-mode.el (ruby-smie-grammar):
6317         Rearrange the smie-precs->prec2 form.
6319 2016-03-15  Dmitry Gutov  <dgutov@yandex.ru>
6321         (ruby-interpolation-inside-another-interpolation): New failing test
6323         * test/automated/ruby-mode-tests.el
6324         (ruby-interpolation-inside-another-interpolation):
6325         New failing test.
6327 2016-03-15  Paul Eggert  <eggert@cs.ucla.edu>
6329         Port to clang 3.7.0 on x86-64
6331         * configure.ac: Use AS_IF so that gl_WARN_ADD’s prerequisites are
6332         not done conditionally.  This helps clang, which needs
6333         -Wunknown-warning-option later when configured with warnings.
6334         * src/editfns.c (invalid_time): Now _Noreturn, since clang isn’t
6335         smart enough to figure this out on its own if warnings are enabled.
6336         (lisp_time_struct): Redo for clarity, and to pacify clang.
6337         * src/xfns.c (x_real_pos_and_offsets) [USE_XCB]: Don’t use
6338         uninitialized locals.  This avoids undefined behavior and pacifies
6339         clang.
6341 2016-03-15  Glenn Morris  <rgm@gnu.org>
6343         * test/automated/package-test.el (package-test-signed): Tweak skip
6344         condition, for hydra.
6346 2016-03-15  Paul Eggert  <eggert@cs.ucla.edu>
6348         Sync with gnulib
6350         This incorporates:
6351         2016-03-15 time_rz: port to clang -Wunused-const-variable
6352         2016-03-15 select: port more to Intel 2016.1.150 compiler
6353         * lib/sys_select.in.h, lib/time_rz.c: Copy from gnulib.
6355 2016-03-15  Eli Zaretskii  <eliz@gnu.org>
6357         Fix startup of "emacs -nw" on systems that CANNOT_DUMP
6359         * src/xdisp.c (syms_of_xdisp) <resize-mini-windows>: Initialize to
6360         nil.
6362         * lisp/loadup.el <resize-mini-windows>: Set to 'grow-only' after
6363         loading window.el.  (Bug#22975)
6365 2016-03-14  Dmitry Gutov  <dgutov@yandex.ru>
6367         Do not tokenize a comment before continuation as ';'
6369         * lisp/progmodes/ruby-mode.el (ruby-smie--implicit-semi-p):
6370         Account for a comment right after point.
6372 2016-03-14  Dmitry Gutov  <dgutov@yandex.ru>
6374         Don't misindent arguments of a method call inside continuation
6376         * lisp/progmodes/ruby-mode.el (ruby-smie-rules):
6377         Use smie-indent-virtual instead of smie-rule-parent (bug#23015).
6378         Simplify the traversal loop.
6380 2016-03-14  Stefan Monnier  <monnier@iro.umontreal.ca>
6382         * src/keyboard.c (echo_keystrokes_p): Don't test cursor_in_echo_area
6384         (read_key_sequence): Test it here, as before.
6385         (bug#22825).
6387 2016-03-14  Paul Eggert  <eggert@cs.ucla.edu>
6389         ASCII-only etc/NEWS etc.
6391         * etc/NEWS, nextstep/README: Revert the recently-added curved
6392         quotes, and stick to ASCII.  This typically involves replacing
6393         curved with straight quotes.  Since etc/NEWS is viewed so often by
6394         UTF-8-ignorant tools, rewrite its non-ASCII text to spell out
6395         Unicode, e.g., replace ‘‒’ with ‘U+2012 (FIGURE DASH)’.
6397 2016-03-14  Alan Mackenzie  <acm@muc.de>
6399         Fix a cacheing bug, which led to inordinately slow c-beginning-of-defun.
6401         * lisp/progmodes/cc-defs.el (c-self-bind-state-cache): New macro.
6403         * lisp/progmodes/cc-engine.el (c-ssb-lit-begin): Always call c-parse-state
6404         rather than just using the cache variable c-state-cache.
6405         (c-syntactic-skip-backward): Invoke c-self-bind-state-cache to isolate calls
6406         to c-parse-state from other uses of the parse state cache.
6408         * lisp/progmodes/cc-cmds.el (c-beginning-of-defun, c-end-of-defun): Invoke
6409         c-self-bind-state-cache around the processing, replacing flawed bindings of
6410         c-state-cache.
6412 2016-03-14  Alan Mackenzie  <acm@muc.de>
6414         Fix a cacheing bug, which led to inordinately slow c-beginning-of-defun.
6416         * lisp/progmodes/cc-defs.el (c-self-bind-state-cache): New macro.
6418         * lisp/progmodes/cc-engine.el (c-ssb-lit-begin): Always call c-parse-state
6419         rather than just using the cache variable c-state-cache.
6420         (c-syntactic-skip-backward): Invoke c-self-bind-state-cache to isolate calls
6421         to c-parse-state from other uses of the parse state cache.
6423         * lisp/progmodes/cc-cmds.el (c-beginning-of-defun, c-end-of-defun): Invoke
6424         c-self-bind-state-cache around the processing, replacing flawed bindings of
6425         c-state-cache.
6427 2016-03-14  Kaushal Modi  <kaushal.modi@gmail.com>
6429         Fix Isearch prompt when invoked with an argument
6431         * lisp/isearch.el (isearch--describe-regexp-mode): With
6432         `search-default-mode' set to nil, if user does C-u C-s, the minibuffer
6433         now displays "Regexp I-search: " again.  But if the user has set
6434         `search-default-mode' to t, and then does C-s, the minibuffer now
6435         displays "I-search: " because the default search mode is now regexp
6436         mode.  Comments have been added to explain the priority of conditions
6437         in the `cond' form.  (Bug#22991)
6439 2016-03-14  Cesar Quiroz  <cesar.quiroz@gmail.com>  (tiny change)
6441         Fix a typo in the Emacs manual
6443         * doc/emacs/maintaining.texi (VC Directory Commands): Fix a typo
6444         in a command name.
6446 2016-03-14  Paul Eggert  <eggert@cs.ucla.edu>
6448         Curved quotes in etc/NEWS etc.
6450         * etc/NEWS, nextstep/README: Prefer curved quotes in the
6451         recently-changed text documentation.  See:
6452         http://lists.gnu.org/archive/html/emacs-devel/2016-03/msg00860.html
6454 2016-03-14  Paul Eggert  <eggert@cs.ucla.edu>
6456         Fix some single quotes in documentation
6458         * doc/emacs/anti.texi (Antinews): Avoid confusion in info and PDF
6459         when documenting quoting styles.
6460         * etc/NEWS, nextstep/README: In these plain text files, quote
6461         'like this' consistently, rather than also (sometimes) ‘like this’
6462         or (more often) `like this'.
6464 2016-03-13  Dmitry Gutov  <dgutov@yandex.ru>
6466         Make lisp-completion-at-point's argument optional
6468         * lisp/progmodes/elisp-mode.el (lisp-completion-at-point): Make
6469         the argument optional, like it was before the rename.
6471 2016-03-13  Dmitry Gutov  <dgutov@yandex.ru>
6473         Tweak the left precedence of '=>'
6475         * lisp/progmodes/ruby-mode.el (ruby-smie-grammar): Tweak the left
6476         precedence of '=>', to improve indentation and sexp navigation.
6478 2016-03-13  Dmitry Gutov  <dgutov@yandex.ru>
6480         Indent '.' relative to the first sibling expression
6482         * lisp/progmodes/ruby-mode.el (ruby-smie-rules):
6483         Indent '.' relative to the first sibling expression, instead of the
6484         parent token (bug#17213).
6486 2016-03-13  Dmitry Gutov  <dgutov@yandex.ru>
6488         Make '.' associative, for easier sexp navigation
6490         * lisp/progmodes/ruby-mode.el (ruby-smie-grammar):
6491         Make '.' associative, for easier sexp navigation.
6493 2016-03-13  Phillip Lord  <phillip.lord@russet.org.uk>
6495         Revert "Simplify "Visit New File" to "New File""
6497         This reverts commit d457fd9dc782465e1547f74021390c9d5951d6af.
6499 2016-03-12  Phillip Lord  <phillip.lord@russet.org.uk>
6501         Simplify "Visit New File" to "New File"
6503         * doc/emacs/files.texi, lisp/menu-bar.el (menu-bar-file-menu),
6504           lisp/startup.el(normal-mouse-start-screen,
6505           normal-no-mouse-startup-screen): Change label "Visit New File" to "New
6506           File".
6508 2016-03-12  Eli Zaretskii  <eliz@gnu.org>
6510         Update Unicode notes for importing a new Unicode version
6512         * admin/notes/unicode: Mention the need to update otf-script-alist
6513         in fontset.el when importing data files from a new Unicode
6514         version.
6516 2016-03-12  Eli Zaretskii  <eliz@gnu.org>
6518         Import new data files from Unicode 9.0.0beta
6520         * admin/unidata/UnicodeData.txt:
6521         * admin/unidata/Blocks.txt:
6522         * admin/unidata/BidiMirroring.txt:
6523         * admin/unidata/BidiBrackets.txt: Update from Unicode 9.0.0beta.
6524         * admin/unidata/unidata-gen.el (unidata-gen-files): Bind
6525         'coding-system-for-read' to 'utf-8, as various Unicode data files
6526         now actually use non-ASCII characters.
6527         (unidata-setup-list, unidata-get-name): Support the new Tangut
6528         Ideographs block.
6530         * lisp/international/characters.el (standard-case-table): Add new
6531         characters from Unicode 9.0.0.
6532         (standard-category-table): Add Arabic block u+08A0..u+08FF.  Add
6533         Cyrillic Extended-C block.
6534         (char-width-table): Update ranges per Unicode 9.0.0.
6535         * lisp/international/fontset.el (script-representative-chars): Add
6536         new scripts defined by Unicode 9.0.0.
6537         (otf-script-alist): Add new OTF script tags.
6538         * lisp/international/mule-cmds.el (ucs-names): Update ranges per
6539         Unicode 9.0.0 additions.
6541 2016-03-12  Eli Zaretskii  <eliz@gnu.org>
6543         Avoid errors in forms-mode when default major mode is text
6545         * lisp/forms.el (forms-mode): Bind
6546         change-major-mode-with-file-name to nil when calling
6547         set-visited-file-name.  (Bug#22982)
6549 2016-03-12  Eli Zaretskii  <eliz@gnu.org>
6551         Avoid crashes at startup on systems that CANNOT_DUMP
6553         * src/xdisp.c (syms_of_xdisp) <redisplay--inhibit-bidi>: New
6554         boolean variable.
6555         (init_iterator, reseat_to_string)
6556         (Fcurrent_bidi_paragraph_direction)
6557         (Fbidi_find_overridden_directionality): Use
6558         redisplay--inhibit-bidi instead of purify-flag, to determine when
6559         it's safe to reorder bidirectional text.
6561         * lisp/loadup.el (redisplay--inhibit-bidi): Set to t at the
6562         beginning of the file.  Reset to nil when charprop.el is
6563         successfully loaded, or when we are going to dump, whichever
6564         happens last.  (Bug#22975)
6566 2016-03-12  Eli Zaretskii  <eliz@gnu.org>
6568         Fix documentation of seq.el functions
6570         * doc/lispref/sequences.texi (Sequence Functions): Fix typos.  Add
6571         cross-references.  Fix formatting.  (Bug#22992)
6573 2016-03-11  Dmitry Gutov  <dgutov@yandex.ru>
6575         Support Ruby 2.3.0's safe navigation operator
6577         * lisp/progmodes/ruby-mode.el (ruby-smie--forward-token)
6578         (ruby-smie--backward-token): Tokenize '&.' as '.'.
6579         (ruby-smie--implicit-semi-p): Check for possible '&' before '.'.
6581         * test/indent/ruby.rb: Add an example using safe navigation
6582         operator.  Fix a syntax error in existing example.
6584 2016-03-11  John Wiegley  <johnw@newartisans.com>
6586         Update Emacs manual section related to character folding
6588         * doc/emacs/search.texi: Character folding is not on by default.
6590 2016-03-11  Eli Zaretskii  <eliz@gnu.org>
6592         Update admin/notes/unicode
6594         * admin/notes/unicode: Update the list of files from the UCD we
6595         are using.  Mention the possible need to change 'ucs-names' when
6596         importing a new version of the Unicode Standard.
6598 2016-03-10  Dmitry Gutov  <dgutov@yandex.ru>
6600         Add symref-filepattern entries for c?perl-mode
6602         * lisp/cedet/semantic/symref/grep.el
6603         (semantic-symref-filepattern-alist): Add entries for perl-mode and
6604         cperl-mode.
6606 2016-03-10  Ken Raeburn  <raeburn@raeburn.org>
6608         Don't use XRANDR 1.3 extensions if the server doesn't support them.
6610         * src/xterm.h (struct x_display_info): Add fields to save XRANDR
6611         version number.
6612         * src/xfns.c (x_get_monitor_attributes): Save the version numbers
6613         after querying the X server.
6614         (x_get_monitor_attributes_xrandr): Don't use XRRGetOutputPrimary or
6615         XRRGetScreenResourcesCurrent if the server doesn't support at least
6616         RANDR version 1.3.  Conditionalize the code blocks on compiling
6617         against library version 1.3 or better, rather than feature tests for
6618         each function.
6619         * configure.ac: Stop testing for those two functions.
6621 2016-03-10  Paul Eggert  <eggert@cs.ucla.edu>
6623         Sync with gnulib
6625         This incorporates:
6626         2016-03-08 intprops: make .h file license match module
6627         2016-03-08 acl: fix missing return on Cygwin
6628         2016-03-05 extern-inline: port to PGI CC
6629         * doc/misc/texinfo.tex, lib/intprops.h, lib/set-permissions.c:
6630         * m4/extern-inline.m4:
6631         Copy from gnulib.
6633 2016-03-10  Paul Eggert  <eggert@cs.ucla.edu>
6635         Rework C source files to avoid ^(
6637         Work around Bug#22884 by rewording comments and strings to avoid ‘(’
6638         at the start of a line unless it starts a function.  This change
6639         is a short-term hack; in the longer run we plan to fix cc-mode’s
6640         performance for C files that have ‘(’ at the start of a line in a
6641         comment or string.
6643 2016-03-10  Eli Zaretskii  <eliz@gnu.org>
6645         By default, etags produces unqualified Perl tag names
6647         * lib-src/etags.c (Perl_functions): Produce unqualified names,
6648         unless -Q was specified.
6649         (print_help): Update the description of -Q.
6651         * doc/man/etags.1: Update the documentation of -Q.
6653         * test/etags/ETAGS.good_1:
6654         * test/etags/ETAGS.good_2:
6655         * test/etags/ETAGS.good_3:
6656         * test/etags/ETAGS.good_4:
6657         * test/etags/ETAGS.good_5:
6658         * test/etags/CTAGS.good: Adapt the expected test results to the
6659         changed Perl functionality.
6661 2016-03-10  Dmitry Gutov  <dgutov@yandex.ru>
6663         Indent methods with keyword names correctly
6665         * lisp/progmodes/ruby-mode.el (ruby-smie--at-dot-call):
6666         Rename to ruby-smie--before-method-name.  Now also check if we're
6667         after a 'def' keyword.  Update both callers.
6669 2016-03-10  Dmitry Gutov  <dgutov@yandex.ru>
6671         Propertize character literals and special global variables differently
6673         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize): Propertize
6674         character literals and global variables with special names with
6675         prefix and symbol syntax classes, for SMIE to tokenize them
6676         together automatically.
6677         (ruby-font-lock-keywords): Fix an old regression in highlighting
6678         character literals.
6680 2016-03-09  John Wiegley  <johnw@newartisans.com>
6682         Change how /etc/NEWS presents character folding
6684         * NEWS: Note that character folding is no longer the default.
6686 2016-03-09  John Wiegley  <johnw@newartisans.com>
6688         Revert "Revert "Backport: * lisp/isearch.el: Turn char-folding off by default""
6690         This reverts commit a91b4b51ddf2575d821adb8b84fdf32cff83886e.
6692 2016-03-09  Andreas Schwab  <schwab@linux-m68k.org>
6694         Properly handle lambda as read function (bug 22961)
6696         * src/lread.c (readchar): Be more strict about checking for
6697         string in cons for read_vector.
6698         (unreadchar): Likewise.
6700 2016-03-09  Dmitry Gutov  <dgutov@yandex.ru>
6702         Propertize operator symbol names with symbol syntax class
6704         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize):
6705         Do it here.
6706         (ruby-font-lock-keywords): Instead of handling them here.  Leave
6707         highlighting them to the "normal" matcher, because now we can.
6708         (ruby-smie--forward-token, ruby-smie--backward-token):
6709         Likewise, don't special-case operator symbols anymore.
6710         (ruby-smie--args-separator-p): Simplify the regexp, match operator
6711         names with \s_.
6712         (ruby-smie--implicit-semi-p): Handle the special cases of ? and =
6713         at EOL the same way: check if the character has been assigned the
6714         symbol syntax class by syntax-propertize.
6716 2016-03-09  Dmitry Gutov  <dgutov@yandex.ru>
6718         Stop recognizing :#{} as symbol in ruby-mode
6720         * lisp/progmodes/ruby-mode.el (ruby-font-lock-keywords): Remove
6721         the weird part that recognized colon followed by interpolation
6722         construct without quotes (e.g. ':#{abc}') as symbol, which is just a
6723         syntax error in any modern version of Ruby.  Fix nearby bug reference.
6725 2016-03-09  Dmitry Gutov  <dgutov@yandex.ru>
6727         Allow using the left shift operator without spaces on both sides
6729         * lisp/progmodes/ruby-mode.el (ruby-singleton-class-p): Rename to
6730         ruby-verify-heredoc, reverse the meaning of the return value, and
6731         short-circuit if preceded by a symbol not separated by whitespace.
6733         * test/automated/ruby-mode-tests.el (ruby-no-heredoc-left-shift)
6734         (ruby-no-heredoc-class-self): New tests.
6736 2016-03-08  Andreas Schwab  <schwab@linux-m68k.org>
6738         Properly handle unquoting in wdired (bug 22938)
6740         The recorded old names are not quoted, don't unquote them.
6742         * lisp/wdired.el (wdired-normalize-filename): Add argument
6743         unquotep, only unquote if non-nil.
6744         (wdired-get-filename): Don't unquote the old file name.
6745         (wdired-get-previous-link): Always unquote.
6747 2016-03-06  Dmitry Gutov  <dgutov@yandex.ru>
6749         Allow splat operator before percent literal
6751         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize):
6752         Allow splat operator before percent literal.
6754 2016-03-06  Dmitry Gutov  <dgutov@yandex.ru>
6756         Don't apply the return value of goto-char as syntax class
6758         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize): Don't
6759         apply the return value of goto-char as syntax class.
6761 2016-03-06  Dmitry Gutov  <dgutov@yandex.ru>
6763         Guard against nested percent literals
6765         * lisp/progmodes/ruby-mode.el
6766         (ruby-syntax-propertize-percent-literal):
6767         Don't check the syntax status.
6768         (ruby-syntax-propertize): Check it here.  And also guard against
6769         being in a larger percent literal.
6771         * test/automated/ruby-mode-tests.el
6772         (ruby-no-nested-percent-literals): New test.
6774 2016-03-06  Dmitry Gutov  <dgutov@yandex.ru>
6776         Recognize iuwu-mod after an escaped newline
6778         * lisp/progmodes/ruby-mode.el (ruby-smie--bosp): Check if the
6779         newline is escaped.
6780         (ruby-smie-rules): Indent iuwu-mod after an escaped newline
6781         correctly.
6783 2016-03-06  Andreas Schwab  <schwab@linux-m68k.org>
6785         Fix symbolic mode string conversion for s and t
6787         * lisp/files.el (file-modes-char-to-right): Fix values for ?s and
6788         ?t.
6789         (file-modes-symbolic-to-number): Default to a for ts permissions.
6791 2016-03-06  Eli Zaretskii  <eliz@gnu.org>
6793         Update 'ucs-names' database
6795         * lisp/international/mule-cmds.el (ucs-names): Update used and
6796         unused ranges from the latest UnicodeData.txt.
6798 2016-03-06  Eli Zaretskii  <eliz@gnu.org>
6800         Improve doc string of 'shell-command'
6802         * lisp/simple.el (shell-command): Mention that COMMAND is prompted
6803         for.  (Bug#22926)
6805 2016-03-06  Eli Zaretskii  <eliz@gnu.org>
6807         Make the code in movemail_strftime more general
6809         * lib-src/movemail.c (movemail_strftime): Transform the format
6810         string passed by the caller instead of using a separate format
6811         string.
6813 2016-03-06  Eli Zaretskii  <eliz@gnu.org>
6815         Speed up redisplay of binary files with long series of nulls
6817         * src/bidi.c (bidi_resolve_weak): Avoid entering a loop searching
6818         for a character needed for resolving the type of a series of BN
6819         and ET characters, as required by rule W5 of UAX#9, if the results
6820         of the resolution are known in advance, because we are at level
6821         zero, and the previous strong character was L.
6822         (bidi_resolve_neutral): Partially resurrect the optimization for a
6823         long series of control characters in an otherwise strictly L2R
6824         text.
6825         (bidi_level_of_next_char): Don't enter the loop that searches for
6826         a paragraph separator if the current character is already at base
6827         embedding level.  (Bug#22739)
6829 2016-03-05  Dmitry Gutov  <dgutov@yandex.ru>
6831         Remove the highlighting support for quoting 'like this' inside Lisp docstrings
6833         Remove the highlighting support for quoting 'like this' inside
6834         Lisp docstrings.  This part of
6835         c4151ebe15479de4c2e511b068cdf9af6a4576cf seems to have been
6836         unintentional, considering substitute-command-keys gives wrong
6837         output for such usage.
6838         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2)
6839         (lisp-cl-font-lock-keywords-2): Do not highlight text between two
6840         straight quotes as symbol.
6842 2016-03-05  Paul Eggert  <eggert@cs.ucla.edu>
6844         Restore leading space in movemail pop output
6846         * lib-src/movemail.c (movemail_strftime) [WINDOWSNT]: New function.
6847         (strftime) [WINDOWSNT]: New macro.
6848         (mbx_delimit_begin): Go back to previous version of this code,
6849         now that there’s a special-purpose WINDOWSNT implementation
6850         that should do the right thing.  That way, the output continues
6851         to use leading space rather than leading zero for day of month.
6853 2016-03-05  Eli Zaretskii  <eliz@gnu.org>
6855         Fix bidi-paragraph-direction in Rmail view buffer
6857         * lisp/mail/rmail.el (rmail-show-message-1): Reset
6858         bidi-paragraph-direction to nil before formatting the message for
6859         display.
6861 2016-03-05  Dmitry Gutov  <dgutov@yandex.ru>
6863         Don't misindent computed property generator methods
6865         * lisp/progmodes/js.el (js--looking-at-operator-p):
6866         Don't misindent computed property generator methods
6867         (https://github.com/mooz/js2-mode/issues/317).
6869 2016-03-05  Eli Zaretskii  <eliz@gnu.org>
6871         Fix mbox files produced by movemail on MS-Windows
6873         * lib-src/movemail.c (mbx_delimit_begin): Use portable strftime
6874         format specifiers, as at least the MS-Windows version of strftime
6875         doesn't support %e and %T.
6877 2016-03-04  Paul Eggert  <eggert@cs.ucla.edu>
6879         doc string file descriptor exhaustion fix
6881         * src/doc.c (get_doc_string): Move newly-added check to a better
6882         location (Bug#22814).
6884 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
6886         Fix Bug#22814
6888         * src/doc.c (get_doc_string): Raise an error in case too many
6889         files are open.  (Bug#22814)
6891 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
6893         Fix insertion of edited servers in the dribble file
6895         * lisp/gnus/gnus-srvr.el (gnus-server-update-server): Don't
6896         insert explicit newlines, because they're quoted (bug#22903).
6898         Backport:
6900         (cherry picked from commit ca4e30058eba0531f38fff75f14734acffab84ea)
6902 2016-03-04  Martin Rudalics  <rudalics@gmx.at>
6904         Fix previous fix of enlarge-/shrink-window
6906         * lisp/window.el (enlarge-window, shrink-window): Consistently
6907         signal user-error instead of error.  Resize minibuffer window by
6908         delta lines instead of pixels.  When a window cannot be resized,
6909         signal an error only when this function was invoked by a command
6910         in the enlarge-/shrink-window group (this restores the behavior
6911         before the fix of bug#22723 for the non-interactive case).
6913 2016-03-03  Artur Malabarba  <bruce.connor.am@gmail.com>
6915         * lisp/isearch.el (isearch-define-mode-toggle): Fix toggling logic
6917 2016-03-03  Mark Oteiza  <mvoteiza@udel.edu>
6919         Complete temperature units in calc-convert-temperature
6921         * lisp/calc/calc-units.el (calc-convert-temperature): Complete with
6922         temperature units in math-standard-units.
6924 2016-03-02  Dmitry Gutov  <dgutov@yandex.ru>
6926         Make sure to use case-sensitive search
6928         * lisp/progmodes/xref.el (xref-collect-references): Make sure to
6929         use case-sensitive search.
6931 2016-03-02  Ulf Jasper  <ulf.jasper@web.de>
6933         Prevent infinite loop on not-well-formed xml. (Bug#16344)
6935         * lisp/xml.el (xml-parse-tag-1): Prevent inifinite loop. (Bug#16344)
6936         * test/automated/xml-parse-tests.el (xml-parse-tests--bad-data): Add
6937           test cases for Bug#16344.
6939 2016-03-02  Alan Third  <alan@idiocy.org>
6941         Add the missing test case for the previous patch
6943         lisp/dabbrev.el (dabbrev--substitute-expansion): Return EXPANSION after
6944         any processing.
6945         lisp/dabbrev.el (dabbrev-expand): Set EXPANSION to the return value of
6946         DABBREV--SUBSTITUTE-EXPANSION.
6947         test/automated/dabbrev-tests.el (dabbrev-expand-test): Test for bug#1948.
6949 2016-03-02  Alan Third  <alan@idiocy.org>
6951         Use the correct dabbrev expansion
6953         lisp/dabbrev.el (dabbrev--substitute-expansion): Return EXPANSION after
6954         any processing.
6955         lisp/dabbrev.el (dabbrev-expand): Set EXPANSION to the return value of
6956         DABBREV--SUBSTITUTE-EXPANSION.
6957         test/automated/dabbrev-tests.el (dabbrev-expand-test): Test for bug#1948.
6959 2016-03-02  Nicolas Petton  <nicolas@petton.fr>
6961         Bump version to 25.0.92
6963         * README:
6964         * configure.ac:
6965         * msdos/sed2v2.inp: Bump version to 25.0.92.
6967 2016-03-02  Nicolas Petton  <nicolas@petton.fr>
6969         * etc/AUTHORS: Update the AUTHORS file
6971 2016-03-02  Nicolas Petton  <nicolas@petton.fr>
6973         authors.el updates
6975         * admin/authors.el (authors-ignored-files): Addition.
6977 2016-03-02  Michael Albinus  <michael.albinus@gmx.de>
6979         Fix Bug#22859
6981         * lisp/filenotify.el (file-notify-callback): Return a `deleted'
6982         event in case of kqueue and file1 is nil.  (Bug#22859)
6984 2016-03-01  Eli Zaretskii  <eliz@gnu.org>
6986         Fix reordering of bidi text in an isolate inside an override
6988         * src/bidi.c (bidi_resolve_explicit): Override the orig_type value
6989         of FSI with either LRI or RLI, as determined by the first strong
6990         directional character in the isolate.  This prevents failure to
6991         isolate when the FSI...PDI text is inside a directional override.
6992         (Bug#22786)
6994 2016-03-01  Alan Mackenzie  <acm@muc.de>
6996         Document c-guess-basic-syntax in the CC Mode manual.
6998         * doc/misc/cc-mode.texi (Syntactic Analysis): Document the function, adding
6999         pxrefs to Custom Line-Up and Other Indentation.
7000         (Custom Line-Up): Add a note on using c-guess-basic-syntax with a pxref to
7001         Syntactic Analysis.
7003 2016-03-01  Michael Albinus  <michael.albinus@gmx.de>
7005         Fix targets in test/automated/Makefile.in
7007         * test/automated/Makefile.in: Use $(SELECTOR_DEFAULT) also for
7008         empty target and target all.
7010 2016-03-01  Leo Liu  <sdl.web@gmail.com>
7012         Comment on last change to define-derived-mode
7014         * lisp/emacs-lisp/derived.el (define-derived-mode): Add comment.
7016 2016-03-01  Lars Ingebrigtsen  <larsi@gnus.org>
7018         Allow binding `url-mime-accept-string'
7020         * lisp/url/url-http.el (url-http): Allow binding
7021         `url-mime-accept-string' (bug#22855).
7023         Backport:
7025         (cherry picked from commit 144bb0cf322b9756d29def3e27a42303e2edce43)
7027 2016-03-01  Lars Ingebrigtsen  <larsi@gnus.org>
7029         Also allow setting the paragraph direction to nil
7031         * lisp/net/eww.el (eww-toggle-paragraph-direction): Also allow
7032         setting the paragraph direction to nil ("auto").
7034 2016-02-29  Anders Lindgren  <andlind@gmail.com>
7036         Made the new OS X visible bell more visible.
7038         * src/nsterm.m: (EmacsBell:init:) Scaled up the visible bell
7039           "caution" image five times, as the image in its original size
7040           was hard to see.
7042 2016-02-29  Lars Ingebrigtsen  <larsi@gnus.org>
7044         Use the correct background color when filling nested <divs>
7046         * lisp/net/shr.el (shr-face-background): Return the first
7047         background, because that's the one that's visible (bug#22680).
7049         Backport:
7051         (cherry picked from commit cad0bc70558f9c28c808711c5295dec9fc5ad6e5)
7053 2016-02-29  Lars Ingebrigtsen  <larsi@gnus.org>
7055         Make <div> in <li> not insert extra newlines
7057         * lisp/net/shr.el (shr-tag-div): Make <div> in <li> not insert
7058         extra newlines (bug#19587).
7060         Backport:
7062         (cherry picked from commit 379a846b8548dc32a9019ef0a37c02f62cd9bad1)
7064 2016-02-29  Dmitry Gutov  <dgutov@yandex.ru>
7066         Uncomment the next-error-function integration in xref
7068         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
7069         Uncomment the next-error-function integration
7070         (http://debbugs.gnu.org/cgi/bugreport.cgi?bug=20489#110).
7072 2016-02-29  Dmitry Gutov  <dgutov@yandex.ru>
7074         Remove the word "valid", to avoid ambiguity
7076         * doc/emacs/maintaining.texi (Identifier Search)
7077         (Looking Up Identifiers): Remove the word "valid" (bug#22692).
7079 2016-02-28  Michael Albinus  <michael.albinus@gmx.de>
7081         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
7083 2016-02-28  Michael Albinus  <michael.albinus@gmx.de>
7085         Set auto-revert-use-notify to nil in global-auto-revert-mode.  (Bug#22814)
7087         * etc/NEWS:
7088         * etc/PROBLEMS: Mention this.
7090         * lisp/autorevert.el (global-auto-revert-mode): Set
7091         `auto-revert-use-notify' to nil.  (Bug#22814)
7093 2016-02-28  Paul Eggert  <eggert@cs.ucla.edu>
7095         * etc/TODO: Minor quoting and grammar fixes.
7097 2016-02-28  Friedrich Beckmann  <friedrich.beckmann@gmx.de>  (tiny change)
7099         Fix ModelSim error parsing
7101         * lisp/progmodes/vhdl-mode.el (vhdl-compiler-alist): Fix
7102         ModelSim error parsing (bug#5768).
7104 2016-02-28  Lars Ingebrigtsen  <larsi@gnus.org>
7106         Make parse-time-string-chars faster
7108         * lisp/calendar/parse-time.el (parse-time-string-chars): Clean
7109         up the code (backport:).
7111 2016-02-28  Lars Ingebrigtsen  <larsi@gnus.org>
7113         Add a eww command to toggle paragraph direction
7115         * lisp/net/eww.el (eww-toggle-paragraph-direction): New
7116         command and keystroke.
7118         * doc/misc/eww.texi (Advanced): Mention the `D' command.
7120 2016-02-27  Glenn Morris  <rgm@gnu.org>
7122         * nextstep/WISHLIST: Merge into etc/TODO and remove.
7124         * etc/TODO: Merge in items from nextstep/WISHLIST.
7125         * nextstep/README: Update for this change.
7127 2016-02-27  Andreas Schwab  <schwab@linux-m68k.org>
7129         Fix char signedness issue in bidi code
7131         * src/dispextern.h (struct bidi_t): Change type of resolved_level
7132         and isolate_level to signed char.  (Bug#22830)
7134 2016-02-27  Andreas Schwab  <schwab@linux-m68k.org>
7136         * lib-src/pop.c (socket_connection): Fix format string.
7138 2016-02-27  Eli Zaretskii  <eliz@gnu.org>
7140         Avoid inflooping in thing-at-point-looking-at
7142         * lisp/thingatpt.el (thing-at-point-looking-at): Avoid inflooping
7143         with regular expressions whose matching doesn't move point.
7144         (Bug#22756)
7145         Describe the argument DISTANCE in the doc string.
7147 2016-02-27  Leo Liu  <sdl.web@gmail.com>
7149         * lisp/emacs-lisp/derived.el (define-derived-mode): Revert indent change.
7151 2016-02-26  Michael Albinus  <michael.albinus@gmx.de>
7153         etc/PROBLEMS: Mention problems with using file descriptors
7155         * etc/PROBLEMS: Mention problems with using file descriptors
7156         of kqueue file notification library.
7158 2016-02-26  Kaushal Modi  <kaushal.modi@gmail.com>
7160         * lisp/apropos.el (apropos-variable): Doc fix.  (Bug#22813).
7162 2016-02-25  Eli Zaretskii  <eliz@gnu.org>
7164         Remove unneeded workaround in xftfont.c
7166         * src/xftfont.c (xftfont_open): Remove "dirty workaround" for
7167         XftTextExtents8 behavior, as it is no longer needed.  Suggested by
7168         Fangwen Yu <yynyygy@gmail.com>.  (Bug#22383)
7170 2016-02-25  Stefan Monnier  <monnier@iro.umontreal.ca>
7172         * lisp/saveplace.el (save-place-local-mode): New minor mode
7174         (toggle-save-place): Define as obsolete alias.
7175         (save-place--setup-hooks): New function.
7176         (save-place-mode): Use it.
7178 2016-02-25  Eli Zaretskii  <eliz@gnu.org>
7180         Fix redisplay on a TTY after 'make-frame'
7182         * src/xdisp.c (clear_garbaged_frames): Don't clear/redraw a
7183         garbaged TTY frame if it is not the selected frame.  (Bug#22794)
7185 2016-02-25  Alan Mackenzie  <acm@muc.de>
7187         Make double-click-1 work with unbalanced parens in CC Mode.  Fixes bug#5560.
7189         * lisp/mouse.el (mouse-start-end): check the syntax of alleged parens with
7190         `syntax-after' to ensure syntax-table text properties are respected.
7192 2016-02-25  Magnus Henoch  <magnus.henoch@gmail.com>
7194         Input method polish-slash should not use keyboard translation
7196         * lisp/leim/quail/latin-pre.el ("polish-slash"): Input method
7197         polish-slash should not use keyboard translation (bug#19081).
7199 2016-02-25  Chris Feng  <chris.w.feng@gmail.com>
7201         Fix an assertion
7203         * src/dispnew.c (clear_glyph_matrix_rows): Test matrix->nrows == 0 (which
7204         implies start == 0) separately.
7206 2016-02-24  Eli Zaretskii  <eliz@gnu.org>
7208         Fix 'toggle-save-place'
7210         * lisp/saveplace.el (toggle-save-place): Set up hooks necessary to
7211         support save-place in the buffer.  Autoload the command.
7213 2016-02-24  Stefan Monnier  <monnier@iro.umontreal.ca>
7215         * src/keyboard.c: Don't inadvertently set immediate_echo (bug#22581)
7217         * src/keyboard.c (read_key_sequence): Don't inadvertently set
7218         immediate_echo when we don't want any echo-keystrokes.
7219         (echo_keystrokes_p): Move earlier.
7221 2016-02-24  Chris Zheng  <chriszheng99@gmail.com>  (tiny change)
7223         Minor fixes in calculator.el
7225         * lisp/calculator.el (calculator-mode-map): Bind `E' for
7226         `calculator-exp'.
7227         (calculator-last-input): Fix a bug with pressing F1.
7228         (Bug#20764)
7230 2016-02-24  Anders Lindgren  <andlind@gmail.com>
7232         Update HISTORY section in readme for the NextStep interface.
7234         * nextstep/README: Update HISTORY after suggestion
7235         from former maintainer Adrian Robert.
7237 2016-02-24  Eli Zaretskii  <eliz@gnu.org>
7239         Improve documentation of 'save-place-mode'
7241         * lisp/saveplace.el (toggle-save-place): Update the doc string wrt
7242         turning on 'save-place-mode' globally.
7244         * etc/NEWS: Mention the need to call 'save-place-mode' for turning
7245         on the mode in all buffers.
7247 2016-02-24  Chris Feng  <chris.w.feng@gmail.com>  (tiny change)
7249         Allocate glyph matrices for the initial frame
7251         * src/frame.c (make_initial_frame): Allocate glyph matrices (Bug#22787).
7253         * src/dispnew.c (clear_glyph_matrix_rows): matrix->nrows can be 0.
7255 2016-02-24  Lars Ingebrigtsen  <larsi@gnus.org>
7257         Fix white space in last checkin
7259 2016-02-24  Dima Kogan  <gnuplot@dima.secretsauce.net>
7261         Make `insert-pair' always leave the cursor where documented
7263         * lisp/emacs-lisp/lisp.el (insert-pair): The docstring of
7264         insert-pair states that after insertion, the point ends up
7265         after the opening character. This was not true if the pair was
7266         inserted to surround a region (bug#16949).
7268 2016-02-24  Kaushal Modi  <kaushal.modi@gmail.com>
7270         etc/NEWS: Mention the new second parameter to `package-install'
7272         * etc/NEWS: Mention the new second parameter to
7273         `package-install' (bug#22784).
7275 2016-02-24  John F. Trudeau  <JFTrudeau@aetna.com>  (tiny change)
7277         Highlight assignments in Makefiles more correctly
7279         * lisp/progmodes/make-mode.el (makefile-macroassign-regex):
7280         Highlight assignments preceded by a TAB character correctly
7281         (bug#20787).
7284         Backport:
7286         (cherry picked from commit bbd86c5642bd62c43d72391669f28eaa14459fd5)
7288 2016-02-23  Eli Zaretskii  <eliz@gnu.org>
7290         Improve documentation of focus-related hooks
7292         * doc/lispref/commands.texi (Focus Events): Mention focus-related
7293         hooks.  (Bug#21728)
7295 2016-02-23  Eli Zaretskii  <eliz@gnu.org>
7297         Further improve doc string of 'disable-point-adjustment'
7299         * src/keyboard.c (syms_of_keyboard): <disable-point-adjustment>
7300         <global-disable-point-adjustment>: Clarify doc strings.  (Bug#22771)
7302 2016-02-23  Michael Albinus  <michael.albinus@gmx.de>
7304         Further adaptions in file-notify-tests.el for w32notify
7306         * test/automated/file-notify-tests.el
7307         (file-notify--test-read-event-timeout, file-notify--test-timeout):
7308         Decrease values.
7309         (file-notify-test03-autorevert)
7310         (file-notify-test04-file-validity)
7311         (file-notify-test05-dir-validity): Run tests also for w32notify.
7312         (file-notify-test08-watched-file-in-watched-dir):
7313         Adapt expected events for w32notify.
7315 2016-02-23  Jan Tatarik  <jan.tatarik@gmail.com>
7317         Don't bug out on localised dates in gnus-icalendar
7319         * lisp/gnus/gnus-icalendar.el
7320         (gnus-icalendar-event:org-timestamp): Don't bug out on
7321         localised dates.
7323 2016-02-23  Drew Adams  <drew.adams@oracle.com>
7325         (ls-lisp-insert-directory): Make -B work
7327         * lisp/ls-lisp.el (ls-lisp-insert-directory): Make -B work
7328         (bug#20776).
7330         Backport:
7332         (cherry picked from commit ef52e66efd78aac4c4e5bd5e11870e5ba3b37a1e)
7334 2016-02-23  Vaidheeswaran C  <vaidheeswaran.chinnaraju@gmail.com>
7336         Make buttons in header lines work
7338         * lisp/help-mode.el (help-button-action): `help-xref-button' in
7339         header line doesn't work (bug#21024).
7341         Backport:
7343         (cherry picked from commit c11e565a6b6d09fa39d4c3ef65bef08190eaecc1)
7345 2016-02-23  Christopher Wellons  <wellons@nullprogram.com>
7347         Make setf for frame-height/width work again
7349         * lisp/emacs-lisp/cl-lib.el (frame-height): Make setf for
7350         frame-height/width work again (bug#21979).
7352 2016-02-23  Łukasz Stelmach  <stlman@poczta.fm>
7354         Encode header strings before printing
7356         * lisp/ps-print.el (ps-generate-header-line): Encode the
7357         header strings to avoid problems with non-ASCII headers
7358         (bug#22611).
7360         Backport:
7362         (cherry picked from commit 3cedbdcc71ebefc12bd20ec84f74251fe99ee7d0)
7364 2016-02-23  Nicolas Richard  <youngfrog@members.fsf.org>
7366         (cl-union): Do not ignore :test argument when lists are equal.
7368         * lisp/emacs-lisp/cl-seq.el (cl-union): Do not ignore :test argument when lists are equal.
7370         * test/automated/cl-seq-tests.el: New file (bug#22729).
7372 2016-02-23  Lars Ingebrigtsen  <larsi@gnus.org>
7374         Add `isearch' to `basic-faces'
7376         * doc/lispref/display.texi (Basic Faces): Mention the isearch
7377         and lazy-highlight faces.
7379         * lisp/replace.el (match): Add `isearch' to the `basic-faces'
7380         group, too (bug#22760).
7382 2016-02-23  Dmitry Gutov  <dgutov@yandex.ru>
7384         Make $, : and @ "prefix characters" in ruby-mode
7386         * lisp/progmodes/ruby-mode.el (ruby-mode-syntax-table): Change the
7387         syntax classes of $, : and @ to "prefix character"
7388         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00272.html).
7389         (ruby-syntax-propertize): Undo that specifically for colons
7390         followed by an opening paren or bracket.
7391         (ruby-font-lock-keyword-beg-re): Include colon character.
7392         (ruby-font-lock-keywords): Adjust the constants matcher for `:'
7393         not being a symbol constituent anymore.
7395 2016-02-23  Dmitry Gutov  <dgutov@yandex.ru>
7397         Make find-tag-default-bounds more strict
7399         * lisp/subr.el (find-tag-default-bounds): Delegate to
7400         bounds-of-thing-at-point (bug#22692).
7402 2016-02-22  Michael Albinus  <michael.albinus@gmx.de>
7404         Minor fixes in filenotify.el
7406         * lisp/filenotify.el (top): Require 'cl-lib.
7407         (file-notify--rm-descriptor)
7408         (file-notify--event-watched-file): Use cl-caadr.
7409         (file-notify-callback): Handle also `ignore' events from inotify.
7411 2016-02-22  Michael Albinus  <michael.albinus@gmx.de>
7413         Additional fixes for file notification
7415         * lisp/filenotify.el (top): Require 'cl when compiling.
7416         (file-notify--event-watched-file): New defun.
7417         (file-notify--rm-descriptor, file-notify-callback):
7418         Handle case of several monitors running in parallel.
7420         * test/automated/file-notify-tests.el
7421         (file-notify--test-event-test): Simplify test.
7422         (file-notify--test-with-events): Get rid of outer definition.
7423         Check also results of tests performed in callbacks.
7424         (file-notify-test02-events): No wrapping when calling
7425         `file-notify-rm-watch'.  No special checking for callback tests.
7426         (file-notify-test07-backup): Adapt expected events for gfilenotify.
7427         (file-notify-test08-watched-file-in-watched-dir): Improve.
7429 2016-02-22  Eli Zaretskii  <eliz@gnu.org>
7431         Fix documentation of 'global-disable-point-adjustment'
7433         * src/keyboard.c (syms_of_keyboard) <disable-point-adjustment>
7434         <global-disable-point-adjustment>: Doc fixes.  (Bug#22771)
7436 2016-02-22  Daiki Ueno  <ueno@gnu.org>
7438         Set file modes of pinentry socket for extra safety
7440         * lisp/net/pinentry.el: Require 'cl-lib for `cl-letf'.
7441         (pinentry-start): Change the file modes of the socket file to 0700.
7442         This is just for extra safety since the parent directory is already
7443         protected with `server-ensure-safe-dir'.
7445 2016-02-22  Daiki Ueno  <ueno@gnu.org>
7447         Clarify GnuPG version compatibility chapter
7449         * doc/misc/epa.texi (GnuPG version compatibility): Make the gpg-agent
7450         description a bit clearer.
7452 2016-02-22  Daiki Ueno  <ueno@gnu.org>
7454         Revert "Change the default socket location for pinentry"
7456         This reverts commit e34fbdee8aca84b98393b06b2450837d175999ca.
7457         It turned out that the address is fixed in Pinentry itself.
7459 2016-02-21  Dmitry Gutov  <dgutov@yandex.ru>
7461         Kill off xref--display-history
7463         Now that the core workflow keeps the xref window visible, there's
7464         less value in storing this history.  And it never was
7465         comprehensive enough to undo scrolling changes.
7466         * lisp/progmodes/xref.el (xref--display-history)
7467         (xref--save-to-history, xref-quit): Remove.
7468         (xref--show-pos-in-buf): Update accordingly.
7469         (xref--xref-buffer-mode-map): Remove xref-quit binding.
7471 2016-02-21  Dmitry Gutov  <dgutov@yandex.ru>
7473         Keep the xref buffer visible until the user quits it explicitly
7475         * lisp/progmodes/xref.el (xref--pop-to-location):
7476         Rename WINDOW argument to ACTION.
7477         (xref--with-dedicated-window): New macro.
7478         (xref--show-pos-in-buf): Rename from `xref--display-position'.
7479         Add and handle new argument, SELECTED.  Use the above macro.
7480         (xref--show-location): Add SELECTED argument.
7481         (xref-show-location-at-point): Make an effort to avoid the
7482         original window when showing the location.
7483         (xref-goto-xref): Don't quit the xref window (bug#20487 and
7484         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01133.html).
7485         (xref--query-replace-1): Use xref--with-dedicated-window as well.
7486         (xref--next-error-function): Call xref--show-location instead of
7487         xref--pop-to-location.
7488         (xref--show-xrefs): Rename WINDOW argument to DISPLAY-ACTION.
7489         Only pass that value to xref--pop-to-location.  Pass the current
7490         selected window to xref-show-xrefs-function as the `window'
7491         property.
7492         (xref--find-xrefs, xref--find-definitions): Rename WINDOW argument
7493         to DISPLAY-ACTION as well.
7495 2016-02-21  Daiki Ueno  <ueno@gnu.org>
7497         Change the default socket location for pinentry
7499         * lisp/net/pinentry.el: Require 'cl-lib for `cl-letf'.
7500         (pinentry--socket-dir): Change the default from /tmp/emacsXXX to
7501         ~/.emacs.d/pinentry.
7502         (pinentry-start): Change the file modes of the socket file to 0700.
7503         This is just for extra safety since the parent directory is already
7504         protected with `server-ensure-safe-dir'.
7506 2016-02-21  Daiki Ueno  <ueno@gnu.org>
7508         Mention how to enable pinentry feature
7510         * etc/NEWS: Mention "gpgconf --reload gpg-agent".
7511         * lisp/net/pinentry.el: Likewise.
7513 2016-02-21  Paul Eggert  <eggert@cs.ucla.edu>
7515         Sync with gnulib
7517         This incorporates:
7518         2016-02-10 stdalign: port to older HP and IBM cc
7519         * doc/misc/texinfo.tex, lib/stdalign.in.h: Copy from gnulib.
7521 2016-02-21  David Engster  <deng@randomsample.de>
7523         Remove `semanticdb-save-all-db-idle' from `auto-save-hook'
7525         * lisp/cedet/semantic/db-mode.el (semanticdb-hooks): Do not put
7526           `semanticdb-save-all-db-idle' into `auto-save-hook'. The latter is
7527           not an idle hook, so it's not appropriate to call it there. It will
7528           already be called in the `semantic-idle-work-core-handler', which
7529           runs when Emacs is actually idle.
7531 2016-02-21  David Engster  <deng@randomsample.de>
7533         Restore point when writing semantic table to disk
7535         * lisp/cedet/semantic/db-file.el (object-write): Wrap call to
7536           `semantic-fetch-tags' in `save-excursion', since it might move point
7537           in current buffer. (Bug #22287)
7539 2016-02-21  Daiki Ueno  <ueno@gnu.org>
7541         Mention pinentry.el in epa manual
7543         * doc/misc/epa.texi (GnuPG version compatibility): New chapter,
7544         describing the differences between three GnuPG branches, and how
7545         to enable pinentry.el.
7546         (Caching Passphrases): Add xref to the compatibility chapter.
7548 2016-02-21  Michael Albinus  <michael.albinus@gmx.de>
7550         Fix Bug#22736
7552         * lisp/filenotify.el (file-notify-callback): Use the proper
7553         descriptor when calling the callback.  (Bug#22736)
7555         * test/automated/file-notify-tests.el
7556         (file-notify--test-event-handler): Deactivate trace.
7557         (file-notify-test08-watched-file-in-watched-dir): Bind
7558         `file-notify--test-tmpfile' temporarily in `dir-callback'.
7560 2016-02-21  Wieland Hoffmann  <themineo@gmail.com>  (tiny change)
7562         Grammar fix in doc string
7564         * lisp/custom.el (defgroup): Grammar fix in doc string.
7566 2016-02-20  Daiki Ueno  <ueno@gnu.org>
7568         Naming fix for consistency
7570         * lisp/epg-config.el (epg-find-configuration): Rename from
7571         `epg-configuration-find' to be consistent with other epg-* functions.
7572         Change all callers.
7574 2016-02-20  Daiki Ueno  <ueno@gnu.org>
7576         Prefer customized value for GnuPG executable
7578         * lisp/epg-config.el (epg-configuration-find): Don't check GPG
7579         configuration if it is already set with custom.  (Bug#22747)
7581 2016-02-20  Eli Zaretskii  <eliz@gnu.org>
7583         Fix memory reservation on MS-Windows
7585         * src/w32heap.c (mmap_alloc): Reserve memory in 64KB granular
7586         units.  This avoids leaving gaps in reserved memory regions that
7587         no one can use, since memory reservation must produce 64KB-aligned
7588         addresses.  (Bug#22526)
7590 2016-02-20  Anders Lindgren  <andlind@gmail.com>
7592         Update NextStep readme and add wish list.
7594         * nextstep/README: Rewritten from scratch. New sections on
7595         "History", "Overview of Cocoa and Objective-C", "Guidelines",
7596         "Tracing Support", and "GNUStep". Expanded the "See Also" section.
7597         * nextstep/WISHLIST: New file containing list of issues and ideas
7598         associated with the NS port of Emacs.
7600 2016-02-20  Michael Albinus  <michael.albinus@gmx.de>
7602         Report also result in `file-notify--test-event-handler'
7604 2016-02-20  Michael Albinus  <michael.albinus@gmx.de>
7606         Improve file-notify-test08-watched-file-in-watched-dir
7608         * test/automated/file-notify-tests.el (file-notify--test-desc2):
7609         New variable.
7610         (file-notify--test-cleanup): Use it.
7611         (file-notify--test-event-handler): Enable trace.
7612         (file-notify-test08-watched-file-in-watched-dir): Tag it as
7613         :expensive-test.  Rewrite callbacks to use
7614         `file-notify--test-event-handler'.  Read events in loop.  Check
7615         `file-notify--test-results'.
7616         (file-notify-test08-watched-file-in-watched-dir): Fix docstring.
7618 2016-02-20  Stephen Berman  <stephen.berman@gmx.net>
7620         Fix todo-mode item date editing bugs
7622         * lisp/calendar/todo-mode.el (todo-edit-item--header): Prevent out of
7623         range error by making sure the value of the numerical month date
7624         component cannot be nil.  Prevent wrong type error on trying to edit
7625         day number in February by making sure numerical instead of string
7626         value of the year component is passed to todo-read-date.
7627         (todo-read-date): When using the numerical month date component make
7628         sure to use `*' for an arbitrary month instead of its numerical value.
7630 2016-02-20  Eli Zaretskii  <eliz@gnu.org>
7632         Fix "[:upper:]" for non-ASCII characters
7634         * src/regex.c (re_match_2_internal): Support [:upper:] and
7635         [:lower:] for non-ASCII characters.  (Bug#18150)
7637 2016-02-20  Lars Ingebrigtsen  <larsi@gnus.org>
7639         Allow customising the article mode cursor behavior
7641         * doc/misc/gnus.texi (HTML): Mention gnus-article-show-cursor.
7643         * lisp/gnus/gnus-art.el (gnus-article-show-cursor): New variable.
7644         (gnus-article-mode): Use it.
7646 2016-02-20  Ari Roponen  <ari.roponen@gmail.com>
7648         Use pop-to-buffer-same-window in woman.el
7650         * lisp/woman.el (woman-really-find-file): Work around going to
7651         the wrong buffer by using `pop-to-buffer-same-window' (bug#22332).
7652         (WoMan-find-buffer): Ditto.
7654 2016-02-20  Tassilo Horn  <tsdh@gnu.org>
7656         New filenotify test for bug#22736
7658         * test/automated/file-notify-tests.el
7659         (file-notify-test08-watched-file-in-watched-dir):
7660         (file-notify--test-desc1): New filenotify test for bug#22736
7662 2016-02-20  Marcin Borkowski  <mbork@mbork.pl>
7664         Report critical battery errors
7666         * lisp/battery.el (battery-pmset): Report critical battery
7667         errors (bug#18157).
7669 2016-02-19  Kaushal Modi  <kaushal.modi@gmail.com>  (tiny change)
7671         Make eww message toggling message clearer
7673         * lisp/net/eww.el (eww-toggle-fonts): Make the message
7674         clearer.
7676 2016-02-19  Mark Oteiza  <mvoteiza@udel.edu>
7678         * lisp/calc/calc-units.el (math-standard-units): Update to 2014 CODATA adjustment.
7680 2016-02-18  Martin Rudalics  <rudalics@gmx.at>
7682         Fix bugs in window resizing code
7684         * lisp/window.el (adjust-window-trailing-edge): Fix mismatched
7685         parenthesis.
7686         (shrink-window, enlarge-window): Fix bug#22723 where windows
7687         with preserved size would not get resized.  Also now signal an
7688         error when the window cannot be shrunk or enlarged as requested.
7690 2016-02-17  Eli Zaretskii  <eliz@gnu.org>
7692         Fix decoding DOS EOL in a unibyte buffer
7694         * src/coding.c (decode_eol): Loop over bytes, not characters.
7695         (Bug#5251)
7697 2016-02-17  Alan Mackenzie  <acm@muc.de>
7699         Correct c-parse-state cache manipulation error.
7701         * lisp/progmodes/cc-engine.el (c-invalidate-state-cache-1): Correct a
7702         comparison bound.  Amend comments.
7704 2016-02-17  Daiki Ueno  <ueno@gnu.org>
7706         Take advantage of new GnuPG version check function
7708         * lisp/emacs-lisp/package.el (epg-configuration-find): Declare.
7709         (package-refresh-contents): Use `epg-configuration-find' to check if EPG
7710         is usable.
7712 2016-02-17  Daiki Ueno  <ueno@gnu.org>
7714         Make GnuPG version check robuster
7716         We changed the default gpg program to "gpg2" from "gpg" in the commit
7717         f93d669a16bd3cb3f43f0c8cfd22fe18b627a6a1.  However, there are two
7718         maintained branches (2.0 and 2.1) and Emacs doesn't work well with 2.0
7719         series.  Check the actual version of "gpg2" at run time, and properly
7720         divert to "gpg" if necessary.
7721         * lisp/epg-config.el: Require 'cl-lib for `cl-destructuring-bind'.
7722         (epg-config--program-alist): New variable.
7723         (epg--configurations): New variable.
7724         (epg-configuration-find): New function.
7725         (epg-config--make-gpg-configuration): New function.
7726         (epg-config--make-gpgsm-configuration): New function.
7727         (epg-configuration): Mark as obsolete.
7728         * lisp/epg.el (epg-context): Use `epg-configuration-find'.
7730 2016-02-17  Paul Eggert  <eggert@cs.ucla.edu>
7732         Fix x-load-color-file pointer signedness
7734         * src/xfaces.c (Fx_load_color_file) [!HAVE_X_WINDOWS]:
7735         For sscanf and int *, use %d, not %u.
7736         Problem found on Ubuntu 15.10 x32, which lacks X support.
7738 2016-02-17  Paul Eggert  <eggert@cs.ucla.edu>
7740         * lisp/time-stamp.el (time-stamp-time-zone): Fix doc string punct.
7742 2016-02-16  Mark Oteiza  <mvoteiza@udel.edu>
7744         Follow convention for greek letter constants.
7746         * lisp/calc/calc-units.el (math-standard-units):
7747         Add "sigma" and alias σ to it.
7749 2016-02-16  Mark Oteiza  <mvoteiza@udel.edu>
7751         Add Stefan-Boltzmann constant to calc units table.
7753         * lisp/calc/calc-units.el (math-standard-units):
7754         Add Stefan-Boltzmann constant.
7756 2016-02-16  Mark Oteiza  <mvoteiza@udel.edu>
7758         * lisp/calc/calc-units.el (math-build-units-table-buffer): Use special-mode.
7760 2016-02-16  Glenn Morris  <rgm@gnu.org>
7762         Avoid loading cl-lib for term/xterm.elc, eg in -Q -nw.  (Bug#22669)
7764         * lisp/emacs-lisp/cl-generic.el (cl--generic-dispatchers):
7765         Prefill with relevant elements for term/xterm.
7767 2016-02-16  Tassilo Horn  <tsdh@gnu.org>
7769         Fix soffice UserInstallation-URL for Windows
7771         * lisp/doc-view.el (doc-view-odf->pdf-converter-soffice): Fix
7772         UserInstallation-URL when calling soffice on Windows.
7774 2016-02-16  Lars Ingebrigtsen  <larsi@gnus.org>
7776         Fix display of <pre> elements
7778         * lisp/net/eww.el (eww-display-html): Remove CRLF before
7779         parsing so that <pre> elements don't render with ^M at the end
7780         of the lines.
7782 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
7784         Minor fixes in global-auto-composition-mode
7786         * lisp/emacs-lisp/easy-mmode.el (easy-mmode-pretty-mode-name):
7787         Produce prettier names of globalized minor modes.
7788         * lisp/composite.el (global-auto-composition-mode): Make it a
7789         globalized mode.  (Bug#22682)
7791 2016-02-15  Alan Mackenzie  <acm@muc.de>
7793         Allow arithmetic operators inside C++ template constructs.
7795         Fixes debbugs #22486.  This corrects the previous patch with this message
7796         which was empty.
7798         * lisp/progmodes/cc-langs.el (c-multichar->-op-not->>-regexp): New language
7799         variable.
7800         (c-<>-notable-chars-re): New language variable.
7802         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur): User
7803         c-<>-notable-chars-re in place of the former fixed string in searching for
7804         places to stop and examine.
7805         Use c-multichar->-op-not->>-regexp to check that a found ">" is not part of a
7806         multichar operator in place of the former c->-op-without->-cont-regexp.
7807         Add code to skip forwards over a balanced parenthesized expression.
7809 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
7811         Avoid crashes in semi-malformed 'condition-case'
7813         * src/eval.c (internal_lisp_condition_case): Treat a handler
7814         '(nil)' as if it were '(nil nil)'.  (Bug#22675)
7816 2016-02-15  Alan Mackenzie  <acm@muc.de>
7818         Allow arithmetic operators inside C++ template constructs.
7820         Fixes debbugs #22486.
7822         * lisp/progmodes/cc-langs.el (c-multichar->-op-not->>-regexp): New language
7823         variable.
7824         (c-<>-notable-chars-re): New language variable.
7826         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur): User
7827         c-<>-notable-chars-re in place of the former fixed string in searching for
7828         places to stop and examine.
7829         Use c-multichar->-op-not->>-regexp to check that a found ">" is not part of a
7830         multichar operator in place of the former c->-op-without->-cont-regexp.
7831         Add code to skip forwards over a balanced parenthesized expression.
7833 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
7835         Fix regression with 'recent-keys' and keyboard macros
7837         * src/keyboard.c (record_char): Don't record in 'recent_keys'
7838         events that come from executing keyboard macros.  (Bug#22674)
7840 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
7842         Fix wording in a doc-view.el comment
7844         * lisp/doc-view.el (doc-view--current-cache-dir): Don't use
7845         "illegal" for something that is not against the law.
7847 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
7849         CONTRIBUTE cleanups and updates
7851         * CONTRIBUTE: Mention URLs and info nodes more consistently,
7852         avoiding possibly-confusing punctuation adjacent to a URL, and
7853         giving full shell commands for 'info'.  Start with a brief but
7854         complete how-to, for people who want to get started right away.
7855         Then briefly discuss how to join the development process in the
7856         typical order.  Omit needless words.  Update some of the
7857         now-obsolete file names, info node names, and quoting styles.
7858         Better document emacs-NN branches and how they are merged.
7859         * admin/notes/git-workflow: Change emacs-24 to emacs-25,
7860         and trunk to master.  This file still needs work.
7862 2016-02-14  Paul Eggert  <eggert@cs.ucla.edu>
7864         Port USE_STACK_LISP_OBJECTS fix to Clang
7866         * src/lisp.h (USE_STACK_LISP_OBJECTS): Default to false for Clang.
7867         Recent versions of Clang claim to be GCC 4.2.1 but do not have
7868         the GCC bug.
7870 2016-02-14  Paul Eggert  <eggert@cs.ucla.edu>
7872         Port to x86 GCC 4.3.1 and earlier
7874         This tries to port to x86 FreeBSD 9, where Emacs dumps core (Bug#22065).
7875         * src/lisp.h (USE_STACK_LISP_OBJECTS): Default to false
7876         for GCC 4.3.1 and earlier.
7878 2016-02-14  Eli Zaretskii  <eliz@gnu.org>
7880         Fix point movement under 'scroll-conservatively'
7882         * src/xdisp.c (redisplay_window): Correct a typo in computing the
7883         effective number of text lines in a window.  (Bug#22637)
7885 2016-02-14  Thomas Plass  <thomas.plass@arcor.de>
7887         Replace colon in file name (not legal on Windows)
7889         * lisp/doc-view.el (doc-view--current-cache-dir): Replace colon in file
7890         name (not legal on Windows). [tiny change]
7892 2016-02-14  Eli Zaretskii  <eliz@gnu.org>
7894         Fix a typo in edt.texi
7896         * doc/misc/edt.texi: Fix a typo in an email address.  Reported by
7897         "Herbert J. Skuhra" <herbert@mailbox.org>.
7899 2016-02-14  Eli Zaretskii  <eliz@gnu.org>
7901         Make 'mmap_realloc' on MS-Windows more reliable
7903         * src/w32heap.c (mmap_alloc): If reserving memory succeeds, but
7904         committing fails, return NULL.  Don't call GetLastError twice for
7905         the same API error.
7906         (mmap_realloc): Zero out MEMORY_BASIC_INFORMATION structures
7907         before calling VirtualQuery, to avoid using garbled values if the
7908         call fails.  If committing more pages from the same block fails,
7909         fall back on mmap_alloc + CopyMemory.  Enhance debugging printouts
7910         if the call to VirtualAlloc to commit more pages fails.
7911         (Bug#22526)
7913 2016-02-14  Oscar Fuentes  <ofv@wanadoo.es>
7915         Grep alias `all' shall not match parent directory
7917         * lisp/progmodes/grep.el (grep-files-aliases): Don't match parent
7918           directory for `all'. Fixes bug#22577
7920 2016-02-13  Nicolas Petton  <nicolas@petton.fr>
7922         Bump version to 25.0.91
7924         * README:
7925         * configure.ac:
7926         * msdos/sed2v2.inp: Bump version to 25.0.91.
7928 2016-02-13  Nicolas Petton  <nicolas@petton.fr>
7930         * etc/AUTHORS: Update the AUTHORS file
7932 2016-02-13  Glenn Morris  <rgm@gnu.org>
7934         * lisp/dired-aux.el: Require cl-lib.  (Bug#22613)
7936 2016-02-13  Eli Zaretskii  <eliz@gnu.org>
7938         Index tilde characters in names of backup files
7940         * doc/emacs/files.texi (Backup Names): Improve indexing.
7941         (Bug#22625)
7943 2016-02-13  Eli Zaretskii  <eliz@gnu.org>
7945         Document deprecation of hi-lock-mode's 'C-x w' bindings
7947         * doc/emacs/display.texi (Highlight Interactively): Deprecate the
7948         "C-x w" bindings of hi-lock-mode.
7950         * etc/NEWS: Mark the deprecation entry as documented.
7952 2016-02-13  Stefan Monnier  <monnier@iro.umontreal.ca>
7954         Announce that the `C-x w' bindings are deprecated
7956 2016-02-13  Paul Eggert  <eggert@cs.ucla.edu>
7958         Suppress GNUstep hardening
7960         Fedora 23 normally hardens GNUstep applications, which causes
7961         ‘./configure --with-ns’ to break Emacs’s funky way of undumping.
7962         Fix this by eliding the hardening options (Bug#22518).
7963         * src/Makefile.in (LIBS_GNUSTEP): Omit options like
7964         ‘-specs=/usr/lib/rpm/redhat/redhat-hardened-ld’.
7965         (GNU_OBJC_CFLAGS): Omit options like
7966         ‘-specs=/usr/lib/rpm/redhat/redhat-hardened-cc1’.
7968 2016-02-12  Eli Zaretskii  <eliz@gnu.org>
7970         Fix redisplay after a large insertion
7972         * src/xdisp.c (redisplay_internal): Don't accept the results of
7973         "optimization 3" if the cursor ends up in a partially visible
7974         glyph row.  (Bug22637)
7976 2016-02-12  Andreas Schwab  <schwab@linux-m68k.org>
7978         Revert "Fix gnus-group-get-new-news-this-group on group with closed server"
7980         This reverts commit 9dc77e37aa84c6df9b3ddb4609f3c09201b0580e.
7982                 * lisp/gnus/nnimap.el (nnimap-change-group): Revert last
7983                 change.  (Bug#22634)
7985 2016-02-11  Paul Eggert  <eggert@cs.ucla.edu>
7987         * lib-src/make-docfile.c: Include stdarg.h.
7989 2016-02-11  Alan Mackenzie  <acm@muc.de>
7991         Extend gpm-mouse-mode's doc string and doc to point out limitations.
7993         * lisp/t-mouse.el (gpm-mouse-mode): Extend doc string to indicate the
7994         inability to transfer text between Emacs and other programs which use GPM.
7996         * doc/emacs/frames.texi (Text-Only Mouse): Note the inability to transfer text
7997         between Emacs and other progrmas which use GPM.
7999 2016-02-11  Eli Zaretskii  <eliz@gnu.org>
8001         Revert "Backport: * lisp/isearch.el: Turn char-folding off by default"
8003         * lisp/isearch.el: Turn char-folding back oon by default.
8005         This reverts commit 12c50e82c9b432b2fc31f8fb2215f43ceea80822.
8007 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
8009         Revert "Support integer image rotation and respect EXIF rotations"
8011         This reverts commit 0f600496050bf435f55dc81056e06fcd45992dc8.
8013         This change does not work on Fedora.
8015 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
8017         Revert "Document EXIF image rotation"
8019         This reverts commit 10b8ed27ec91ff52f93eb0297dcc3abb214931aa.
8021         This change does not work on Fedora, for instance.
8023 2016-02-11  Paul Eggert  <eggert@cs.ucla.edu>
8025         Document OS X LANG default
8027         * doc/emacs/cmdargs.texi (General Variables):
8028         Document OS X Language and Region system preference.
8029         Suggested by Alan Third.
8031 2016-02-11  Alan Third  <alan@idiocy.org>
8033         Set locale when run from OS X GUI
8035         * src/emacs.c (main): Call ns_init_locale.
8036         * src/nsterm.m (ns_init_locale): Get locale from OS and set LANG.
8037         * src/nsterm.h: Include ns_init_locale.
8039 2016-02-10  Paul Eggert  <eggert@cs.ucla.edu>
8041         make-docfile cleanup for I/O, etc.
8043         * lib-src/make-docfile.c (progname, generate_globals, num_globals)
8044         (num_globals_allocated, globals): Now static.
8045         (generate_globals, struct rcsoc_state, read_c_string_or_comment):
8046         (write_c_args, scan_c_stream, search_lisp_doc_at_eol, scan_lisp_file):
8047         Use bool for boolean.
8048         (verror): New function.
8049         (fatal, error): Use it.  API is now like printf.  All callers changed.
8050         (main): Remove err_count local that was always 0.
8051         (main, scan_c_stream, scan_lisp_file): Check for I/O error.
8052         (scan_file, scan_c_file, scan_c_stream, scan_lisp_file):
8053         Return void, not 0.
8054         (put_char, scan_keyword_or_put_char, scan_c_file): Use char for byte.
8055         (scan_keyword_or_put_char): Check for missing ( and unexpected EOF.
8056         (close_emacs_globals): Use ptrdiff_t for index, not int.
8057         (scan_c_file, scan_lisp_file): Exit with failure if file cannot be
8058         opened, rather than diagnosing but exiting with status 0.
8059         (search_lisp_doc_at_eol): Don't worry about ungetc of EOF; it's
8060         portable now.
8062 2016-02-10  Paul Eggert  <eggert@cs.ucla.edu>
8064         Memory-management cleanup in make-docfile
8066         I compiled it with -fsanitize=address and fixed the leaks it detected.
8067         Also, I changed it to prefer signed to unsigned integer types,
8068         and to check for integer overflow.
8069         * lib-src/make-docfile.c:
8070         Include <stddef.h>, <stdint.h>, <intprops.h>, <min-max.h>.
8071         (memory_exhausted): New function.
8072         (xmalloc, xrealloc): Use it.
8073         (xmalloc, xrealloc, scan_file, struct rcsoc_state, write_c_args)
8074         (uncompiled, scan_lisp_file):
8075         Prefer signed integer types to unsigned.
8076         (xstrdup): Remove.  All uses removed.
8077         (num_globals, num_globals_allocated, write_globals, scan_c_stream):
8078         Use ptrdiff_t, not int, for indexes that in theory could exceed INT_MAX.
8079         (add_global): Use const to pacify --enable-gcc-warnings.
8080         Make a copy here, rather than relying on strdup calls later.
8081         (add_global, write_globals, scan_c_stream):
8082         Avoid integer overflow when calculating sizes.
8083         (write_globals, scan_c_stream, scan_lisp_file): Avoid memory leak.
8084         (scan_c_stream): Check for add_global failure.
8086 2016-02-10  Kevin Gallagher  <Kevin.Gallagher@boeing.com>
8088         Kevin Gallagher has new email address
8090         * lisp/emulation/edt.el:
8091         * lisp/emulation/edt-lk201.el:
8092         * lisp/emulation/edt-mapper.el:
8093         * lisp/emulation/edt-pc.el:
8094         * lisp/emulation/edt-vt100.el:
8095         * etc/edt-user.el:
8096         * doc/misc/edt.texi: Update Kevin Gallagher's email address.
8098 2016-02-10  Eli Zaretskii  <eliz@gnu.org>
8100         Improve doc strings of 'forward/backward-word-strictly'
8102         * lisp/simple.el (backward-word): Refer to 'backward-word-strictly'
8103         in the doc string.  Suggested by Glenn Morris <rgm@gnu.org>.
8104         * lisp/subr.el (forward-word-strictly, backward-word-strictly):
8105         Mention 'subword-mode' in the doc strings.
8107         * src/syntax.c (Fforward_word): Refer to 'forward-word-strictly'
8108         in the doc string.  (Bug#22560)
8110 2016-02-10  Michael Albinus  <michael.albinus@gmx.de>
8112         Describe Makefile test targets in test/README
8114         * CONTRIBUTE: Move Makefile test targets to test/README.
8116         * Makefile.in:
8117         * test/README: Describe Makefile test targets.
8119 2016-02-10  Artur Malabarba  <bruce.connor.am@gmail.com>
8121         Backport: * lisp/isearch.el: Turn char-folding off by default
8123         (search-default-mode): Set default value to nil.
8125 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
8127         Document EXIF image rotation
8129         * doc/lispref/display.texi (ImageMagick Images): Mention EXIF rotation.
8131 2016-02-10  Dima Kogan  <dima@secretsauce.net>
8133         Support integer image rotation and respect EXIF rotations
8135         * src/image.c (imagemagick_load_image): Allow integer rotations in
8136         addition to floating point rotations (bug#22591).
8137         * src/image.c (imagemagick_load_image): Images that have an
8138         orientation given in EXIF and have no explicit :rotation tag are now
8139         pre-rotated.  All information such as width/height is reported for the
8140         rotated image.
8142 2016-02-10  Matthew Carter  <m@ahungry.com>
8144         Quote table names for postgres listings (sql-mode)
8146         * lisp/progmodes/sql.el (sql-postgres-completion-object): Avoid passing
8147           unquoted table names to the completion list.
8149 2016-02-10  Juri Linkov  <juri@linkov.net>
8151         * lisp/replace.el (replace-match-maybe-edit): Make arg `backward' optional.
8153         Doc fix.
8154         (replace-search, replace-highlight): Make arg `backward' optional.
8155         (Bug#18388)
8157 2016-02-10  Juri Linkov  <juri@linkov.net>
8159         * lisp/simple.el (next-line-or-history-element): Reset temporary-goal-column.
8161         (previous-line-or-history-element): Reset temporary-goal-column.
8162         Use end-of-visual-line instead of line-end-position.  (Bug#22544)
8164 2016-02-10  Paul Eggert  <eggert@cs.ucla.edu>
8166         Suppress ACL ops if configured with --disable-acl
8168         Without this patch, some ACL operations were suppressed, but not all.
8169         * src/fileio.c [!USE_ACL]: Do not include sys/acl.h.
8170         (Ffile_acl, Fset_file_acl) [!USE_ACL]: Return nil in this case.
8172 2016-02-09  Katsumi Yamaoka  <yamaoka@jpl.org>
8174         Mention web bugs
8176         * doc/misc/emacs-mime.texi (Display Customization):
8177         Mention web bugs in the mm-html-blocked-images section.
8179 2016-02-09  Katsumi Yamaoka  <yamaoka@jpl.org>
8181         Make mm-html-blocked-images default to "" again
8183         * lisp/gnus/mm-decode.el (mm-html-blocked-images):
8184         Default to "" that blocks all external images.
8186         * doc/misc/emacs-mime.texi (Display Customization):
8187         Mention that mm-html-blocked-images defaults to "".
8189 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
8191         Minor alignas cleanup
8193         * src/lisp.h (alignas): Remove now-redundant #ifdef that was left
8194         over from the old way of doing things, before Bug#20862 was fixed.
8196 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
8198         Add lmalloc commentary and tweak laligned
8200         * src/alloc.c (laligned): Help compiler in a tiny way by putting
8201         the more-commonly-failing disjunct first.
8203 2016-02-09  Eli Zaretskii  <eliz@gnu.org>
8205         Clarify documentation of key binding conventions
8207         * doc/lispref/tips.texi (Key Binding Conventions): Clarify which
8208         "punctuation characters" are reserved after "C-c".  (Bug#22604)
8210 2016-02-09  Oscar Fuentes  <ofv@wanadoo.es>
8212         * etc/NEWS: mention the `vc-faces' customization group
8214 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
8216         Sync with gnulib
8218         This incorporates:
8219         2016-02-09 stdalign: port to clang 3.7.0
8220         2016-02-06 misc: port better to gcc -fsanitize=address
8221         * doc/misc/texinfo.tex, lib/stdalign.in.h, m4/acl.m4, m4/getgroups.m4:
8222         Copy from gnulib.
8224 2016-02-09  Michael Albinus  <michael.albinus@gmx.de>
8226         * CONTRIBUTE: Add more examples for $(SELECTOR) make variable.
8228 2016-02-09  Katsumi Yamaoka  <yamaoka@jpl.org>
8230         Make mm-html-inhibit-images and mm-html-blocked-images default to nil
8232         * lisp/gnus/mm-decode.el (mm-html-inhibit-images)
8233         (mm-html-blocked-images): Default to nil.
8235         * doc/misc/emacs-mime.texi (Display Customization): Mention that
8236         mm-html-inhibit-images and mm-html-blocked-images default to nil.
8238         * etc/NEWS (Gnus): Document mm-html-inhibit-images and
8239         mm-html-blocked-images.
8241 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
8243         Increase success rate of fallback lmalloc
8245         * src/alloc.c (lmalloc, lrealloc): Reallocate with (typically)
8246         larger and larger sizes, to increase the probability that
8247         the allocator will return a Lisp-aligned pointer.
8249 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
8251         Make backgrounds extend to the end of the lines in shr
8253         * lisp/net/shr.el (shr-face-background): Faces can also be on
8254         the form `(:background "#fff)' (bug#22547).
8256 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
8258         Make the `R' command get the correct relative <img>s
8260         * lisp/net/eww.el (eww-readable): Preserve the base URL so
8261         that image expansions are fetched from the right place (bug#22605).
8263         (cherry picked from commit 8722e849f75ceafb82a1c17105e8ab76077a8ebc)
8265         Backport:
8267 2016-02-09  Mike Kupfer  <m.kupfer@acm.org>
8269         Fix typos in emacs-mime.texi and gnus.texi
8271         * doc/misc/emacs-mime.texi (Display Customization):
8272         * doc/misc/gnus.texi (HTML): Fix typo.
8274 2016-02-09  Katsumi Yamaoka  <yamaoka@jpl.org>
8276         * doc/misc/emacs-mime.texi (Display Customization):
8277         Doc fix for mm-html-inhibit-images.
8279 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
8281         Fix message-cross-post-followup-to group names
8283         * lisp/gnus/message.el (message-cross-post-followup-to): Don't
8284         insert group names like "nntp+foo:zot", because those aren't valid.
8286 2016-02-09  David Edmondson  <dme@dme.org>
8288         Compare recipient and keys case-insensitively
8290         * lisp/gnus/mml2015.el: (mml-secure-check-user-id): When comparing a
8291         recipient address with that from a key, do so in a case insensitive
8292         manner (bug#22603).
8294 2016-02-08  Glenn Morris  <rgm@gnu.org>
8296         * lisp/gnus/mm-decode.el (mm-alist-to-plist): Doc fix.
8298 2016-02-08  Katsumi Yamaoka  <yamaoka@jpl.org>
8300         Refactor HTML images handling of Gnus and mm-* (a part of bug#21650)
8302         * doc/misc/emacs-mime.texi (Display Customization):
8303         Remove mm-inline-text-html-with-images; add documentations for
8304         mm-html-inhibit-images and mm-html-blocked-images.
8306         * lisp/gnus/gnus-art.el (gnus-article-show-images):
8307         No need to bind mm-inline-text-html-with-images.
8308         (gnus-bind-safe-url-regexp): Rename to gnus-bind-mm-vars.
8309         (gnus-bind-mm-vars): Rename from gnus-bind-safe-url-regexp;
8310         bind mm-html-inhibit-images and mm-html-blocked-images.
8311         (gnus-mime-view-all-parts, gnus-mime-view-part-internally)
8312         (gnus-mm-display-part, gnus-mime-display-single)
8313         (gnus-mime-display-alternative): Use gnus-bind-mm-vars.
8315         * lisp/gnus/mm-decode.el (mm-inline-text-html-with-images): Remove.
8316         (mm-html-inhibit-images, mm-html-blocked-images): New user options.
8317         (mm-shr): Bind shr-inhibit-images and shr-blocked-images with
8318         mm-html-inhibit-images and mm-html-blocked-images respectively
8319         instead of gnus-inhibit-images and gnus-blocked-images.
8321         * lisp/gnus/mm-view.el (mm-setup-w3m): Use mm-html-inhibit-images
8322         instead of mm-inline-text-html-with-images.
8324 2016-02-08  Paul Eggert  <eggert@cs.ucla.edu>
8326         Port to FreeBSD 11-CURRENT i386
8328         Problem reported by Herbert J. Skuhra in:
8329         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00354.html
8330         Instead of trying
8331         * src/alloc.c (lmalloc, lrealloc, laligned): New functions.
8332         (xmalloc, xzalloc, xrealloc, lisp_malloc): Use them.
8333         (__alignof__) [!__GNUC__ && !__alignof__]: New macro.
8334         (MALLOC_IS_GC_ALIGNED): New macro.
8335         * src/lisp.h (NONPOINTER_BITS): Remove.  All uses removed.
8336         No longer needed now that alloc.c uses lmalloc and lrealloc.
8338 2016-02-08  Michael Albinus  <michael.albinus@gmx.de>
8340         Some fixes in file-notify-tests.el
8342         * test/automated/file-notify-tests.el
8343         (file-notify--test-with-events-check)
8344         (file-notify--test-with-events-explainer): New defuns.
8345         (file-notify--test-with-events): Use it.
8346         (file-notify-test07-backup): Fix docstring.  Some of the
8347         backends fire two `changed' events.  Backup by rename doesn't
8348         work for kqueue.
8350 2016-02-07  Michael Albinus  <michael.albinus@gmx.de>
8352         Fix Bug#22557
8354         * lisp/filenotify.el (file-notify-callback): Do not send a
8355         `stopped' event in case of backup by renaming.  (Bug#22557)
8357         * test/automated/Makefile.in: Use $(SELECTOR_EXPENSIVE) for
8358         all targets but check and check-maybe.
8360         * test/automated/file-notify-tests.el
8361         (file-notify--test-read-event-timeout): New defconst.
8362         (file-notify--deftest-remote, file-notify--wait-for-events)
8363         (file-notify-test02-events)
8364         (file-notify-test04-file-validity)
8365         (file-notify-test06-many-events): Use it.
8366         (file-notify--test-cleanup): Make it more robust.  Delete also
8367         backup file.
8368         (file-notify-test07-backup): New test.
8370 2016-02-07  Paul Eggert  <eggert@cs.ucla.edu>
8372         Fix test for dladdr
8374         Problem reported by Andreas Schwab in:
8375         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00327.html
8376         * configure.ac (dladdr): Link with LIBMODULES when checking for
8377         this function.
8379 2016-02-07  Andreas Schwab  <schwab@linux-m68k.org>
8381         Fix gnus-group-get-new-news-this-group on group with closed server
8383         * lisp/gnus/nnimap.el (nnimap-change-group): Lookup server
8384         method and pass to nnimap-open-server.
8386 2016-02-07  Artur Malabarba  <bruce.connor.am@gmail.com>
8388         * lisp/comint.el (comint-prompt-read-only): Clean tabs in docstring
8390         While tabs in code are mostly fine because the Emacs sources have a
8391         .dir-locals file specifying tab-width, the same is not true of tabs in
8392         code examples inside docstrings.  The docstring is printed on a *Help*
8393         buffer, which can be created on any directory and won't necessarily have
8394         the same tab-width set.
8396 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
8398         Don't inloop gnus-uu-mark-thread on the last thread
8400         * lisp/gnus/gnus-uu.el (gnus-uu-mark-thread): Don't infloop on the
8401         final thread in the summary buffer (bug#16666).
8403 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
8405         Display non-ASCII group names better in prompts
8407         * lisp/gnus/gnus-sum.el (gnus-articles-to-read): To decode the
8408         group name, we have to do that before we remove the prefix.
8410 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
8412         Default to gpg2 instead of gpg
8414         * lisp/epg-config.el (epg-gpg-program): Prefer gpg2 over gpg, if
8415         it exists.  This fixes many problems with using the GPG
8416         authentication agent.
8418 2016-02-06  David Edmondson  <dme@dme.org>
8420         src/process.c Correctly convert AF_INET6 addresses
8422         * src/process.c (conv_lisp_to_sockaddr): AF_INET6 addresses are
8423         converted to a list of 16 bit quantities by
8424         conv_sockaddr_to_lisp(). conv_lisp_to_sockaddr() should follow the
8425         same scheme rather than expecting a (longer) list of 8 bit
8426         quantities.
8428         Backport:
8430         (cherry picked from commit 55ce3c30d617c38eb086d5ad4ffbd881c20c559c)
8432 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
8434         * lisp/isearch.el (isearch-define-mode-toggle): Improve logic
8436 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
8438         * lisp/menu-bar.el (menu-bar-options-menu): New search submenu
8440         (menu-bar-search-options-menu): New variable
8442 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
8444         * lisp/isearch.el (search-default-mode)
8446         (isearch-regexp-function): Improve docstrings.
8448 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
8450         * lisp/isearch.el: Rename search-default-regexp-mode to search-default-mode
8452         (search-default-mode): New variable.
8453         (isearch-mode, isearch-define-mode-toggle)
8454         (isearch--describe-regexp-mode): Update accordingly.
8455         * lisp/menu-bar.el (nonincremental-search-forward): Update accordingly.
8456         * etc/NEWS: Update accordingly.
8457         * doc/emacs/search.texi: Update accordingly.
8459 2016-02-06  Oscar Fuentes  <ofv@wanadoo.es>
8461         Use monitor's resolution for positioning tooltips
8463         * src/xfns.c (compute_tip_xy): Use the resolution of the monitor where
8464           the mouse pointer is to avoid placing the tooltip over the border of
8465           the monitor on multi-head displays. Fixes bug#22549.
8467 2016-02-06  Eli Zaretskii  <eliz@gnu.org>
8469         Fix file-notify-test on MS-Windows
8471         * test/automated/file-notify-tests.el (file-notify--test-timeout):
8472         Reduce w32notify timeout to 10 sec.
8473         (file-notify-test06-many-events): Call read-event after each
8474         rename, to keep the w32notify backend happy in batch mode.
8475         (Bug#22534)
8477 2016-02-06  Eli Zaretskii  <eliz@gnu.org>
8479         Fix issues found by auditing w32notify code
8481         * src/w32inevt.c (handle_file_notifications): Count the number of
8482         events to be returned.
8483         * src/w32notify.c (send_notifications): Don't copy to the file
8484         notification buffer more than it can hold.  (Bug#22534)
8486 2016-02-06  Eli Zaretskii  <eliz@gnu.org>
8488         Extend etags Ruby support for accessors
8490         * lib-src/etags.c (Ruby_functions): Support accessors defined with
8491         parentheses.  (Bug#22563)
8493         * test/etags/ruby-src/test1.ru (A::B): Add tests for accessors
8494         defined with parentheses.
8495         * test/etags/ETAGS.good_1:
8496         * test/etags/ETAGS.good_2:
8497         * test/etags/ETAGS.good_3:
8498         * test/etags/ETAGS.good_4:
8499         * test/etags/ETAGS.good_5:
8500         * test/etags/ETAGS.good_6:
8501         * test/etags/CTAGS.good: Adapt to changes in Ruby tests.
8503 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
8505         Update publicsuffix.txt.
8507         * etc/publicsuffix.txt: Updated from
8508         https://publicsuffix.org/list/public_suffix_list.dat.
8510 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
8512         Ensure that Gnus dribble handling allows removing entries
8514         * lisp/gnus/gnus-start.el (gnus-dribble-enter): Ensure that each
8515         entry is on a single line.
8517 2016-02-05  OGAWA Hirofumi  <hirofumi@mail.parknet.co.jp>  (tiny change)
8519         Be consistent when using encoded strings in nnimap data
8521         * lisp/gnus/nnimap.el (nnimap-encode-gnus-group): New function
8522         (nnimap-request-list): Use it.
8523         (nnimap-request-newgroups): Ditto.
8525 2016-02-05  OGAWA Hirofumi  <hirofumi@mail.parknet.co.jp>  (tiny change)
8527         Display the decoded Gnus group name
8529         * lisp/gnus/gnus-sum.el (gnus-summary-read-group-1): Use the
8530         decoded group name in the message.
8532 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
8534         Use completion-ignore-case instead of defining command
8536         * lisp/erc/erc.el (erc-mode): Set completion-ignore-case so
8537         that we get case-insensitive completion.
8538         (erc-completion-at-point): Remove.
8540 2016-02-05  Eli Zaretskii  <eliz@gnu.org>
8542         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
8544 2016-02-05  Michael Albinus  <michael.albinus@gmx.de>
8546         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
8548         Reduce the number of iterations to 250 in case of w32notify.
8550 2016-02-05  Eli Zaretskii  <eliz@gnu.org>
8552         Fix problems caused by new implementation of sub-word mode
8554         * lisp/subr.el (forward-word-strictly, backward-word-strictly):
8555         New functions.
8556         (word-move-empty-char-table): New variable.
8558         * etc/NEWS: Mention 'forward-word-strictly' and
8559         'backward-word-strictly'.
8561         * doc/lispref/positions.texi (Word Motion): Document
8562         'find-word-boundary-function-table', 'forward-word-strictly', and
8563         'backward-word-strictly'.  (Bug#22560)
8565         * src/syntax.c (syms_of_syntax)
8566         <find-word-boundary-function-table>: Doc fix.
8568         * lisp/wdired.el (wdired-xcase-word):
8569         * lisp/textmodes/texnfo-upd.el (texinfo-copy-node-name)
8570         (texinfo-copy-section-title, texinfo-start-menu-description)
8571         (texinfo-copy-menu-title, texinfo-specific-section-type)
8572         (texinfo-insert-node-lines, texinfo-copy-next-section-title):
8573         * lisp/textmodes/texinfo.el (texinfo-clone-environment)
8574         (texinfo-insert-@end):
8575         * lisp/textmodes/texinfmt.el (texinfo-format-scan)
8576         (texinfo-anchor, texinfo-multitable-widths)
8577         (texinfo-multitable-item):
8578         * lisp/textmodes/tex-mode.el (latex-env-before-change):
8579         * lisp/textmodes/flyspell.el (texinfo-mode-flyspell-verify):
8580         * lisp/skeleton.el (skeleton-insert):
8581         * lisp/simple.el (count-words):
8582         * lisp/progmodes/vhdl-mode.el (vhdl-beginning-of-libunit)
8583         (vhdl-beginning-of-defun, vhdl-beginning-of-statement-1)
8584         (vhdl-update-sensitivity-list, vhdl-template-block)
8585         (vhdl-template-break, vhdl-template-case, vhdl-template-default)
8586         (vhdl-template-default-indent, vhdl-template-for-loop)
8587         (vhdl-template-if-then-use, vhdl-template-bare-loop)
8588         (vhdl-template-nature, vhdl-template-procedural)
8589         (vhdl-template-process, vhdl-template-selected-signal-asst)
8590         (vhdl-template-type, vhdl-template-variable)
8591         (vhdl-template-while-loop, vhdl-beginning-of-block)
8592         (vhdl-hooked-abbrev, vhdl-port-copy, vhdl-hs-forward-sexp-func):
8593         * lisp/progmodes/verilog-mode.el (verilog-backward-sexp)
8594         (verilog-forward-sexp, verilog-beg-of-statement)
8595         (verilog-set-auto-endcomments, verilog-backward-token)
8596         (verilog-do-indent):
8597         * lisp/progmodes/vera-mode.el (vera-guess-basic-syntax)
8598         (vera-indent-block-closing):
8599         * lisp/progmodes/simula.el (simula-context)
8600         (simula-backward-up-level, simula-forward-down-level)
8601         (simula-previous-statement, simula-next-statement)
8602         (simula-skip-comment-backward, simula-calculate-indent)
8603         (simula-find-if, simula-electric-keyword):
8604         * lisp/progmodes/sh-script.el (sh-smie--rc-newline-semi-p):
8605         * lisp/progmodes/ruby-mode.el (ruby-smie--redundant-do-p)
8606         (ruby-smie--forward-token, ruby-smie--backward-token)
8607         (ruby-singleton-class-p, ruby-calculate-indent)
8608         (ruby-forward-sexp, ruby-backward-sexp):
8609         * lisp/progmodes/ps-mode.el (ps-run-goto-error):
8610         * lisp/progmodes/perl-mode.el (perl-syntax-propertize-function)
8611         (perl-syntax-propertize-special-constructs)
8612         (perl-backward-to-start-of-continued-exp):
8613         * lisp/progmodes/pascal.el (pascal-indent-declaration):
8614         * lisp/progmodes/octave.el (octave-function-file-p):
8615         * lisp/progmodes/mantemp.el (mantemp-insert-cxx-syntax):
8616         * lisp/progmodes/js.el (js--forward-function-decl):
8617         * lisp/progmodes/idlwave.el (idlwave-show-begin-check)
8618         (idlwave-beginning-of-block, idlwave-end-of-block)
8619         (idlwave-block-jump-out, idlwave-determine-class):
8620         * lisp/progmodes/icon.el (icon-is-continuation-line)
8621         (icon-backward-to-start-of-continued-exp, end-of-icon-defun):
8622         * lisp/progmodes/hideif.el (hide-ifdef-define):
8623         * lisp/progmodes/f90.el (f90-change-keywords):
8624         * lisp/progmodes/cperl-mode.el (cperl-electric-pod)
8625         (cperl-linefeed, cperl-electric-terminator)
8626         (cperl-find-pods-heres, cperl-fix-line-spacing)
8627         (cperl-invert-if-unless):
8628         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur):
8629         * lisp/progmodes/cc-align.el (c-lineup-java-inher):
8630         * lisp/progmodes/ada-mode.el (ada-compile-goto-error)
8631         (ada-adjust-case-skeleton, ada-create-case-exception)
8632         (ada-create-case-exception-substring)
8633         (ada-case-read-exceptions-from-file, ada-after-keyword-p)
8634         (ada-scan-paramlist, ada-get-current-indent, ada-get-indent-end)
8635         (ada-get-indent-if, ada-get-indent-block-start)
8636         (ada-get-indent-loop, ada-get-indent-type)
8637         (ada-search-prev-end-stmt, ada-check-defun-name)
8638         (ada-goto-decl-start, ada-goto-matching-start)
8639         (ada-goto-matching-end, ada-looking-at-semi-or)
8640         (ada-looking-at-semi-private, ada-in-paramlist-p)
8641         (ada-search-ignore-complex-boolean, ada-move-to-start)
8642         (ada-move-to-end, ada-which-function, ada-gen-treat-proc):
8643         * lisp/net/quickurl.el (quickurl-grab-url):
8644         * lisp/mail/sendmail.el (mail-do-fcc):
8645         * lisp/mail/rmail.el (rmail-resend):
8646         * lisp/mail/mailabbrev.el (mail-abbrev-complete-alias):
8647         * lisp/mail/mail-extr.el (mail-extract-address-components):
8648         * lisp/json.el (json-read-keyword):
8649         * lisp/files.el (insert-directory):
8650         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
8651         * lisp/completion.el (symbol-under-point, symbol-before-point)
8652         (symbol-before-point-for-complete, next-cdabbrev)
8653         (add-completions-from-c-buffer):
8654         * lisp/cedet/semantic/texi.el (semantic-up-context)
8655         (semantic-beginning-of-context):
8656         * lisp/cedet/semantic/bovine/el.el (semantic-get-local-variables):
8657         use 'forward-word-strictly' and 'backward-word-strictly' instead
8658         of 'forward-word' and 'backward-word'.
8660 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
8662         Fix doc string of tls-program
8664         * lisp/net/tls.el (tls-program): Document the %t parameter (bug#22559).
8666 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
8668         Restore window conf in nsm
8670         * lisp/net/nsm.el (nsm-query-user): Restore the window configuration.
8672         Backport:
8674 2016-02-05  Mark Oteiza  <mvoteiza@udel.edu>
8676         * etc/NEWS: Document new mpc.el features
8678 2016-02-04  Leo Liu  <sdl.web@gmail.com>
8680         * lisp/custom.el (defface): Revert indentation change.  (Bug#22524)
8682 2016-02-04  Alan Mackenzie  <acm@muc.de>
8684         Correctly fontify C++ initializations which "look like" functions.
8686         Fixes bug#7579.
8688         lisp/progmodes/cc-engine.el (c-forward-declarator): Add extra optional
8689         parameter to enable handling of "anonymous" declarators in declarations.
8691         lisp/progmodes/cc-fonts.el (c-font-lock-declarators): Check more rigorously
8692         whether a "(" opens a parameter list of a function, or an initialization of a
8693         variable.
8695 2016-02-04  Ulf Jasper  <ulf.jasper@web.de>
8697         Improve newsticker-treeview-selection-face
8699         * lisp/net/newst-treeview.el (newsticker-treeview-selection-face): Improve
8700         readability for dark background.
8702 2016-02-04  Eli Zaretskii  <eliz@gnu.org>
8704         Minor fix in tagging Ruby accessors by etags
8706         * lib-src/etags.c (Ruby_functions): Don't tag accessors whose
8707         names are not literal symbols.  (Bug#22241)
8709 2016-02-04  Paul Eggert  <eggert@cs.ucla.edu>
8711         Spelling fixes
8713 2016-02-04  Dmitry Gutov  <dgutov@yandex.ru>
8715         Remove 'def X' from the example
8717         * test/etags/ruby-src/test1.ru (A::B): Remove 'def X'
8718         (http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00167.html).
8719         * test/etags/CTAGS.good:
8720         * test/etags/ETAGS.good_1:
8721         * test/etags/ETAGS.good_2:
8722         * test/etags/ETAGS.good_3:
8723         * test/etags/ETAGS.good_4:
8724         * test/etags/ETAGS.good_5:
8725         * test/etags/ETAGS.good_6: Adjust accordingly.
8727 2016-02-04  Vasilij Schneidermann  <v.schneidermann@gmail.com>  (tiny change)
8729         Allow sending empty hidden values in eww
8731         * lisp/net/eww.el (eww-tag-input): Allow sending empty hidden
8732         values (bug#22388).
8734         (cherry picked from commit 5898da8210af7953e638ddf7821c05260979c3f0)
8736         Backport:
8738 2016-02-04  David Edmondson  <dme@dme.org>
8740         Make erc work better when encountering unknown prefix chars
8742         * lisp/erc/erc.el (erc-channel-receive-names): Output a warning
8743         instead of erroring out on unknown prefix chars (bug#22380).
8745 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
8747         Make erc completion case-insensitive again
8749         * lisp/erc/erc.el (erc-completion-at-point): Make erc completion
8750         case-insensitive again (bug#11360).
8752 2016-02-04  Carlos Pita  <carlosjosepita@gmail.com>  (tiny change)
8754         Make complection in erc use consistent casing
8756         * lisp/erc/erc-pcomplete.el (pcomplete-erc-all-nicks): Make
8757         case in the complection consistent (bug#18509).
8759 2016-02-04  Francis Litterio  <flitterio@gmail.com>
8761         Make /QUIT in erc more robust
8763         * lisp/erc/erc.el (erc-kill-query-buffers): Don't bug out if we're
8764         issuing /QUIT to disconnected servers (bug#22099).
8766 2016-02-04  Kevin Brubeck Unhammer  <unhammer@fsfe.org>  (tiny change)
8768         Make tracking faces in Emacs work more reliably
8770         * lisp/erc/erc-track.el (erc-faces-in): Always return lists of
8771         faces to avoid later ambiguity (bug#22424).
8773 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
8775         Make shr not bug out on images on non-graphical displays
8777         * lisp/net/shr.el (shr-put-image): Don't bug out on alt-less
8778         images on non-graphical displays (bug#22327).
8780 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
8782         Fix bookmark display widths
8784         * lisp/net/eww.el (eww-list-bookmarks): Pop to the buffer before
8785         preparing it so that the widths are computed correctly (bug#22328).
8787 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
8789         Fix typo in eww-make-unique-file-name
8791         * lisp/net/eww.el (eww-make-unique-file-name): Make this function
8792         actually work.
8794 2016-02-03  Lars Ingebrigtsen  <larsi@gnus.org>
8796         Make it possible to TAB to input fields
8798         * lisp/net/eww.el (eww-tag-input): Make it possible to TAB to
8799         input fields (bug#22540).
8801 2016-02-03  Lars Ingebrigtsen  <larsi@gnus.org>
8803         Insert complete alt texts when images are disabled
8805         * lisp/net/shr.el (shr-tag-img): When images are disabled, insert
8806         the complete alt/title string (bug#22293).
8808 2016-02-03  Lars Ingebrigtsen  <larsi@gnus.org>
8810         Allow eww text fields to grow
8812         * lisp/net/eww.el (eww-process-text-input): Allow text fields to
8813         grow when typing in stuff that's longer than the original width.
8815 2016-02-03  Dima Kogan  <dima@secretsauce.net>
8817         Make erc work when subword-mode is switched on
8819         * lisp/erc/erc-backend.el (erc-forward-word, erc-word-at-arg-p)
8820         (erc-bounds-of-word-at-point): New functions to do word-based
8821         things when subword-mode is switched on.
8823         * lisp/erc/erc-button.el (erc-button-add-nickname-buttons): Use them
8824         (bug#17558).
8826 2016-02-03  Teemu Likonen  <tlikonen@iki.fi>
8828         Fix IMAP doc example
8830         * doc/misc/gnus.texi (Client-Side IMAP Splitting): Fix example.
8832 2016-02-03  Paul Eggert  <eggert@cs.ucla.edu>
8834         Quoting fixes in doc strings and diagnostics
8836         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq, byte-compile-funcall):
8837         * lisp/gnus/mml-smime.el (mml-smime-get-dns-cert)
8838         (mml-smime-get-ldap-cert):
8839         Follow user style preference when quoting diagnostics.
8841 2016-02-03  Noam Postavsky  <npostavs@gmail.com>
8843         Fix warning message in hack-local-variables
8845         * lisp/files.el (hack-local-variables): use 'thisbuf' to reference
8846         the original buffer name in the warning message.  (Bug#21681)
8848 2016-02-03  Eli Zaretskii  <eliz@gnu.org>
8850         Etags: yet another improvement in Ruby tags
8852         * lib-src/etags.c (Ruby_functions): Handle continuation lines in
8853         Ruby accessor definitions.  (Bug#22241)
8855         * test/etags/ruby-src/test1.ru (A::B#X): Add some more tests for
8856         accessors and multiline definitions.
8857         * test/etags/ETAGS.good_1:
8858         * test/etags/ETAGS.good_2:
8859         * test/etags/ETAGS.good_3:
8860         * test/etags/ETAGS.good_4:
8861         * test/etags/ETAGS.good_5:
8862         * test/etags/ETAGS.good_6:
8863         * test/etags/CTAGS.good: Adapt to changes in Ruby tags.
8865 2016-02-03  Eli Zaretskii  <eliz@gnu.org>
8867         Fix x-popup-menu on TTYs without a mouse
8869         * src/menu.c (Fx_popup_menu): Be sure to initialize 'x' and 'y'
8870         for the TTY case without a mouse.  (Bug#22538)
8872 2016-02-03  Nicolas Petton  <nicolas@petton.fr>
8874         * lisp/emacs-lisp/map.el: Improvements to the docstring of the pcase macro
8876 2016-02-02  Lars Ingebrigtsen  <larsi@gnus.org>
8878         Use pop-to-buffer-same-window in eww
8880         * lisp/net/eww.el: pop-to-buffer-same-window throughout instead of
8881         switch-to-buffer (bug#22244).
8883 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
8885         * autogen.sh: Revert all recent changes.
8887 2016-02-02  Glenn Morris  <rgm@gnu.org>
8889         * make-dist: Updates related to nt/.
8891         * make-dist: Add modules/.
8893         * make-dist: Update for super-special file that can't live in etc/.
8895 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
8897         Fix failure to compile ns-win.el in parallel builds
8899         * src/Makefile.in ($(lispsource)/term/ns-win.elc): Add order-only
8900         dependency on $(lispsource)/international/charprop.el.
8901         (Bug#22501)
8903 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
8905         Fix names of tags generated for Ruby accessors
8907         * lib-src/etags.c (Ruby_functions): Don't include the leading
8908         colon ':' in tags for Ruby accessors and aliases.  (Bug#22241)
8910         * test/etags/ETAGS.good_1:
8911         * test/etags/ETAGS.good_2:
8912         * test/etags/ETAGS.good_3:
8913         * test/etags/ETAGS.good_4:
8914         * test/etags/ETAGS.good_5:
8915         * test/etags/ETAGS.good_6:
8916         * test/etags/CTAGS.good: Adapt to changes in Ruby tags.
8918 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
8920         Fix file-name recognition in 'etags'
8922         * lib-src/etags.c (get_language_from_filename): If FILE includes a
8923         leading directory, compare only its basename to the known file
8924         names in lang_names[].
8926         * test/etags/Makefile (RBSRC): Adapt to recent test1.ruby
8927         renaming.
8928         * test/etags/ETAGS.good_1:
8929         * test/etags/ETAGS.good_2:
8930         * test/etags/ETAGS.good_3:
8931         * test/etags/ETAGS.good_4:
8932         * test/etags/ETAGS.good_5:
8933         * test/etags/ETAGS.good_6:
8934         * test/etags/CTAGS.good: Adapt to changes in Ruby file names and
8935         to the results in Makefile due to the above etags.c fix.
8937 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
8939         Change Ruby file names and extensions recognized by 'etags'
8941         * lib-src/etags.c <Ruby_filenames>: New variable, holds names
8942         of Ruby files.
8943         <Ruby_suffixes>: Treat .rb, .ru, and .rbw as Ruby extensions.
8944         <lang_names>: Add Ruby_filenames to the Ruby entry.
8945         * test/etags/ruby-src/test1.ru: Renamed from test1.ruby.
8946         (Bug#22241)
8948 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
8950         More improvements for Ruby support in 'etags'
8952         * lib-src/etags.c (Ruby_functions): Tag Ruby accessors and
8953         alias_method.  Identify constants even if the assignment is not
8954         followed by whitespace.  (Bug#22241)
8956         * test/etags/ruby-src/test1.ru: Add tests for constants,
8957         accessors, and alias_method.
8958         * test/etags/ETAGS.good_1:
8959         * test/etags/ETAGS.good_2:
8960         * test/etags/ETAGS.good_3:
8961         * test/etags/ETAGS.good_4:
8962         * test/etags/ETAGS.good_5:
8963         * test/etags/ETAGS.good_6:
8964         * test/etags/CTAGS.good: Adapt to changes in Ruby tests.
8966 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
8968         Add --git-config option to autogen.sh
8970         * autogen.sh: New options --git-config, --help.
8971         (git_config): New shell var.  Alter function to respect this var.
8973 2016-02-02  Lars Ingebrigtsen  <larsi@gnus.org>
8975         Fix editing undo changes in eww fields
8977         * eww.el (eww-tag-form): Don't overwrite initial form data in text
8978         fields.
8979         (eww-process-text-input): Make `M-t' at the end of text fields work
8980         better (bug#19085).
8982 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
8984         Allow the user more control of popping up the eww window
8986         * eww.el (eww): Use pop-to-buffer-same-window (suggested by
8987         Michael Heerdegen) (bug#22244).
8989 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
8991         Make eww-browse-url with new-window parameter work again
8993         * eww.el (eww-browse-url): Stay in the same buffer if we're
8994         already in a eww mode buffer so that eww-browse-url with a
8995         new-window parameter works (bug#22244).
8997 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
8999         Clean up eww code slightly
9001         * eww.el (eww-browse-url): Clean up code slightly.
9003 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
9005         Don't insert nil faces in shr
9007         * shr.el (shr-insert-table): Don't add nil faces, because that
9008         will show up in *Messages* as "Invalid face reference: nil [32
9009         times]".
9011 2016-02-01  Glenn Morris  <rgm@gnu.org>
9013         Improve the custom type of some user options.
9015         * lisp/autoinsert.el (auto-insert-alist):
9016         * lisp/replace.el (query-replace-from-to-separator):
9017         * lisp/gnus/gnus-art.el (gnus-hidden-properties):
9018         * lisp/gnus/gnus-gravatar.el (gnus-gravatar-properties):
9019         * lisp/gnus/gnus-picon.el (gnus-picon-properties):
9020         * lisp/progmodes/prolog.el (prolog-keywords, prolog-types)
9021         (prolog-mode-specificators, prolog-determinism-specificators)
9022         (prolog-directives, prolog-program-name, prolog-program-switches)
9023         (prolog-consult-string, prolog-compile-string, prolog-eof-string)
9024         (prolog-prompt-regexp): Improve custom type.
9026 2016-02-01  Glenn Morris  <rgm@gnu.org>
9028         Mark some risky calendar variables.
9030         * lisp/calendar/cal-china.el (chinese-calendar-time-zone):
9031         Remove risky setting for deleted obsolete alias.
9032         (calendar-chinese-standard-time-zone-name)
9033         (calendar-chinese-daylight-saving-start)
9034         (calendar-chinese-daylight-saving-end):
9035         * lisp/calendar/calendar.el (calendar-iso-date-display-form)
9036         (calendar-european-date-display-form)
9037         (calendar-american-date-display-form, calendar-date-display-form):
9038         * lisp/calendar/diary-lib.el (diary-remind-message)
9039         (diary-header-line-format):
9040         * lisp/calendar/solar.el (calendar-time-display-form)
9041         (calendar-location-name): Mark as risky.
9043 2016-02-01  Simen Heggestøyl  <simenheg@gmail.com>
9045         Highlight two additional SCSS keywords
9047         * lisp/textmodes/css-mode.el (css-bang-ids): New defconst holding CSS
9048         identifiers on the form !foo.
9049         (scss-bang-ids): New defconst holding SCSS identifiers on the form
9050         !foo.
9051         (css--font-lock-keywords): Highlight the new SCSS bang identifiers in
9052         `font-lock-builtin-face'.
9054         * test/indent/css-mode.css: Add bang rule test case.
9056         * test/indent/scss-mode.scss: Add test cases for the introduced bang
9057         rules.
9059 2016-02-01  Karl Fogel  <kfogel@red-bean.com>
9061         Recommend enabling integrity-checking in git
9063         * admin/notes/git-workflow:  Recommend setting transfer.fsckObjects.
9065         This is related to the autogen.sh changes made by Paul Eggert in
9066         commit d766ca8f (2016-02-01) and commit cedd7cad (2016-02-01), and to
9067         my edits today to http://www.emacswiki.org/emacs/GitForEmacsDevs and
9068         to emacswiki.org/emacs/GitQuickStartForEmacsDevs.  See also the thread
9069         "Recommend these .gitconfig settings for git integrity." at
9070         https://lists.gnu.org/archive/html/emacs-devel/2016-01/threads.html#01802.
9072 2016-02-01  Martin Rudalics  <rudalics@gmx.at>
9074         Some corrections in Elisp manual
9076         * doc/lispref/buffers.texi (Read Only Buffers): Describe optional
9077         argument POSITION.
9078         * doc/lispref/debugging.texi (Error Debugging): `debug-on-signal'
9079         is an option.
9080         * doc/lispref/display.texi (Refresh Screen): Describe optional
9081         argument FRAME of `redraw-frame'.
9082         (Attribute Functions): Describe optional argument CHARACTER of
9083         `face-font'.
9084         (Defining Images): `image-load-path' is an option.
9085         (Beeping): `ring-bell-function' is an option.
9086         * doc/lispref/frames.texi (Size and Position): The PIXELWISE
9087         argument of `set-frame-size' is optional.
9088         (Raising and Lowering): The TERMINAL argument of `tty-top-frame'
9089         is optional.
9090         * doc/lispref/keymaps.texi (Controlling Active Maps): Fix doc of
9091         `set-transient-map'.
9092         * doc/lispref/minibuf.texi (Text from Minibuffer):
9093         `read-regexp-defaults-function' is an option.
9094         (Minibuffer Contents): `delete-minibuffer-contents' is a command.
9095         * doc/lispref/modes.texi (Mode Line Variables):
9096         `mode-line-position' and `mode-line-modes' are variables, not
9097         options.
9098         * doc/lispref/strings.texi (Creating Strings): The START argument
9099         of `substring' is optional.
9100         * doc/lispref/text.texi (Buffer Contents): Describe optional
9101         argument NO-PROPERTIES of `thing-at-point'.
9102         (User-Level Deletion): Both arguments of
9103         `delete-trailing-whitespace' are optional.
9104         (Margins): Use @key{RET} instead of @kbd{RET}.
9105         * doc/lispref/windows.texi (Display Action Functions): Write
9106         non-@code{nil} instead of non-nil.
9107         (Choosing Window Options): The WINDOW arg of
9108         `split-window-sensibly' is optional.
9109         (Choosing Window Options): Write non-@code{nil} instead of
9110         non-nil.
9111         (Window Start and End): Both args of `window-group-end' are
9112         optional.
9114         * src/buffer.c (Fbarf_if_buffer_read_only): Rename argument POS
9115         to POSITION to keep consisteny with doc-string.
9117 2016-02-01  Paul Eggert  <eggert@cs.ucla.edu>
9119         Chatter when autogen.sh changes Git configuration
9121         * autogen.sh (git_config): New function.  Use it instead of ‘git config’.
9123 2016-02-01  Kyle Meyer  <kyle@kyleam.com>
9125         * lisp/org/org-compat.el (org-font-lock-ensure): Fix bogus test (bug#22399)
9127 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
9129         Omit unnecessary history from Lisp intro
9131         * doc/lispintro/emacs-lisp-intro.texi (Review, Digression into C)
9132         (Conclusion): Reword so as not to talk about earlier versions
9133         of Emacs in what should be an intro.
9135 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
9137         * etc/HISTORY: Add some more history, plus git tags.
9139 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
9141         Improve elisp “Security Considerations” doc
9143         * doc/lispref/os.texi (Security Considerations):
9144         Mention call-process and rename-file as opposed to shell commands.
9145         Add some more cross-references.
9147 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
9149         autogen.sh now arranges for git to check hashes
9151         Suggested by Karl Fogel in:
9152         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01802.html
9153         * autogen.sh: Do "git config transfer.fsckObjects true".
9155 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
9157         Fix (c & 040) typo in emergency escapes
9159         * src/keyboard.c (handle_interrupt): Fix recently-introduced
9160         typo (040 should have been ~040) that silently suppressed
9161         auto-saves after emergency escapes.  Redo comparison to avoid
9162         similar problems.
9164 2016-01-31  Eli Zaretskii  <eliz@gnu.org>
9166         Fix display of overlay strings with 'display' and 'box' property
9168         * src/xdisp.c (get_next_display_element): Take the box face from
9169         display stack level that comes from a buffer, not an overlay
9170         string.  (Bug#22499)
9172 2016-01-31  Andreas Schwab  <schwab@linux-m68k.org>
9174         Fix imap-starttls-open
9176         * lisp/net/imap.el (imap-starttls-open): Log imap process
9177         output.  Call imap-parse-greeting.  (Bug#22500)
9179 2016-01-31  Andreas Schwab  <schwab@linux-m68k.org>
9181         Fix return value of imap-starttls-open
9183         * lisp/net/imap.el (imap-starttls-open): Fix return value.
9185 2016-01-31  John Wiegley  <johnw@newartisans.com>
9187         Correct reference to DARWIN_OS preprocessor symbol
9189         * src/alloc.c: Correct a preprocessor reference to DARWIN_OS, which may
9190           not be defined.
9192 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
9194         Spelling fix
9196         Spelling fixes
9198 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
9200         Pacify GCC on C library without glibc API
9202         Without this change, with --enable-gcc-warnings GCC would complain
9203         “error: redundant redeclaration of ‘aligned_alloc’”.
9204         * configure.ac: Simplify aligned_alloc testing.
9205         * src/alloc.c (aligned_alloc): Don’t use if DARWIN_OS,
9206         since the simplified configure.ac no longer checks for that.
9207         Don’t declare if HAVE_ALIGNED_ALLOC.
9208         Correct misspelling of HAVE_ALIGNED_ALLOC in ifdef.
9210 2016-01-30  Artur Malabarba  <bruce.connor.am@gmail.com>
9212         Backport: * lisp/files.el: Remove support for extra .dir-locals file
9214         (dir-locals-file-2, dir-locals--all-files): Remove.
9215         (dir-locals-collect-variables, dir-locals-file, dir-locals-find-file)
9216         (dir-locals-read-from-file, hack-dir-local-variables): Revert changes.
9218         * lisp/files-x.el (modify-dir-local-variable): Revert changes.
9220         * lisp/help-fns.el (describe-variable): Revert changes.
9222         * doc/emacs/custom.texi (Directory Variables): Revert changes.
9224         * etc/NEWS: Revert changes.
9226 2016-01-30  Glenn Morris  <rgm@gnu.org>
9228         * lisp/net/browse-url.el (browse-url-default-browser):
9229         Lower priority of non-free Chrome.
9231 2016-01-30  Glenn Morris  <rgm@gnu.org>
9233         Improve the custom type of some user options.
9235         * lisp/desktop.el (desktop-minor-mode-table):
9236         * lisp/man.el (Man-frame-parameters):
9237         * lisp/midnight.el (midnight-delay):
9238         * lisp/speedbar.el (speedbar-select-frame-method):
9239         * lisp/tooltip.el (tooltip-frame-parameters):
9240         * lisp/tree-widget.el (tree-widget-space-width):
9241         * lisp/type-break.el (type-break-keystroke-threshold):
9242         * lisp/woman.el (woman-imenu-generic-expression):
9243         * lisp/cedet/ede.el (ede-debug-program-function):
9244         * lisp/cedet/ede/project-am.el (project-am-debug-target-function):
9245         * lisp/emulation/viper-keym.el (viper-toggle-key):
9246         * lisp/erc/erc-networks.el (erc-server-alist):
9247         * lisp/gnus/message.el (message-deletable-headers, message-signature):
9248         * lisp/mail/mailalias.el (mail-directory-stream):
9249         * lisp/play/tetris.el (tetris-x-colors):
9250         * lisp/progmodes/gud.el (gud-tooltip-modes): Improve custom type.
9252 2016-01-30  Simen Heggestøyl  <simenheg@gmail.com>
9254         Highlight CSS variables with variable name face
9256         * lisp/textmodes/css-mode.el (css-nmstart-re): Don't match variables.
9257         (css--font-lock-keywords): Highlight variables in
9258         `font-lock-variable-name-face'.
9260 2016-01-30  Glenn Morris  <rgm@gnu.org>
9262         * lisp/gnus/gnus-kill.el (gnus-winconf-kill-file): Not user-serviceable.
9264 2016-01-30  Glenn Morris  <rgm@gnu.org>
9266         Mark some user options that can get evalled as risky.
9268         * lisp/allout.el (allout-title):
9269         * lisp/emacs-lisp/edebug.el (edebug-global-break-condition):
9270         * lisp/gnus/message.el (message-mailer-swallows-blank-line):
9271         * lisp/progmodes/gud.el (gud-tooltip-display):
9272         * lisp/vc/ediff-mult.el (ediff-default-filtering-regexp):
9273         Mark as risky.
9275 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
9277         Disable DebPrint in sys_read on MS-Windows
9279         * src/w32.c (sys_read): Disable a debugging print that is normal
9280         when non-blocking reads are retried.
9282 2016-01-30  Martin Rudalics  <rudalics@gmx.at>
9284         ;Fix ChangeLog entry
9286 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
9288         Fix typos in Introduction to Emacs Lisp manual
9290         * doc/lispintro/emacs-lisp-intro.texi (Emacs Initialization)
9291         (kill-new function, Digression into C)
9292         (Complete forward-sentence, Divide and Conquer, Find a File)
9293         (lengths-list-many-files, Columns of a graph, defcustom)
9294         (recursive-count-words): Fix typos.  Reported by Daniel Bastos
9295         <dbastos@toledo.com>.
9297 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
9299         Bump version to 25.0.90
9301         * README:
9302         * configure.ac:
9303         * msdos/sed2v2.inp: Bump version to 25.0.90.
9305 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
9307         * etc/AUTHORS: Update the AUTHORS file
9309 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
9311         Bump version to 25.0.90
9313         * README:
9314         * configure.ac:
9315         * msdos/sed2v2.inp: Bump version to 25.0.90.
9317 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
9319         * etc/AUTHORS: Update the AUTHORS file
9321 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
9323         authors.el updates
9325         * admin/authors.el (authors-renamed-files-alist): Additions.
9327 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
9329         Make it possible to run make change-history on emacs-25
9331         * Makefile.in: Check if the current branch is emacs-25 instead of
9332           master.
9334 2016-01-30  lu4nx  <lx@shellcodes.org>
9336         Support Go language in 'etags'
9338         * lib-src/etags.c <Ruby_help>: Fix documentation of Ruby tags.
9339         <Go_help>: New help.
9340         <Go_suffixes>: New variable.
9341         (Go_functions): New function.
9342         <lang_names>: Add entry for Go.  (Bug#22370)
9344         * doc/emacs/maintaining.texi (Tag Syntax): Document Go support.
9345         * doc/man/etags.1: Mention Go support.
9347         * etc/NEWS: Mention Go support.
9349         * test/etags/go-src/test.go:
9350         * test/etags/go-src/test1.go: New test files.
9351         * test/etags/Makefile (GOSRC): New variable.
9352         (SRCS): Add $(GOSRC).
9353         * test/etags/ETAGS.good_1:
9354         * test/etags/ETAGS.good_2:
9355         * test/etags/ETAGS.good_3:
9356         * test/etags/ETAGS.good_4:
9357         * test/etags/ETAGS.good_5:
9358         * test/etags/ETAGS.good_6:
9359         * test/etags/CTAGS.good: Adapt to addition of Go tests.
9361 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
9363         Improve Ruby support in 'etags'
9365         * lib-src/etags.c (Ruby_functions): Tag constants.  Don't tag
9366         singleton classes.  Remove class qualifiers from tags generated
9367         for method and constant names.  (Bug#22241)
9369         * doc/emacs/maintaining.texi (Tag Syntax): Mention that constants
9370         are tagged by etags in Ruby.
9372         * etc/NEWS: Mention that constants are tagged by etags in Ruby.
9374         * test/etags/ruby-src/test1.ru: Add more tests.
9375         * test/etags/ETAGS.good_1:
9376         * test/etags/ETAGS.good_2:
9377         * test/etags/ETAGS.good_3:
9378         * test/etags/ETAGS.good_4:
9379         * test/etags/ETAGS.good_5:
9380         * test/etags/ETAGS.good_6:
9381         * test/etags/CTAGS.good: Adapt to the changes in etags and in Ruby
9382         tests.
9384 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
9386         Adjust etags test results to changes in copyright years
9388         * test/etags/CTAGS.good:
9389         * test/etags/ETAGS.good_1:
9390         * test/etags/ETAGS.good_2:
9391         * test/etags/ETAGS.good_3:
9392         * test/etags/ETAGS.good_4:
9393         * test/etags/ETAGS.good_5:
9394         * test/etags/ETAGS.good_6: Adjust to shift in characters and
9395         in line numbers.
9397 2016-01-30  Andreas Schwab  <schwab@linux-m68k.org>
9399         Revert "Re-enable checks in member, memql, delete to complain about non-lists"
9401         This reverts commit f524e8b7f12d9b5a8b92084e5385429fe7b085b9.
9403 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
9405         Make it possible to run make change-history on emacs-25
9407         * Makefile.in: Check if the current branch is emacs-25 instead of
9408           master.
9410 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
9412         Don't fiddle with DEFAULT
9414         * lisp/progmodes/project.el (project--completing-read-strict):
9415         Don't change DEFAULT, whether is has any matches in
9416         COLLECTION, or not.
9418 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
9420         Document xwidget commands and functions
9422         * doc/lispref/display.texi (Xwidgets): New section, describes some
9423         of the xwidget primitives.
9424         * doc/lispref/display.texi (Display): Update the chapter menu.
9425         * doc/emacs/misc.texi (Embedded WebKit Widgets): New section.
9426         * doc/emacs/emacs.texi (Top): Update the master menu to include
9427         the xwidget node.
9429 2016-01-30  Lars Ingebrigtsen  <larsi@gnus.org>
9431         Build fix for shr.el
9433         * shr.el (seq): Require.
9435 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
9437         Improve project-find-file yet again!
9439         * lisp/progmodes/project.el (project--completing-read-strict):
9440         New function.
9441         (project-find-file-in): Use it.
9442         (project-file-completion-table): Move the default
9443         implementation inside the cl-defgeneric form.
9444         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01720.html)
9446 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
9448         Don't pass DIR to 'hg status'
9450         * lisp/vc/vc-hg.el (vc-hg-dir-status-files):
9451         Don't pass DIR to 'hg status' (bug#22481).
9453 2016-01-30  Stephen Leake  <stephen_leake@stephe-leake.org>
9455         Fix typo in previous commits
9457         * lisp/progmodes/project.el (project-find-file-in):
9458         * lisp/vc/vc-mtn.el (vc-mtn-find-ignore-file): Fix typo in previous
9459         commit.
9461 2016-01-30  Stephen Leake  <stephen_leake@stephe-leake.org>
9463         Improve project-find-file
9465         * lisp/progmodes/project.el (project-file-completion-table): New.
9466         (project-find-file, project-or-external-find-file): Default to filename
9467         at point.
9468         (project-file-completion-table): New, split out from
9469         project--find-file-in.
9470         (project-find-file-in): Renamed from project--find-file-in, use
9471         project-file-completion-table.
9473         * lisp/progmodes/xref.el (ede-minor-mode): New declaration.
9474         (xref--find-ignores-arguments): Add doc string.
9476 2016-01-30  Stephen Leake  <stephen_leake@stephe-leake.org>
9478         Implement vc-mtn-find-ignore-file, fix some doc strings
9480         * lisp/cedet/cedet-global.el (cedet-gnu-global-root): Improve doc string.
9482         * lisp/cedet/ede/locate.el (initialize-instance): Improve doc string.
9484         * lisp/vc/vc-git.el (vc-git-find-ignore-file): Fix doc string.
9486         * lisp/vc/vc-mtn.el (vc-mtn-find-ignore-file): New function.
9488 2016-01-29  Vincent Belaïche  <vincentb1@users.sourceforge.net>
9490         Correct a whole bunch of bugs coming with renamed cell relocation.
9492         This is the same change as commit on master branch. See
9493         http://git.savannah.gnu.org/cgit/emacs.git/commit/?id=badcd38aa86ed7973f2be2743c405710973a0bdd
9495         * lisp/ses.el (ses-localvars): rename variable
9496         `ses--renamed-cell-symb-list' into `ses--in-killing-named-cell-list'
9497         and adjust the comment about it.
9498         (ses-plist-delq): new defun.
9499         (ses--ses-buffer-list): new defvar.
9500         (ses--unbind-cell-name): new defun.
9501         (ses-relocate-symbol): Do not relocate symbol when it is a named cell.
9502         (ses-relocate-formula): Undo change of
9503         2011-12-27T19:30:39Z!vincentb1@users.sourceforge.net that was
9504         preventing relocation for named cell --- now doing this is delegated
9505         to function `ses-relocate-symbol'.
9506         (ses-relocate-range): In docstring, undo change of
9507         2016-01-03T07:31:52Z!johnw@newartisans.com, `ses-range' must remain
9508         lower case as it is not a variable.
9509         (ses-relocate-all): Cell name relocation : 1) check that cell is a
9510         renamed cell by testing `ses-cell' property to :ses-named, rather than
9511         comparing name to corresponding standard name. Set rowcol of renamed
9512         cell into the hashmap --- `ses-cell' property must not be used for
9513         that as the same name can be used for different locations in different
9514         SES sheets ; 2) use `local-variable-if-set-p' rather than `boundp' and
9515         `local-variable-p' to check if cell name is already in use in this
9516         sheet or needs initialization.
9517         (ses-relocate-all): Cell value relocation : 1) like for name
9518         relocation use the `ses-cell' property rather than comparing actual
9519         name to corresponding standard name. 2) Correct bug introduced in
9520         2011-12-27T19:30:39Z!vincentb1@users.sourceforge.net, as the test was
9521         made the other way round than the intention --- ie value relocation
9522         was disabled for standard cell, not for renamed cell as was the
9523         intention.
9524         (ses-relocate-all): Add loop for unbinding deleted renamed cells
9525         names.
9526         (ses-killbuffer-hook): new defun.
9527         (ses-mode): Add the ses--ses-buffer-list maintenance mechanism ---
9528         kill buffer hook, plus pushing current buffer if new in list.
9529         (ses-delete-row, ses-delete-column): Collect deleted renamed cells
9530         into `ses--in-killing-named-cell-list'.
9531         (ses-rename-cell): Remove update of variable
9532         `ses--renamed-cell-symb-list', this variable is renamed to
9533         `ses--in-killing-named-cell-list', and its setting is done in
9534         functions `ses-delete-row' and , `ses-delete-column' now.
9535         (ses-rename-cell): Make cell new name a buffer local variable.
9536         (ses-rename-cell): Change correction of
9537         2015-12-30T23:10:37Z!vincentb1@users.sourceforge.net concerning
9538         computation of the range over which `cursor-intangible' property was
9539         to be updated. This correction was ok for non spilling cells, but not
9540         for cells spilling over following blank cells. Simply use
9541         `next-single-property-change' rather than computing the end column
9542         from column widths.
9544 2016-01-29  Andreas Schwab  <schwab@linux-m68k.org>
9546         Re-enable checks in member, memql, delete to complain about non-lists
9548         * src/fns.c (Fmember, Fmemql, Fdelete): Revert 2007-10-16 change.
9550 2016-01-29  Martin Rudalics  <rudalics@gmx.at>
9552         Minor doc(-string) tweaks
9554         * lisp/window.el (window-in-direction): Fix doc-string typo.
9555         * doc/lispref/frames.texi (Frame Font): Mention canonical
9556         character width/height.
9557         * doc/lispref/windows.texi (Windows and Frames): Clarify
9558         handling of minibuffer window for `window-in-direction'.
9559         (Window Sizes): Minor tweaks in descriptions of
9560         `window-max-chars-per-line', `window-min-width' and
9561         `window-min-size'.
9562         (Deleting Windows): Minor tweak in `delete-window' description.
9563         (Selecting Windows): Clarify window use time description.
9564         (Cyclic Window Ordering): Minor tweak.
9565         (Switching Buffers): Clarify description of
9566         `switch-to-buffer-in-dedicated-window'.
9568 2016-01-29  Eli Zaretskii  <eliz@gnu.org>
9570         Minor improvements to 'pcase' documentation
9572         * doc/lispref/control.texi (Pattern matching case statement):
9573         Improve the documentation of 'pcase' per comments.  See two
9574         discussion threads on emacs-devel@gnu.org for the details:
9575         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01335.html
9576         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01336.html.
9578 2016-01-29  Glenn Morris  <rgm@gnu.org>
9580         Don't use eval to quieten prolog.el compilation.
9582         * lisp/progmodes/prolog.el (pltrace-on, pltrace-off): Declare.
9583         (prolog-enable-sicstus-sd, prolog-disable-sicstus-sd): Don't use eval.
9585 2016-01-29  Glenn Morris  <rgm@gnu.org>
9587         Mark some risky prolog variables.
9589         * lisp/progmodes/prolog.el (prolog-system-version)
9590         (prolog-keywords, prolog-types, prolog-mode-specificators)
9591         (prolog-determinism-specificators, prolog-directives)
9592         (prolog-program-name, prolog-program-switches)
9593         (prolog-consult-string, prolog-compile-string)
9594         (prolog-eof-string, prolog-prompt-regexp, prolog-help-function):
9595         Mark anything processed by prolog-find-value-by-system as risky.
9597 2016-01-28  Glenn Morris  <rgm@gnu.org>
9599         * lisp/custom.el (defcustom): Doc fix.
9601         * doc/lispref/customize.texi (Variable Definitions):
9602         Defcustom should always have a type.
9604 2016-01-28  Glenn Morris  <rgm@gnu.org>
9606         * lisp/cedet/semantic/db-file.el (semanticdb-persistent-path):
9607         Fix :type.
9609         * lisp/emacs-lisp/package.el (package-load-list): Improve :type.
9611 2016-01-28  Michael Albinus  <michael.albinus@gmx.de>
9613         Fix Bug#22452
9615         * lisp/net/tramp-adb.el (tramp-adb-maybe-open-connection):
9616         * lisp/net/tramp-gvfs.el (tramp-gvfs-maybe-open-connection):
9617         * lisp/net/tramp-sh.el (tramp-maybe-open-connection):
9618         * lisp/net/tramp-smb.el (tramp-smb-maybe-open-connection):
9619         Mark it as connected.
9621         * lisp/net/tramp.el (tramp-handle-file-remote-p): Check also, if
9622         connection property "connected" is set.  (Bug#22452)
9624 2016-01-27  Glenn Morris  <rgm@gnu.org>
9626         * lisp/xwidget.el (xwidget-query-on-exit-flag): Declare.
9628         * lisp/xwidget.el (xwidget-webkit-browse-url): Give explicit error
9629         if not compiled with xwidgets.
9631 2016-01-27  Paul Eggert  <eggert@cs.ucla.edu>
9633         C-u C-x = example doc fix
9635         * doc/emacs/mule.texi (International Chars):
9636         Adjust example to match current behavior of C-u C-x =.
9638 2016-01-27  Paul Eggert  <eggert@cs.ucla.edu>
9640         malloc.h hygiene
9642         This attempts to future-proof Emacs a bit against possible glibc
9643         changes, by having Emacs use <malloc.h> declarations rather than
9644         coding them up by hand.  Problem noted by Florian Weimer in:
9645         https://sourceware.org/ml/libc-alpha/2016-01/msg00777.html
9646         Implement this mainly by moving malloc.h-related functions from
9647         emacs.c (which does not include <malloc.h>) to alloc.c (which does).
9648         * src/alloc.c (my_heap_start) [DOUG_LEA_MALLOC || GNU_LINUX]:
9649         New function.
9650         The remaining changes to this file apply only if DOUG_LEA_MALLOC.
9651         (alloc_unexec_pre, alloc_unexec_post): New functions.
9652         (malloc_initialize_hook): Use my_heap_start and alloc_unexec_post.
9653         (__MALLOC_HOOK_VOLATILE): New macro, if not already defined.
9654         (__malloc_initialize_hook): Use it.
9655         (malloc_state_ptr, malloc_initialize_hook, __malloc_initialize_hook):
9656         Move here from ...
9657         * src/emacs.c: ... here.
9658         (malloc_get_state, malloc_set_state): Remove extern decls.
9659         (my_heap_start) [DOUG_LEA_MALLOC || GNU_LINUX]: Remove static var.
9660         All uses changed to similarly-named new function.
9661         (Fdump_emacs): Use new functions alloc_unexec_pre, alloc_unexec_post.
9662         * src/lisp.h (my_heap_start, alloc_unexec_pre, alloc_unexec_post):
9663         New decls.
9665 2016-01-26  Eli Zaretskii  <eliz@gnu.org>
9667         * doc/emacs/mark.texi (Using Region): Clarify wording.  (Bug#22467)
9669 2016-01-26  Paul Eggert  <eggert@cs.ucla.edu>
9671         Remove never-set var handle_user_signal_hook
9673         * src/keyboard.c, src/keyboard.h (handle_user_signal_hook):
9674         Remove never-set var.  All uses removed.
9676 2016-01-26  K. Handa  <handa@gnu.org>
9678         Backport:fix previous change of src/ftfont.c (ftfont_shape_by_flt)
9680         * src/ftfont.c (ftfont_shape_by_flt): Fix previous change.  Access the
9681         second glyph only when there are enough glyphs.
9683         (cherry picked from commit 9835757013569673854b692ccbb58bfb3c3ed1f7)
9685 2016-01-26  K. Handa  <handa@gnu.org>
9687         support rendering of wider range of combinging characters by ftfont backend
9689         * lisp/language/hebrew.el (hebrew-shape-gstring): If the font backend
9690         supports rendering of combining characters, call
9691         font-shape-gstring.
9693         * src/font.c (Ffont_get): Handle `combining-capability' property.
9694         (syms_of_font): New symbol ":combining-capability'.
9696         * src/font.h (struct font_driver): New member combining_capability.
9698         * src/ftfont.c: Include "category.h".
9699         (ftfont_driver): Initialize combining_capability to
9700         ftfont_combining_capability.
9701         (ftfont_shape_by_flt): If OTF is null, try to find a suitable
9702         FLT in advance.
9703         (ftfont_combining_capability): New function.
9705         (cherry picked from commit 536f48e9a2251b9e654ea974bd90ff2f40218753)
9707 2016-01-26  Anders Lindgren  <andlind@gmail.com>
9709         Fixed NextStep fullscreen issue (bug#22468)
9711         When in fullscreen mode, `[screen visibleFrame]' sometimes
9712         includes, sometimes excludes the menu bar. This could cause
9713         a frame to be placed too low when in fullscreen mode.
9715         * src/nsterm.m (ns_menu_bar_should_be_hidden): Trace.
9716         (constrain_frame_rect): New parameter, isFullscreen, when true don't
9717         query the height of the menu bar.
9718         (ns_constrain_all_frames): Pass `false' (isFullscreen) to
9719         `constrain_frame_rect'.
9720         ([EmacsView initFrameFromEmacs:]): Trace.
9721         ([EmacsView isFullscreen]): Trace.
9722         ([EmacsWindow constrainFrameRect:toScreen:]): Pass fullscreen
9723         state to `constrain_frame_rect'.
9725 2016-01-26  Artur Malabarba  <bruce.connor.am@gmail.com>
9727         * lisp/files.el: Use a fixed file name for the second dir-locals file
9729         (dir-locals-file): Revert to its original fixed value.
9730         (dir-locals-file-2): New const.
9731         (dir-locals--all-files): Don't use `file-name-all-completions'.
9732         Instead, just check for the 2 dir-locals files and return a list
9733         of the ones that exit (if any).
9735         * etc/NEWS: Document the change.
9737         * doc/emacs/custom.texi (Directory Variables): Document the change.
9739         * doc/lispref/variables.texi (Directory Local Variables): Update
9740         accordingly.
9742 2016-01-26  Artur Malabarba  <bruce.connor.am@gmail.com>
9744         * lisp/files-x.el (modify-dir-local-variable): Small rewrite
9746         Change a variable name to be more meaningful, and reorder some of
9747         the code with no change in behaviour.
9749 2016-01-26  Artur Malabarba  <bruce.connor.am@gmail.com>
9751         * lisp/files.el (dir-locals-find-file): Refactor return values
9753         Returning a cache remains unchanged, but the case of returning a
9754         file (or pattern) is now changed to return the contaning
9755         directory.
9757         (dir-locals-read-from-file): Rename to `dir-locals-read-from-dir'
9758         and make obsolete.
9759         (dir-locals-read-from-dir): Simplify accordingly.
9760         (hack-dir-local-variables): Simplify accordingly and rename a
9761         variable.
9763 2016-01-26  Glenn Morris  <rgm@gnu.org>
9765         * lisp/textmodes/flyspell.el (flyspell--prev-meta-tab-binding):
9766         Declare.
9768         * configure.ac (USE_CAIRO): Rename to more standard HAVE_CAIRO.
9770         * configure.ac (--with-cairo): Say it's experimental.
9772         * lisp/xwidget.el (xwidget-webkit-scroll-behavior):
9773         Rename using American spelling.  Update all uses.
9775 2016-01-26  Glenn Morris  <rgm@gnu.org>
9777         Yet more xwidget doc fixes.
9779         * lisp/xwidget.el (xwidget-webkit-scroll-behaviour)
9780         (xwidget-insert, xwidget-webkit-browse-url)
9781         (xwidget-webkit-scroll-up, xwidget-webkit-scroll-down)
9782         (xwidget-webkit-scroll-forward, xwidget-webkit-scroll-backward)
9783         (xwidget-webkit-insert-string, xwidget-webkit-show-named-element)
9784         (xwidget-webkit-show-id-element)
9785         (xwidget-webkit-show-id-or-named-element)
9786         (xwidget-webkit-adjust-size, xwidget-webkit-current-url)
9787         (xwidget-webkit-execute-script-rv)
9788         (xwidget-webkit-copy-selection-as-kill, xwidget-get)
9789         (xwidget-put):  Doc fixes.
9790         (xwidget-webkit-insert-string, xwidget-webkit-show-named-element)
9791         (xwidget-webkit-show-id-element)
9792         (xwidget-webkit-show-id-or-named-element): Prompt fixes.
9794 2016-01-25  Ted Zlatanov  <tzz@lifelogs.com>
9796         * lisp/gnus/gnus-art.el (gnus-blocked-images):
9797         Add explicit nil choice and tags.
9799 2016-01-25  Paul Eggert  <eggert@cs.ucla.edu>
9801         Spelling fixes
9803 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
9805         (font-lock-ensure-function): Fix bug#22399
9807         * lisp/font-lock.el (font-lock-ensure-function): Fix handling when
9808         font-lock-mode is not enabled (bug#22399).
9810 2016-01-25  Alan Mackenzie  <acm@muc.de>
9812         Expunge "allow" + infinitive from source and doc, part 2.
9814         Do the same for "permit", "enable", "prevent", and (where appropriate)
9815         "require".
9817         doc/misc/reftex.texi:
9818         doc/misc/url.texi:
9819         lib/get-permissions.c:
9820         lib/strftime.c:
9821         lisp/org/org-element.el:
9822         lisp/org/org-mobile.el:
9823         lisp/textmodes/reftex-vars.el:
9824         src/bidi.c:
9825         src/emacs.c:
9826         src/xdisp.c:
9827         test/etags/c-src/emacs/src/lisp.h:
9829         Expunge the likes of "This allows to do something" from the above files.
9831 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
9833         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-mode): Redundant line
9835         `special-mode' is already read-only.
9837 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
9839         * lisp/emacs-lisp/ert.el (ert--results-move): Change error to user-error
9841 2016-01-25  Paul Eggert  <eggert@cs.ucla.edu>
9843         Port "$@" to OpenIndiana ksh93
9845         In http://lists.gnu.org/archive/html/bug-autoconf/2015-12/msg00000.html
9846         Pavel Raiskup reports that ${1+"$@"} runs afoul of a bug in /bin/sh
9847         (derived from ksh 93t+ 2010-03-05).  ${1+"$@"} works around an ancient
9848         bug in long-dead shells, so remove the workaround.
9849         * admin/check-doc-strings, configure.ac, lib-src/rcs2log:
9850         Use plain "$@" rather than ${1+"$@"}.
9852 2016-01-25  Paul Eggert  <eggert@cs.ucla.edu>
9854         * src/xwidget.c (Fxwidget_set_adjustment): Fix doc string quoting typo.
9856 2016-01-25  Paul Eggert  <eggert@cs.ucla.edu>
9858         Improve wording for SMB support
9860         * doc/misc/tramp.texi (External methods): Improve and modernize
9861         wording for discussion of smbclient.  There is no longer any
9862         need to mention the laundry list of old MS Windows implementations
9863         of SMB and CIFS, nor to mention CIFS.  Also, give a URL for Samba.
9865 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
9867         Merge from gnulib
9869         This incorporates:
9870         2016-01-24 openat_proc_name: fix last '/' overwritten on OS/2 kLIBC
9871         2016-01-24 closedir, dirfd, opendir: port to OpenSolaris 5.10
9872         2016-01-15 detect utimes() correctly on OS/2 kLIBC
9873         2016-01-15 openat_proc_name: port to OS/2 kLIBC
9874         2016-01-14 stdint: check _INTPTR_T_DECLARED for intptr_t etc.
9875         2016-01-14 opendir, closedir, dirfd, fdopendir: port to OS/2 kLIBC
9876         2016-01-14 dup, dup2, fcntl: support a directory fd on OS/2 kLIBC
9877         2016-01-14 binary-io: don't put fd in binary mode if a console on EMX
9878         2016-01-14 sig2str: list all signals on FreeBSD >= 7
9879         2016-01-13 acl-permissions: port to USE_ACL==0 platforms
9880         2016-01-12 mktime: rename macro to avoid glibc clash
9881         2016-01-12 Port "$@" to OpenIndiana ksh93
9882         2016-01-12 Port Universal Time settings to strict POSIX
9883         * build-aux/gitlog-to-changelog, build-aux/update-copyright:
9884         * doc/misc/texinfo.tex, lib/acl-internal.c, lib/acl-internal.h:
9885         * lib/binary-io.h, lib/dirent.in.h, lib/dirfd.c, lib/dup2.c:
9886         * lib/fcntl.c, lib/fdopendir.c, lib/mktime.c, lib/openat-proc.c:
9887         * lib/sig2str.h, lib/stdint.in.h, m4/dirfd.m4, m4/dup2.m4:
9888         * m4/fcntl.m4, m4/utimes.m4:
9889         Copy from gnulib.
9890         * m4/gnulib-comp.m4: Regenerate.
9892 2016-01-24  Alan Mackenzie  <acm@muc.de>
9894         Expunge "allow" + infinitive without direct object from source and doc.
9896         Do the same for "permit", "enable", and "prevent".
9898         * doc/emacs/mule.texi:
9899         * doc/lispref/control.texi:
9900         * doc/lispref/display.texi:
9901         * doc/lispref/frames.texi:
9902         * doc/lispref/functions.texi:
9903         * doc/lispref/nonascii.texi:
9904         * doc/lispref/streams.texi:
9905         * doc/lispref/windows.texi:
9906         * doc/misc/dbus.texi:
9907         * doc/misc/eww.texi:
9908         * doc/misc/flymake.texi:
9909         * doc/misc/octave-mode.texi:
9910         * doc/misc/org.texi:
9911         * doc/misc/reftex.texi:
9912         * doc/misc/tramp.texi:
9913         * doc/misc/wisent.texi:
9914         * etc/NEWS:
9915         * lisp/autorevert.el:
9916         * lisp/cedet/mode-local.el:
9917         * lisp/cedet/semantic/senator.el:
9918         * lisp/cedet/semantic/wisent.el:
9919         * lisp/dos-fns.el:
9920         * lisp/frameset.el:
9921         * lisp/gnus/gnus-agent.el:
9922         * lisp/gnus/mm-util.el:
9923         * lisp/international/characters.el:
9924         * lisp/ldefs-boot.el:
9925         * lisp/mail/mailclient.el:
9926         * lisp/man.el:
9927         * lisp/mh-e/mh-search.el:
9928         * lisp/net/tramp-cmds.el:
9929         * lisp/net/tramp-gvfs.el:
9930         * lisp/org/org-crypt.el:
9931         * lisp/org/org-element.el:
9932         * lisp/org/org-feed.el:
9933         * lisp/org/org.el:
9934         * lisp/org/ox-ascii.el:
9935         * lisp/org/ox-icalendar.el:
9936         * lisp/org/ox-publish.el:
9937         * lisp/org/ox.el:
9938         * lisp/play/gamegrid.el:
9939         * lisp/play/gomoku.el:
9940         * lisp/progmodes/antlr-mode.el:
9941         * lisp/progmodes/python.el:
9942         * lisp/progmodes/vhdl-mode.el:
9943         * lisp/strokes.el:
9944         * lisp/textmodes/ispell.el:
9945         * lisp/tree-widget.el:
9946         * lisp/vc/pcvs.el:
9947         * lisp/window.el:
9948         * src/lisp.h:
9949         * src/w32.c:
9950         * src/w32heap.c:
9951         * src/w32term.c:
9952         * src/window.c:
9953         * src/xfaces.c:
9955         Replace solecisms like "This allow to do something" with a correct
9956         alternative, such as "This allow you to do something", "This allows
9957         something to be done" or "This allows the doing of something".
9959 2016-01-24  l3thal  <kwhite@gnu.org>
9961         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
9963 2016-01-24  Kelvin White  <kwhite@gnu.org>
9965         Add NEWS entry for asynchronous reconnect in ERC
9967 2016-01-24  l3thal  <kwhite@gnu.org>
9969         Add NEWS entry for asynchronous reconnect in ERC
9971 2016-01-24  Kelvin White  <kwhite@gnu.org>
9973         browse-url.el: Add 'google-chrome' to supported browsers.
9975 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
9977         Port Tramp manual to latest Texinfo
9979         Otherwise, 'make pdf' did not work (Bug#22416).
9980         * doc/misc/tramp.texi (xxx, yyy): Remove macros.
9981         (trampfn): Specialize to the case where METHOD is nonempty.
9982         The 2nd argument is now user@host, not 2nd user and 3rd host args.
9983         All uses changed.
9984         (trampf): New macro.
9986 2016-01-24  Lars Ingebrigtsen  <larsi@gnus.org>
9988         * eww.el (eww-render): Protect against empty content-types.
9990 2016-01-24  Nicolas Petton  <nicolas@petton.fr>
9992         authors.el updates
9994         * admin/authors.el (authors-ignored-files, authors-renamed-files-alist):
9995           Additions.
9997 2016-01-24  Dmitry Gutov  <dgutov@yandex.ru>
9999         Rename xref-query-replace to xref-query-replace-in-results
10001         * lisp/progmodes/xref.el(xref-query-replace):
10002         Rename to xref-query-replace-in-results.
10003         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01240.html)
10005         * lisp/progmodes/xref.el (xref--xref-buffer-mode-map):
10006         * lisp/dired-aux.el (dired-do-find-regexp-and-replace):
10007         * doc/emacs/dired.texi (Operating on Files):
10008         * doc/emacs/maintaining.texi (Xref Commands)
10009         (Identifier Search, Identifier Search): Update accordingly.
10011 2016-01-24  Dmitry Gutov  <dgutov@yandex.ru>
10013         Update cl-defgeneric and cl-defmethod docstrings
10015         * lisp/emacs-lisp/cl-generic.el: Remove outdated TODO item.
10016         (cl-defgeneric): Rename BODY to DEFAULT-BODY.
10017         (cl-defmethod): Mention that multiple dispatch arguments are
10018         allowed.  Document supported types.  (Bug#22336)
10020 2016-01-23  Dmitry Gutov  <dgutov@yandex.ru>
10022         Comment out next-error-function integration in xref
10024         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
10025         Comment out next-error-function integration
10026         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01286.html).
10028 2016-01-23  John Wiegley  <johnw@newartisans.com>
10030         Correct a use of "which" in intro.texi
10032 2016-01-23  Alan Mackenzie  <acm@muc.de>
10034         Distinguish the two meanings of Java's keyword "default".  Fixes bug #22358.
10036         * lisp/progmodes/cc-engine.el (c-guess-basic-syntax CASE 14): Check the
10037         context of case labels (including "default") more rigorously.
10038         (c-guess-basic-syntax CASE 15): Consequential amendment.
10040         * lisp/progmodes/cc-langs.el (c-modifier-kwds): Add "default" to Java's value.
10042 2016-01-23  Oscar Fuentes  <ofv@wanadoo.es>
10044         Don't operate on menu bar of nonexistent frame
10046         * src/xfns.c (Fx_hide_tip) [USE_LUCID]: Check that the current frame
10047         is valid before redisplaying its menu. Fixes bug#22438.
10049 2016-01-23  Anders Lindgren  <andlind@gmail.com>
10051         Unbreak the GNUstep build.
10053         * src/nsterm.m ([EmacsBell init]): In GNUstep, don't use the
10054         predefined "caution" image. Add trace.
10055         (x_set_window_size): Remove unused variables `cols' and `rows'.
10056         (ns_draw_fringe_bitmap): Exclude assignment of `fromRect' when
10057         GNUstep is used.
10058         ([EmacsView updateFrameSize:]): Remove unused variable `win'.
10059         ([EmacsWindow zoom:]): Remove unused variable `f'.
10061 2016-01-23  Eli Zaretskii  <eliz@gnu.org>
10062             John Wiegley  <johnw@gnu.org>
10063             Michael Heerdegen  <michael_heerdegen@web.de>
10065         Improve documentation of 'pcase'
10067         * doc/lispref/control.texi (Pattern matching case statement):
10068         Reorganize, expand, and improve wording.
10070         * etc/NEWS: Mention that 'pcase' changes are documented.
10072 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
10074         * etc/NEWS: Say that Cairo is experimental.
10076 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
10078         Report error for PNG under Cairo
10080         * src/image.c (lookup_rgb_color): Signal a file error instead
10081         of dumping core when mishandling an image.
10083 2016-01-23  Arash Esbati  <esbati@gmx.de>
10085         Delete a spurious backquote (tiny change)
10087         * lisp/textmodes/reftex-ref.el (reftex-label): Delete a
10088         spurious backquote which raises an error with emacs 25.
10090 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
10092         Pacify --enable-gcc-warnings --with-cairo
10094         Problem reported by Alexander Kuleshov in:
10095         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01289.html
10096         * src/gtkutil.c (xg_get_page_setup):
10097         Use switch rather than if-then-else.
10098         * src/image.c (COLOR_TABLE_SUPPORT):
10099         Define directly rather than via #define and optional later #undef.
10100         (lookup_rgb_color) [USE_CAIRO && ENABLE_CHECKING]:
10101         Crash when the pixel is undefined, as there is a genuine bug
10102         here (Bug#22442).
10103         * src/image.c (tiff_load, gif_load, svg_load_image)
10104         (x_kill_gs_process) [USE_CAIRO]:
10105         * src/xterm.c (x_draw_fringe_bitmap) [USE_CAIRO]:
10106         Omit unused locals, or move them to where they’re needed.
10107         (x_clear_area1): Now ATTRIBUTE_UNUSED.
10109 2016-01-23  Eli Zaretskii  <eliz@gnu.org>
10111         Update documentation for Dired search and replace
10113         * doc/emacs/dired.texi (Operating on Files): Update descriptions
10114         of 'A' and 'Q' now bound to 'dired-do-find-regexp' and
10115         'dired-do-find-regexp-and-replace'.
10117         * etc/NEWS: Mention xref-related changes in Dired.
10119 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
10121         Port recent xdisp.c fix to picky C compilers
10123         * src/xdisp.c (dump_glyph): Redo the call to fprintf to avoid
10124         putting #if inside the arguments to a standard function, which
10125         the C standard says has undefined behavior.
10127 2016-01-22  Alan Mackenzie  <acm@muc.de>
10129         Prevent spurious recognition of K&R argument declarations.  Fixes bug #2203
10131         * lisp/progmodes/cc-engine.el (c-forward-declarator): New function.
10132         (c-in-knr-argdecl): Before recognizing a K&R argument declaration, check it is
10133         contained in the preceding arg list.
10135         * lisp/progmodes/cc-fonts.el (c-font-lock-declarators): Use the new function
10136         `c-forward-declarator' in place of inline code.
10138 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
10140         Fix the build with --enable-checking=glyphs
10142         * src/xdisp.c (dump_glyph): Don't refer to glyph->u.xwidget in a
10143         build without xwidget support.
10145 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
10147         Document cl-generic.el
10149         * doc/lispref/functions.texi (Generic Functions): New section.
10150         (Bug#22336)
10151         (Functions): Update the chapter menu.
10152         * doc/lispref/elisp.texi: Update the master menu.
10154 2016-01-22  Paul Eggert  <eggert@cs.ucla.edu>
10156         xwidgets style cleanup
10158         Adjust the newly-added Xwidgets code so that it uses a more-typical
10159         Emacs style.  This should not affect behavior, except that in
10160         a few places it adds runtime checks that Lisp arguments are of
10161         the proper type, and in one place it uses more-precise arithmetic.
10162         * src/buffer.c, src/dispnew.c, src/emacs.c, src/emacsgtkfixed.c:
10163         * src/emacs.c, src/print.c, src/window.c, src/xdisp.c, src/xterm.c:
10164         Include xwidget.h unconditionally.
10165         * src/buffer.c (Fkill_buffer):
10166         * src/dispnew.c (update_window):
10167         * src/emacs.c (main):
10168         * src/print.c (print_object):
10169         * src/window.c (Fdelete_window_internal):
10170         * src/xdisp.c (handle_single_display_spec, push_it, pop_it)
10171         (get_next_element, set_iterator_to_next, next_element_from_xwidget)
10172         (dump_glyph, calc_pixel_width_or_height, BUILD_GLYPH_STRINGS_XW)
10173         (BUILD_GLYPH_STRINGS, x_produce_glyphs, get_window_cursor_type):
10174         * src/xterm.c (x_draw_glyph_string, x_draw_bar_cursor):
10175         Call xwidget functions and macros without worrying about
10176         HAVE_XWIDGETS when the code is a no-op on non-xwidget
10177         platforms.
10178         * src/dispextern.h (XWIDGET_GLYPH, struct glyph_string.xwidget)
10179         (IT_XWIDGET, GET_FROM_XWIDGET, struct it.u.xwidget)
10180         (struct it.xwidget):
10181         * src/lisp.h (PVEC_XWIDGET, PVEC_XWIDGET_VIEW):
10182         Always define.
10183         * src/emacsgtkfixed.h: Omit unnecessary comment.
10184         * src/keyboard.c: Fix spacing.
10185         * src/xdisp.c (BUILD_XWIDGET_GLYPH_STRING, produce_xwidget_glyph):
10186         Define to be a no-op if not HAVE_XWIDGETS.
10187         * src/xwidget.c: Include xwidget.h first (after config.h)
10188         to make sure that it can stand by itself.
10189         (Fmake_xwidget, Fxwidget_webkit_execute_script):
10190         Fix typo in doc string.
10191         (Fmake_xwidget): Check type of args.
10192         (Fmake_xwidget, offscreen_damage_event)
10193         (webkit_document_load_finished_cb, webkit_download_cb)
10194         (webkit_new_window_policy_decision_requested_cb)
10195         (webkit_navigation_policy_decision_requested_cb)
10196         (xwidget_osr_draw_cb, xwidget_osr_event_forward)
10197         (xwidget_osr_event_set_embedder, xwidget_init_view):
10198         Omit unnecessary casts.
10199         * src/xwidget.c (Fmake_xwidget, xwidget_hidden)
10200         (xwidget_show_view, xwidget_hide_view)
10201         (x_draw_xwidget_glyph_string, xwidget_start_redisplay, xwidget_touch)
10202         (xwidget_touched):
10203         * src/xwidget.h (struct xwidget.kill_without_query)
10204         (struct xwidget_view.redisplayed, struct xwidget_view.hidden):
10205         Use bool for boolean.
10206         * src/xwidget.c (store_xwidget_event_string, Fxwidget_size_request):
10207         Simplify by using list functions.
10208         (WEBKIT_FN_INIT): Omit unnecessary test for nil.
10209         (Fxwidget_resize): Check type of integer args
10210         before doing any work.  Check that they are nonnegative.
10211         (Fxwidget_set_adjustment): Check type of integer arg.
10212         Avoid redundant call to gtk_scrolled_window_get_vadjustment.
10213         Simplify.  Use double, not float.
10214         (Fxwidget_info, Fxwidget_view_info): Simplify by using CALLN.
10215         (valid_xwidget_spec_p): Simplify.
10216         (xwidget_spec_value): Omit unused arg FOUND.  All callers changed.
10217         * src/xwidget.h: Include lisp.h first, so that includers do
10218         not need to worry about doing that before including this file.
10219         Make this .h file safe to include even on non-HAVE_XWIDGETS
10220         configurations, to simplify the includers.
10221         (x_draw_xwidget_glyph_string, syms_of_xwidget, valid_xwidget_spec_p)
10222         (xwidget_end_redisplay, lookup_xwidget)
10223         (xwidget_view_delete_all_in_window, kill_buffer_xwidgets):
10224         Now a no-op if !HAVE_XWIDGETS, to simplify callers.
10225         (struct glyph_matrix, struct glyph_string, struct xwidget)
10226         (struct xwidget_view, struct window):
10227         New forward or incomplete decls, so that includers need not
10228         assume the corresponding .h files are already included, or that
10229         HAVE_XWIDGETS is defined.
10230         (struct xwidget_type, xwidget_from_id): Remove; unused.
10232 2016-01-22  Michael Albinus  <michael.albinus@gmx.de>
10234         Backport kqueue integration from master
10236         * configure.ac (--with-file-notification): Add kqueue.
10237         (top): Remove special test for "${HAVE_NS}" and
10238         ${with_file_notification}, this is handled inside gfilenotify
10239         tests.  Add kqueue tests.  Use NOTIFY_CFLAGS and NOTIFY_LIBS
10240         instead of library specific variables.  Add error message for
10241         gfile on Nextstep.
10243         * doc/lispref/os.texi (File Notifications): Add kqueue as backend.
10244         Fix some glitches in the example.
10246         * etc/NEWS: Mention kqueue.
10248         * lisp/filenotify.el (file-notify--library)
10249         (file-notify-descriptors, file-notify-callback)
10250         (file-notify-add-watch, file-notify-rm-watch)
10251         (file-notify-valid-p): Add kqueue support.
10252         (file-notify--rm-descriptor): Remove WHAT arg.
10254         * src/Makefile.in: Use NOTIFY_CFLAGS and NOTIFY_LIBS.
10256         * src/emacs.c (main): Call globals_of_kqueue and syms_of_kqueue.
10258         * src/inotify.c (inotifyevent_to_event): Extract file name from
10259         watch_object if the event doesn't provide it.
10260         (Finotify_add_watch): Add file name to watch_object.
10262         * src/keyboard.c (make_lispy_event): Check also for HAVE_KQUEUE.
10264         * src/kqueue.c: New file.
10266         * src/lisp.h: Declare extern globals_of_kqueue and syms_of_kqueue.
10268         * test/automated/file-notify-tests.el
10269         (file-notify--test-expected-events): Remove.
10270         (file-notify--test-cleanup): Do not set that variable.
10271         (file-notify--test-timeout) Use different timeouts for
10272         different libraries.
10273         (file-notify--test-library): New defun.
10274         (file-notify--test-event-test): Make stronger checks.
10275         (file-notify--test-with-events): EVENTS can also be a list of
10276         lists.  Flush outstanding events before running the body.
10277         Make timeout heuristically depend on the number of events.
10278         (file-notify-test01-add-watch, file-notify-test02-events)
10279         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
10280         Rewrite in order to call file monitors but directory monitors.
10281         (file-notify-test02-events, file-notify-test04-file-validity): Do
10282         not skip cygwin tests.  Add additional test for file creation.
10283         Adapt expected result for different backends.
10284         (file-notify-test03-autorevert): Some of the tests don't work for
10285         w32notify.
10286         (file-notify-test06-many-events): New test.
10288 2016-01-22  John Wiegley  <johnw@newartisans.com>
10290         Further corrections to the pcase docstring
10292 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
10294         * doc/emacs/anti.texi (Antinews): Rewrite for Emacs 25.
10296 2016-01-22  Stephen Leake  <stephen_leake@stephe-leake.org>
10298         In xref-collect-references, force backends to respect the 'dir' arg
10300         * lisp/progmodes/xref.el (xref-collect-references): Force symref backends
10301         to use `default-directory'.
10303 2016-01-22  John Wiegley  <johnw@newartisans.com>
10305         Minor correction to pcase docstring
10307 2016-01-22  John Wiegley  <johnw@newartisans.com>
10309         Write a new docstring for the pcase macro
10311         * lisp/emacs-lisp/pcase.el (pcase): Write a new docstring.
10313 2016-01-21  Stephen Berman  <stephen.berman@gmx.net>
10315         Avoid byte-compiler warning in todo-mode (bug#21953)
10317         * lisp/calendar/todo-mode.el (todo-convert-legacy-files): Add limit argument
10318         to looking-back to comply with advertised-calling-convention.
10320 2016-01-21  Stephen Berman  <stephen.berman@gmx.net>
10322         Fix desktop support in todo-mode and doc-view (bug#22377)
10324         * lisp/calendar/todo-mode.el (todo-restore-desktop-buffer):
10325         * lisp/doc-view.el (doc-view-restore-desktop-buffer): Return current buffer.
10327         * lisp/calendar/todo-mode.el (todo-modes-set-2):
10328         * lisp/doc-view.el (doc-view-mode): Set desktop-save-buffer unconditionally.
10330 2016-01-21  Paul Eggert  <eggert@cs.ucla.edu>
10332         No need to configure gobject-introspection
10334         It wasn’t needed for the recently-installed xwidget_mvp code; see:
10335         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01154.html
10336         * configure.ac (DOES_XWIDGETS_USE_GIR, GIR_REQUIRED, GIR_MODULES):
10337         (HAVE_GIR):
10338         * src/Makefile.in (GIR_LIBS, GIR_CFLAGS):
10339         Remove.  All uses removed.
10340         * configure.ac (emacs_config_features): Don’t worry about GIR.
10342 2016-01-20  Paul Eggert  <eggert@cs.ucla.edu>
10344         Don’t export C symbols not used elsewhere
10346         These were recently added, mostly as part of xwidget code.
10347         * src/emacsgtkfixed.c (emacs_fixed_get_type): Now static.
10348         (EMACS_FIXED, EMACS_FIXED_GET_CLASS):
10349         Now static functions here, not macros in emacsgtkfixed.h.
10350         * src/emacsgtkfixed.h (EMACS_TYPE_FIXED):
10351         Remove.  All uses replaced by definiens.
10352         (EMACS_FIXED, EMACS_FIXED_GET_CLASS):
10353         Remove; these are now static functions in emacsgtkfixed.c.
10354         (EMACS_FIXED_CLASS, EMACS_IS_FIXED, EMACS_IS_FIXED_CLASS):
10355         Remove; unused.
10356         (emacs_fixed_get_type): Remove decl; no longer extern.
10357         * src/xwidget.c (offscreen_damage_event)
10358         (webkit_mime_type_policy_typedecision_requested_cb)
10359         (webkit_new_window_policy_decision_requested_cb)
10360         (webkit_navigation_policy_decision_requested_cb)
10361         (xwidget_spec_value, xwidget_view_lookup)
10362         (xwidget_start_redisplay, xwidget_touch):
10363         Now static.
10364         * src/xwidget.h (xwidget_start_redisplay, xwidget_touch):
10365         Remove decls.
10367 2016-01-20  Dmitry Gutov  <dgutov@yandex.ru>
10369         Support squiggly heredocs in ruby-mode
10371         * lisp/progmodes/ruby-mode.el (ruby-here-doc-beg-re):
10372         Support squiggly heredocs added in Ruby 2.3.
10374         * test/indent/ruby.rb: Add squiggly example.
10376 2016-01-20  Glenn Morris  <rgm@gnu.org>
10378         * configure.ac (emacs_config_features): Remove WEBKIT.
10380 2016-01-20  Paul Eggert  <eggert@cs.ucla.edu>
10382         Port to platforms with gtk3 but not webkitgtk3
10384         I ran into this problem on my Fedora 23 installation;
10385         Emacs configured but did not build when --with-xwidgets was specified.
10386         * configure.ac (HAVE_WEBKIT, HAVE_GIR): Omit unnecessary initializations.
10387         (DOES_XWIDGETS_USE_GIR): New var.
10388         If --with-xwidgets is specified, report an error if not
10389         doable, to be consistent with the other --with options.
10390         Require webkitgtk3 to use Xwidgets, as the Xwidgets code does
10391         not work at all without webkitgtk3.  Simplify use of
10392         EMACS_CHECK_MODULES.  Output message about gobject
10393         introspection only if xwidgets are used.
10394         * etc/NEWS: Users need webkitgtk3, not merely webkit.
10395         * src/xwidget.c (syms_of_xwidget): Don’t worry about HAVE_WEBKIT_OSR,
10396         since this file is no longer compiled if webkitgtk3 is not available.
10398 2016-01-20  Eli Zaretskii  <eliz@gnu.org>
10400         Fix doc string of 'isearch-search-fun-function'
10402         * lisp/isearch.el (isearch-search-fun-function)
10403         (isearch-search-string): Doc fixes.  (Bug#22411)
10405 2016-01-20  Stefan Monnier  <monnier@iro.umontreal.ca>
10407         * lisp/xwidget.el: Nitpicks
10409         * lisp/xwidget.el (xwidget-log, xwidget-webkit-callback):
10410         Use with-current-buffer rather than save-excursion + set-buffer.
10412 2016-01-20  Glenn Morris  <rgm@gnu.org>
10414         Don't hard-code 1 as point-min.
10416         * lisp/image-mode.el (image-display-size):
10417         * lisp/xwidget.el (xwidget-webkit-last-session)
10418         (xwidget-webkit-current-session): Don't hard-code 1 as point-min.
10420 2016-01-20  Glenn Morris  <rgm@gnu.org>
10422         * lisp/xwidget.el: Add declarations to silence non-xwidget compilation.
10424 2016-01-20  Glenn Morris  <rgm@gnu.org>
10426         Trivial doc copyedits.
10428         * src/xwidget.c (Fmake_xwidget, Fget_buffer_xwidgets)
10429         (Fxwidget_webkit_get_title, Fxwidget_resize)
10430         (Fxwidget_set_adjustment, Fxwidgetp, Fxwidget_view_p)
10431         (Fxwidget_info, Fxwidget_view_lookup)
10432         (Fset_xwidget_query_on_exit_flag): Trivial doc copyedits.
10434 2016-01-20  Glenn Morris  <rgm@gnu.org>
10436         Avoid advising image-display-size for xwidgets.
10438         * lisp/xwidget.el (xwidget-image-display-size): Remove.
10439         (image-display-size): Remove advice.
10440         * lisp/image-mode.el (xwidget-info, xwidget-at): Declare.
10441         (image-display-size): Incorporate xwidget code directly.
10443 2016-01-20  Glenn Morris  <rgm@gnu.org>
10445         Avoid breaking non-xwidget Emacs that happen to load xwidget.el.
10447         * lisp/xwidget.el (window-configuration-change-hook)
10448         (kill-buffer-query-functions): Only modify these hooks if
10449         compiled with xwidget support.
10451 2016-01-20  Glenn Morris  <rgm@gnu.org>
10453         * lisp/xwidget.el (xwidget-webkit-scroll-behaviour): Fix custom spec.
10455 2016-01-19  Glenn Morris  <rgm@gnu.org>
10457         * configure.ac (WEBKIT, GIR, CAIRO): Use EMACS_CHECK_MODULES, not PKG_.
10459         * configure.ac (emacs_config_features): Add XWIDGETS, WEBKIT, GIR.
10461         * configure.ac (HAVE_WEBKIT_OSR): Remove broken, duplicated gtk3 test.
10463 2016-01-19  Katsumi Yamaoka  <yamaoka@jpl.org>
10465         * lisp/gnus/nnir.el (nnir-request-update-mark):
10466         Default to the original mark.
10467         cf. <http://thread.gmane.org/gmane.emacs.gnus.general/86583>
10468         and <http://thread.gmane.org/gmane.emacs.gnus.general/86640>
10470 2016-01-19  Glenn Morris  <rgm@gnu.org>
10472         * lisp/xwidget.el (report-xwidget-bug): Remove.
10474         (top-level): No longer require reporter.
10476 2016-01-19  Joakim Verona  <joakim@verona.se>
10477             Grégoire Jadi  <daimrod@gmail.com>
10479         Support for the new Xwidget feature.
10481         * configure.ac:
10482         (HAVE_XWIDGETS, WIDGET_OBJ, EMACS_CONFIG_FEATURES):
10483         * src/xterm.c (x_draw_glyph_string, x_draw_bar_cursor):
10484         * src/xdisp.c:
10485         (handle_display_spec, handle_single_display_spec, push_it)
10486         (pop_it, set_iterator_to_next, dump_glyph)
10487         (calc_pixel_width_or_height, fill_xwidget_glyph_string)
10488         (BUILD_XWIDGET_GLYPH_STRING, BUILD_GLYPH_STRINGS)
10489         (produce_xwidget_glyph, x_produce_glyphs)
10490         (get_window_cursor_type):
10491         * src/window.c (Fdelete_window_internal):
10492         * src/termhooks.h (e):
10493         * src/print.c (print_object):
10494         * src/lisp.h (ptrdiff_t):
10495         * src/keyboard.c (kbd_buffer_get_event, make_lispy_event)
10496         (syms_of_keyboard):
10497         * src/emacs.c (main):
10498         * src/dispnew.c (update_window, scrolling_window):
10499         * src/dispextern.h (g, i):
10500         * Makefile.in (XWIDGETS_OBJ, WEBKIT_CFLAGS, WEBKIT_LIBS)
10501         (GIR_LIBS, ALL_CFLAGS, base_obj, LIBES):
10502         * src/keyboard.c (kbd_buffer_get_event):
10503         * src/emacsgtkfixed.c (emacs_fixed_gtk_widget_size_allocate)
10504         (emacs_fixed_class_init): Add case for an xwidget view.
10506         * src/xwidget.c, src/xwidget.h, lisp/xwidget.el: New files for xwidgets
10509         Various improvements to the Xwidget feature.
10510         * src/xwidget.c:
10511         * src/emacsgtkfixed.c:
10512         * lisp/xwidget.el:
10514 2016-01-19  Eli Zaretskii  <eliz@gnu.org>
10516         Improve documentation of 'alist-get'
10518         * doc/lispref/variables.texi (Setting Generalized Variables): Add
10519         'alist-get' to the list of functions that can appear in PLACE
10520         argument of 'setf'.
10522 2016-01-19  Eli Zaretskii  <eliz@gnu.org>
10524         Minor copyedits of doc/emacs/maintaining.texi
10526         * doc/emacs/maintaining.texi (List Identifiers): More accurate
10527         description of "C-M-i" wrt tags tables.
10528         (Tags Tables): Move the definition of "tag" to a footnote.
10530 2016-01-19  Eli Zaretskii  <eliz@gnu.org>
10532         Unbreak the Cygwin-w32 build
10534         * src/w32fns.c (globals_of_w32fns): Move the initialization of
10535         resetstkoflw into a part that isn't compiled on Cygwin.
10536         (Bug#22403)
10538 2016-01-19  Lars Magne Ingebrigtsen  <larsi@gnus.org>
10540         * shr.el (shr-table-body): Allow tables to have text children.
10542 2016-01-19  Phillip Lord  <phillip.lord@russet.org.uk>
10544         Cope with multiple overlapping faces.
10546         * lisp/htmlfontify.el (hfy-face-to-style-i): Treat inheritance right to
10547           left.
10548           (hfy-face-resolve-face): Handle font specification as well as font
10549           name. Documentation update. (Bug#21990)
10551 2016-01-19  Paul Eggert  <eggert@cs.ucla.edu>
10553         Fix spurious escapes in describe-input-method
10555         Problem reported by Vincent Belaïche (Bug#22309).
10556         * lisp/international/mule-cmds.el (describe-language-environment):
10557         * lisp/international/quail.el (quail-help):
10558         Apply substitute-command-keys to doc strings before displaying them.
10560 2016-01-19  Paul Eggert  <eggert@cs.ucla.edu>
10562         Minor improvements to (random t) documentation
10564         * doc/lispref/numbers.texi (Random Numbers):
10565         * src/fns.c (Frandom):
10566         Omit unnecessary details about randomness fallback.
10567         Say that it is a fallback.
10569 2016-01-19  Dmitry Gutov  <dgutov@yandex.ru>
10571         Rename methods in Ruby etags example file
10573         * test/etags/ruby-src/test.rb: Rename the example methods to
10574         correspond to the common terminology used in Ruby.
10575         * test/etags/CTAGS.good:
10576         * test/etags/ETAGS.good_1:
10577         * test/etags/ETAGS.good_2:
10578         * test/etags/ETAGS.good_3:
10579         * test/etags/ETAGS.good_4:
10580         * test/etags/ETAGS.good_5:
10581         * test/etags/ETAGS.good_6: Adjust accordingly.
10583 2016-01-19  Dmitry Gutov  <dgutov@yandex.ru>
10585         Propertize backtick in 'def `(abc)' as symbol constituent
10587         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize):
10588         Propertize backtick in 'def `(abc)' as symbol constituent.
10589         (ruby-syntax-propertize-function):
10590         Rename to ruby-syntax-propertize.
10592 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
10594         Fix scrolling under scroll-preserve-screen-position on TTY
10596         * src/window.c (window_scroll_line_based): When setting point to
10597         preserve screen coordinates, don't let cursor enter either of the
10598         two scroll margins.  (Bug#22395)
10600 2016-01-18  Lars Magne Ingebrigtsen  <larsi@gnus.org>
10602         Fix shr table rendering of nested tables
10604         * shr.el (shr-table-body): Don't include all tbodies in nested
10605         tables in the levels above.
10607 2016-01-18  Dmitry Gutov  <dgutov@yandex.ru>
10609         * lisp/progmodes/project.el (project--read-regexp): Quote the identifier.
10611 2016-01-18  Dmitry Gutov  <dgutov@yandex.ru>
10613         Add xref-based replacements for Dired search commands
10615         * lisp/dired-aux.el (dired-do-find-regexp)
10616         (dired-do-find-regexp-and-replace): New commands.
10617         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00864.html
10619         * lisp/dired.el (dired-mode-map): Change bindings for `A' and
10620         `Q' to the new commands.
10622         * lisp/progmodes/xref.el (xref-query-replace)
10623         (xref-collect-matches): Add progress reporters.
10624         (xref--find-ignores-arguments): Return nil for zero ignores.
10625         (xref--show-xrefs): Add an optional argument.
10626         (xref-collect-matches): Drop the assert.  'find' accepts a
10627         regular file in place of directory argument, too.
10629 2016-01-18  Alan Mackenzie  <acm@muc.de>
10631         * doc/lispref/frames.texi (Position Parameters): Say they don't exist on TTYs.
10633 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
10635         Improve user documentation of Xref
10637         * doc/emacs/maintaining.texi (Xref, Find Identifiers)
10638         (Looking Up Identifiers, Identifier Search, List Identifiers):
10639         Adjudicate comments by Dmitry Gutov <dgutov@yandex.ru>.  See
10640         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00650.html
10641         for the details.
10643 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
10645         Fix scrolling under scroll-preserve-screen-position and margins
10647         * src/window.c (window_scroll_pixel_based): When setting point to
10648         preserve screen coordinates, don't let cursor enter either of the
10649         two scroll margins.  Fix incorrect usage of
10650         WINDOW_WANTS_HEADER_LINE_P and use WINDOW_HEADER_LINE_HEIGHT
10651         instead of CURRENT_HEADER_LINE_HEIGHT.  (Bug#22395)
10653 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
10655         Unbreak the MS-Windows build
10657         * src/sysdep.c (emacs_gnutls_global_init, gnutls_rnd): Disable for
10658         WINDOWSNT, to avoid link failure.  (Bug#22202)
10660 2016-01-18  Alan Mackenzie  <acm@muc.de>
10662         Desktop: protect users against inadvertant upgrading of desktop file.
10664         An upgraded (version 208) desktop file cannot be read in Emacs < 25.
10666         * etc/NEWS: Add an entry about upgrading a desktop file.
10668         * lisp/desktop.el (desktop-file-version): Amend doc string.
10669         (desktop-native-file-version, desktop-io-file-version): new variables.
10670         (desktop-clear): Set desktop-io-file-version to nil.
10671         (desktop-buffer-info): make the presence of the last item on the list
10672         conditional on (>= desktop-io-file-version 208).
10673         (desktop-save): Add extra parameter VERSION to take user's C-u or C-u C-u.
10674         Amend the doc string.  Add code to determine the output file version.
10675         (desktop-create-buffer): Set desktop-io-file-version to the input file's
10676         version.
10678 2016-01-18  Paul Eggert  <eggert@cs.ucla.edu>
10680         Initialize GnuTLS before calling gnutls_rnd
10682         * src/gnutls.c (emacs_gnutls_global_init): Now extern.
10683         Don’t set gnutls_global_initialized if gnutls_global_init fails.
10684         * src/sysdep.c: Include "gnutls.h", and <gnutls/crypto.h>
10685         if 2.12 or later, which has gnutls_rnd.
10686         (emacs_gnutls_global_init, gnutls_rnd): New fallback
10687         placeholder macros if before 2.12.
10688         (init_random): Initialize gnutls globals before trying to
10689         use gnutls_rnd.
10691 2016-01-18  Andreas Schwab  <schwab@linux-m68k.org>
10693         Don't use GnuTLS before it is initialized
10695                 * src/sysdep.c (init_random): Don't use gnutls_rnd.
10697 2016-01-17  Paul Eggert  <eggert@cs.ucla.edu>
10699         Port cleanup attribute to OpenBSD
10701         The OpenBSD C compiler issues false alarms about strcpy, strcat, and
10702         sprintf, and this messes up 'configure' when it tests for the cleanup
10703         attribute.  Work around the problem by using __has_attribute directly.
10704         Problem reported by Joakim Jalap (Bug#22385).
10705         * configure.ac: Don’t use AX_GCC_VAR_ATTRIBUTE.
10706         * m4/ax_gcc_var_attribute.m4: Remove.
10707         * src/conf_post.h (__has_attribute): Provide a substitute, for
10708         non-GCC or older GCC compilers.  All uses changed to assume
10709         the substitute.  Check for the cleanup attribute.
10710         * src/emacs-module.c (module_has_cleanup): Just use __has_attribute.
10712 2016-01-17  Paul Eggert  <eggert@cs.ucla.edu>
10714         Prefer GnuTLS when acquiring random seed
10716         This attempts to improve on the fix for Bug#22202.
10717         * configure.ac (HAVE_DEV_URANDOM): Remove.
10718         Check /dev/urandom existence at run time, not at build time,
10719         since the device could exist in the former but not the latter.
10720         * src/sysdep.c [HAVE_GNUTLS]: Include gnutls/gnutls.h.
10721         (gnutls_rnd) [GNUTLS_VERSION_NUMBER < 0x020c00]: New fallback macro.
10722         (random_seed): New typedef.
10723         (set_random_seed): New static function.
10724         (seed_random): Use them.
10725         (init_random): Use random_seed instead of uintmax_t, so as to
10726         not consume more entropy than needed.  Prefer gnutls_rnd if it
10727         works; this avoids a redundant open of /dev/urandom on
10728         GNU/Linux with modern GnuTLS.
10730 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10732         Improve documentation of dynamic modules
10734         * doc/lispref/loading.texi (How Programs Do Loading): Update the
10735         description of searching for files in 'load' when Emacs was built
10736         with support for dynamic modules.
10738 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10740         * INSTALL: Document --with-modules.
10742 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10744         Document 'function-put'
10746         * doc/lispref/symbols.texi (Symbol Plists): Document
10747         'function-put'.  Update documentation of 'function-get'.
10749 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10751         Document 'funcall-interactively'
10753         * doc/lispref/commands.texi (Interactive Call): Document
10754         'funcall-interactively'.
10755         * doc/lispref/functions.texi (Calling Functions): Mention
10756         'funcall-interactively' and provide a cross-reference.
10758 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10760         * doc/lispref/lists.texi (Association Lists): Document 'alist-get'.
10762         * doc/lispref/strings.texi (Text Comparison): Document 'string-greaterp'.
10764 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10766         Document renaming of selection-related functions
10768         * doc/lispref/frames.texi (Window System Selections): Rename "x-*"
10769         functions into the corresponding "gui-*" functions.  Make the
10770         description slightly less X-centric.
10772 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10774         * doc/lispref/macros.texi (Expansion): Document 'macroexpand-1'.
10776 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10778         Document 'define-inline'
10780         * doc/lispref/functions.texi (Defining Functions): Document
10781         'define-inline' and related macros.
10783         * lisp/emacs-lisp/inline.el (inline-letevals): Doc fix.
10785 2016-01-16  Artur Malabarba  <bruce.connor.am@gmail.com>
10787         * lisp/files.el (dir-locals--all-files): Respect absolute file-names
10789         * lisp/help-fns.el (describe-variable): Fix a left-over parenthesis
10791 2016-01-16  Artur Malabarba  <bruce.connor.am@gmail.com>
10793         * lisp/dired-x.el (dired-omit-here-always): Use add-dir-local-variable
10795         instead of manually writing a dir-locals file.
10797 2016-01-16  Artur Malabarba  <bruce.connor.am@gmail.com>
10799         * lisp/files.el (dir-locals--all-files): Use completion instead of wildcards
10801         (dir-locals-file)
10802         * lisp/files-x.el (modify-dir-local-variable)
10803         * lisp/dos-fns.el (dosified-file-name)
10804         * lisp/help-fns.el (describe-variable): Change accordingly.
10806 2016-01-16  Jussi Lahdenniemi  <jussi@aprikoodi.fi>  (tiny change)
10808         Fix incompatbilities with MS-Windows 2000 and older
10810         * src/w32.c <multiByteToWideCharFlags>: New global variable.
10811         (filename_to_utf16, filename_from_ansi, check_windows_init_file):
10812         Use it instead of the literal MB_ERR_INVALID_CHARS.
10813         (maybe_load_unicows_dll): Initialize multiByteToWideCharFlags as
10814         appropriate for the underlying OS version.  For details, see
10815         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00835.html.
10816         * src/w32.h: Declare multiByteToWideCharFlags.
10817         * src/w32fns.c (Fx_file_dialog, Fw32_shell_execute)
10818         (add_tray_notification): Use multiByteToWideCharFlags instead of
10819         the literal MB_ERR_INVALID_CHARS.
10820         (_resetstkoflw_proc): New typedef.
10821         (w32_reset_stack_overflow_guard): Call _resetstkoflw via a
10822         pointer, as this function is absent in msvcrt.dll shipped with W2K
10823         and older systems.
10825 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10827         Mention in PROBLEMS an issue with MS-Windows NT4
10829         * etc/PROBLEMS (MS-Windows): Mention the problem with Shell32.dll
10830         on Windows NT4.  For the details, see
10831         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00835.html.
10833 2016-01-16  Jussi Lahdenniemi  <jussi@aprikoodi.fi>  (tiny change)
10835         Ensure 8-byte aligned memory allocation on MS-Windows 9X
10837         * src/w32heap.c (init_heap): Redirect malloc, realloc, and free to
10838         special functions on Windows 9X.  Refuse to dump Emacs on Windows 9X.
10839         (malloc_after_dump_9x, realloc_after_dump_9x)
10840         (free_after_dump_9x): New functions.  (Bug#22379)  See also
10841         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00852.html
10842         for more details about the original problem.
10844         * nt/inc/ms-w32.h (malloc_after_dump_9x, realloc_after_dump_9x)
10845         (free_after_dump_9x): Add prototypes.
10847 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10849         Fix tests for active region in hideif.el
10851         * lisp/progmodes/hideif.el (hif-evaluate-macro, hide-ifdef-block): Use
10852         'use-region-p' to test whether to operate on region, instead of
10853         testing 'mark-active'.
10855 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10857         Fix interactive specs in some hideif.el commands
10859         * lisp/progmodes/hideif.el (hif-evaluate-macro)
10860         (hide-ifdef-undef, show-ifdef-block): Don't use '(interactive "r")'
10861         in commands that should only act on the region if it's active.
10863 2016-01-15  Phillip Lord  <phillip.lord@russet.org.uk>
10865         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
10867 2016-01-15  Phillip Lord  <phillip.lord@russet.org.uk>
10869         Enable test selector from command line
10871         * test/automated/Makefile.in: Change variable manipulation to avoid
10872           over-writing selector.
10874 2016-01-15  Alan Mackenzie  <acm@muc.de>
10876         Don't confuse "::" with ":" when trying to parse member initializers.
10878         * lisp/progmodes/cc-engine.el (c-back-over-member-initializers): Check
10879         more robustly for ":" token when searching backwards for it.
10881         * lisp/progmodes/cc-langs.el (c-:$-multichar-token-regexp): New language
10882         variable.
10884 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
10886         Ensure positive number of glyphs for margins of positive width
10888         * src/dispnew.c (margin_glyphs_to_reserve): Always return a
10889         positive value when a non-zero width of the marginal area was
10890         requested.  (Bug#22356)
10892 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
10894         Fix crashes when mini-window has non-zero margins
10896         * src/window.c (resize_frame_windows): Use 'new_size' to set
10897         minibuffer window's 'total_cols' value, as 'size' might be in
10898         pixels.  (Bug#22356)
10900 2016-01-15  Alan Mackenzie  <acm@muc.de>
10902         In comment-dwim with style `extra-line', respect indent-tabs-mode.
10904         This fixes bug #22369.
10906         * lisp/newcomment.el (comment-make-bol-ws): New function.
10907         (comment-make-extra-lines): Use new function instead of a crude `make-string'.
10909 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
10911         Make 'random' seeds cryptographically secure if possible
10913         * configure.ac: Check for "/dev/urandom".
10915         * src/sysdep.c (init_random) [HAVE_DEV_URANDOM]: Read the stream
10916         for the seed from "/dev/urandom".
10917         [WINDOWSNT]: Obtain the stream for the seed from w32 APIs.
10918         * src/fns.c (Frandom): Update the doc string to indicate that
10919         system entropy is used when available.
10920         * src/w32.c: Include wincrypt.h.
10921         (w32_init_crypt_random, w32_init_random): New functions, use the
10922         CryptGenRandom API.
10923         (globals_of_w32): Initialize w32_crypto_hprov handle to zero.
10924         * src/w32.h (w32_init_random): Add prototype.
10926         * doc/lispref/numbers.texi (Random Numbers): Document more details
10927         about 't' as the argument to 'random'.
10929         * etc/NEWS: Mention that '(random t)' now uses a cryptographically
10930         strong seed if possible.
10932         (Bug#22202)
10934 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
10936         Unhide the --no-line-directive option to 'etags'
10938         * lib-src/etags.c (print_help): Un-undocument the --no-line-directive
10939         option.  (Bug#22306)
10941         * doc/man/etags.1: Document the --no-line-directive option.
10943 2016-01-15  Alan J Third  <alan@idiocy.org>  (tiny change)
10945         Fix picture-mode wrt double-width characters
10947         * lisp/textmodes/picture.el (picture-insert): Check the width of
10948         the character being replaced, not just that of the replacement.
10949         (Bug#1808)
10951 2016-01-15  Eric Abrahamsen  <eric@ericabrahamsen.net>
10953         Honor docstring of gnus-group-get-new-news
10955         * lisp/gnus/gnus-start.el (gnus-get-unread-articles): If the prefix arg is t,
10956         but non-numeric, unconditionally consider all groups to need updating.
10958 2016-01-14  Simen Heggestøyl  <simenheg@gmail.com>
10960         Disallow parenthesis in non-pseudo CSS selectors
10962         * lisp/textmodes/css-mode.el (css--font-lock-keywords): Disallow
10963         parenthesis in selectors except for in the function notation that
10964         might appear right after a pseudo-class.
10965         * test/indent/scss-mode.scss: Add a test for it.
10967 2016-01-14  Katsumi Yamaoka  <yamaoka@jpl.org>
10969         * lisp/gnus/nntp.el (nntp-request-newgroups): Simplify
10971 2016-01-14  Michael Albinus  <michael.albinus@gmx.de>
10973         check-maybe shall run only default tests
10975         * test/automated/Makefile.in (check, check-expensive): Depend on
10976         mostlyclean.
10977         (check-maybe): Re-run only default tests.
10978         (check-doit): Use code of check-maybe.
10979         (mostlyclean): Move *.log files away.
10981 2016-01-14  Mark Oteiza  <mvoteiza@udel.edu>
10983         * lisp/thingatpt.el (thing-at-point-uri-schemes): Add "magnet:"
10985 2016-01-14  Dmitry Gutov  <dgutov@yandex.ru>
10987         Un-obsolete tags-loop-continue
10989         * lisp/progmodes/etags.el (tags-loop-continue): Un-obsolete.
10990         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00682.html
10992 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
10994         Document obsoletion of 'intangible' and 'point-entered/left'
10996         * doc/lispref/text.texi (Special Properties): Document the new
10997         properties 'cursor-intangible' and 'cursor-sensor-functions'.
10998         Document the obsolete status of 'intangible', 'pointer-left',
10999         and 'point-entered' properties, and of 'inhibit-point-motion-hooks'.
11000         * doc/lispref/display.texi (Overlay Properties): Document that
11001         'intangible' overlay property is obsolete.
11003         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor-mode): Doc fix.
11005 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
11007         Updater documentation of 'looking-back'
11009         * doc/lispref/searching.texi (Regexp Search): Update documentation
11010         of 'looking-back'.  Fix markup.
11012 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
11014         Document 'pre-redisplay-functions'
11016         * doc/lispref/hooks.texi (Standard Hooks):
11017         * doc/lispref/display.texi (Forcing Redisplay): Document
11018         'pre-redisplay-functions'.
11020 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
11022         Document the new deafault value of 'load-read-function'
11024         * doc/lispref/loading.texi (How Programs Do Loading): Document the
11025         change in the default value of 'load-read-function'.
11027 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
11029         Document 'bufferpos-to-filepos' and 'filepos-to-bufferpos'
11031         * doc/lispref/nonascii.texi (Text Representations): Document
11032         'bufferpos-to-filepos' and 'filepos-to-bufferpos'.
11034 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
11036         Document the new prefix-command hooks
11038         * doc/lispref/hooks.texi (Standard Hooks): Document
11039         `prefix-command-echo-keystrokes-functions' and
11040         `prefix-command-preserve-state-hook'.
11042 2016-01-13  Paul Eggert  <eggert@cs.ucla.edu>
11044         Fix one more misuse of time-stamp-time-zone
11046         * test/etags/html-src/softwarelibero.html: Use "UTC0" rather
11047         than the unportable "GMT" for time zone.
11049 2016-01-13  Paul Eggert  <eggert@cs.ucla.edu>
11051         Fix NNTP NEWGROUPS off-by-a-few-hours bug
11053         * lisp/gnus/nntp.el (nntp-request-newgroups): Format string
11054         in Universal Time, since we’re telling the server “GMT”.
11056 2016-01-13  Paul Eggert  <eggert@cs.ucla.edu>
11058         Update publicsuffix.txt from upstream
11060         * etc/publicsuffix.txt: Update from
11061         https://publicsuffix.org/list/effective_tld_names.dat
11062         dated 2016-01-12 11:52:01 UTC.
11064 2016-01-13  Glenn Morris  <rgm@gnu.org>
11066         Fix some declarations.
11068         * lisp/descr-text.el (internal-char-font):
11069         * lisp/cedet/mode-local.el (xref-item-location):
11070         * lisp/gnus/mml-smime.el (epg-key-sub-key-list)
11071         (epg-sub-key-capability, epg-sub-key-validity):
11072         * lisp/international/mule-util.el (internal-char-font):
11073         Fix declarations.
11075 2016-01-13  Glenn Morris  <rgm@gnu.org>
11077         Fix some custom types.
11079         * lisp/gnus/gnus-fun.el (gnus-x-face-omit-files, gnus-face-omit-files):
11080         * lisp/gnus/gnus.el (gnus-valid-select-methods):
11081         * lisp/mail/rmail.el (rmail-get-coding-function):
11082         * lisp/net/newst-treeview.el (newsticker-groups-filename):
11083         * lisp/progmodes/hideif.el (hide-ifdef-exclude-define-regexp):
11084         * lisp/textmodes/tildify.el (tildify-space-predicates):
11085         * lisp/url/url-tramp.el (url-tramp-protocols):
11086         Fix custom types.
11088 2016-01-13  Glenn Morris  <rgm@gnu.org>
11090         Add some missing version tags.
11092         * lisp/electric.el (electric-quote-comment)
11093         (electric-quote-string, electric-quote-paragraph):
11094         * lisp/epg-config.el (epg-gpgconf-program):
11095         * lisp/rect.el (rectangle-preview):
11096         * lisp/emacs-lisp/check-declare.el (check-declare-ext-errors):
11097         * lisp/emacs-lisp/package.el (package-selected-packages)
11098         (package-hidden-regexps):
11099         * lisp/erc/erc.el (erc-network-hide-list, erc-channel-hide-list):
11100         * lisp/eshell/em-term.el (eshell-destroy-buffer-when-process-dies):
11101         * lisp/gnus/mml-sec.el (mml1991-signers, mml2015-signers)
11102         (mml-smime-signers, mml1991-encrypt-to-self, mml2015-encrypt-to-self)
11103         (mml-smime-encrypt-to-self, mml2015-sign-with-sender)
11104         (mml-smime-sign-with-sender, mml2015-always-trust)
11105         (mml-secure-fail-when-key-problem, mml-secure-key-preferences):
11106         * lisp/net/browse-url.el (browse-url-conkeror-new-window-is-buffer)
11107         (browse-url-conkeror-arguments):
11108         * lisp/net/newst-reader.el (newsticker-download-logos):
11109         * lisp/progmodes/gud.el (gud-guiler-command-name):
11110         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
11111         * lisp/progmodes/project.el (project-vc):
11112         * lisp/progmodes/python.el (python-indent-guess-indent-offset-verbose)
11113         (python-shell-remote-exec-path, python-shell-first-prompt-hook)
11114         (python-shell-completion-native-disabled-interpreters)
11115         (python-shell-completion-native-enable)
11116         (python-shell-completion-native-output-timeout)
11117         (python-shell-completion-native-try-output-timeout):
11118         * lisp/progmodes/xref.el (xref):
11119         * lisp/term/screen.el (xterm-screen-extra-capabilities):
11120         * lisp/term/xterm.el (xterm-max-cut-length):
11121         Add missing version tags.
11123 2016-01-13  Glenn Morris  <rgm@gnu.org>
11125         * test/automated/core-elisp-tests.el
11126         (core-elisp-tests-1-defvar-in-let): Add a custom type.
11128 2016-01-13  Glenn Morris  <rgm@gnu.org>
11130         * src/buffer.c (syms_of_buffer) <major-mode>: Doc fix.
11132         Remove comments that do not apply since 2005-08-09.  (Bug#22349)
11134 2016-01-12  Paul Eggert  <eggert@cs.ucla.edu>
11136         Merge from gnulib
11138         This mostly just changes "UTC" to "UTC0" for POSIX conformance.
11139         It also updates to the latest version of texinfo.tex.
11140         * build-aux/gitlog-to-changelog, build-aux/move-if-change:
11141         * build-aux/update-copyright, doc/misc/texinfo.tex:
11142         Update from gnulib.
11144 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
11146         Update documentation of 'process-running-child-p'
11148         * doc/lispref/processes.texi (Input to Processes): Document the
11149         changes in return value of 'process-running-child-p'.
11151 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
11153         Update documentation of 'deactivate-mark'.
11155         * doc/lispref/markers.texi (The Mark): Document that
11156         'deactivate-mark' is now buffer-local when set.
11158 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
11160         Update documentation of 'completion-table-dynamic'
11162         * doc/lispref/minibuf.texi (Programmed Completion): Document the
11163         new optional argument to 'completion-table-dynamic'.
11165 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
11167         Document changes in 'read-buffer' and 'read-buffer-function'
11169         * doc/lispref/minibuf.texi (High-Level Completion): Document the
11170         4th argument to 'read-buffer' and 'read-buffer-function'.
11172 2016-01-12  Paul Eggert  <eggert@cs.ucla.edu>
11174         Fix time-stamp-time-zone bugs introduced in July
11176         This fixes a bug introduced when the July changes to
11177         format-time-string installed, as the changes were not
11178         correctly handled in this module (Bug#22302).
11179         Also, document time stamp time zones.
11180         * lisp/time-stamp.el (time-stamp-time-zone): Document values better.
11181         (time-stamp--format): New private function.
11182         (time-stamp-string, time-stamp-string-preprocess)
11183         (time-stamp-do-number): Use it.
11184         * doc/emacs/files.texi (Time Stamps): Mention time zones.
11185         * doc/misc/autotype.texi (Timestamps): Document time-stamp-time-zone.
11187 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
11189         Make piping to subprocesses more robust on MS-Windows
11191         * src/w32.c (sys_write): Don't write to a pipe more stuff than its
11192         buffer can hold.  Don't return -1 if something has been written to
11193         the pipe.  Zero out 'errno' before calling '_write', to avoid
11194         returning a stale value.  (Bug#22344)
11195         * src/w32proc.c (syms_of_ntproc) <w32-pipe-buffer-size>: New variable.
11196         * src/w32.c (pipe2): Use it to request a user-defined size for the
11197         pipe being created.
11199         * etc/NEWS: Mention 'w32-pipe-buffer-size'.
11201         * doc/emacs/msdos.texi (Windows Processes): Document
11202         'w32-pipe-buffer-size'.
11204 2016-01-11  Dmitry Gutov  <dgutov@yandex.ru>
11206         test/automated/vc-hg.el: Support out-of-tree build
11208         * test/automated/vc-hg.el
11209         (vc-hg-annotate-extract-revision-at-line-with-filename)
11210         (vc-hg-annotate-extract-revision-at-line-with-both):
11211         Don't refer to source-directory.
11212         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00755.html
11214 2016-01-11  Michael Albinus  <michael.albinus@gmx.de>
11216         Minor change in tramp-tests.el
11218         * test/automated/tramp-tests.el (tramp-test29-vc-registered):
11219         Use `dired-uncache' instead of a Tramp internal function.
11221 2016-01-11  Peter Feigl  <peter.feigl@nexoid.at>
11223         * etc/HELLO: Add Armenian and Mongolian greetings.
11225         (Bug#22346)
11227 2016-01-11  Alan Mackenzie  <acm@muc.de>
11229         Java Mode: Fontify identifiers in the presence of annotations.
11231         * lisp/progmodes/cc-engine.el (c-forward-annotation): Tidy up the coding:
11232         Don't move point when the defun fails.
11233         (c-forward-decl-or-cast-1): Correct a usage of match data.
11235         * lisp/progmodes/cc-fonts.el (c-font-lock-maybe-decl-faces): Remove.
11236         (c-font-lock-declarations): Use the new c-maybe-decl-faces in place of the
11237         removed variable.
11239         * lisp/progmodes/cc-langs.el (c-maybe-decl-faces): New language variable.
11241 2016-01-11  Eli Zaretskii  <eliz@gnu.org>
11243         Avoid an infloop when we run out of memory
11245         * src/alloc.c (garbage_collect_1): Don't bother saving and
11246         restoring the echo-area message if we are GC'ing after running out
11247         of memory.  This avoids an infloop due to repeated attempts to
11248         allocate memory for the cons cell needed to save the message,
11249         which signals the memory-full error, which attempts to save the
11250         echo-area message, which signals memory-full again, etc.
11252 2016-01-11  Eli Zaretskii  <eliz@gnu.org>
11254         Avoid unnecessary failures of auto-saving after fatal error
11256         * src/w32.c (map_w32_filename): Avoid non-trivial system calls for
11257         the benefit of FAT volumes if we are called as part of shutting
11258         down due to a fatal error, which probably means we are trying to
11259         auto-save the session.
11260         * src/lread.c (check_obarray): Don't bother making the obarray
11261         valid if we are shutting down due to a fatal error.  This avoids
11262         interfering with auto-saving the crashed session.
11264 2016-01-11  Paul Eggert  <eggert@cs.ucla.edu>
11266         Simplify HAVE_MODULES use in mark_maybe_pointer
11268         * src/alloc.c (HAVE_MODULES): Now a constant 0 if not defined,
11269         so that later code can use 'if' rather than '#ifdef'.
11270         (mark_maybe_pointer): Simplify based on HAVE_MODULES now
11271         always working.
11273 2016-01-11  Paul Eggert  <eggert@cs.ucla.edu>
11275         Revert attempt to use 'noexcept' in typedef
11277         This use of 'noexcept' runs afoul of the C++11 standard.
11278         Problem reported by Philipp Stephani in:
11279         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00706.html
11280         * src/emacs-module.c (emacs_finalizer_function):
11281         Move this typedef here ...
11282         * src/emacs-module.h: ... from here, and use only the C
11283         version of the typedef.  The typedef is now private since it
11284         is never used in the .h file now and anyway it seemed to be
11285         causing more confusion than it cured.
11286         (make_user_ptr, get_user_finalizer, set_user_finalizer):
11287         Open-code the type instead.
11289 2016-01-10  Eli Zaretskii  <eliz@gnu.org>
11291         Update documentation of 'indirect-function'
11293         * doc/lispref/eval.texi (Function Indirection): Update the
11294         documentation of 'indirect-function'.
11296 2016-01-10  Eli Zaretskii  <eliz@gnu.org>
11298         Update documentation for obsoleting 'syntax-begin-function'
11300         * doc/lispref/syntax.texi (Position Parse): Undocument
11301         'syntax-begin-function' that is now obsolete.
11303 2016-01-10  Eli Zaretskii  <eliz@gnu.org>
11305         Document new features if Eshell
11307         * doc/misc/eshell.texi (Input/Output): Document the new
11308         '#<bufname>' syntax.
11309         (Input/Output): Document 'eshell-destroy-buffer-when-process-dies'.
11310         Disable "Key Index" generation, as there are no @kindex entries in
11311         this manual.
11313 2016-01-10  Michael Albinus  <michael.albinus@gmx.de>
11315         Handle too long commands in Tramp
11317         * lisp/net/tramp-sh.el (tramp-sh-handle-make-symbolic-link)
11318         (tramp-do-file-attributes-with-ls): Send sequence of commands, in
11319         order to not exceed shell command line limit.
11321         * test/automated/tramp-tests.el (tramp--test-darwin-p): Remove.
11322         (tramp--test-utf8): Include Arabic file name, again.
11324 2016-01-10  Paul Eggert  <eggert@cs.ucla.edu>
11326         * .gitattributes: *.cur and *.pif are binary files too.
11328 2016-01-10  Stefan Monnier  <monnier@iro.umontreal.ca>
11330         * src/alloc.c (mark_maybe_pointer): HAVE_MODULES may be undefined
11332 2016-01-10  Stefan Monnier  <monnier@iro.umontreal.ca>
11334         * lisp/progmodes/sh-script.el (sh-smie-sh-rules): Improve indentation inside $(...)
11336         * lisp/progmodes/sh-script.el (sh-smie-sh-rules): Improve indentation
11337         within $(...).
11338         * test/indent/shell.sh: Add corresponding test.
11340 2016-01-10  Stefan Monnier  <monnier@iro.umontreal.ca>
11342         * src/alloc.c (mark_maybe_pointer): Also check wide-int's emacs_value
11344         (mark_memory): Simplify loop.  Don't assume a pointer-sized word can be
11345         cast to Lisp_Object.
11347 2016-01-10  Dmitry Gutov  <dgutov@yandex.ru>
11349         Use short date for 'hg annotate', and output the author
11351         * lisp/vc/vc-hg.el (vc-hg-annotate-command):
11352         Change '-d' to '-dq'.  (Bug#21805)
11353         (vc-hg-annotate-switches): Default to "-u" "--follow".
11354         (vc-hg-annotate-re): Update to recognize the short date format
11355         and the optional username.
11356         (vc-hg-annotate-time)
11357         (vc-hg-annotate-extract-revision-at-line): Update accordingly.
11359         * test/automated/vc-hg.el: New file.
11361 2016-01-10  Paul Eggert  <eggert@cs.ucla.edu>
11363         Spelling fix
11365 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
11367         Document user-level functions in project.el
11369         * lisp/progmodes/project.el (project-find-file)
11370         (project-or-external-find-file): Add doc strings.
11372 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
11374         Document the user-level features of the Xref package
11376         * doc/emacs/maintaining.texi (Maintaining): Add a list of
11377         described features.
11378         (Xref): New section, made out of thoroughly rewritten "Tags"
11379         section.
11380         (Find Identifiers, Looking Up Identifiers, Xref Commands)
11381         (Identifier Search, List Identifiers): New subsections,
11382         incorporating the old tags commands and the new xref commands.
11383         (Tags Tables, Tag Syntax, Create Tags Table, Etags Regexps):
11384         Section and subsections demoted to a lower level.
11385         * doc/emacs/search.texi (Search):
11386         * doc/emacs/windows.texi (Pop Up Window):
11387         * doc/emacs/frames.texi (Creating Frames):
11388         * doc/emacs/programs.texi (Imenu, Symbol Completion):
11389         * doc/emacs/building.texi (Grep Searching):
11390         * doc/emacs/dired.texi (Operating on Files):
11391         * doc/emacs/glossary.texi (Glossary): All references to tags changed.
11393 2016-01-09  Stefan Monnier  <monnier@iro.umontreal.ca>
11395         * doc/lispref/loading.texi: Add `define-type' entry for load-history
11397         * doc/lispref/loading.texi (Where Defined): Remove incorrect
11398         cl-defmethod description, and add missing define-type entry.
11400 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
11402         Improve doc strings and prompts in xref.el
11404         * lisp/progmodes/xref.el (xref-backend-functions)
11405         (xref-find-definitions): Doc fixes.
11406         (xref-query-replace): Doc fix.  Improve prompts for arguments.
11408 2016-01-09  Alan Mackenzie  <acm@muc.de>
11410         Allow the use of `font-lock-extend-region-multiline' in CC Mode.
11412         * lisp/progmodes/cc-mode.el (c-font-lock-init): Remove
11413         `font-lock-extend-regions-wholelines' from
11414         `font-lock-extend-region-functions' rather than setting the latter to
11415         nil.
11417 2016-01-09  Michael Albinus  <michael.albinus@gmx.de>
11419         Fix coding system for Tramp on OS X.
11421         * lisp/net/tramp-compat.el: Require ucs-normalize.
11423         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
11424         Set coding system to `utf-8-hfs' for Mac OS X.
11426         * test/automated/tramp-tests.el (tramp-test29-vc-registered):
11427         Flush directory properties when needed.
11428         (tramp--test-utf8): Include Chinese file name, again.
11430 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
11432         Update 'load-history' docs
11434         * doc/lispref/loading.texi (Where Defined): Update the list of
11435         forms in 'load-history' by adding the forms created for the
11436         'cl-generic' generics.  (Bug#21422)
11438 2016-01-09  Paul Eggert  <eggert@cs.ucla.edu>
11440         Fix (error ...) error
11442         Problem reported by Glenn Morris in:
11443         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00561.html
11444         * lisp/vc/add-log.el (change-log-goto-source): Fix typos
11445         introduced in my Aug 28 change, where I got confused by the
11446         two meanings of (error ...).
11448 2016-01-08  Alan Mackenzie  <acm@muc.de>
11450         Correctly analyze brace arguments in templated C++ function declarations.
11452         * lisp/progmodes/cc-defs.el (c-go-list-forward, c-go-list-backward): add
11453         POS and LIMIT parameters, like the other c-go-list-* functions have.
11455         * lisp/progmodes/cc-engine.el (c-restore-<>-properties): Check backwards
11456         for a ?\( rather than a ?<.  (c-looking-at-inexpr-block): Handle names
11457         followed by template specifiers.
11459 2016-01-08  Glenn Morris  <rgm@gnu.org>
11461         * lisp/cedet/mode-local.el (describe-function-orig-buffer): Declare.
11463         * lisp/ffap.el (ffap-latex-mode): Avoid free variable.
11465 2016-01-08  Mark Oteiza  <mvoteiza@udel.edu>
11467         * lisp/play/dunnet.el (dun-fix-screen): Avoid `end-of-buffer`.
11469 2016-01-08  Alan Mackenzie  <acm@muc.de>
11471         Respect fontification region calculated by major mode.  Fixes bug #22316.
11473         * lisp/font-lock.el (font-lock-extend-jit-lock-region-after-change): when a
11474         fontification region has been calculated by a function on
11475         font-lock-extend-after-change-region-function use this region rather than
11476         changing the end position to somewhere else.
11478 2016-01-08  Eli Zaretskii  <eliz@gnu.org>
11480         Improve documentation of Delete Selection mode
11482         * lisp/delsel.el (delete-selection-mode)
11483         (delete-selection-helper): Update and expand the doc strings.
11484         (Bug#22296)
11486         * doc/emacs/mark.texi (Using Region): Document the behavior of
11487         delete commands in Delete Selection mode.  (Bug#22296)
11489         * doc/lispref/markers.texi (The Mark): Document how to add the
11490         support for Delete Selection mode to Lisp programs. (Bug#22296)
11492 2016-01-08  Dmitry Gutov  <dgutov@yandex.ru>
11494         Fix two project-find-file issues
11496         * lisp/progmodes/project.el (project--value-in-dir):
11497         Temporarily set enable-local-variables to :all.
11498         (project-find-file, project-or-external-find-file):
11499         All autoloads.
11500         (project--find-file-in): Require xref.
11502 2016-01-08  Eli Zaretskii  <eliz@gnu.org>
11504         Clarify doc string of 'dired-current-directory'
11506         * lisp/dired.el (dired-current-directory): Doc fix: clarify that
11507         the return value might not end in a slash when called with the
11508         optional argument non-nil.  (Bug#6273)
11510 2016-01-08  Eli Zaretskii  <eliz@gnu.org>
11512         Use the face of preceding text for displaying the ellipsis
11514         * src/xdisp.c (setup_for_ellipsis): Use the face of the preceding
11515         text in it->saved_face_id for displaying the ellipsis, and ignore
11516         the face, if any, of the invisible text.  (Bug#22320)
11518 2016-01-08  Michael Albinus  <michael.albinus@gmx.de>
11520         Suppress Chinese file name test for OSX in tramp-tests.el
11522         * test/automated/tramp-tests.el (tramp--test-utf8):
11523         Remove instrumentation.  Suppress Chinese file name test for OSX.
11525 2016-01-08  Glenn Morris  <rgm@gnu.org>
11527         * admin/admin.el (set-version): Also handle the NEWS file.
11529 2016-01-08  Dmitry Gutov  <dgutov@yandex.ru>
11531         apropos-library: Skip obvious duplicates; don't error on generics
11533         * lisp/apropos.el (apropos-library): Skip "was an autoload"
11534         entries, to avoid obvious duplicates.  For each cl-defmethod
11535         entry, take just its function symbol (bug#21422).
11537 2016-01-07  Dmitry Gutov  <dgutov@yandex.ru>
11539         Add project-find-file and project-or-external-find-file
11541         * lisp/minibuffer.el (completion-category-defaults):
11542         Add `project-file' category.
11544         * lisp/progmodes/project.el (project-find-file)
11545         (project-or-external-find-file): New commands.
11546         (project--find-file-in): New private function.
11548         * lisp/progmodes/xref.el (xref-collect-matches): Use
11549         `expand-file-name' on DIR, to expand the tildes.
11550         (xref--find-ignores-arguments): Extract from
11551         `xref--rgrep-command'.
11553 2016-01-07  Leo Liu  <sdl.web@gmail.com>
11555         Add defvar-local to lisp-imenu-generic-expression
11557         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression): Add
11558           defvar-local.
11560 2016-01-07  Leo Liu  <sdl.web@gmail.com>
11562         Revert commit b1e3d14845517bfa9fa5d6d3840f3ab3160306fd
11564         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
11565           Don't declare (indent 1).
11567 2016-01-07  Glenn Morris  <rgm@gnu.org>
11569         * lisp/emacs-lisp/autoload.el (autoload-find-destination): Doc fix.
11571 2016-01-07  Glenn Morris  <rgm@gnu.org>
11573         * lisp/emacs-lisp/autoload.el (autoload-find-destination):
11575         Avoid specifying the length of a time object (it has not been "2"
11576         for some time).
11578 2016-01-06  Andreas Schwab  <schwab@linux-m68k.org>
11580         Properly encode/decode base64Binary data in SOAP
11582                 * lisp/net/soap-client.el (soap-encode-xs-basic-type): Encode
11583                 base64Binary value as utf-8.
11584                 (soap-decode-xs-basic-type): Decode base64Binary value as utf-8.
11586 2016-01-06  Eli Zaretskii  <eliz@gnu.org>
11588         Obey coding-system-for-write when writing stdout/stderr in batch
11590         * src/print.c (printchar_to_stream):
11591         * src/xdisp.c (message_to_stderr): If coding-system-for-write has
11592         a non-nil value, use it to encode output in preference to
11593         locale-coding-system.  See the discussions in
11594         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00048.html
11595         for the details.
11597         * doc/lispref/os.texi (Terminal Output): Document how to send
11598         non-ASCII text via 'send-string-to-terminal'.
11599         (Batch Mode): Document how text written to standard streams is
11600         encoded.  Fix inaccuracy regarding which output streams are used
11601         by output functions in batch mode.
11603 2016-01-06  Xue Fuqiao  <xfq.free@gmail.com>
11605         * doc/misc/efaq.texi (Packages that do not come with Emacs):
11606         Update the URI of MELPA and marmalade-repo.  Reported by CHENG Gao
11607         <chenggao@royau.me> in
11608         https://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00390.html.
11610 2016-01-06  Maksim Golubev  <maksim.golubev72@gmail.com>  (tiny change)
11612         * lisp/progmodes/opascal.el (opascal-mode-syntax-table):
11614         Fix backslash.  (Bug#22224)
11616 2016-01-06  Federico Beffa  <beffa@ieee.org>  (tiny change)
11618         * lisp/progmodes/xscheme.el (xscheme-prompt-for-expression-exit):
11620         Make it actually work.  (Bug#22265)
11622 2016-01-05  Alan Mackenzie  <acm@muc.de>
11624         Remove function wrongly on AWK Mode value of context fontification hook.
11626         * lisp/progmodes/cc-langs.el (c-before-context-fontification-functions):
11627         swap order of entries so that awk's entry isn't superseded by the default.
11629         * lisp/progmodes/cc-mode.el (c-before-context-fl-expand-region): Correct
11630         to handle nil value of c-before-context-fontification-functions.
11632 2016-01-05  Paul Eggert  <eggert@cs.ucla.edu>
11634         * src/buffer.c: Stick with ASCII in doc string.
11636 2016-01-05  Paul Eggert  <eggert@cs.ucla.edu>
11638         Reword transient-mark-mode doc string
11640         * src/buffer.c (syms_of_buffer): Reword doc string to avoid confusion.
11641         The value 'lambda (literally) can be interpreted as (quote lambda),
11642         which is not intended here; we want just the lambda symbol.
11644 2016-01-05  Eli Zaretskii  <eliz@gnu.org>
11646         Update doc string of 'selective-display'
11648         * src/buffer.c (syms_of_buffer) <selective-display>: Say that
11649         using it with the value of 't' is obsolete.  (Bug#1092)
11651 2016-01-05  Alan Mackenzie  <acm@muc.de>
11653         Make C++ buffers writeable when writing their initial text properties.
11655         This is a correction to yesterday's CC Mode patch.
11657         * lisp/progmodes/cc-engine.el (c-before-change-check-<>-operators): Put
11658         c-save-buffer-state around the function rather than a mere `let'.
11660 2016-01-05  Michael Albinus  <michael.albinus@gmx.de>
11662         Additional changes for "make check-expensive"
11664         * CONTRIBUTE : Encourage use of ":tags '(:expensive-test)".
11665         Explain make target `check-expensive'.
11667         * etc/NEWS: Mention new make target `check-expensive'.
11669         * test/automated/Makefile.in (check-doit): New target.
11670         (check, check-expensive): Use it.
11672 2016-01-04  Alan Mackenzie  <acm@muc.de>
11674         Apply text properties for <, > in new after-change function (C++ Java Modes).
11676         These are category/syntax-table properties to give < and > paren syntax.
11677         Also apply certain `c-type' text properties to the insides of <..> constructs
11678         to ensure that identifiers contained by them get fontified.  This patch fixes
11679         bug #681.
11681         * lisp/progmodes/cc-cmds.el (c-electric-lt-gt): Reformulate due to new
11682         after-change action.
11684         * lisp/progmodes/cc-engine.el (c-before-change-check-<>-operators): Expand
11685         change region to include <s and >s which might not be already marked as
11686         parens, rather than just when paren text properties are removed.
11687         (c-restore-<>-properties): New after-change function, which applies text
11688         properties marking < and > with paren syntax.
11690         * lisp/progmodes/cc-fonts.el (c-font-lock-declarations): Ensure `c-type'
11691         properties are applied to the interiors of <...> constructs, to ensure
11692         fontification of identifiers there.
11694         * lisp/progmodes/cc-langs.el (c-before-font-lock-functions): Add
11695         c-restore-<>-properties to this list for C++ and Java.
11697         * lisp/progmodes/cc-mode.el (c-common-init): When invoking
11698         c-before-font-lock-functions, exclude c-restore-<>-properties from the
11699         functions invoked.
11700         (c-before-change): Initialize c-new-BEG/END here (rather than c-after-change)
11701         to allow modification by before-change functions.
11702         (c-after-change): Amend c-new-END here, rather than initializing it and
11703         c-new-BEG.
11705 2016-01-04  Michael Albinus  <michael.albinus@gmx.de>
11707         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
11709 2016-01-04  Michael Albinus  <michael.albinus@gmx.de>
11711         Introduce check-expensive tests.
11713         * Makefile.in (check-expensive):
11714         * test/automated/Makefile.in (check-expensive): New target.
11716         * test/automated/auto-revert-tests.el
11717         (auto-revert-test01-auto-revert-several-files):
11718         * test/automated/file-notify-tests.el (file-notify--deftest-remote):
11719         * test/automated/tramp-tests.el (tramp-test26-process-file)
11720         (tramp-test27-start-file-process, tramp-test28-shell-command)
11721         (tramp-test29-vc-registered)
11722         (tramp-test31-special-characters-with-stat)
11723         (tramp-test31-special-characters-with-perl)
11724         (tramp-test31-special-characters-with-ls)
11725         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
11726         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
11727         (tramp-test35-unload): Tag the tests as :expensive-test.
11729 2016-01-04  Lars Magne Ingebrigtsen  <larsi@gnus.org>
11731         shr-tag-video bug fix
11733         * shr.el (shr-tag-video): Protect against the `poster' being
11734         empty.
11736 2016-01-04  Michael Albinus  <michael.albinus@gmx.de>
11738         Minor fixes in tramp-tests.el
11740         * test/automated/tramp-tests.el (tramp-test26-process-file):
11741         Move point properly.
11742         (tramp-test29-vc-registered): Work with relative file names.
11744 2016-01-04  Eli Zaretskii  <eliz@gnu.org>
11746         Ensure redisplay when 'truncate-lines' is set
11748         * lisp/frame.el (redisplay--variables): Add 'truncate-lines'.
11749         (Bug#22303)
11751 2016-01-04  Eli Zaretskii  <eliz@gnu.org>
11753         Fix a doc string of 'transient-mark-mode'
11755         * src/buffer.c (syms_of_buffer) <transient-mark-mode>: Prevent
11756         "lambda" in doc string from becoming a link to lambda expressions.
11758 2016-01-04  Eli Zaretskii  <eliz@gnu.org>
11760         MS-Windows followup to latest gnulib update
11762         * nt/gnulib.mk (EXTRA_DIST): Add ignore-value.h.
11764 2016-01-04  Paul Eggert  <eggert@cs.ucla.edu>
11766         Spelling fix
11768 2016-01-04  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
11770         Do secure signed Bcc handling
11772         * lisp/gnus/message.el (message-send): Do secure signed Bcc handling
11773         (bug#18718).
11775 2016-01-04  Paul Eggert  <eggert@cs.ucla.edu>
11777         Avoid stdio in SIGINT handler
11779         * admin/merge-gnulib (GNULIB_MODULES): Add ignore-value.
11780         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
11781         * lib/ignore-value.h: New file, from gnulib.
11782         * src/keyboard.c: Include it.
11783         (write_stdout, read_stdin): New functions.
11784         (handle_interrupt): Use them instead of printf and getchar,
11785         and avoid fflush when handling signals.
11787 2016-01-04  Paul Eggert  <eggert@cs.ucla.edu>
11789         * doc/misc/texinfo.tex: Revert unwanted copyright change.
11791 2016-01-03  Artur Malabarba  <bruce.connor.am@gmail.com>
11793         * lisp/align.el (align): Simplify a lambda
11795         * lisp/align.el (align): Fix arg order in call to `align-region'
11797 2016-01-03  Eli Zaretskii  <eliz@gnu.org>
11799         Fix compilation next-error in buffers with selective-display
11801         * lisp/progmodes/compile.el (compilation-beginning-of-line): New
11802         function.
11803         (compilation-internal-error-properties)
11804         (compilation-next-error-function, compilation-set-window): Use
11805         it.  (Bug#1092)
11807 2016-01-03  Lars Magne Ingebrigtsen  <larsi@gnus.org>
11809         * lisp/net/nsm.el (nsm-check-protocol): Fix typo in the message.
11811 2016-01-03  Lars Magne Ingebrigtsen  <larsi@gnus.org>
11813         Add SHA1 warnings for high network security settings
11815         * lisp/net/nsm.el (nsm-check-protocol): When using high security, warn
11816         about SHA1 certificates, which are now believed to be open to
11817         spoofing.
11819 2016-01-03  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
11821         Refactor mml-smime.el, mml1991.el, mml2015.el
11823         (Maybe this is the last merge from Gnus git to Emacs git)
11825         Cf. discussion on ding mailing list, messages in
11826         <http://thread.gmane.org/gmane.emacs.gnus.general/86228>.
11827         Common code from the three files mml-smime.el, mml1991.el, and
11828         mml2015.el is moved to mml-sec.el.  Auxiliary functions are added
11829         to gnus-util.el.
11831         The code is supported by test cases with necessary test keys.
11833         Documentation in message.texi is updated.
11835         * doc/misc/message.texi (Security, Using S/MIME):
11836         Update for refactoring mml-smime.el, mml1991.el, mml2015.el.
11837         (Using OpenPGP): Rename from "Using PGP/MIME"; update contents.
11838         (Passphrase caching, Encrypt-to-self, Bcc Warning): New sections.
11840         * lisp/gnus/gnus-util.el (gnus-test-list, gnus-subsetp, gnus-setdiff):
11841         New functions.
11843         * lisp/gnus/mml-sec.el: Require gnus-util and epg.
11844         (epa--select-keys): Autoload.
11845         (mml-signencrypt-style-alist, mml-secure-cache-passphrase): Doc fix.
11846         (mml-secure-openpgp-signers): New user option;
11847         make mml1991-signers and mml2015-signers obsolete aliases to it.
11848         (mml-secure-smime-signers): New user option;
11849         make mml-smime-signers an obsolete alias to it.
11850         (mml-secure-openpgp-encrypt-to-self): New user option;
11851         make mml1991-encrypt-to-self and mml2015-encrypt-to-self obsolete
11852         aliases to it.
11853         (mml-secure-smime-encrypt-to-self): New user option;
11854         make mml-smime-encrypt-to-self an obsolete alias to it.
11855         (mml-secure-openpgp-sign-with-sender): New user option;
11856         make mml2015-sign-with-sender an obsolete alias to it.
11857         (mml-secure-smime-sign-with-sender): New user option;
11858         make mml-smime-sign-with-sender an obsolete alias to it.
11859         (mml-secure-openpgp-always-trust): New user option;
11860         make mml2015-always-trust an obsolete alias to it.
11861         (mml-secure-fail-when-key-problem, mml-secure-key-preferences):
11862         New user options.
11863         (mml-secure-cust-usage-lookup, mml-secure-cust-fpr-lookup)
11864         (mml-secure-cust-record-keys, mml-secure-cust-remove-keys)
11865         (mml-secure-add-secret-key-id, mml-secure-clear-secret-key-id-list)
11866         (mml-secure-cache-passphrase-p, mml-secure-cache-expiry-interval)
11867         (mml-secure-passphrase-callback, mml-secure-check-user-id)
11868         (mml-secure-secret-key-exists-p, mml-secure-check-sub-key)
11869         (mml-secure-find-usable-keys, mml-secure-select-preferred-keys)
11870         (mml-secure-fingerprint, mml-secure-filter-keys)
11871         (mml-secure-normalize-cust-name, mml-secure-select-keys)
11872         (mml-secure-select-keys-1, mml-secure-signer-names, mml-secure-signers)
11873         (mml-secure-self-recipients, mml-secure-recipients)
11874         (mml-secure-epg-encrypt, mml-secure-epg-sign): New functions.
11876         * lisp/gnus/mml-smime.el: Require epg;
11877         refactor declaration and autoloading of epg functions.
11878         (mml-smime-use): Doc fix.
11879         (mml-smime-cache-passphrase, mml-smime-passphrase-cache-expiry):
11880         Obsolete.
11881         (mml-smime-get-dns-cert, mml-smime-get-ldap-cert):
11882         Use format instead of gnus-format-message.
11883         (mml-smime-epg-secret-key-id-list): Remove variable.
11884         (mml-smime-epg-passphrase-callback, mml-smime-epg-find-usable-key)
11885         (mml-smime-epg-find-usable-secret-key): Remove functions.
11886         (mml-smime-epg-sign, mml-smime-epg-encrypt): Refactor.
11888         * lisp/gnus/mml1991.el (mml1991-cache-passphrase)
11889         (mml1991-passphrase-cache-expiry): Obsolete.
11890         (mml1991-epg-secret-key-id-list): Remove variable.
11891         (mml1991-epg-passphrase-callback, mml1991-epg-find-usable-key)
11892         (mml1991-epg-find-usable-secret-key): Remove functions.
11893         (mml1991-epg-sign, mml1991-epg-encrypt): Refactor.
11895         * lisp/gnus/mml2015.el (mml2015-cache-passphrase)
11896         (mml2015-passphrase-cache-expiry): Obsolete.
11897         (mml2015-epg-secret-key-id-list): Remove variable.
11898         (mml2015-epg-passphrase-callback, mml2015-epg-check-user-id)
11899         (mml2015-epg-check-sub-key, mml2015-epg-find-usable-key)
11900         (mml2015-epg-find-usable-secret-key): Remove functions.
11901         (mml2015-epg-decrypt, mml2015-epg-clear-decrypt, mml2015-epg-sign)
11902         (mml2015-epg-encrypt): Refactor.
11904 2016-01-02  Glenn Morris  <rgm@gnu.org>
11906         * lisp/progmodes/fortran.el (fortran-make-syntax-propertize-function):
11908         Explicitly ignore case.  (Bug#22262)
11910 2016-01-02  Stefan Monnier  <monnier@iro.umontreal.ca>
11912         (semantic-symref-derive-find-filepatterns): Return a list
11914         * lisp/cedet/semantic/symref/grep.el
11915         (semantic-symref-derive-find-filepatterns): Return a list.
11916         (semantic-symref-perform-search): Quote the result here once and for all.
11918 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
11920         Fix xref-find-references on MS-Windows
11922         * lisp/cedet/semantic/symref/grep.el
11923         (semantic-symref-derive-find-filepatterns): Use
11924         'shell-quote-argument' instead of manually quoting in a way that
11925         only works with Posix shells.  (Bug#22289)
11927 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
11929         Document new features of tildify-mode
11931         * lisp/textmodes/tildify.el (tildify-foreach-ignore-environments)
11932         (tildify-mode): Spelling fixes in doc strings.
11934         * etc/NEWS: Reformat the tildify-mode entry.
11936 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
11938         Document new features of Whitespace mode
11940         * doc/emacs/display.texi (Useless Whitespace): Document
11941         'whitespace-toggle-options' and the new 'big-indent' style.
11942         Document 'whitespace-big-indent-regexp'.  Document the Global
11943         Whitespace mode.
11945 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
11947         Improve documentation of new Hide-IfDef features
11949         * etc/NEWS: Expand and reword Hide-IfDef section.
11951 2016-01-02  Leo Liu  <sdl.web@gmail.com>
11953         Fix regression in font-locking cl-assert and cl-check-type
11955         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2): Fix
11956           el-errs-re.
11958 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
11960         Spelling and grammar fixes
11962 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
11964         Fix copyright years by hand
11966         These are dates that admin/update-copyright did not update, or
11967         updated incorrectly.
11969 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
11971         Update copyright year to 2016
11973         Run admin/update-copyright.
11975 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
11977         Merge from gnulib
11979         This mostly just updates copyright dates of gnulib files.
11980         It also updates to the latest version of texinfo.tex.
11982 2015-12-31  Mark Oteiza  <mvoteiza@udel.edu>
11984         lisp/emacs-lisp/chart.el (chart-new-buffer): Move to silence byte compiler.
11986 2015-12-31  Mark Oteiza  <mvoteiza@udel.edu>
11988         Port chart.el methods to cl-generic.
11990         cl-call-next-method cannot be used inside EIEIO's defmethod.
11991         * lisp/emacs-lisp/chart.el: Require cl-generic at compile time.
11992         * lisp/emacs-lisp/chart.el (initialize-instance, chart-draw):
11993         (chart-draw-title, chart-size-in-dir, chart-draw-axis):
11994         (chart-axis-draw, chart-translate-xpos, chart-translate-ypos):
11995         (chart-translate-namezone, chart-draw-data, chart-add-sequence):
11996         (chart-trim, chart-sort): Use cl-defmethod instead of defmethod.
11998 2015-12-31  Brian Burns  <bburns.km@gmail.com>
12000         Add nt/INSTALL.W64 build instructions
12002         * nt/INSTALL.W64: New file.
12003         * nt/INSTALL: Point to INSTALL.W64 for 64-bit build instructions.
12005 2015-12-31  Joakim Jalap  <joakim.jalap@fastmail.com>
12007         Add new input method 'programmer-dvorak'
12009         * lisp/leim/quail/programmer-dvorak.el ("programmer-dvorak"): New
12010         input method.
12012         * etc/NEWS: Mention it.
12014 2015-12-31  Eli Zaretskii  <eliz@gnu.org>
12016         Allow to invoke original M-TAB binding in 'flyspell-prog-mode'
12018         * lisp/textmodes/flyspell.el (flyspell-prog-mode): Record the
12019         original M-TAB binding in a buffer-local variable.
12020         (flyspell-auto-correct-word): Invoke the original binding of M-TAB
12021         if that is recorded, when point is in a place where flyspell
12022         should not be active (e.g., because the user turned on
12023         'flyspell-prog-mode').  (Bug#18533)
12025 2015-12-31  Eli Zaretskii  <eliz@gnu.org>
12027         Fix EWW rendering of long RTL lines
12029         * lisp/net/shr.el (shr-insert-document): Undo any previous hscroll
12030         of the selected window before filling its lines.  (Bug#22250)
12032 2015-12-31  Vincent Belaïche  <vincentb1@users.sourceforge.net>
12034         fix  bug#21054
12036         * lisp/ses.el (ses-check-curcell): Call `ses-set-curcell' unconditionally
12038 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12040         Clean up cairo printing code
12042         * src/gtkutil.c (xg_get_page_setup): Use listn.
12043         * src/xfns.c (Fx_export_frames, Fx_print_frames_dialog): Doc fix.  Use
12044         decode_window_system_frame and FRAME_VISIBLE_P.
12045         (Fx_print_frames_dialog): Use redisplay_preserve_echo_area instead
12046         of Fdisplay.
12047         * src/xterm.c (x_cr_export_frames): Use redisplay_preserve_echo_area
12048         instead of Fdisplay.  Temporarily unblock_input around QUIT.
12050 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12052         Move variables to inner loop, preparing for Mac port merge
12054         * src/keyboard.c (command_loop_1): Move variables `cmd',
12055         `keybuf', and `i' to inner loop.
12057 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12059         Add handle_user_signal_hook
12061         * src/keyboard.h (handle_user_signal_hook): New declaration.
12062         * src/keyboard.c (handle_user_signal_hook): New variable.
12063         (handle_user_signal): Call it.
12065 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12067         Avoid writing to purespace
12069         * src/alloc.c (Fmake_string): Don't write to empty string contents.
12070         (allocate_vector): Don't write to empty vector size.
12071         * src/character.h (CHECK_CHARACTER_CAR, CHECK_CHARACTER_CDR):
12072         Don't call unnecessary XSETCAR or XSETCDR.
12073         * src/lisp.h (STRING_SET_UNIBYTE, STRING_SET_MULTIBYTE): Don't
12074         write to empty string size_byte.
12076 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12078         Remove unused variable
12080         * lisp/international/mule-cmds.el: Remove unused variable
12081         `mac-system-coding-system'.
12083 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12085         * configure.ac: Find libxml2 headers in Xcode SDK dir on Darwin.
12087 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12089         Use posix_openpt instead of openpty on Darwin
12091         * configure.ac (PTY_ITERATION, FIRST_PTY_LETTER, PTY_OPEN)
12092         (PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF): Remove
12093         Darwin-specific definitions.  Use posix_openpt instead.
12095 2015-12-30  Shakthi Kannan  <shakthimaan@gmail.com>
12097         Document support for ':documentation' in Lisp mode
12099         * lisp/emacs-lisp/lisp-mode.el (lisp-string-in-doc-position-p)
12100         (lisp-string-after-doc-keyword-p)
12101         (lisp-font-lock-syntactic-face-function): Add doc strings.
12103 2015-12-30  Shakthi Kannan  <shakthimaan@gmail.com>
12105         Document new features of TeX mode
12107         * doc/emacs/text.texi (TeX Print): Document
12108         'tex-print-file-extension'.
12109         * doc/emacs/programs.texi (Misc for Programs): Document support
12110         for Prettify Symbols mode in TeX mode.
12112 2015-12-30  Eli Zaretskii  <eliz@gnu.org>
12114         Clarify docs of hscroll in RTL text
12116         * doc/lispref/windows.texi (Horizontal Scrolling): Clarify the
12117         meaning of a window's horizontal scroll amount for RTL paragraphs.
12119 2015-12-30  Eli Zaretskii  <eliz@gnu.org>
12121         Fix rendering of HTML pages that use character composition
12123         * src/indent.c (Fvertical_motion): Fix the case when point starts
12124         in the middle of a composition, as in shr-vertical-motion.
12125         (Bug#22250)
12127 2015-12-30  Eli Zaretskii  <eliz@gnu.org>
12129         Avoid some compiler warnings in w32.c
12131         * src/w32.c (codepage_for_filenames, crlf_to_lf)
12132         (ansi_encode_filename, socket_to_fd, sys_write)
12133         (check_windows_init_file): Avoid compiler warnings about
12134         differences in pointer signedness.
12136 2015-12-30  Dmitry Gutov  <dgutov@yandex.ru>
12138         Undo ill-advised change
12140         * lisp/progmodes/xref.el (xref-collect-matches): Undo
12141         ill-advised change.  The hits come in the order that `find'
12142         produces them in, which isn't alphabetical.
12144 2015-12-30  Dmitry Gutov  <dgutov@yandex.ru>
12146         Unbreak completion in python-mode buffers
12148         * lisp/progmodes/python.el (python-shell-completion-at-point):
12149         Unbreak in python-mode buffers.
12151 2015-12-29  Eli Zaretskii  <eliz@gnu.org>
12153         Fix typos in CC Mode manual
12155         * doc/misc/cc-mode.texi (c-offsets-alist, Style Variables): Fix
12156         typos.  (Bug#22267)
12158 2015-12-29  Eli Zaretskii  <eliz@gnu.org>
12160         Avoid assertion violations in compact_font_cache_entry
12162         * src/alloc.c (compact_font_cache_entry): Don't use VECTORP to
12163         avoid assertion violation in ASIZE.  (Bug#22263)
12165 2015-12-29  Eli Zaretskii  <eliz@gnu.org>
12167         Fix filling text with bidirectional characters in shr.el
12169         * lisp/net/shr.el (shr-insert-document): Bind
12170         bidi-display-reordering to nil while filling lines.  This is
12171         required for when a line includes characters whose bidi
12172         directionality is opposite to the base paragraph direction,
12173         because columns are counted in the logical order.  (Bug#22250)
12175 2015-12-29  Martin Rudalics  <rudalics@gmx.at>
12177         * src/xfns.c (x_create_tip_frame): Process alpha parameter.
12179 2015-12-29  Michael Albinus  <michael.albinus@gmx.de>
12181         Sync with Tramp 2.2.13
12183         * doc/misc/trampver.texi: Change version to "2.2.13.25.1".
12185         * lisp/net/tramp-compat.el (tramp-compat-delete-dups):
12186         Use `tramp-compat-funcall'.
12188         * lisp/net/tramp-gvfs.el (tramp-gvfs-parse-device-names):
12189         Make `split-string' call compatible with older Emacsen.
12191         * lisp/net/trampver.el: Change version to "2.2.13.25.1".
12193 2015-12-29  Lambda Coder  <sjLambda@gmail.com>
12195         * doc/misc/tramp.texi: Editorial revisions to the Tramp manual
12197 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
12199         Mention that tls.el is secure by default, and will fail
12201 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
12203         Make tls.el use trustfiles by default
12205         * lisp/net/tls.el (tls-program): Add a certfile by default (bug#21227).
12206         (open-tls-stream): Insert the trustfile by looking at
12207         `gnutls-trustfiles'.
12209 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
12211         Refactor out gnutls-trustfiles
12213         * lisp/net/gnutls.el (gnutls-trustfiles): Refactor out for reuse by tls.el.
12215 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
12217         Remove --insecure from gnutls-cli invocation
12219         * tls.el (tls-program): Default to using secure TLS
12220         connections (bug#19284).
12222 2015-12-29  Paul Eggert  <eggert@cs.ucla.edu>
12224         Spelling fix
12226 2015-12-29  Paul Eggert  <eggert@cs.ucla.edu>
12228         Port report-emacs-bug to deterministic builds
12230         * lisp/mail/emacsbug.el (report-emacs-bug): Future-proof the
12231         recent "built on" change to deterministic builds where
12232         emacs-build-system will be nil.  See:
12233         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg01369.html
12235 2015-12-29  Jose A. Ortega Ruiz  <jao@gnu.org>  (tiny change)
12237         Fix URL auth error message
12239         * lisp/url/url-http.el (url-http-handle-authentication): Make the error
12240         message more correct (bug#20069).
12242 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
12244         shr link traversal fixup
12246         * shr.el (shr-next-link): Don't bug out on adjacent links.
12248         Backport:
12250         (cherry picked from commit 1efc5f8b09273c359683ce13be95fb5df7a84311)
12252 2015-12-28  Tom Tromey  <tom@tromey.com>
12254         set :safe on css-indent-offset
12256         * lisp/textmodes/css-mode.el (css-indent-offset): Add :safe 'integerp.
12258 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
12260         * eww.el (eww-mode): Remove superfluous bidi reset.
12262 2015-12-28  James Stout  <james.wolf.stout@gmail.com>  (tiny change)
12264         Make chunked encoding trailer detection more compliant
12266         * lisp/url/url-http.el
12267         (url-http-chunked-encoding-after-change-function): Make
12268         trailer detection more compliant (bug#16345).
12270 2015-12-28  Martin Rudalics  <rudalics@gmx.at>
12272         Fix Bug#10873 in `report-emacs-bug'
12274         * lisp/mail/emacsbug.el (report-emacs-bug): If
12275         `report-emacs-bug-no-explanations' is nil, make sure we can show
12276         mail and warnings buffer on this frame (Bug#10873).
12278 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
12280         Always reset the bidi direction
12282         * eww.el (eww-display-html): Always reset the bidi direction
12283         to `left-to-right' (bug#22257).
12285 2015-12-28  Alan Mackenzie  <acm@muc.de>
12287         Allow line comments ending with escaped NL to be continued to the next line.
12289         Use this in C, C++, and Objective C Modes.  Fixes bug#22246
12291         * src/syntax.c (comment-end-can-be-escaped): New buffer local variable.
12292         (forw-comment, back-comment): On encountering an end of comment character,
12293         test whether it is escaped when `comment-end-can-be-escaped' is non-nil.
12295         * doc/lispref/syntax.texi (Control Parsing): Describe
12296         `comment-end-can-be-escaped'.
12298         * etc/NEWS (Lisp Changes): Describe `comment-end-can-be-escaped'.
12300         * lisp/progmodes/cc-langs.el: New c-lang-setvar `comment-end-can-be-escaped'.
12302 2015-12-28  Dmitry Gutov  <dgutov@yandex.ru>
12304         Rename project-library-roots to project-external-roots
12306         * lisp/progmodes/project.el (project-library-roots): Rename to
12307         project-external-roots.
12308         (project-library-roots-function): Rename to
12309         project-vc-external-roots-function.  Only use it in the VC
12310         backend, for now.  Update project-external-roots accordingly.
12311         (project-vc-library-roots): Remove.
12312         (project-or-libraries-find-regexp):
12313         Rename to project-or-external-find-regexp.
12315         * lisp/progmodes/elisp-mode.el (elisp-library-roots):
12316         Rename to elisp-load-path-roots.
12318         * lisp/progmodes/etags.el (etags-library-roots): Remove.  Use
12319         an anonymous function for the default value of
12320         project-vc-external-roots-function.
12322 2015-12-27  Deniz Dogan  <deniz@dogan.se>
12324         Clear erc user list upon disconnection
12326         * lisp/erc/erc-backend.el (erc-process-sentinel): Clear channel user
12327         lists upon disconnection.  This prevents invalid channel
12328         user lists when reconnecting (bug#10947).
12330 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
12332         Don't bug out in erc after waking from sleep
12334         * lisp/erc/erc-backend.el (erc-server-send-ping): If the server has
12335         closed connection, this may already have been detected and
12336         `erc-server-last-received-time' has been set to nil (bug#13608).
12338 2015-12-27  David Edmondson  <dme@dme.org>
12340         Proxy error in erc with multiple clients
12342         * lisp/erc/erc.el (erc-channel-receive-names): Fix errors
12343         generated when multiple IRC clients talk to a single IRC proxy
12344         (bug#19034).
12346         Backport:
12348         (cherry picked from commit 507e98a54d1aa37823c64993d6b59257a82fe8f4)
12350 2015-12-27  Dima Kogan  <dima@secretsauce.net>
12352         Ensure that we don't have several timers in erc
12354         * lisp/erc/erc-backend.el (erc-server-setup-periodical-ping): Checks
12355         for existing timers in the alist before adding new ones.  If a
12356         timer already exists, it is cancelled and
12357         overwritten. (bug#19292).
12359 2015-12-27  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
12361         Fix mml-sec build warnings
12363         * lisp/gnus/mml-sec.el: Fix warnings by adding autoloads
12364         (bug#18718).
12366         Backport:
12368         (cherry picked from commit 3603097f62f5f4aa5451716e9ac380161f6829e2)
12370 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
12372         Don't insert erc logs at the end
12374         * lisp/erc/erc-log.el (erc-log-setup-logging): Insert the previous log
12375         at the start of the buffer, not at the end (bug#20496).
12377 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
12379         (eww-setup-buffer): Restore left-to-right defaults
12381         * eww.el (eww-setup-buffer): Restore left-to-right defaults.
12383         Backport:
12385         (cherry picked from commit 96c874b96b617c124d500a94de761a61f2a08685)
12387 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
12389         Don't join erc channels doubly
12391         * lisp/erc/erc-join.el (erc-autojoin-channels): Don't join channels
12392         more than once (if you have several nicks) (bug#20695).
12394 2015-12-27  Eli Zaretskii  <eliz@gnu.org>
12396         Avoid leaving "ghost" of mouse pointer on MS-Windows
12398         * src/w32term.c (frame_set_mouse_pixel_position):
12399         * src/w32fns.c (Fw32_mouse_absolute_pixel_position): Momentarily
12400         disable "mouse trails" when moving the mouse pointer.  (Bug#22247)
12401         * src/w32term.c (frame_set_mouse_pixel_position): Include
12402         w32common.h.
12404 2015-12-27  Krzysztof Jurewicz  <krzysztof.jurewicz@gmail.com>  (tiny change)
12406         Fix auth source lookups from erc with port numbers
12408         * lisp/erc/erc.el (erc-open): `auth-source' wants strings, not port
12409         numbers (bug#20541).
12411 2015-12-27  Fran Litterio  <flitterio@gmail.com>
12413         Run erc-kill-channel-hook always on exit
12415         * lisp/erc/erc.el (erc-kill-buffer-function): Run erc-kill-channel-hook
12416         when erc-kill-queries-on-quit is set (bug#21187).
12418 2015-12-27  Paul Eggert  <eggert@cs.ucla.edu>
12420         Spelling fix
12422         * test/automated/url-parse-tests.el:
12423         (url-generic-parse-url/same-document-reference):
12424         Rename from url-generic-parse-url/same-decument-reference.
12426 2015-12-27  Paul Eggert  <eggert@cs.ucla.edu>
12428         Reword initial *scratch* for brevity, appearance
12430         * lisp/startup.el (initial-scratch-message):
12431         Reword to avoid apostrophes, and to make it shorter.
12432         See the thread starting in:
12433         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg01241.html
12435 2015-12-26  Leo Liu  <sdl.web@gmail.com>
12437         Add ert-deftest to lisp-mode.el
12439         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression,
12440           lisp-el-font-lock-keywords-1): Add ert-deftest.
12442 2015-12-26  Lars Ingebrigtsen  <larsi@gnus.org>
12444         Mark imap changes as not needing doc changes
12446         * lisp/net/imap.el (imap-ssl-open): Remove
12448 2015-12-26  Lars Ingebrigtsen  <larsi@gnus.org>
12450         Use built-in encryption in imap.el
12452         * lisp/net/imap.el (imap-ssl-program): Remove (bug#21134).
12453         (imap-starttls-open): Use open-network-stream instead of starttls.el.
12454         (imap-tls-open): Use open-network-stream instead of tls.el.
12456 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12458         Don't try using /bin/sh in artist.el on MS-Windows
12460         * lisp/textmodes/artist.el (artist-figlet-get-font-list-windows):
12461         New function.
12462         (artist-figlet-choose-font): Use it on MS-Windows and MS-DOS.
12463         (Bug#20167)
12465 2015-12-26  Wolfgang Jenkner  <wjenkner@inode.at>
12467         Always define gmalloc etc. in src/gmalloc.c
12469         This is a work-around to prevent the compiler from using semantic
12470         knowledge about malloc for optimization purposes.  E.g., gcc 5.2
12471         with -O2 replaces most of calloc's definition by a call to calloc;
12472         see Bug#22085.
12473         * src/gmalloc.c [!HYBRID_MALLOC] (malloc, realloc, calloc)
12474         (aligned_alloc, free): Do not undef.  Instead, define these as
12475         functions (perhaps renamed to gmalloc etc.) in terms of gmalloc etc.
12477 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12479         Fix documentation of browse-url browser-related functions
12481         * lisp/net/browse-url.el (browse-url)
12482         (browse-url-default-browser, browse-url-default-windows-browser)
12483         (browse-url-default-macosx-browser, browse-url-chromium)
12484         (browse-url-kde, browse-url-text-xterm): Clarify the usage of ARGS
12485         and NEW-WINDOW arguments in these functions.  (Bug#19421)
12487 2015-12-26  Paul Eggert  <eggert@cs.ucla.edu>
12489         Propagate Bug#14412 fix to backtrace_eval_unrewind
12491         * src/eval.c (unbind_to): Redo so that the FALLTHROUGH!! comment
12492         becomes accurate again. This shouldn’t affect behavior.
12493         (backtrace_eval_unrewind): Apply the recent unbind_to fix here, too.
12495 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12497         Don't produce non-ASCII characters in *scratch*
12499         * lisp/startup.el (initial-scratch-message): Quote apostrophes to
12500         avoid producing non-ASCII characters in the *scratch* buffer's
12501         commentary.
12503 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12505         Document changes in 'compare-windows'
12507         * lisp/vc/compare-w.el (compare-windows-removed)
12508         (compare-windows-added): Doc fix.
12510         * doc/emacs/files.texi (Comparing Files): Document the changes in
12511         window selection by 'compare-windows'.
12513 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12515         Document 'vc-annotate-background-mode'
12517         * doc/emacs/maintaining.texi (Old Revisions): Document
12518         'vc-annotate-background-mode'.
12520 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12522         Document 'vc-region-history'
12524         * doc/emacs/maintaining.texi (VC Change Log): Document
12525         'vc-region-history'.
12527 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12529         Improve documentation of 'vc-push'
12531         * doc/emacs/maintaining.texi (Pulling / Pushing): Expand and
12532         improve the documentation of 'vc-push'.
12534         * lisp/vc/vc.el (vc-pull, vc-push): Doc fix.
12536 2015-12-26  Alain Schneble  <a.s@realize.ch>
12538         Include the tests for the URL parsing fixes
12540 2015-12-26  Alain Schneble  <a.s@realize.ch>
12542         Make relative URL parsing and resolution consistent with RFC 3986 (bug#22044)
12544         * test/automated/url-parse-tests.el: Add tests covering url-generic-parse-url.
12545         * test/automated/url-expand-tests.el: Add tests covering url-expand-file-name.
12546         * lisp/url/url-parse.el (url-generic-parse-url): Keep empty fragment
12547         information in URL-struct.
12548         * lisp/url/url-parse.el (url-path-and-query): Do not artificially turn empty
12549         path and query into nil path and query, respectively.
12550         * lisp/url/url-expand.el (url-expander-remove-relative-links): Do not turn
12551         empty path into an absolute ("/") path.
12552         * lisp/url/url-expand.el (url-expand-file-name): Properly resolve
12553         fragment-only URIs. Do not just return them unchanged.
12554         * lisp/url/url-expand.el (url-default-expander): An empty path in the relative
12555         reference URI should not drop the last segment.
12557         Backport:
12559         (cherry picked from commit b792ecea1715e080ad8e232d3d154b8a25d2edfb)
12561 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12563         Document 'url-user-agent'.
12565         * lisp/url/url-http.el (url-user-agent): Move from here...
12566         * lisp/url/url-vars.el (url-user-agent): ...to here.  This is to
12567         keep all the URL defcustoms in one place, and also have it defined
12568         whenever the URL library is loaded.
12570         * doc/misc/url.texi (Customization): Document 'url-user-agent'.
12572 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12574         Document protocols supported by URL library via Tramp
12576         * doc/misc/url.texi (Tramp): New node, describes the URL schemes
12577         supported via Tramp.
12578         (Supported URL Types, file/ftp, rlogin/telnet/tn3270): Mention
12579         Tramp.
12581 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12583         Document changes in Shell-script mode
12585         * lisp/progmodes/sh-script.el (sh-mode, sh-set-shell): Document
12586         the 'sh-shell' file-local variable.
12587         (top level): Add an auto-load form to avoid byte-compiler warning
12588         about 'comint-send-string'.
12590 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12592         Fix documentation of 'ses-define-local-printer'
12594         * doc/misc/ses.texi (Printer functions): Fix whitespace between
12595         sentences and punctuation.  Add an index entry for
12596         'ses-define-local-printer'.
12598 2015-12-26  Shakthi Kannan  <shakthimaan@gmail.com>
12600         Document 'ert-summarize-tests-batch-and-exit'
12602         * doc/misc/ert.texi (Running Tests in Batch Mode): Document
12603         'ert-summarize-tests-batch-and-exit'.
12605 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12607         Avoid assertion violation in unbind_to
12609         * src/eval.c (unbind_to) <SPECPDL_LET>: Avoid assertion violation
12610         if we get here with an object that is not a symbol.  (Bug#14412)
12612 2015-12-25  Andreas Schwab  <schwab@linux-m68k.org>
12614         Don't treat /foo/bar:mumble as ange-ftp address
12616                 * lisp/net/browse-url.el (browse-url-filename-alist): Match colons
12617                 only in the first component.  (bug#5362)
12619 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12621         Follow <meta> redirects in eww
12623         Merge conflict, but I think I resolved it.
12625             Follow meta refresh tags in eww
12627             * eww.el (eww-tag-meta): Follow meta refresh tags (bug#22234).
12629         Backport:
12631 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12633         Allow http://user:pass@foo/ URLs again
12635         * lisp/url/url-auth.el (url-basic-auth): Allow explicit
12636         user/passwords in URLs (bug#19046).
12638         Backport:
12640         (cherry picked from commit b563715a2db265517d5a77f165a42afa1e233fdd)
12642 2015-12-25  Samer Masterson  <samer@samertm.com>
12644         Autoload url-insert-buffer-contents
12646         * lisp/url/url-handlers.el: Add autoload cookie so that
12647         `package-list-packages' doesn't bug out (bug#21927) (tiny change)
12649         Backport:
12651         (cherry picked from commit 7a7b5b492ff9929eecd90c4564db6fbf3b192323)
12653 2015-12-25  Eli Zaretskii  <eliz@gnu.org>
12655         Make sure *scratch* etc. use forward slashes in its default-directory
12657         * lisp/startup.el (normal-top-level): On MS-Windows, convert
12658         backslashes to forward slashes while decoding default-directory
12659         of the initially-created buffers.
12661 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12663         More eww file name coding fixes
12665         * eww.el (eww-decode-url-file-name): Use the base coding
12666         system to check for encodability.
12668         Backport:
12670         (cherry picked from commit a8627008abe4ab339df19b417776da28b3ce0fc7)
12672 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12674         Always save eww history
12676         * eww.el (eww-setup-buffer): Always save history, even when
12677         called from outside the eww buffer (bug#19638).
12679         Backport:
12681         (cherry picked from commit 2a0f18d9b6ce0ccce3d9c4a4a3b5743bae71b41e)
12683 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12685         Default web pages to right-to-left
12687         * eww.el (eww-mode): Most web pages are left-to-right, so make
12688         that the default (bug#19801).
12690         * shr.el (shr-tag-html): Respect "dir" attributes
12691         (left-to-right, right-to-left).
12693         Backport:
12695         (cherry picked from commit 9e089ec8a380ec3758fcf1564c5f86dc92c68c2a)
12697 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12699         Make toggling checkboxes work again
12701         * eww.el (eww-update-field): Make toggling checkboxes work
12702         again (bug#21881).
12704         Backport:
12706         (cherry picked from commit 5e56f606952e5e81b4d3a93ea70e791b74b33041)
12708 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12710         Don't store cookies with empty names
12712         * lisp/url/url-cookie.el (url-cookie-store): Refuse to store
12713         cookies with empty names (bug#21936).
12715         Backport:
12717         (cherry picked from commit 9f0fd7cb1aec3eb9e2e0f7b8854c30870286d96c)
12719 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12721         Stop rendering HTML before specdlr exhaustion
12723         Fixes: 22117
12725         * shr.el (shr-descend): Stop rendering before we run out of
12726         specpdl room (bug#22117).
12728         Backport:
12730         (cherry picked from commit 248da292fe46224b0b5a79b632c89cf4de2c2081)
12732 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12734         Use cl-reduce, not reduce.
12736         Backport:
12738         (cherry picked from commit fe4606f93b91ff3d046aee0cf21ecc277af7a786)
12740 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12742         Allow several <tbody> tags in shr
12744         * shr.el (shr-table-body): New function to find the real body
12745         of a table.
12746         (shr-tag-table): Use it to render several <tbody> tags in a
12747         table (bug#22170).
12749         Backport:
12751         (cherry picked from commit cdaf33029d6620073833876d76056045ecfbc7c4)
12753 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12755         Make prettier unique file names in eww
12757         (eww-make-unique-file-name): Make unique file names by making
12758         files like foo(2).jpg instead of foo(1)(2).jpg.
12760         Backport:
12762         (cherry picked from commit edfdd0a6cbdfa9e5e4bd0553e2b489401ca39266)
12764 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12766         Decode hex-encoded URLs before using them as file names
12768         * eww.el (eww-decode-url-file-name): New function.
12769         (eww-download-callback): Use it to decode file names before
12770         saving them.
12772         Backport:
12774         (cherry picked from commit af22a010d87516c2a646572fb27512c03057784f)
12776 2015-12-25  Ashish SHUKLA  <ashish.is@lostca.se>
12778         Add FreeBSD cert bundle
12780         * doc/misc/emacs-gnutls.texi (Help For Users): Document
12781         FreeBSD bundle.
12783         * lisp/net/gnutls.el (gnutls-trustfiles): Add FreeBSD cert bundle.
12785         Backport:
12787         (cherry picked from commit 60c0f1a18ad88d6dc1a8f4ee5d9d18940eaeb6f7)
12789 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12791         Ignore invalid SVG images
12793         * shr.el (shr-tag-svg): Ignore SVG images that have no width
12794         or height, because these can't be displayed by ImageMagick,
12795         anyway.
12797         Backport:
12799         (cherry picked from commit 821107d53c2e390240d25c036b99ebbf9b4a93b6)
12801 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12803         shr table rendering fix
12805         * shr.el (shr-tag-table): Allow rendering body-less tables
12806         that have headers.
12808         Backport:
12810         (cherry picked from commit b05471e42c17e02c56c87d7599ada0c124a5fe09)
12812 2015-12-25  Eli Zaretskii  <eliz@gnu.org>
12814         Restore info about the build host in bug reports
12816         * lisp/mail/emacsbug.el (report-emacs-bug): Report the system on
12817         which Emacs was built.  This is important information for
12818         investigating bug reports reported by users who don't build their
12819         Emacs.
12821 2015-12-25  Eli Zaretskii  <eliz@gnu.org>
12823         Fix bootstrap broken by changes related to OS X file-name encoding
12825         * lisp/international/ucs-normalize.el (eval-when-compile): Make
12826         sure char-code-property-alist includes elements that allow access
12827         to 'decomposition' and 'canonical-combining-class' Unicode
12828         properties, as compiling ucs-normalize.el requires that.
12829         * lisp/loadup.el (featurep 'ns): Load ucs-normalize and ns-win
12830         only of charprop.el was already loaded.
12832         * src/Makefile.in ($(lispsource)/international/ucs-normalize.elc):
12833         New order-only dependency.
12835 2015-12-25  Leo Liu  <sdl.web@gmail.com>
12837         * lisp/ido.el (ido-add-virtual-buffers-to-list): Use bookmark-get-filename.
12839 2015-12-25  Michael Albinus  <michael.albinus@gmx.de>
12841         Make tramp-test29-vc-registered more robust
12843         * test/automated/tramp-tests.el (tramp-test29-vc-registered):
12844         Move `bzr' case down.  Skip test when `vc-create-repo' fails.
12845         Remove instrumentation.
12847 2015-12-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12849         * lisp/term/x-win.el (x-gtk-stock-map): Fix typo.
12851 2015-12-24  Katsumi Yamaoka  <yamaoka@jpl.org>
12853         Fix `gnus-union' so as to behave like `cl-union'
12855         * lisp/gnus/gnus-group.el (gnus-group-prepare-flat):
12856         Make gnus-union use `equal' to compare items in lists.
12858         * lisp/gnus/gnus-util.el (gnus-union):
12859         Make it behave like cl-union partially.
12861 2015-12-23  Paul Eggert  <eggert@cs.ucla.edu>
12863         Fix dired.c typo with ptrdiff_t vs Lisp_Object
12865         * src/dired.c (file_name_completion): Don't assume Lisp_Object is
12866         an integer type, fixing a problem introduced in the recent fix for
12867         Bug#22169.
12869 2015-12-23  Eli Zaretskii  <eliz@gnu.org>
12871         Document default process sentinel more prominently
12873         * doc/lispref/processes.texi (Asynchronous Processes): Mention the
12874         defaults for process filter and sentinel.  Provide cross-references.
12875         (Process Information): Provide cross-references to where filters
12876         and sentinels are described.
12877         (Filter Functions): Add an index entry for "default filter".
12878         (Sentinels): Add a few status messages not documented previously.
12879         Resolve the "killed" confusion.  Document and describe the default
12880         sentinel.  (Bug#22220)
12882 2015-12-23  Eli Zaretskii  <eliz@gnu.org>
12884         Fix file-name completion on OS X
12886         * src/dired.c (file_name_completion): Reject false matches due to
12887         file-name-coding-systems that decompose characters when encoding
12888         file names, by comparing decoded file names as well.  (Bug#22169)
12889         (syms_of_dired) <Qdecomposed_characters>: New DEFSYM.
12891         * lisp/international/ucs-normalize.el (utf-8-hfs): Give it a
12892         non-nil 'decomposed-characters' property.
12894 2015-12-23  Anders Lindgren  <andlind@gmail.com>
12896         File-name completion of non-ASCII characters on OS X (bug#22169)
12898         The coding system `utf-8-nfd', locally defined in ns-win.el,
12899         didn't provide a :pre-write-conversion method, causing file name
12900         completion of non-ASCII characters to fail.  Solved by using the
12901         `utf-8-hfs' coding system provided by `ucs-normalize'.
12903         * lisp/loadup.el: Load international/ucs-normalize (when building
12904         for ns).
12906         * lisp/term/ns-win.el (utf-8-nfd): Made `utf-8-nfd' as alias for
12907         `utf-8-hfs' and removed the old implementation.  Set `utf-8-hfs'
12908         as the file name coding system.
12910         * src/nsfns.m (ns-convert-utf8-nfd-to-nfc): Removed.
12912 2015-12-23  Tom Tromey  <tom@tromey.com>
12914         Fix bug #18588 by making bug-reference-bug-regexp more lenient
12916         * lisp/progmodes/bug-reference.el (bug-reference-bug-regexp): Accept
12917         "bug NNNN".  (Bug #18588)
12919 2015-12-23  Tom Tromey  <tom@tromey.com>
12921         add some cl-* aliases to lisp-mode imenu
12923         * (lisp-imenu-generic-expression): Add cl-define-compiler-macro,
12924         cl-defgeneric, and cl-defmethod.
12926 2015-12-22  Tom Tromey  <tom@tromey.com>
12928         Make a variable buffer-local
12930         * lisp/generic-x.el (generic-rul-mode-setup-function): Make
12931         font-lock-syntax-table buffer-local.  (Bug #21627)
12933 2015-12-22  Eli Zaretskii  <eliz@gnu.org>
12935         Fix decoding of text in URLs retrieved by EWW
12937         * lisp/net/eww.el (eww-render): Pass 'charset' to
12938         'eww-display-raw'.  Use the value of 'last-coding-system-used', if
12939         non-nil, to set 'buffer-file-coding-system' of the buffer where we
12940         show the URL.
12941         (eww-display-html, eww-display-raw): Decode the text correctly,
12942         using the charset found in the headers, and defaulting to UTF-8.
12943         If the user told us to use a specific encoding, override the
12944         charset from the headers.  (Bug#22222)
12946 2015-12-22  Alan Mackenzie  <acm@muc.de>
12948         Fix a coding error in c-forward-<>-arglist-recur.  Fixes bug#22156
12950         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur): Remove unused
12951         variable `tmp'.
12952         After a failed search for a matching ">", restore point before continuing.
12954 2015-12-22  Michael Albinus  <michael.albinus@gmx.de>
12956         Instrument Tramp tests
12958         * test/automated/tramp-tests.el (tramp-test29-vc-registered)
12959         (tramp--test-utf8): Instrument tests.
12961 2015-12-22  Martin Rudalics  <rudalics@gmx.at>
12963         Fix `display-buffer' call in `display-message-or-buffer' (Bug#22221)
12965         * lisp/simple.el (display-message-or-buffer): Call
12966         `display-buffer' with ACTION instead of NOT-THIS-WINDOW
12967         (Bug#22221).
12969 2015-12-22  Juri Linkov  <juri@linkov.net>
12971         * lisp/saveplace.el (toggle-save-place, save-place-to-alist)
12973         (save-places-to-alist, save-place-dired-hook):
12974         Check for dired-subdir-alist.  (Bug#19851)
12976 2015-12-21  Paul Eggert  <eggert@cs.ucla.edu>
12978         Add FIXME comment re stack overflow and modules
12980 2015-12-21  Paul Eggert  <eggert@cs.ucla.edu>
12982         Revert some recent emacs-module commentary
12984         Most of the recently-added commentary was incorrect, due to the
12985         possibility of stack overflow.
12987 2015-12-21  Paul Eggert  <eggert@cs.ucla.edu>
12989         Spelling fix: prefer "cooperate" to "co-operate"
12991 2015-12-21  Paul Eggert  <eggert@cs.ucla.edu>
12993         Port undo fixes to -fno-common
12995         Port recent fix for Bug#21968 to platforms like 'gcc -fno-common'.
12996         * src/keyboard.c, src/keyboard.h (point_before_last_command_or_undo)
12997         (buffer_before_last_command_or_undo):
12998         Declare in keyboard.h, and define in keyboard.c,
12999         instead of assuming the traditional Unix relaxed ref-def linkage.
13001 2015-12-20  Philipp Stephani  <phst@google.com>
13003         Improve commentary for emacs-module.c
13005         * src/lisp.h: Document emacs-module.c assumptions about EQ and NILP.
13006         * src/emacs-module.c (module_non_local_exit_get): Document that we
13007         cannot use the current implementation.
13008         (module_is_not_nil, module_eq): Document assumptions about EQ and
13009         NILP.
13011 2015-12-20  Michael Albinus  <michael.albinus@gmx.de>
13013         Suppress test on Mac OS X
13015         * test/automated/tramp-tests.el (tramp--test-darwin-p): New defun.
13016         (tramp--test-utf8): Use it.
13018 2015-12-20  Alan Mackenzie  <acm@muc.de>
13020         Merge branch 'scratch/follow' into emacs-25
13022         This allows Isearch, etc., to work well when Follow Mode is active.
13024 2015-12-19  Michael Albinus  <michael.albinus@gmx.de>
13026         * lisp/net/tramp-sh.el (tramp-get-ls-command-with-w-option): Improve check.
13028 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13030         Fix last commit
13032         * doc/emacs/rmail.texi (Rmail Deletion): Document new behavior of 'u'
13033         with numeric argument.
13035 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13037         Document new features of Rmail
13039         * doc/emacs/rmail.texi (Rmail Summary Edit, Rmail Deletion):
13040         Document new behavior of 'd' and 'C-d' with numeric argument.
13041         (Rmail Display): Document the rendering of HTML MIME parts.
13043 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13045         Improve documentation of new cl-lib functions
13047         * doc/misc/cl.texi (Predicates on Numbers, Numerical Functions):
13048         Fix wording.
13050 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13052         Document the new feature of 'minibuffer-with-setup-hook'
13054         * lisp/files.el (minibuffer-with-setup-hook): Clarify how FUN is
13055         added to `minibuffer-setup-hook'.
13057 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13059         Document new features of Font Lock
13061         * doc/lispref/modes.texi (Other Font Lock Variables): Document
13062         'font-lock-flush-function' and 'font-lock-ensure-function'.
13063         (Font Lock Basics): Document the basic fontification functions
13064         referenced in "Other Font Lock Variables".
13066         * lisp/font-lock.el (font-lock-flush, font-lock-ensure): Doc fix.
13068 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13070         Document new features of Rectangle mode
13072         * doc/emacs/killing.texi (Rectangles): Document "C-x C-x" in
13073         rectangle-mark-mode.
13075 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13077         Manual followup to last change
13079         * doc/lispref/display.texi (Displaying Messages): Sync with the
13080         doc string.  (Bug#22210)
13082 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13084         Clarify doc string of 'display-message-or-buffer'
13086         * lisp/simple.el (display-message-or-buffer): Doc fix.  Suggested
13087         by Sebastian Wiesner <swiesner@lunaryorn.com>.  (Bug#22210)
13089 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13091         * doc/emacs/emacs.texi (Top): Update top-level menus.
13093         * doc/lispref/elisp.texi (Top): Update top-level menus.
13095 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13097         Document how to avoid file-local variables that aren't
13099         * doc/emacs/custom.texi (Specifying File Variables): Describe how
13100         to prevent Emacs from interpreting unrelated text as file-local
13101         variables.  (Bug#22166)
13103 2015-12-19  Dave Thomas  <dave@pragprog.org>  (tiny change)
13105         Fix a typo in eterm-color's termcap entry
13107         * lisp/term.el (term-termcap-format): Fix a typo in the "ue="
13108         entry.  (Bug#22184)
13110 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13112         Allow 'browse-url-emacs' visit non-existent URLs
13114         * lisp/url/url-handlers.el (url-insert-file-contents): Don't
13115         signal an error if VISIT is non-nil, to more faithfully emulate
13116         the behavior of 'insert-file-contents'.  (Bug#22160)
13118 2015-12-19  Paul Eggert  <eggert@cs.ucla.edu>
13120         Remove SunOS 4.x cruft
13122         Support for SunOS 4.x was removed in Emacs 23 but some cruft was left behind.
13123         * lib-src/pop.c [sun]: Remove no-longer-needed include.
13124         * lwlib/xlwmenu.c (SUNSO41): Remove.
13126 2015-12-19  Paul Eggert  <eggert@cs.ucla.edu>
13128         Merge from gnulib
13130         This mostly commentary fixes.
13131         * doc/misc/texinfo.tex, lib/intprops.h: Copy from gnulib.
13132         * lib/gnulib.mk: Regenerate with new gnulib-tool.
13134 2015-12-18  Michael Albinus  <michael.albinus@gmx.de>
13136         Minor fixes in Tramp
13138         * lisp/net/tramp-sh.el (tramp-do-file-attributes-with-ls):
13139         Reorder ls arguments.
13141         * lisp/net/tramp.el (tramp-dissect-file-name): Fix docstring.
13143 2015-12-18  Michael Albinus  <michael.albinus@gmx.de>
13145         Make tramp a built-in package
13147         * lisp/finder.el (finder-compile-keywords): Update
13148         `package--builtins' also when Version: keyword is available.
13150         * lisp/net/trampver.el: Add Version: keyword.
13151         (tramp-version): Change it to "2.2.13.25.1", in order to be
13152         compatible with `version-to-list'.
13154 2015-12-18  Lele Gaifax  <lele@metapensiero.it>
13156         * etc/tutorials/TUTORIAL.it: Update and fix typos.
13158 2015-12-18  Alan Mackenzie  <acm@muc.de>
13160         Rename `recenter-group' to `recenter-window-group'
13162         * doc/lispref/windows.texi (Textual Scrolling)
13163         * lisp/window.el (top level, recenter-group)
13164         * lisp/follow.el (follow-mode)
13165         * lisp/isearch.el (isearch-back-into-window): Rename `recenter-group' to
13166         `recenter-window-group' and `recenter-group-function' to
13167         `recenter-window-group-function'.
13169 2015-12-18  Eli Zaretskii  <eliz@gnu.org>
13171         Fix vertical-motion in tabulated-list mode
13173         * src/indent.c (Fvertical_motion): When moving from line beginning
13174         to point under line truncation, assume overshoot by one line only
13175         if point actually lies beyond the window's right margin.
13176         (Bug#22194)
13178 2015-12-18  Martin Rudalics  <rudalics@gmx.at>
13180         Don't have help functions call x-display-pixel-width/-height on ttys
13182         * lisp/help.el (temp-buffer-max-height, temp-buffer-max-width):
13183         Don't call x-display-pixel-width/-height on ttys.
13185 2015-12-18  Dmitry Gutov  <dgutov@yandex.ru>
13187         Use 'hg id' in vc-hg-previous-revision
13189         * lisp/vc/vc-hg.el (vc-hg-previous-revision):
13190         Use 'hg id' to retrieve it (bug#22032).
13192 2015-12-17  Alan Mackenzie  <acm@muc.de>
13194         * lisp/follow.el (follow-sit-for): Remove (it's redundant).
13196 2015-12-17  Eli Zaretskii  <eliz@gnu.org>
13198         Fix a typo in the Emacs manual
13200         * doc/emacs/trouble.texi (Sending Patches): Fix a typo.  Reported
13201         by Lele Gaifax <lele@metapensiero.it>.  (Bug#22193)
13203 2015-12-17  Eli Zaretskii  <eliz@gnu.org>
13205         Fix parsing netrc entries with ports
13207         * lisp/gnus/auth-source.el (auth-source-ensure-strings): Don't
13208         make a list out of 't'.  (Bug#22188)
13210         * test/automated/auth-source-tests.el
13211         (auth-source-test-netrc-parse-entry): New test.
13213 2015-12-17  Paul Eggert  <eggert@cs.ucla.edu>
13215         Fix typo in Doug Lea malloc configure log
13217         * configure.ac (emacs_cv_var_doug_lea_malloc):
13218         Fix typo that confused the log output of 'configure'.
13220 2015-12-16  Nicolas Petton  <nicolas@petton.fr>
13222         * etc/NEWS: Mention the new pcase patterns `seq' and `map'.
13224 2015-12-16  Alan Mackenzie  <acm@muc.de>
13226         * etc/NEWS: Move entry on pcase to correct section
13228         (Accidentally omitted from previous commit)
13230 2015-12-16  Alan Mackenzie  <acm@muc.de>
13232         Add documentation for changes to Show Paren mode.
13234         * lisp/paren.el (show-paren-highlight-openparen): Enhance doc string.
13236         * doc/emacs/programs.texi (Matching): Add descriptions of some pertinent user
13237         options, including the new show-paren-when-point-inside-paren and
13238         show-paren-when-point-in-periphery.
13240         * etc/NEWS (.. Specialized Modes ...): Add an entry for Show Paren mode.
13241         Move an entry on pcase to the Lisp Changes section.
13243 2015-12-16  Eli Zaretskii  <eliz@gnu.org>
13245         Document Eldoc changes
13247         * doc/emacs/programs.texi (Lisp Doc): Document Global Eldoc mode.
13249 2015-12-16  Eli Zaretskii  <eliz@gnu.org>
13251         Fix invocation of Python and Guile interpreters from gdb-mi
13253         * lisp/progmodes/gdb-mi.el (gdb-control-commands-regexp): Add
13254         commands for interactive Python and Guile interpreters.
13255         (gdb-send): Recognize various ways of exiting from Python and
13256         Guile interpreters and returning to GDB.  For details, see
13257         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00693.html
13258         and http://stackoverflow.com/questions/31514741.
13260 2015-12-16  Paul Eggert  <eggert@cs.ucla.edu>
13262         Remove attempt to use C11 threads
13264         C11 threads are not needed for Emacs now, and their use is causing
13265         hassles on FreeBSD 10.x.  Problem reported by Ashish SHUKLA in:
13266         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00648.html
13267         * configure.ac: Do not check for C11 threads. Remove unnecessary
13268         fiddling with CPPFLAGS when configuring pthreads.
13269         * src/emacs-module.c (main_thread, check_main_thread)
13270         (module_init): Do not worry about C11 threads.
13272 2015-12-15  Michael Albinus  <michael.albinus@gmx.de>
13274         Set utf8 encoding with stty in Tramp
13276         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
13277         Move up uname check.  Handle Mac OS X eol encoding.  Set utf8
13278         encoding with stty.
13280 2015-12-15  Alan Mackenzie  <acm@muc.de>
13282         Tidy up documentation associated with window groups.
13284         * doc/lispref/windows.texi (Basic Windows): Add an @anchor for "Window
13285         Groups".  Correct example function to `window-group-start'.
13286         (Window Start and End, Textual scrolling): Point to the new anchor.  State
13287         that (most of) the args in window group functions have the same meaning as for
13288         the corresponding window primitives.
13290         * doc/lispref/positions.texi (Screen Lines).  Same as above.
13292 2015-12-15  Michael Albinus  <michael.albinus@gmx.de>
13294         Complete last commit
13296         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
13297         Move uname check up.  Handle Mac OS X eol encoding.
13299 2015-12-15  Michael Albinus  <michael.albinus@gmx.de>
13301         Handle Mac OS X eol encoding in Tramp
13303         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
13304         Handle Mac OS X eol encoding.
13306 2015-12-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
13308         Fix variable name typo in compute_tip_xy
13310         * src/w32fns.c (compute_tip_xy):
13311         * src/xfns.c (compute_tip_xy): Modify *root_x instead of *root_y
13312         when `right' is integer.
13314 2015-12-14  foudfou  <foudil.newbie+git@gmail.com>
13316         * lisp/ibuffer.el: Add ability to (un-)mark or delete buffers in the region.
13318 2015-12-14  Tassilo Horn  <tsdh@gnu.org>
13320         Revert "Fix rx matcher overflow without limiting"
13322         This reverts commit fe27e037663d36be3e5741c2ce86ab4ee8017db1.
13324 2015-12-14  Alan Mackenzie  <acm@muc.de>
13326         Ispell: Bind isearch-regexp-function to nil around call to isearch..-new-loop
13328         * lisp/textmodes/ispell.el (ispell-highlight-spelling-error-overlay): bind
13329         isearch-regexp-function to nil around call to isearch-lazy-highligh-new-loop.
13331 2015-12-14  Tassilo Horn  <tsdh@gnu.org>
13333         Fix rx matcher overflow without limiting
13335         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Improve last
13336         change to the regexp without imposing a limit on the length of the
13337         options.
13339 2015-12-14  Alan Mackenzie  <acm@muc.de>
13341         Enhance ispell-skip-region-alist by generating part of it at runtime.
13343         * lisp/textmodes/ispell.el (ispell--\\w-filter, ispell--make-\\w-expression)
13344         (ispell--make-filename-or-URL-re): New functions which generate a regexp.
13345         (ispell-skip-region-alist): Remove the bit that matches a filename/URL, etc.
13346         (ispell-begin-skip-region-regexp, ispell-skip-region-list, ispell-message):
13347         Include the result of ispell--make-filename-or-URL-re in regexps.
13349 2015-12-14  Glenn Morris  <rgm@gnu.org>
13351         * build-aux/gitlog-to-emacslog: Ignore more pointless merge commits.
13353 2015-12-14  Alan Mackenzie  <acm@muc.de>
13355         Replace GROUP argument in six window primitives by new functions.
13357         * doc/lispref/windows.texi (Window Start and End, Textual Scrolling)
13358         * doc/lispref/positions.texi (Screen Lines): Remove optional GROUP argument
13359         from description of six window functions.  Add in description of new functions
13360         window-group-start, window-group-end, set-window-group-start,
13361         pos-visible-in-window-group-p, recenter-group and move-to-window-group-line,
13362         together with the six variables indirecting to the pertinent group
13363         functions.
13365         * src/window.c
13366         * src/keyboard.c: Revert the commit from 2015-11-11 12:02:48, in so far as it
13367         applies to these two files, which added the GROUP argument to six window
13368         primitives.
13370         * lisp/follow.el (follow-mode): Use updated variable names for the indirected
13371         functions.
13373         * lisp/isearch.el (isearch-update, isearch-done, isearch-string-out-of-window)
13374         (isearch-back-into-window, isearch-lazy-highlight-new-loop)
13375         (isearch-lazy-highlight-search, isearch-lazy-highlight-update): Replace calls
13376         to window primitives (e.g. window-start) with a GROUP argument by calls to
13377         new functions (e.g. window-group-start).
13379         * lisp/ispell.el (ispell-command-loop): Replace call to
13380         pos-visible-in-window-p with pos-visible-in-window-group-p.
13382         * lisp/window.el (window-group-start, window-group-end)
13383         (set-window-group-start, recenter-group, pos-visible-in-window-group-p)
13384         (selected-window-group, move-to-window-group-line): New functions.
13385         (window-group-start-function, window-group-end-function)
13386         (set-window-group-start-function, recenter-group-function)
13387         (pos-visible-in-window-group-p-function, selected-window-group-function)
13388         (move-to-window-group-line-function): New variables.
13390 2015-12-14  Vitorio Miguel  <vdrbandeiras@gmail.com>  (tiny change)
13392         * etc/tutorials/TUTORIAL.pt_BR: Fix a typo.  (Bug#22165)
13394 2015-12-13  Eli Zaretskii  <eliz@gnu.org>
13396         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
13398 2015-12-13  Tassilo Horn  <tsdh@gnu.org>
13400         Improve regex to not trigger stack overflow
13402         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Improve regex in
13403         order not to trigger a stack overflow in regex matcher with unbalanced
13404         brackets (bug#22146).
13406 2015-12-13  Eli Zaretskii  <eliz@gnu.org>
13408         Fix visiting files with raw-text
13410         * src/fileio.c (Finsert_file_contents): Fix setting buffer unibyte
13411         when some stuff was actually read.  (Bug#22162)
13413 2015-12-13  Tassilo Horn  <tsdh@gnu.org>
13415         Fix regex matching keyval labels
13417         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Fix regexp
13418         matching keyval labels.
13420 2015-12-13  Michael Albinus  <michael.albinus@gmx.de>
13422         * lisp/ido.el (ido-file-name-all-completions-1): Do not raise an error
13424         ... in case of Tramp.  (Bug#20821)
13426 2015-12-13  Paul Eggert  <eggert@cs.ucla.edu>
13428         Fix performance regression with gcc -O0
13430         This fixes the smaller performance hit that I noted in:
13431         https://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00357.html
13432         * src/alloc.c (macro_XPNTR_OR_SYMBOL_OFFSET, macro_XPNTR):
13433         * src/puresize.h (puresize_h_PURE_P)
13434         (puresize_h_CHECK_IMPURE):
13435         New macros, with the old contents of the functions.
13436         * src/alloc.c (XPNTR_OR_SYMBOL_OFFSET, XPNTR):
13437         * src/puresize.h (PURE_P, CHECK_IMPURE):
13438         Use the new macros.  Also macros, if DEFINE_KEY_OPS_AS_MACROS.
13439         * src/conf_post.h (ATTRIBUTE_UNUSED):
13440         * src/lisp.h (DEFINE_KEY_OPS_AS_MACROS): New macros.
13442 2015-12-12  Artur Malabarba  <bruce.connor.am@gmail.com>
13444         * lisp/emacs-lisp/package.el (package-unpack): Security check
13446         Check that we received the package we were offered.
13448 2015-12-12  Artur Malabarba  <bruce.connor.am@gmail.com>
13450         * lisp/emacs-lisp/package.el (package--compile): Don't activate
13452         `package-unpack' takes care of all activations now (other than
13453         `package-initialize).  `package--compile' now only compiles.
13455 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
13457         Document the new bindings of <UP> and <DOWN> in the minibuffer
13459         * doc/emacs/mini.texi (Minibuffer History): Describe the new
13460         bindings of <UP> and <DOWN> in the minibuffer.
13462 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
13464         Document new features of Ido
13466         * doc/misc/ido.texi (Misc): Document 'C-S-b'.
13468 2015-12-12  Martin Rudalics  <rudalics@gmx.at>
13470         Fix frame height calculations with added menu bar on Windows (Bug#22105)
13472         * doc/lispref/frames.texi (Parameter Access): Mention pitfalls
13473         when simultaneously specifying multiple parameters for
13474         `modify-frame-parameters' that all may change the frame's size.
13475         * src/w32fns.c (x_set_menu_bar_lines): Don't set
13476         windows_or_buffers_changed here.
13477         (my_create_tip_window, Fx_show_tip): Call AdjustWindowRect
13478         with third argument false.
13479         * src/w32menu.c (set_frame_menubar): Set
13480         windows_or_buffers_changed here.
13481         * src/w32term.c (x_set_window_size): Determine third argument of
13482         AdjustWindowRect from whether the frame has a menu bar and not
13483         from whether it wants one.
13485 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
13487         Document the change in interactive shell mode
13489         * doc/emacs/misc.texi (Interactive Shell): Document that the
13490         '*shell*' buffer by default displays in a new window.
13492 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
13494         Document new features of package.el
13496         * doc/emacs/package.texi (Package Menu): Document the 'external'
13497         status and the new menu commands.
13498         (Package Installation): Document archive priorities.
13500         * lisp/emacs-lisp/package.el (package-archive-priorities): Doc fix.
13501         (package-menu-hide-low-priority): Doc fix.
13503 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
13505         Update and document new features of xterm support
13507         * doc/emacs/frames.texi (Text-Only Mouse): Document that
13508         track-mouse is supported by newer xterm versions.
13510 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
13512         Document new features of Prettify Mode
13514         * doc/emacs/programs.texi (Misc for Programs): Document
13515         'prettify-symbols-compose-predicate' and
13516         'prettify-symbols-unprettify-at-point'.
13518         * lisp/progmodes/prog-mode.el (prettify-symbols-alist)
13519         (prettify-symbols-default-compose-p)
13520         (prettify-symbols-compose-predicate)
13521         (prettify-symbols--compose-symbol): Doc fixes.
13523 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
13525         Document multi-mode indentation facilities
13527         * doc/lispref/text.texi (Mode-Specific Indent): Document
13528         'prog-indentation-context', 'prog-first-column', and 'prog-widen'.
13530         * lisp/progmodes/prog-mode.el (prog-indentation-context)
13531         (prog-widen): Doc fixes.
13533 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
13535         Document 'vc-refresh-state'
13537         * doc/emacs/maintaining.texi (Version Control): Document
13538         'vc-refresh-state'.
13540         * lisp/vc/vc-hooks.el (vc-refresh-state): Doc fix.
13542 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
13544         Fix echo for "C-u"
13546         * src/keyboard.c (command_loop_1): Undo last change.  It caused
13547         duplicate echo of C-u.  (Bug#22107)
13549 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
13551         Avoid errors when creating files under SVN in new directory
13553         * lisp/vc/vc-svn.el (vc-svn-registered): Use
13554         file-accessible-directory-p, to avoid cd'ing to a non-existing
13555         directory, which signals an error on some systems.  (Bug#21984)
13556         (vc-svn-checkin): Call log-edit-extract-headers with 2 arguments.
13557         Use declare-function to avoid byte-compiler warnings.
13559 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
13561         Improve Lua support in etags
13563         * lib-src/etags.c (Lua_functions): Skip spaces before looking for
13564         "function".
13566         * etc/NEWS: Mention improved Lua support by 'etags'.
13568         * test/etags/lua-src/test.lua (test): Add tests for indented
13569         function definitions.
13570         * test/etags/ETAGS.good_1:
13571         * test/etags/ETAGS.good_2:
13572         * test/etags/ETAGS.good_3:
13573         * test/etags/ETAGS.good_4:
13574         * test/etags/ETAGS.good_5:
13575         * test/etags/ETAGS.good_6:
13576         * test/etags/CTAGS.good: Adapt to the modified Lua tests.
13578 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
13580         Fix 'this-command-keys' wrt prefix argument
13582         * src/keyboard.c (command_loop_1): Restore the feature whereby C-u
13583         was part of this-command-keys, but not of this-single-command-keys.
13584         (Bug#22107)
13586         * lisp/simple.el (internal-echo-keystrokes-prefix): Add
13587         commentary about the function's return value.
13589 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
13591         * lisp/files.el (load-library): Doc fix.  (Bug#22140)
13593 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
13595         Improve and document Ruby support in 'etags'
13597         * lib-src/etags.c (Ruby_suffixes): Add ".ruby".
13598         (Ruby_functions): Support "module" and overloaded operators.
13599         (Ruby_help): Mention "module".
13601         * test/etags/ruby-src/test.rb:
13602         * test/etags/ruby-src/test1.ru: New files.
13603         * test/etags/Makefile (RBSRC): New tests.
13604         (SRCS): Add ${RBSRC}.
13605         * test/etags/ETAGS.good_1:
13606         * test/etags/ETAGS.good_2:
13607         * test/etags/ETAGS.good_3:
13608         * test/etags/ETAGS.good_4:
13609         * test/etags/ETAGS.good_5:
13610         * test/etags/ETAGS.good_6:
13611         * test/etags/CTAGS.good: Adapt to the new Ruby tests.
13613         * doc/man/etags.1: Mention Ruby support.
13614         * etc/NEWS: Mention Ruby support.
13616 2015-12-11  Xi Lu  <lx@shellcodes.org>
13618         Initial support for Ruby in 'etags'
13620         * lib-src/etags.c <Ruby_suffixes>: New variable.
13621         (lang_names): Add an entry for Ruby.
13622         (Ruby_functions): New function.  (Bug#22116)
13624 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
13626         Clarify documentation of 'modify-frame-parameters'
13628         * doc/lispref/frames.texi (Parameter Access): Clarify what "ignored
13629         PARMs" mean for 'modify-frame-parameters'.
13631         * src/frame.c (Fmodify_frame_parameters): Clarify what "ignored
13632         PARMs" mean for this function.  (Bug#22104)
13634 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
13636         Fix setting buffer unibyte when reading from a device
13638         * src/fileio.c (Finsert_file_contents): Call Fset_buffer_multibyte
13639         to make a (possibly non-empty) buffer unibyte.  (Bug#22096)
13641 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
13643         Clarify documentation of 'values'
13645         * doc/lispref/eval.texi (Eval): Clarify that 'values' are not
13646         updated by any evaluation commands in 'lisp-interaction-mode'.
13647         (Bug#22056)
13649 2015-12-11  Anders Lindgren  <andlind@gmail.com>
13651         Fixed subversion vc error when opening file in new directory (bug#21984).
13653         * lisp/vc/vc-svn.el (vc-svn-registered): Check if directory exists.
13655 2015-12-09  Eli Zaretskii  <eliz@gnu.org>
13657         Yet another fix for when point ends up in invisible text
13659         * src/xdisp.c (redisplay_window): When someone forced
13660         window-start, and honoring that failed to show the cursor, try
13661         moving out of invisible text, before falling back to the middle of
13662         the window.  (Bug#22098)
13664 2015-12-09  Michael Albinus  <michael.albinus@gmx.de>
13666         Fix error in Tramp perl script for cygwin
13668         * lisp/net/tramp-sh.el (tramp-perl-file-truename): Do not raise an
13669         error if file doesn't exist.
13671 2015-12-09  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
13673         Remove font workaround for limited outdated versions
13675         * src/macfont.m (mac_font_descriptor_get_adjusted_weight): Remove
13676         workaround for HiraginoSans-W7 on OS X 10.11 and 10.11.1.
13678 2015-12-09  Anders Lindgren  <andlind@gmail.com>
13680         Don't add "." to load path (bug#21104)
13682         When configured with --enable-locallisppath=no, which is the
13683         default for OS X, the load-path incorrectly was populated with ".".
13685         * src/lread.c (init_lread): Don't call `decode_env_path' when
13686         PATH_SITELOADSEARCH is empty.
13688 2015-12-08  Artur Malabarba  <bruce.connor.am@gmail.com>
13690         * lisp/emacs-lisp/package.el (package--with-response-buffer):
13692         Search for the blank-line in the right buffer.
13694 2015-12-08  Glenn Morris  <rgm@gnu.org>
13696         * test/automated/simple-test.el (undo-auto-boundary-timer): Update
13697         for recent change.
13699 2015-12-08  Glenn Morris  <rgm@gnu.org>
13701         Fix some display-warning usage.
13703         * lisp/files.el (hack-local-variables, hack-dir-local-variables):
13704         * lisp/calendar/diary-lib.el (diary-include-files, diary-sexp-entry):
13705         * lisp/calendar/holidays.el (calendar-holiday-list):
13706         * lisp/mail/rmailout.el (rmail-output-read-file-name):
13707         Fix display-warning usage.
13709 2015-12-08  Glenn Morris  <rgm@gnu.org>
13711         * lisp/calendar/cal-html.el: Require diary-lib.
13713         (cal-html-list-diary-entries): Handle no diary.  (Bug#21994)
13715 2015-12-08  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
13717         Add Obsolete-since header to eudcb-ph.el
13719         * lisp/obsolete/eudcb-ph.el: Add Obsolete-since header.
13721 2015-12-07  Paul Eggert  <eggert@cs.ucla.edu>
13723         Spelling fixes
13725         * doc/misc/calc.texi (Predefined Units): Use the bland modern
13726         scientific style for spelling the units “ampere” and
13727         “angstrom” rather than the older style “Ampere” and
13728         “Ångstrom”.  The latter spelling was wrong anyway (it should
13729         have been “Ångström”).
13730         * lisp/emacs-lisp/ert.el (ert--explain-equal-rec):
13731         Fix misspelling of ‘atom’ in code.
13733 2015-12-07  Eli Zaretskii  <eliz@gnu.org>
13735         Improve documentation of kill commands
13737         * lisp/simple.el (region-extract-function, delete-backward-char)
13738         (delete-forward-char, kill-region, copy-region-as-kill)
13739         (kill-ring-save): Better document the optional argument REGION in
13740         the doc strings.  Mention in the doc strings that text put in the
13741         kill-ring can be filtered by 'filter-buffer-substring'.
13743         * doc/lispref/text.texi (Kill Functions): Mention that functions
13744         described in this subsection can filter text they put in the
13745         kill-ring.  Add a cross-reference to "Buffer Contents" and an
13746         index entry.  Document the optional argument 'region' and its
13747         effect.
13748         (Bug#21315)
13750 2015-12-07  Alan Mackenzie  <acm@muc.de>
13752         Further progress making Isearch, Ispell, Replace work with Follow Mode.
13754         * lisp/follow.el: (follow-mode): Remove references to sit*-for-function, which
13755         no longer exists.  Add follow-post-command-hook to  three special purpose
13756         hooks at setup, and remove them at tear down.
13758         * lisp/isearch.el: (isearch-update): invoke isearch-update-post-hook before
13759         isearch-lazy-highlight-new-loop.
13760         (isearch-lazy-highlight-new-loop): Restore this function to what it previously
13761         was, merging the functionality of isearch-lazy-highlight-maybe-new-loop into
13762         it.
13763         (isearch-lazy-highlight-maybe-new-loop): function removed.
13765         * lisp/replace.el: (replace-update-post-hook): New hook variable.
13766         (perform-replace): Add second (nil) argument to looking-back.  Invoke
13767         replace-update-post-hook before calling replace-highlight.
13769         * lisp/textmodes/ispell.el: (ispell-update-post-hook): New hook variable.
13770         (ispell-command-loop): invoke ispell-update-post-hook.  Add GROUP argument to
13771         call of pos-visible-in-window-p.
13772         (ispell-display-buffer): Place *Choices* window at the top of the last window
13773         in a window group.
13775 2015-12-07  Alan Mackenzie  <acm@muc.de>
13777         Amend doc of `mapconcat': it can take sequences, not merely strings.
13779         * doc/lispref/functions.texi (Mapping Functions): Amend the doc of `mapconcat'
13780         to say that SEPARATOR and the results from FUNCTION may be any character
13781         sequences, not just strings.  Add an @xref to "Sequences Arrays Vectors".
13783 2015-12-07  Michael Albinus  <michael.albinus@gmx.de>
13785         Fix an utf8 problem for Tramp on BSD
13787         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
13788         Make lax check for utf8.
13789         (tramp-get-remote-locale): Add "en_US.UTF-8" as candidate.
13791 2015-12-07  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
13793         Make eudcb-ph.el obsolete
13795         * doc/misc/eudc.texi: Bump version to 1.40.0.
13796         Remove PH/QI sections and mentions.
13797         * lisp/obsolete/eudcb-ph.el: Make obsolete.
13798         * lisp/net/eudc-vars.el (eudc-known-protocols): Remove ph.
13799         (eudc-ph-bbdb-conversion-alist): Make obsolete.
13800         * etc/NEWS: Mention this.  (Bug#21191)
13802 2015-12-07  Paul Eggert  <eggert@cs.ucla.edu>
13804         Remove overenthusiastic eassert
13806         * src/lisp.h (XSYMBOL): Remove eassert incorrectly added in
13807         previous change.  It breaks on MS-Windows --with-wide-int.
13808         Problem reported by Eli Zaretskii in:
13809         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00275.html
13811 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
13813         Pacify gcc -Wparentheses
13815         * src/xdisp.c (row_containing_pos): Reparenthesize.
13817 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
13819         Port mod-test to 32-bit Emacs --without-wide-int
13821         * modules/mod-test/test.el (mod-test-sum-test):
13822         Bring back the 2**29 tests, but port them to 32-bit Emacs
13823         --without-wide-int.
13825 2015-12-06  Michael Albinus  <michael.albinus@gmx.de>
13827         Fix minor Tramp problems found on BSD
13829         * lisp/net/tramp-sh.el (tramp-perl-file-truename): Do not append
13830         trailing slash.  Quote apostrophes.
13831         (tramp-sh-handle-file-truename): Do not append trailing slash in
13832         the "ls" case.
13833         (tramp-get-ls-command-with-w-option): New defun.
13834         (tramp-do-file-attributes-with-ls)
13835         (tramp-do-directory-files-and-attributes-with-stat): Use it.
13837         * test/automated/tramp-tests.el
13838         (tramp-test31-special-characters-with-perl)
13839         (tramp-test31-special-characters-with-ls)
13840         (tramp-test32-utf8-with-perl, tramp-test32-utf8-with-ls):
13841         Suppress also readlink.
13843 2015-12-06  Eli Zaretskii  <eliz@gnu.org>
13845         Fix cursor display when invisible text is at line beginning
13847         * src/xdisp.c (redisplay_window): When scrolling fails to show
13848         point, prefer using the desired matrix if possible for finding the
13849         fallback glyph row for displaying the cursor.  (Bug#22098)
13850         (row_containing_pos): Exit the loop as soon as we hit the first
13851         disabled glyph row.  Otherwise we risk accessing garbled data and
13852         departing to the no-no land.
13854 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
13856         Improve module interface when WIDE_EMACS_INT
13858         * src/emacs-module.c (plain_values): New constant.
13859         (module_nil): Now a constant.
13860         (Finternal_module_call, value_to_lisp_bits, lisp_to_value_bits)
13861         (syms_of_module): Use if, not #ifdef, so that both sides are
13862         checked at compile-time, and so that GCC doesn’t complain
13863         about an unused var in the typical case.  Also, depend on
13864         plain_values, not on WIDE_EMACS_INT; the code shouldn’t assume
13865         that WIDE_EMACS_INT implies !USE_LSB_TAG.
13866         (value_to_lisp_bits, lisp_to_value_bits): New functions.
13867         Sign-extend integers rather than zero-extending them, as small
13868         negative integers are more likely.
13869         (value_to_lisp, lisp_to_value): Rewrite in terms of the new *_bits
13870         functions.
13871         (HAVE_STRUCT_ATTRIBUTE_ALIGNED): Define to 0 if not already defined.
13872         (mark_modules): Remove.  All uses removed.
13873         (lisp_to_value): Don’t assume Fcons returns a pointer aligned
13874         to GCALIGNMENT.
13875         (syms_of_module): Check that module_nil converts to Qnil.
13876         * src/lisp.h (lisp_h_XSYMBOL, XSYMBOL): Use signed conversion, since
13877         we prefer signed to unsigned when either will do.
13878         (TAG_PTR): Sign-extend pointers when USE_LSB_TAG, as this is
13879         a bit better for emacs-module.c.
13881 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
13883         Port mod-test to x86-64 GNU/Linux running 32-bit
13885         * modules/mod-test/test.el (mod-test-sum-test):
13886         Don’t attempt to match descriptions to operating systems.
13887         It didn’t work on Fedora x86-64 running a 32-bit executable,
13888         and it’s not worth the trouble anyway.
13889         Port to 32-bit platforms by removing an assumption about
13890         fixnum widths.
13892 2015-12-06  Michael Albinus  <michael.albinus@gmx.de>
13894         Fix auto-revert-tests.el when filenotify isn't used
13896         * test/automated/auto-revert-tests.el (auto-revert--wait-for-revert):
13897         Make it working also when filenotify isn't used.
13899 2015-12-06  Juri Linkov  <juri@linkov.net>
13901         * lisp/textmodes/ispell.el (ispell-highlight-spelling-error-overlay):
13903         Let-bind isearch-regexp-function to nil.  (Bug#22097)
13905 2015-12-05  Artur Malabarba  <bruce.connor.am@gmail.com>
13907         * lisp/emacs-lisp/package.el: Don't install bad signatures (bug#22089)
13909         (package--with-response-buffer): NOERROR and ERROR-FORM only
13910         handle connection errors.
13911         (bad-signature): New error type.
13912         (package--check-signature-content): Use it.
13913         (package--check-signature): Properly distinguish connection errors
13914         from bad-signature errors.  Do the check for
13915         `package-check-signature' `allow-unsigned' here instead of forcing
13916         the callbacks to do it.  Add a new argument, UNWIND.
13917         (package--download-one-archive, package-install-from-archive):
13918         Update usage of `package--check-signature'.
13920 2015-12-05  Ulf Jasper  <ulf.jasper@web.de>
13922         Fix Bug#22092.
13924         * lisp/calendar/icalendar.el (icalendar--get-unfolded-buffer):
13925           Clean up inconsistent line endings. (Bug#22092)
13926           (icalendar--clean-up-line-endings): New.
13927         * test/automated/icalendar-tests.el (icalendar-real-world): Add test
13928           for Bug#22092.
13930 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
13932         Document 'bookmark-set-no-overwrite'
13934         * doc/emacs/regs.texi (Bookmarks): Document the new command
13935         'bookmark-set-no-overwrite' and its keybinding.
13937 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
13939         Document new binding of 'mouse-buffer-menu'
13941         * doc/emacs/buffers.texi (Buffer Menus): 'mouse-buffer-menu' is
13942         now also on C-F10.
13944 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
13946         Initial documentation of dynamic modules
13948         * doc/lispref/loading.texi (Dynamic Modules): New section with
13949         initial documentation for dynamic modules.
13950         * doc/lispref/elisp.texi (Top): Add "Dynamic Modules" to the
13951         detailed menu
13953         * etc/NEWS: Fix typos in dynamic modules' entry.
13955 2015-12-05  Artur Malabarba  <bruce.connor.am@gmail.com>
13957         Remove copyright statements from trivial test files
13959 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
13961         Add "Preliminaries" section to etc/DEBUG
13963         * etc/DEBUG: Add the "Preliminaries" section for GDB beginners.
13964         Most of the content was suggested by Phillip Lord
13965         <phillip.lord@russet.org.uk>.  Remove the section about debugging
13966         with the Visual Studio, as building Emacs with the Microsoft
13967         compilers is no longer supported.  Minor fixes in some other
13968         sections.
13970 2015-12-05  Alex Dunn  <dunn.alex@gmail.com>  (tiny change)
13972         Improve parsing of version strings
13974         * lisp/subr.el (version-regexp-alist): Allow "." as priority separator
13975         (version-to-list): More helpful error messages.
13976         (version-to-list): ".5" is valid (update docstring).  Make
13977         "22.8X3" invalid, as the doc string says.
13979         * test/automated/subr-tests.el (ert-test-version-parsing): New
13980         tests for version string processing.
13982 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
13984         Fix documentation of 'undo' changes
13986         * doc/lispref/text.texi (Undo): Minor wording changes.  Use US
13987         English conventions for spelling and whitespace between sentences.
13989         * etc/NEWS: Fix wording and spelling of undo-related entries.
13990         Mark them as documented.
13992 2015-12-05  Glenn Morris  <rgm@gnu.org>
13994         * lisp/net/net-utils.el: Small improvements.
13996         (net-utils--executable-find-sbin): New function.
13997         (ifconfig-program): Check sbin directories.
13998         Fallback to "ip".  (Bug#22091)
13999         (ifconfig-program-options): Check the actual program in use.
14000         (arp-program): Check sbin directories.
14002 2015-12-04  (tiny change) Arash Esbati  <esbati@gmx.de>  (tiny change)
14004         Fix wrong-type-argument integer-or-marker-p nil error
14006         * lisp/textmodes/reftex-auc.el (reftex-what-index-tag):
14007         Fix (wrong-type-argument integer-or-marker-p nil) error (bug#22077).
14009 2015-12-04  Alan Mackenzie  <acm@muc.de>
14011         Merge branch 'scratch/follow' of /home/acm/emacs/emacs.git/emacs-25 into scratch/follow
14013         Merge necessitated by a rebase operation.
14015 2015-12-04  Alan Mackenzie  <acm@muc.de>
14017         lisp/isearch.el: Eliminate macro isearch-call-message, replacing with funcall.
14019 2015-12-04  Alan Mackenzie  <acm@muc.de>
14021         First commit to scratch/follow.  Make Isearch work with Follow Mode, etc.
14023         doc/lispref/window.texi (Basic Windows): Add paragraph defining "Group of
14024         Windows" and new @defun selected-window-group.
14025         (Window Start and End): Describe new &optional parameter GROUP and
14026         ...-group-function for window-start, window-end, set-window-start, and
14027         pos-visible-in-window-p.
14028         (Textual Scrolling) Describe the same for recenter.
14029         doc/lispref/positions.texi (Screen Lines): Describe the same for
14030         move-to-window-line.
14032         src/window.c (Fwindow_start, Fwindow_end, Fset_window_start)
14033         (Fpos_visible_in_window_p, Frecenter, Fmove_to_window_line): To each, add ar
14034         new optional parameter "group".  At the beginning of each, check whether the
14035         corresponding ...-group-function is set to a function, and if so execute this
14036         function in place of the normal processing.
14037         (syms_of_window): Define symbols for the six new variables below.
14038         (window-start-group-function, window-end-group-function)
14039         (set-window-start-group-function, recenter-group-function)
14040         (pos-visible-in-window-p-group-function, move-to-window-line-group-function):
14041         New permanent local buffer local variables.
14042         src/keyboard.c (Fposn_at_point): Add extra parameter in call to
14043         Fpos_visible_in_window_p.
14045         lisp/window.el (selected-window-group-function): New permanent local buffer
14046         local variable.
14047         (selected-window-group): New function.
14049         lisp/follow.el (follow-mode): Set the ...-group-function variables at mode
14050         enable, kill them at mode disable.  Add/remove follow-after-change to/from
14051         after-change-functions.
14052         (follow-start-end-invalid): New variable.
14053         (follow-redisplay): Manipulate follow-start-end-invalid.
14054         (follow-after-change, follow-window-start, follow-window-end)
14055         (follow-set-window-start, follow-pos-visible-in-window-p)
14056         (follow-move-to-window-line, follow-sit-for): New functions.
14058         lisp/isearch.el (isearch-call-message): New macro.
14059         (isearch-update, with-isearch-suspended, isearch-del-char)
14060         (isearch-search-and-update, isearch-ring-adjust): Invoke above new macro.
14061         (with-isearch-suspended): Rearrange code such that isearch-call-message is
14062         invoked before point is moved.
14063         (isearch-message): Add comment about where point must be at function call.
14064         (isearch-search): Remove call to isearch-message.
14065         (isearch-lazy-highlight-window-group): New variable.
14066         (isearch-lazy-highlight-new-loop): Unconditionally start idle timer.  Move
14067         the battery of tests to ...
14068         (isearch-lazy-highlight-maybe-new-loop): New function, started by idle timer.
14069         Note: (sit-for 0) is still called.
14070         (isearch-lazy-highlight-update): Check membership of
14071         isearch-lazy-highlight-window-group.  Don't set the `window' overlay
14072         property.
14073         (isearch-update, isearch-done, isearch-string-out-of-window)
14074         (isearch-back-into-window, isearch-lazy-highlight-maybe-new-loop)
14075         (isearch-lazy-highlight-search, isearch-lazy-highlight-update)
14076         (isearch-lazy-highlight-update): Call the six amended primitives (see
14077         src/window.c above) with the new `group' argument set to t, to cooperate
14078         with Follow Mode.
14080 2015-12-04  Stefan Monnier  <monnier@iro.umontreal.ca>
14082         * lisp/emacs-lisp/ert.el: Prefer pcase over cl-typecase
14084         * lisp/emacs-lisp/ert.el (ert--should-error-handle-error)
14085         (ert--explain-format-atom, ert--explain-equal-rec)
14086         (ert--print-backtrace, ert-test-result-type-p, ert-select-tests)
14087         (ert--insert-human-readable-selector): Prefer pcase over cl-typecase.
14089 2015-12-04  Artur Malabarba  <bruce.connor.am@gmail.com>
14091         * lisp/character-fold.el: Remove special case-folding support
14093         (character-fold-to-regexp): Remove special code for
14094         case-folding.  Char-fold search still respects the
14095         `case-fold-search' variable (i.e., f matches F).  This only
14096         removes the code that was added to ensure that f also matched
14097         all chars that F matched.  For instance, after this commit, f
14098         no longer matches 𝔽.
14100         This was necessary because the logic created a regexp with
14101         2^(length of the string) redundant paths.  So, when a very
14102         long string "almost" matched, Emacs took a very long time to
14103         figure out that it didn't.  This became particularly relevant
14104         because isearch's lazy-highlight does a search bounded by (1-
14105         match-end) (which, in most circumstances, is a search that
14106         almost matches).  A recipe for this can be found in bug#22090.
14108 2015-12-04  Stefan Monnier  <monnier@iro.umontreal.ca>
14110         * lisp/emacs-lisp/cl-macs.el (character): Can't be negative
14112         Fixes (bug#21701)
14114 2015-12-04  Daiki Ueno  <ueno@gnu.org>
14116         lisp/gnus/qp.el: Don't replace "from " at bol
14118         * lisp/gnus/qp.el (quoted-printable-encode-region): Bind `case-fold-search'
14119         to nil when looking for "^From ".  Problem reported by Simon Josefsson.
14121 2015-12-03  Phillip Lord  <phillip.lord@russet.org.uk>
14123         Externalize some symbols in undo-auto
14125          * doc/lispref/text.texi: Update symbols.
14126          * lisp/simple.el (undo-auto--amalgamate,
14127            undo-auto--current-boundary-timer): Make symbols public.
14128          * src/cmds.c (Fself_insert_command,Fdelete_char): Call
14129            updated symbol.
14131 2015-12-03  Stefan Monnier  <monnier@iro.umontreal.ca>
14133         * lisp/emacs-lisp/smie.el (smie-next-sexp): Fix BOB "token"
14135 2015-12-03  Michael Albinus  <michael.albinus@gmx.de>
14137         Some error message improvements in tramp-sh.el
14139         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
14140         Suppress error messages for "mesg" and "biff" calls.
14141         (tramp-get-remote-path): Ignore errors when expanding
14142         `tramp-own-remote-path'.  Raise a warning instead.
14144 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
14146         Document 'nacl' value for 'system-type'
14148         * doc/lispref/os.texi (System Environment): Document the 'nacl'
14149         value of 'system-type'.
14151 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
14153         Document 'window-max-chars-per-line'
14155         * doc/lispref/windows.texi (Window Sizes): Document
14156         'window-max-chars-per-line'.
14158 2015-12-03  Artur Malabarba  <bruce.connor.am@gmail.com>
14160         Fix some file headers for the purpose of `package--builtins'
14162         * lisp/emacs-lisp/cl-preloaded.el
14163         * lisp/emacs-lisp/eieio-compat.el
14164         * lisp/net/sasl-scram-rfc.el: Add a "Package:" header
14166         * lisp/ielm.el: Fix summary line.
14168 2015-12-03  Artur Malabarba  <bruce.connor.am@gmail.com>
14170         * lisp/emacs-lisp/package.el (package-unpack): Load before compiling
14172         Reload any previously loaded package files before compiling
14173         the package (also reload the same files after compiling).
14174         This ensures that we have the most recent definitions during
14175         compilation, and avoids generating bad elc files when a macro
14176         changes and it is used in a different file from the one it's
14177         defined in.
14179 2015-12-03  Artur Malabarba  <bruce.connor.am@gmail.com>
14181         * lisp/emacs-lisp/package.el: Refactor package activation code
14183         (package-activate): Move code that activates dependencies into
14184         package-activate-1.
14185         (package--load-files-for-activation): New function.
14186         (package-activate-1): Add code for (optionally) activating
14187         dependencies, and move file-loading code into
14188         `package--load-files-for-activation'.
14190 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
14192         Document new font-related functionality
14194         * doc/lispref/display.texi (Low-Level Font): Document
14195         'default-font-width', 'default-font-height', 'window-font-width',
14196         and 'window-font-height'.
14198         * etc/NEWS: Move entries for 'default-font-width',
14199         'default-font-height', 'window-font-width', and 'window-font-height'
14200         to their place and mark them documented.
14202 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
14204         Fix documentation and implementation of 'directory-name-p'
14206         * lisp/files.el (directory-name-p): Modify to recognize
14207         backslashes on MS-Windows and MS-DOS.  Adjust the doc string
14208         accordingly.  Use '=', not char-equal, for comparison, as
14209         letter-case cannot possibly be an issue here.
14211         * doc/lispref/files.texi (Directory Names): Move the documentation
14212         of directory-name-p here from "Relative File Names".  Update the
14213         description per the changes in implementation.
14215         * etc/NEWS: Move the entry for 'directory-name-p' to its proper
14216         place and mark it documented.
14218 2015-12-02  Eli Zaretskii  <eliz@gnu.org>
14220         Minor copyedit in Emacs manual
14222         * doc/emacs/search.texi (Lax Search): Make wording about character
14223         folding by default less definitive.  (Bug#22043)
14225 2015-12-02  Eli Zaretskii  <eliz@gnu.org>
14227         More emacs-module.c fixes for wide ints
14229         * src/emacs-module.c (value_to_lisp) [WIDE_EMACS_INT]: Use
14230         unsigned data types to manipulate pointers, to avoid sign
14231         extension coming after us with a vengeance.
14233         * modules/mod-test/test.el (mod-test-sum-test): Add tests for
14234         Emacs with wide ints that verify integer values near the critical
14235         value that requires us to switch to a cons cell.
14237 2015-12-02  Stephen Leake  <stephen_leake@stephe-leake.org>
14239         Fix bug#22069 in cl-generic.el
14241         * lisp/emacs-lisp/cl-generic.el (cl-no-method): Remove %S; this string is
14242         not run thru `format'.
14244 2015-12-02  Dmitry Gutov  <dgutov@yandex.ru>
14246         APPEND etags--xref-backend to xref-backend-functions
14248         * lisp/progmodes/xref.el (xref-backend-functions):
14249         Use APPEND when adding the default element
14250         (http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00061.html).
14252 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
14254         More accurate documentation of lax whitespace matching
14256         * lisp/isearch.el (isearch-forward-word, isearch-forward-symbol)
14257         (word-search-backward, word-search-forward)
14258         (word-search-backward-lax, word-search-forward-lax): Mention in
14259         doc strings that toggling lax whitespace matching has no effect on
14260         these commands.
14262         * doc/emacs/search.texi (Word Search, Symbol Search): Clarify that
14263         lax whitespace matching has no effect on these commands.
14265 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
14267         Fix emacs-module.c for wide ints
14269         * src/emacs-module.c (lisp_to_value): Compare the produced value
14270         with the original Lisp object, not with the one potentially
14271         converted into a Lisp_Cons.  Fixes assertion violations when
14272         working with integers larger than fit into a 32-bit value.
14274         * modules/mod-test/test.el (mod-test-sum-test): Add tests for
14275         large integers, to test --with-wide-int.
14277 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
14279         Document 'directory-files-recursively'
14281         * lisp/files.el (directory-files-recursively): Doc fix.  Rename
14282         the argument MATCH to REGEXP, to be more explicit about its form.
14284         * doc/lispref/files.texi (Contents of Directories): Improve the
14285         documentation of 'directory-files-recursively'.  Add
14286         cross-references.
14288         * etc/NEWS: Move the entry for 'directory-files-recursively' to
14289         its place and mark it documented.
14291 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
14293         Document 'inhibit-read-only' property
14295         * doc/lispref/text.texi (Special Properties): Describe the new
14296         'inhibit-read-only' text property.  Add cross-reference to where
14297         read-only buffers are described.
14298         * doc/lispref/buffers.texi (Read Only Buffers): Mention that
14299         'inhibit-read-only' property exempts text from being read-only.
14300         Add cross-reference to "Special Properties".
14302         * etc/NEWS: Move the entry about 'inhibit-read-only' property to
14303         its place and mark it documented.
14305 2015-12-01  Artur Malabarba  <bruce.connor.am@gmail.com>
14307         * lisp/emacs-lisp/package.el: Update header comments
14309 2015-12-01  Artur Malabarba  <bruce.connor.am@gmail.com>
14311         * lisp/character-fold.el: Add back multi-char matching
14313         (character-fold-to-regexp): Uncomment recently commented code
14314         and make the algorithm "dummer" by not checking every possible
14315         combination.  This will miss some possible matches, but it
14316         greatly reduces regexp size.
14318         * test/automated/character-fold-tests.el
14319         (character-fold--test-fold-to-regexp): Comment out test of
14320         functionality no longer supported.
14322 2015-12-01  Xue Fuqiao  <xfq.free@gmail.com>
14324         * doc/emacs/ack.texi (Acknowledgments): Update.
14326 2015-12-01  Michael Albinus  <michael.albinus@gmx.de>
14328         Check `file-remote-p' over absolute files names in files.el
14330         * lisp/files.el (directory-files-recursively)
14331         (get-free-disk-space): Check `file-remote-p' over absolute files names.
14333 2015-12-01  Andreas Schwab  <schwab@linux-m68k.org>
14335                 * src/lread.c (syms_of_lread): Doc fix.
14337 2015-12-01  Dmitry Gutov  <dgutov@yandex.ru>
14339         Don't mistake certain JS method calls for keywords
14341         * lisp/progmodes/js.el (js--ctrl-statement-indentation):
14342         Braceless keyword can't come after a period (bug#22063).
14344 2015-12-01  David Reitter  <david.reitter@gmail.com>
14346         Read frame_title_format from buffer-local variable for NS port
14348         * src/nsfns.m (x_implicitly_set_name): Read frame-title-format and
14349         icon-title-format variables from buffer in appropriate window.
14350         (Bug#22048)
14352 2015-12-01  Juri Linkov  <juri@linkov.net>
14354         * lisp/replace.el (occur-engine): Count matches in empty lines.
14356         (Bug#22062)
14358 2015-11-30  Aurélien Aptel  <aurelien.aptel@gmail.com>
14360         * src/emacs-module.h: Fix finalizer typedef for C++11
14362         C++11 standard doesn't allow exception-specification in typedef.
14363         The workaround is to declare a dummy function prototype and use
14364         decltype on it.
14366 2015-11-30  Eli Zaretskii  <eliz@gnu.org>
14368         Fix last change
14370         * src/emacs-module.c (lisp_to_value, value_to_lisp)
14371         [WIDE_EMACS_INT]: Avoid compiler warnings.
14373 2015-11-30  Stefan Monnier  <monnier@iro.umontreal.ca>
14375         Rely on conservative stack scanning to find "emacs_value"s
14377         * src/emacs-module.c (struct emacs_value_tag)
14378         (struct emacs_value_frame, struct emacs_value_storage): Remove.
14379         (value_frame_size): Remove constant.
14380         (struct emacs_env_private): Use Lisp_Object for non_local_exit info.
14381         (lisp_to_value): Remove first arg.
14382         (module_nil): New constant.
14383         Use it instead of NULL when returning an emacs_value.
14384         (module_make_function): Adjust to new calling convention of
14385         Qinternal_module_call.
14386         (DEFUN): Receive args in an array rather than a list.
14387         Use SAFE_ALLOCA rather than xnmalloc.  Skip the lisp_to_value loop when
14388         we don't have WIDE_EMACS_INT.  Adjust to new type of non_local_exit info.
14389         (module_non_local_exit_signal_1, module_non_local_exit_throw_1):
14390         Adjust to new type of non_local_exit info.
14391         (ltv_mark) [WIDE_EMACS_INT]: New constant.
14392         (value_to_lisp, lisp_to_value): Rewrite.
14393         (initialize_frame, initialize_storage, finalize_storage): Remove functions.
14394         (allocate_emacs_value): Remove function.
14395         (mark_modules): Gut it.
14396         (initialize_environment): Don't initialize storage any more.
14397         Keep the actual env object on Vmodule_environments.
14398         (finalize_environment): Don't finalize storage any more.
14399         (syms_of_module): Initialize ltv_mark and module_nil.
14401         * src/emacs-module.h (emacs_value): Make it more clear that this type
14402         is really opaque, including the fact that NULL may not be valid.
14404         * modules/mod-test/mod-test.c (Fmod_test_signal, Fmod_test_throw):
14405         Don't assume that NULL is a valid emacs_value.
14407 2015-11-30  Eli Zaretskii  <eliz@gnu.org>
14409         Yet another doc improvement for search commands
14411         * doc/emacs/search.texi (Word Search, Symbol Search)
14412         (Regexp Search): Document commands that don't support lax
14413         whitespace matching or character folding.
14414         (Nonincremental Search): Mention the search commands that can be
14415         invoked from the menu bar.
14417         * lisp/isearch.el (isearch-define-mode-toggle-word)
14418         (isearch-define-mode-toggle-symbol)
14419         (isearch-define-mode-toggle-character-fold): Note in the doc
14420         string that turning these on exits the regexp mode.
14421         (isearch-forward-regexp, isearch-forward-word)
14422         (isearch-forward-symbol, isearch-backward-regexp)
14423         (word-search-backward, word-search-forward)
14424         (word-search-backward-lax, word-search-forward-lax): State in the
14425         doc string which commands don't support character folding and/or
14426         lax-whitespace matching.
14428 2015-11-30  Martin Rudalics  <rudalics@gmx.at>
14430         Run `window-size-change-functions' also when reading from minibuffer
14432         * src/xdisp.c (redisplay_internal): Run `window-size-change-functions'
14433         also when reading from minibuffer.
14435 2015-11-30  Ulf Jasper  <ulf.jasper@web.de>
14437         Fix scrambling of html-rendered item buffers
14439         * lisp/net/newst-treeview.el (newsticker--treeview-render-text): Fix
14440           scrambling of contents by wrapping call to html-renderer in
14441           save-selected-window.
14443 2015-11-30  Paul Eggert  <eggert@cs.ucla.edu>
14445         Fix font typo in previous doc fix.
14447 2015-11-30  Paul Eggert  <eggert@cs.ucla.edu>
14449         A bit more security doc, esp. file local vars
14451         * doc/emacs/emacs.texi (Top):
14452         * doc/emacs/misc.texi (Miscellaneous Commands):
14453         Refer to new Host Security section.
14454         (Host Security): New section.
14455         * doc/lispref/os.texi (Security Considerations):
14456         Mention file local variables.
14458 2015-11-30  Artur Malabarba  <bruce.connor.am@gmail.com>
14460         * lisp/character-fold.el: Comment out branching code
14462         (character-fold-to-regexp): Comment out code that uses multi-char
14463         table.  The branching caused by this induces absurdly long regexps,
14464         up to 10k chars for as little as 25 input characters.
14466 2015-11-30  Paul Eggert  <eggert@cs.ucla.edu>
14468         Spelling and grammar fixes
14470 2015-11-30  Dmitry Gutov  <dgutov@yandex.ru>
14472         Make lisp-completion-at-point a wrapper instead of an alias
14474         * lisp/progmodes/elisp-mode.el (lisp-completion-at-point):
14475         Turn into an obsolete wrapper around elisp-completion-at-point
14476         (bug#20455).
14478 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
14480         * lisp/isearch.el (isearch-search-fun-default): Nicer error
14482         message when the search fails.
14484 2015-11-29  Dmitry Gutov  <dgutov@yandex.ru>
14486         Update menu-bar-goto-uses-etags-p for the current xref API
14488         * lisp/menu-bar.el (menu-bar-goto-uses-etags-p): Consult
14489         xref-backend-functions, instead of now-nonexistent
14490         xref-find-function.
14492 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
14494         * lisp/isearch.el (isearch-define-mode-toggle): Advertise binding
14496 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
14498         * lisp/menu-bar.el: Use folding in searches
14500         (nonincremental-search-forward): Use `isearch-search-fun-default'
14501         to determine the search function.
14502         (nonincremental-search-backward)
14503         (nonincremental-repeat-search-forward)
14504         (nonincremental-repeat-search-backward): Use it.
14506 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
14508         * lisp/menu-bar.el (menu-bar-goto-uses-etags-p): Fix a warning
14510 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
14512         * lisp/character-fold.el (character-fold-to-regexp): Be careful
14514         not to return huge regexps.
14516 2015-11-29  Eli Zaretskii  <eliz@gnu.org>
14518         Improve documentation of string-collate-* functions
14520         * doc/lispref/strings.texi (Text Comparison): Improve wording and
14521         indexing of 'string-collate-equalp' and 'string-collate-lessp'.
14523         * etc/NEWS: Move the entry of 'string-collate-equalp' and
14524         'string-collate-lessp' to "Lisp Changes" section and mark it as
14525         documented.
14527 2015-11-29  Eli Zaretskii  <eliz@gnu.org>
14529         Document truncate-string-ellipsis
14531         * doc/lispref/display.texi (Size of Displayed Text): Document
14532         'truncate-string-ellipsis'.
14534         * lisp/international/mule-util.el (truncate-string-ellipsis): Doc fix.
14535         (truncate-string-to-width): Mention in the doc string that the
14536         default for ELLIPSIS comes from 'truncate-string-ellipsis'.
14538         * etc/NEWS: Move the 'truncate-string-ellipsis' entry to the "Lisp
14539         Changes" section.
14541 2015-11-29  Eli Zaretskii  <eliz@gnu.org>
14543         Fix confusion wrt character folding in the Emacs manual
14545         * doc/emacs/search.texi (Nonincremental Search, Regexp Search):
14546         Document that invoking search-forward/backward and
14547         re-search-forward/backward supports only case folding, but not the
14548         rest of the lax-search features.  Reported by Mike Kupfer
14549         <m.kupfer@acm.org>.
14551 2015-11-29  Ken Brown  <kbrown@cornell.edu>
14553         Update mod-test-sum-test
14555         * modules/mod-test/test.el (mod-test-sum-test): Update to
14556         accommodate the lack of dladdr on Cygwin.
14558 2015-11-29  Alan Mackenzie  <acm@muc.de>
14560         Byte compiler: Catch missing argument to `funcall'.  Fixes bug#22051.
14562         * lisp/emacs-lisp/bytecomp.el (byte-compile-funcall): When there's no argument
14563         to `funcall', (i) Output an error message; (ii) Generate code to signal a
14564         `wrong-number-of-arguments' error.
14566 2015-11-29  Martin Rudalics  <rudalics@gmx.at>
14568         * lisp/window.el (split-window): Don't sanitize sizes when SIZE is non-nil.
14570 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
14572         * lisp/character-fold.el (character-fold-to-regexp)
14574         Warn about using long strings.
14576         * test/automated/character-fold-tests.el
14577         (character-fold--test-lax-whitespace)
14578         (character-fold--test-consistency): Reduce string size for tests.
14580 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14582         Document renaming of x-select-enable-* variables
14584         * doc/emacs/killing.texi (Clipboard): Rename
14585         x-select-enable-clipboard to select-enable-clipboard and
14586         x-select-enable-primary to select-enable-primary.  Update index
14587         entries.
14589         * etc/NEWS: Mark entry as documented.
14591 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14593         Document the shorthand hints displayed by M-x
14595         * doc/emacs/m-x.texi (M-x): Document the numeric meaning of
14596         suggest-key-bindings.  Document the shorthand hints for commands
14597         that have no key bindings.  Document that M-x completion ignores
14598         obsolete commands.
14600         * etc/NEWS: Move the M-x entry to "Editing Changes" and mark it as
14601         documented.
14603 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14605         Update docs of character folding
14607         * doc/emacs/search.texi (Lax Search): Update the description of
14608         character folding for the latest changes.
14610 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
14612         * lisp/character-fold.el: Also play nice with case-folding
14614         (character-fold-to-regexp): Take `case-fold-search' into account.
14616 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
14618         * lisp/character-fold.el: Add support for multi-char matches
14620         (character-fold-table): Now has an extra-slot. This is a second
14621         char-table that holds multi-character matches.  See docstring for
14622         details.
14623         (character-fold-to-regexp): Can build branching regexps when a
14624         character's entry the extra slot of `character-fold-table' matches the
14625         characters that succeed it.
14627 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
14629         * lisp/character-fold.el: Code simplifications
14631         (character-fold-table): Reduce the scope of a variable.
14632         (character-fold-to-regexp): Change logic to work directly on the
14633         input string.  It's a little easier to understand, probably
14634         faster, and sets us up for implementing multi-char matches.
14636         * test/automated/character-fold-tests.el
14637         (character-fold--test-fold-to-regexp): New test.
14639 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14641         Document changes in "C-h l"
14643         * doc/emacs/help.texi (Misc Help): Document the changes in "C-h l".
14645         * etc/NEWS: mark "C-h l" changes as documented.
14647 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14649         Finalize documentation of 'custom-prompt-customize-unsaved-options'
14651         * doc/emacs/custom.texi (Saving Customizations): Index the new
14652         function 'custom-prompt-customize-unsaved-options'.
14654         * etc/NEWS: Mention when 'custom-prompt-customize-unsaved-options'
14655         is useful.
14657 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14659         Document 'comment-line'
14661         * doc/emacs/programs.texi (Comment Commands): Document
14662         'comment-line'.
14664         * etc/NEWS: Move the entry for 'comment-line' into "Editing Changes".
14666 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14668         Document new checkdoc features
14670         * doc/lispref/tips.texi (Tips, Library Headers): Document the
14671         keyword-checking features of checkdoc and the commands
14672         'checkdoc-file' and 'checkdoc-current-buffer'.
14674         * etc/NEWS: Move the checkdoc-related entries to their own
14675         section.
14677 2015-11-28  Philipp Stephani  <p.stephani2@gmail.com>
14679         Simplify the prologue of emacs-module.c functions
14681         * src/emacs-module.c (MODULE_FUNCTION_BEGIN): New macro.
14682         (module_make_global_ref)
14683         (module_free_global_ref, module_make_function, module_funcall)
14684         (module_intern, module_type_of, module_extract_integer)
14685         (module_make_integer, module_extract_float, module_make_float)
14686         (module_copy_string_contents, module_make_string)
14687         (module_make_user_ptr, module_get_user_ptr, module_set_user_ptr)
14688         (module_get_user_finalizer, module_set_user_finalizer)
14689         (module_vec_set, module_vec_get, module_vec_size): Use new helper
14690         macro MODULE_FUNCTION_BEGIN.
14692 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14694         Don't reject module calls with no arguments
14696         * src/emacs-module.c (Finternal_module_call): Allow ARGLIST be nil.
14698 2015-11-28  Philipp Stephani  <p.stephani2@gmail.com>
14700         Make module-call be visible from Lisp
14702         * src/emacs-module.c (module_make_function): Use internal--module-call.
14703         (Finternal_module_call): Renamed from Fmodule_call.  Add safety
14704         checks.
14705         (syms_of_module): DEFSYM save-value-p and save-pointer-p.  Do
14706         defsubr internal--module-call.
14708 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14710         Add etags tests for the recent Lua-related bugfix
14712         * test/etags/lua-src/test.lua: New file, tests the issues raised
14713         by bug#21934.
14714         * test/etags/Makefile (LUASRC): Add test.lua.
14715         * test/etags/ETAGS.good_1:
14716         * test/etags/ETAGS.good_2:
14717         * test/etags/ETAGS.good_3:
14718         * test/etags/ETAGS.good_4:
14719         * test/etags/ETAGS.good_5:
14720         * test/etags/ETAGS.good_6:
14721         * test/etags/CTAGS.good: Adapt to the new Lua test.  Also, an old
14722         regression fix, resolved around 25 May 2015, required changes to
14723         the "good" ETAGS files.
14725 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14727         Fix Lua tags when a function name includes '.' or ':'
14729         * lib-src/etags.c (Lua_functions): Add a tag for the last element
14730         of a function name after a dot or a colon.  (Bug#21934)
14732 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14734         Improve documentation of search and replace commands
14736         * doc/emacs/search.texi (Replacement and Lax Matches): Document
14737         which commands are affected by 'replace-character-fold'.
14738         (Lax Search): Add a cross reference to "Replacement and Lax
14739         Matches".  Improve wording.  Fix lost extra whitespace.
14740         (Search Customizations): Improve wording.  (Bug#22036)
14741         See also comments in
14742         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02376.html.
14744         * lisp/replace.el (query-replace, query-replace-regexp)
14745         (query-replace-regexp-eval, replace-string, replace-regexp):
14746         Mention 'replace-character-fold' in the doc strings.
14748 2015-11-28  Paul Eggert  <eggert@cs.ucla.edu>
14750         Fix minor problems found by static checking
14752         * src/undo.c (prepare_record): Add proper prototype for C.
14754 2015-11-27  Stefan Monnier  <monnier@iro.umontreal.ca>
14756         * src/emacs-module.c (struct env_storage): Delete
14758         (struct emacs_runtime_private): Keep an emacs_env instead.
14759         (Fmodule_load, Fmodule_call): Declare emacs_env_private separately.
14760         (initialize_environment): Split the arg in two.  Adjust all callers.
14761         Only store the private part in Vmodule_environments.
14762         (finalize_environment): Change the arg to only be the private env.
14763         Adjust all callers.
14765 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
14767         Improve documentation of 'replace-character-fold'
14769         * lisp/replace.el (replace-character-fold): Clarify which commands
14770         are affected by this variable.
14772 2015-11-27  Mark Oteiza  <mvoteiza@udel.edu>
14774         Backport: Add interactive seek command.
14776         * lisp/mpc.el (mpc-cmd-seekcur): New function.
14777         (mpc-seek-current): New command.
14778         (mpc-mode-menu): Add entry for mpc-seek-current
14779         (mpc-mode-map): Bind mpc-seek-current to "g"
14781 2015-11-27  Dmitry Gutov  <dgutov@yandex.ru>
14783         Autoload etags when using its xref backend
14785         * lisp/progmodes/xref.el (xref--etags-backend):
14786         Rename to etags--xref-backend.  Move to etags.el.  Autoload.
14787         (Bug#22026)
14789 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
14791         * lisp/character-fold.el: Allow complex chars to match their decomposition
14793         (character-fold-table): When a character's decomposition does not
14794         involve a formatting tag (i.e., if it has an "exact" description via
14795         other characters), then this character is allowed to match the
14796         decomposition.
14798 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
14800         * lisp/character-fold.el: More descriptive variable names
14802         (character-fold-table): Rename a lot of the lexical variables to
14803         make the code easier to read.
14805 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
14807         * lisp/isearch.el: Ensure we still support `isearch-new-word'
14809         (isearch-new-regexp-function): Define variable.
14810         (isearch-new-word): Define as an obsolete alias. (Bug#22018)
14812 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
14814         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
14816 2015-11-27  Lee Bochicchio  <lboc.home@gmail.com>
14818         * test/automated/abbrev-tests.el: Define more tests
14820         (abbrev-table-name-test, kill-all-abbrevs-test)
14821         (clear-abbrev-table-test): New tests.
14823 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
14825         Add module tests for wrong-type-argument
14827         * modules/mod-test/test.el (mod-test-sum-test): Add tests for
14828         wrong-type-argument.
14830 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
14832         Improve handling of signals and 'throw' in modules
14834         * src/emacs-module.c: Add commentary explaining how to write
14835         functions in this file.
14836         (module_make_global_ref, module_free_global_ref)
14837         (module_non_local_exit_signal, module_non_local_exit_throw)
14838         (module_make_function, module_funcall, module_intern)
14839         (module_type_of, module_is_not_nil, module_eq)
14840         (module_extract_integer, module_make_integer)
14841         (module_extract_float, module_make_float)
14842         (module_copy_string_contents, module_make_string)
14843         (module_make_user_ptr, module_get_user_ptr, module_set_user_ptr)
14844         (module_get_user_finalizer, module_set_user_finalizer)
14845         (module_vec_set, module_vec_get, module_vec_size)
14846         (module_non_local_exit_signal_1, module_non_local_exit_throw_1):
14847         Do nothing and return with failure indication immediately, if some
14848         previous module call signaled an error or wants to throw.  See
14849         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02133.html
14850         for the relevant discussions.
14852 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
14854         Add ':version' tag to 'checkdoc-package-keywords-flag'
14856         * lisp/emacs-lisp/checkdoc.el (checkdoc-package-keywords-flag):
14857         Add a ':version' tag.
14859 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
14861         Improve documentation of 'eval-buffer' and 'eval-region'
14863         * src/lread.c (Feval_buffer, Feval_region): Doc fixes.  (Bug#22023)
14865         * doc/lispref/eval.texi (Eval): Mention narrowing to clarify
14866         "accessible portion of buffer".
14868 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
14870         Unbreak the Cygwin w32 build
14872         * src/emacs.c (main): Call w32_init_main_thread in the Cygwin w32
14873         build as well.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
14875 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
14877         Improve commentary in character-fold.el
14879         * lisp/character-fold.el (character-fold-to-regexp): Move detailed
14880         description from commit log message to comments.  (Bug#22019)
14882 2015-11-26  Alan Mackenzie  <acm@muc.de>
14884         Byte Compiler: generate code to adjust stack count after call to `signal'.
14886         Corrects change from earlier today.
14888         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): supply the current value of
14889         `byte-compile--for-effect' as argument to `byte-compile-form'.
14891 2015-11-26  Eli Zaretskii  <eliz@gnu.org>
14893         Improve commentary of prepare_to_modify_buffer_1
14895         * src/insdel.c (prepare_to_modify_buffer_1): Mention in commentary
14896         that this function runs Lisp.  Suggested by Richard Stallman
14897         <rms@gnu.org>.
14899 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
14901         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
14903 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
14905         Fix regression after merge.
14907          * src/undo.c (prepare_record): Remove call to run_undoable_change.
14909 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
14911         After delete, record point location in undo.
14913         Addresses Bug #21968.
14915                 * lisp/simple.el (undo-auto--add-boundary): Clean up code to
14916                 better support intercalating calls.
14917                 * src/keyboard.c, src/keyboard.h (command_loop_1): Store value of
14918                 point and current buffer before each command.
14919                 * src/undo.c (record_point): Now only record the point.
14920                 * src/undo.c (prepare_record): Functionality removed form
14921                 record_point.
14922                 * src/undo.c (record_delete): Check if point needs recording.
14923                 * src/undo.c (undo-boundary): Record value of point before each
14924                 boundary.
14925                 * test/automated/simple-test.el: New tests.
14927         Conflicts:
14928                 src/undo.c
14930 2015-11-26  Eli Zaretskii  <eliz@gnu.org>
14932         Fix compiler warnings in w32.c
14934         * src/w32.c (sys_socket): In case of error, use -1 as return
14935         value, not INVALID_SOCKET, which causes compiler warnings.
14936         (maybe_load_unicows_dll): Cast the return value of GetProcAddress
14937         to the appropriate function signature, to avoid compiler errors.
14938         Reported by Andy Moreton <andrewjmoreton@gmail.com>.  (Bug#21953)
14940 2015-11-26  Dmitry Gutov  <dgutov@yandex.ru>
14942         Check if the file exists on disk before producing the revert diff
14944         * lisp/vc/vc-dispatcher.el (vc-buffer-sync): Check if the file
14945         exists on disk (bug#20558).
14947 2015-11-26  Alan Mackenzie  <acm@muc.de>
14949         Byte compiler: on setq with an odd number of arguments, generate a `signal'
14951         * lisp/emacs-lisp/cconv.el (cconv-convert): Don't transform `setq' form when
14952         it has an odd number of arguments, to allow bytecomp to handle the error.
14954         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): In a `setq' form with an
14955         odd number of arguments, generate a `signal' instead of the normal code.
14957 2015-11-26  Dmitry Gutov  <dgutov@yandex.ru>
14959         Use find-tag-default for xref-backend-identifier-at-point
14961         * lisp/progmodes/etags.el (find-tag-tag)
14962         (tags-completion-at-point-function): Extract common code as
14963         find-tag--default.
14964         (xref-backend-identifier-at-point): Define in terms of the new
14965         function.
14967 2015-11-26  Paul Eggert  <eggert@cs.ucla.edu>
14969         * src/undo.c (record_property_change): Remove now-unused local.
14971 2015-11-25  Phillip Lord  <phillip.lord@russet.org.uk>
14973         run_undoable_changes now called from insdel.
14975         The original calls from inside undo.c are not always at a safe position
14976         to call lisp, as they originate in varied positions within insdel.c.
14977         Calling them directly from prepare_to_modify_buffer_1 ensures that they
14978         are always run at the same point.
14980          * src/undo.c (run_undoable_changes,syms_of_undo): Remove function
14981          and symbol used.
14982          * src/insdel.c (run_undoable_changes): Add function and symbol.
14984 2015-11-25  Eli Zaretskii  <eliz@gnu.org>
14986         Improve and update documentation of search commands
14988         * doc/emacs/search.texi (Lax Search): Renamed from "Search Case";
14989         all references changed.  Move the description of lax-whitespace
14990         here.  Add description of the new character folding features and
14991         additional customizable options.
14992         (Isearch Yank): Move before "Error in Search".
14993         (Basic Isearch): Improve wording.  Add index entries.  Add short
14994         description of how to abandon search, making this subsection a
14995         complete introduction to search basics.
14996         (Repeat Isearch): Add index entries.  Describe additional
14997         customizable options.  Describe mouse clicks.
14998         (Isearch Yank): Add index entries.  Describe mouse-2 click in echo
14999         area.  Describe more customizable options.
15000         (Error in Isearch): Add index entries.
15001         (Special Isearch): Move actual description of some isearch
15002         commands to other sections, leaving here just the summary of the
15003         commands.  Add command that toggles character folding.  Describe
15004         commands, like "C-h C-h", that were previously omitted for some
15005         reason.
15006         (Not Exiting Isearch): Describe search-exit-option.  Add index
15007         entries.
15008         (Word Search): Describe eww-search-word and eww-search-prefix.
15009         (Symbol Search): Add index entries.
15010         (Regexp Search): Describe regexp-search-ring-max.
15011         (Replacement and Lax Matches): Renamed from "Replacement and
15012         Case"; all references changed.  Describe lax-whitespace matching
15013         in replace commands and related options.  Describe character
15014         folding in replace commands and related options.
15015         (Query Replace): Describe query-replace-from-to-separator and the
15016         new history features.  Add index entries for highlighted text.
15017         Describe query-replace-skip-read-only.  Describe more keys
15018         accepted by query-replace.
15019         (Other Repeating Search): More index entries for Occur.  Describe
15020         list-matching-lines-default-context-lines.
15021         (Search Customizations): New section, documents customizable
15022         options that were not documented until now.
15023         * doc/emacs/glossary.texi (Glossary): Add "Case Folding" and
15024         "Character Folding".
15026         * etc/NEWS: Move search- and replace-related entries to a single
15027         parent section.
15029         * lisp/replace.el (query-replace-show-replacement): Doc fix.
15030         * lisp/isearch.el (search-nonincremental-instead)
15031         (isearch-hide-immediately): Doc fixes.
15033 2015-11-25  Katsumi Yamaoka  <yamaoka@jpl.org>
15035         Remove nnml-retrieve-groups that is unnecessary and somewhat problematic
15037         * lisp/gnus/nnml.el (nnml-retrieve-groups): Remove.  See:
15038         <http://thread.gmane.org/gmane.emacs.gnus.general/86308> and
15039         <http://thread.gmane.org/gmane.emacs.gnus.general/86321>
15041 2015-11-25  Paul Eggert  <eggert@cs.ucla.edu>
15043         Fix module_format_fun_env when dynlib_addr fails
15045         * src/emacs-module.c (module_format_fun_env):
15046         exprintf doesn’t support %p, so use %x.  Reported by Eli Zaretskii in:
15047         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02122.html
15049 2015-11-25  Paul Eggert  <eggert@cs.ucla.edu>
15051         Disambiguate variable help a bit better
15053         * lisp/help-fns.el (describe-variable): Quote the
15054         variable’s value if it is a symbol other than t or nil.
15055         See: T.V Raman in:
15056         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02147.html
15058 2015-11-25  Dmitry Gutov  <dgutov@yandex.ru>
15060         Pass SVN commit message through log-edit-extract-headers
15062         * lisp/vc/vc-svn.el (vc-svn-checkin): Pass COMMENT through
15063         log-edit-extract-headers (bug#18954).
15065 2015-11-24  Alan Mackenzie  <acm@muc.de>
15067         CC Mode: Eliminate compiler warning messages.
15069         * lisp/progmodes/cc-mode.el (top level): remove compile time declaration of
15070         `font-lock-syntactic-keywords' (which CC Mode doesn't use).
15071         * lisp/progmodes/cc-awk.el (awk-mode-syntax-table)
15072         (c-awk-set-syntax-table-properties): Clarify comments about
15073         `font-lock-syntactic-keywords'.
15075         * lisp/progmodes/cc-bytecomp.el (cc-bytecomp-load): Create a dummy declaration
15076         of this before the real (interpreted) one, to satisfy the byte compiler.
15078 2015-11-24  Simen Heggestøyl  <simenheg@gmail.com>
15080         Extend the test suite for json.el
15082         * lisp/json.el (json-plist-p): Clarify docstring.
15084         * test/automated/json-tests.el (json-tests--with-temp-buffer): New
15085         macro.
15086         (test-json-join, test-json-alist-p)
15087         (test-json-plist-p, test-json-advance, test-json-peek)
15088         (test-json-pop, test-json-skip-whitespace)
15089         (test-json-read-keyword, test-json-encode-keyword)
15090         (test-json-read-number, test-json-encode-number)
15091         (test-json-read-escaped-char, test-json-read-string)
15092         (test-json-encode-string, test-json-encode-key)
15093         (test-json-new-object, test-json-add-to-object)
15094         (test-json-read-object, test-json-encode-list)
15095         (test-json-read-array, test-json-encode-array)
15096         (test-json-read, test-json-read-from-string)
15097         (test-json-encode): New tests.
15098         (json-read-simple-alist): Merged into `test-json-read-object'.
15099         (json-encode-string-with-special-chars): Merged into
15100         `test-json-encode-string'.
15101         (json-read-string-with-special-chars): Split into
15102         `test-json-encode-string' and `test-json-read-from-string'.
15104 2015-11-24  Anders Lindgren  <andlind@gmail.com>
15106         Fixed bug#18283: Enable applescript in NextStep.
15108         * nextstep/templates/Info.plist.in: Set NSAppleScriptEnabled to YES.
15110 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
15112         Allow completion on dynamic module files in load-library
15114         * lisp/files.el (load-library): Bind completion-ignored-extensions
15115         to nil, to allow completion on dynamic modules typed as file
15116         names.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
15118 2015-11-24  Alan Mackenzie  <acm@muc.de>
15120         CC Mode: eliminate almost all byte compilation warnings
15122         * lisp/progmodes/cc-bytecomp.el (cc-bytecomp-noruntime-functions): Remove.
15123         (cc-require): Remove the crude hack that saved and restored
15124         byte-compile-noruntime-functions.
15125         (cc-conditional-require, cc-conditional-require-after-load): New macros.
15127         * lisp/progmodes/cc-defs.el (top level): Reformulate code which loaded
15128         cc-fix.el using the new macros in cc-bytecomp.el.
15130         * lisp/progmodes/cc-langs.el (c++-template-syntax-table)
15131         (c-no-parens-syntax-table): Add extra "(eval ..)"s around "'(lambda ..)"
15132         forms to remove the superflous quotes.
15134 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
15136         Add one more mod-test test
15138         * modules/mod-test/test.el (mod-test-sum-test): Test the error
15139         signaled when the function is invoked with a wrong number of
15140         arguments.
15142 2015-11-24  Philipp Stephani  <phst@google.com>
15144         * modules/mod-test/mod-test.c (Fmod_test_sum): Verify there are 2 args.
15146 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
15148         Implement dynlib_addr for MS-Windows
15150         * src/dynlib.c [WINDOWSNT]: Include w32common.h.
15151         <g_b_init_get_module_handle_ex> [WINDOWSNT]: New static variable.
15152         (GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS)
15153         (GET_MODULE_HANDLE_EX_FLAG_UNCHANGED_REFCOUNT) [WINDOWSNT]: Define
15154         if undefined.
15155         (dynlib_reset_last_error): Reset g_b_init_get_module_handle_ex to
15156         zero.
15157         (dynlib_addr) [WINDOWSNT]: Non-trivial implementation to report
15158         the full file name of the module for a given address.
15160 2015-11-24  Alan Mackenzie  <acm@muc.de>
15162         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
15164 2015-11-24  Alan Mackenzie  <acm@muc.de>
15166         Squashed commit of the following:
15168         commit e1ecf76585bef2eb87995f7a7f92cc12003a6f70
15169         Author: Alan Mackenzie <acm@muc.de>
15170         Date:   Tue Nov 24 16:50:09 2015 +0000
15172             Byte compile: minor amendments.
15174             * lisp/emacs-lisp/bytecomp.el (byte-compile-initial-macro-environment):
15175             add a comment to explain the binding of variables around a subsidiary
15176             compilation.
15177             (byte-compile-new-defuns): Amend the doc string.
15179         commit c537bfed1dda1593d218956ff00c6105a3ff0316
15180         Author: Alan Mackenzie <acm@muc.de>
15181         Date:   Sat Nov 21 18:43:57 2015 +0000
15183             Byte compiler: fix spurious warnings "might not be defined at runtime".
15185             Also initialize byte-compile-noruntime-functions between runs.
15187             * lisp/emacs-lisp/bytecomp.el (byte-compile-new-defuns): New variable.
15188             (byte-compile-initial-macro-environment): For eval-when-compile: bind
15189             byte-compile-unresolved-functions and byte-compile-new-defuns around
15190             byte-compile-top-level, to prevent spurious entries being made.
15191             (byte-compile-warn-about-unresolved-functions): Check whether function is
15192             in byte-compile-new-defuns before emitting a warning about it.
15193             (byte-compile-from-buffer): Initialize new variable and
15194             byte-compile-noruntime-functions to nil.
15195             (byte-compile-file-form-require): record all new functions defined by a
15196             `require' in byte-compile-new-defuns.
15197             (byte-compile-file-form-defmumble): record the new alias in
15198             byte-compile-new-defuns.
15200 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
15202         Fix crash at startup related to GC of font entities
15204         * src/font.h (GC_FONT_SPEC_P, GC_FONT_ENTITY_P)
15205         (GC_FONT_OBJECT_P, GC_XFONT_SPEC, GC_XFONT_ENTITY)
15206         (GC_XFONT_OBJECT): New macros, for use in garbage collector.
15207         * src/alloc.c (compact_font_cache_entry, compact_font_caches):
15208         Don't ifdef away font cache compaction on NT_GUI, as the problems
15209         which led to that seem to have been solved.
15210         (compact_font_cache_entry): Use GC_FONT_SPEC_P, GC_XFONT_SPEC,
15211         GC_XFONT_ENTITY, and GC_XFONT_OBJECT, instead of their non-GC_
15212         cousins.  (Bug#21999)
15214 2015-11-24  Alan Mackenzie  <acm@muc.de>
15216         Byte compile: Output an error, not a warning, for odd number of args to setq
15218         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): Amend.
15220 2015-11-24  Ken Raeburn  <raeburn@raeburn.org>
15222         Fix kbd_buffer iteration loop in readable_events
15224         * src/keyboard.c (readable_events): Wrap the event pointer back to the
15225         start of the kbd_buffer array inside the top of the loop instead of
15226         right before checking the loop condition, since kbd_fetch_ptr and
15227         kbd_store_ptr point past the end of the array to mean that element 0
15228         is next. (bug#21935)
15230 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
15232         Improve text-quoting-style doc again
15234         * doc/lispref/help.texi (Keys in Documentation):
15235         Omit overkill discussion of ‘setq’.  Mention Emacs versions
15236         where ‘grave’ style was standard.
15238 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
15240         Improve text-quoting-style doc
15242 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
15244         Simplify module_make_function
15246         * src/emacs-module.c (module_make_function):
15247         Simplify by calling build_unibyte_string.
15249 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
15251         Port better to FreeBSD’s dlfunc vs dlsym
15253         This avoids warnings when converting between void * and
15254         function pointers, which strict C11 does not allow.
15255         * configure.ac (dlfunc): Check for existence.
15256         * src/dynlib.c (dlfunc) [!HAVE_DLFUNC]: New macro.
15257         (dynlib_func): New function.
15258         * src/dynlib.h (dynlib_function_ptr, dynlib_func): New decls.
15259         * src/emacs-module.c (Fmodule_load): Use dynlib_func, not
15260         dynlib_sym, for function pointers.
15262 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
15264         Simplify use of emacs_finalizer_function type
15266         * src/emacs-module.h (emacs_finalizer_function):
15267         Now EMACS_NOEXCEPT.  All users simplified to omit EMACS_NOEXCEPT.
15268         (struct emacs_env_25): Use emacs_finalizer_function where applicable.
15270 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
15272         module_format_fun_env fixes
15274         * src/doprnt.c (exprintf) [HAVE_MODULES]: Also define in this case.
15275         * src/emacs-module.c (module_format_fun_env):
15276         Convert path and sym to UTF-8.
15277         Don’t use VLAs, as the C11 standard says they’re optional,
15278         and anyway they can cause core dumps with large allocations.
15279         Use exprintf rather than snprintf, as exprintf handles arbitrarily
15280         long strings.  Simplify the code a bit.
15282 2015-11-23  Dmitry Gutov  <dgutov@yandex.ru>
15284         Don't use package-user-dir in elisp-library-roots if it's not bound
15286         * lisp/progmodes/elisp-mode.el (elisp-library-roots): Don't
15287         use package-user-dir if it's not bound (bug#19759).
15289 2015-11-23  Anders Lindgren  <andlind@gmail.com>
15291         New visible-bell for NextStep (OS X El Capitan compatible).
15293         Instead of inverting a rectangle in the middle of the frame, use
15294         the standard NextStep image "caution", represented using an
15295         warning sign with an exclamation mark.  (Bug#21662)
15297         Implemented based on a suggestion drafted by Mustafa Kocaturk.
15299         * src/nsterm.m (EmacsBell): New class for managing the caution
15300         image.  Support multiple active bells, the image is removed once
15301         all bells have timed out.
15302         (ns_timeout): Removed, no longer used.
15303         (ns_ring_bell): Reimplemented to use EmacsBell.
15305 2015-11-23  Johan Bockgård  <bojohan@gnu.org>
15307         * lisp/emacs-lisp/nadvice.el (add-function): Fix debug spec.
15309         (remove-function): Ditto. (Bug#20376)
15311 2015-11-23  Mark Oteiza  <mvoteiza@udel.edu>
15313         * lisp/leim/quail/tamil-dvorak.el: Add necessary escapes.
15315 2015-11-23  Eli Zaretskii  <eliz@gnu.org>
15317         Improve how non-ASCII strings are accepted from modules
15319         * src/emacs-module.c (module_make_function, module_make_string):
15320         Build a unibyte Lisp string and then decode it by UTF-8, instead
15321         of building a multibyte string without decoding.  This is more
15322         tolerant to deviations from UTF-8.
15324 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
15326         Port recent module changes to pickier compilers
15328         * src/emacs-module.c (module_make_function)
15329         (module_make_string): Add casts to fix pointer signedness issues.
15331 2015-11-23  Philipp Stephani  <phst@google.com>
15333         Fix how strings are accepted from modules
15335         * src/emacs-module.c (module_make_function, module_make_string): Use
15336         make_multibyte_string.
15337         (module_copy_string_contents): Encode before reading the byte
15338         size.  Return false if and only if an error occurred.
15340 2015-11-23  Eli Zaretskii  <eliz@gnu.org>
15342         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
15344 2015-11-23  Shakthi Kannan  <shakthimaan@gmail.com>
15346         Add the tamil-dvorak input method
15348         * lisp/leim/quail/tamil-dvorak.el: New file.  (Bug#21768)
15350         * etc/NEWS: Mention the new input method.
15352 2015-11-23  Martin Rudalics  <rudalics@gmx.at>
15354         Move setting FRAME_WINDOW_SIZES_CHANGED to resize_frame_windows.
15356         * src/frame.c (adjust_frame_size): Don't set
15357         FRAME_WINDOW_SIZES_CHANGED here ...
15358         * src/window.c (resize_frame_windows): ... but here, as suggested
15359         by Stefan Monnier.  Also remove some dead code along the way.
15361 2015-11-23  Alan Mackenzie  <acm@muc.de>
15363         * etc/NEWS (Incompatible Lisp Changes): Also `setf' needs an even # of args.
15365 2015-11-23  Alan Mackenzie  <acm@muc.de>
15367         Signal an error when `setf' gets an odd number of arguments.
15369         * lisp/emacs-lisp/gv.el (setf): Amend.
15371 2015-11-23  Stefan Monnier  <monnier@iro.umontreal.ca>
15373         * lisp/emacs-lisp/smie.el (smie-backward-sexp): Handle BOB better.
15375 2015-11-23  Alan Mackenzie  <acm@muc.de>
15377         * etc/NEWS (Incompatible Lisp Changes): Document new restriction on `setq'.
15379 2015-11-23  Alan Mackenzie  <acm@muc.de>
15381         Expunge occurrences of `setq' with an odd number of arguments.
15383         * lisp/apropos.el (apropos-documentation):
15384         * lisp/obsolete/complete.el (PC-include-file-all-completions):
15385         * lisp/progmodes/compile.el (compilation-goto-locus):
15386         * lisp/vc/vc-cvs.el (vc-cvs-parse-root): (twice)
15387         Insert missing nil at end of `setq' forms.
15389         * lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-autoload): Remove an
15390         erroneous trailing variable name from a setq, thus allowing a compilation
15391         properly to track functions not defined at runtime.
15393 2015-11-23  John Wiegley  <johnw@newartisans.com>
15395         Add a note about a questionable use of bool in xdisp.c
15397 2015-11-23  Alan Mackenzie  <acm@muc.de>
15399         Issue a warning from the byte compiler on a malformed `setq' form.
15401         Partly fixes bug#20241.
15402         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): Issue a warning when a
15403         `setq' form with an odd number of arguments is compiled.
15405 2015-11-23  Alan Mackenzie  <acm@muc.de>
15407         Don't let cconv_convert insert a nil argument into a `setq' form.
15409         Fixes bug#21983.
15410         * lisp/emacs-lisp/cconv.el (cconv-convert): Don't silently insert a nil last
15411         argument into a `setq' when there're an odd number of args.  This enables the
15412         byte compiler to issue a message in this case.
15414 2015-11-23  Alan Mackenzie  <acm@muc.de>
15416         Signal an error when `setq' has an odd number of arguments.  Fixes bug#20241.
15418         * src/eval.c (Fsetq): Signal an error on an odd number of arguments.
15419         (syms_of_eval): Add a DEFSYM for Qsetq.
15421 2015-11-23  Martin Rudalics  <rudalics@gmx.at>
15423         * doc/lispref/windows.texi (Window Sizes): Fix indices and references.
15425         * src/frame.c (adjust_frame_size): Set FRAME_WINDOW_SIZES_CHANGED (Bug#21975).
15427 2015-11-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
15429         Add EUDC BBDB 3 entry in NEWS
15431         * NEWS: Mention EUDC BBDB backend support for BBDB 3.
15433 2015-11-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
15435         Improve EUDC to BBDB 3 export
15437         * lisp/net/eudc-vars.el (eudc-ldap-bbdb-conversion-alist): Change phone
15438         entry to single item.  Add company conversion.
15439         * lisp/net/eudc-export.el (eudc-bbdbify-company): New function.
15440         (bbdb-parse-phone): Declare function.
15441         (eudc-bbdbify-phone): Add BBDB 3 support.
15442         (Bug#21971)
15444 2015-11-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
15446         Add BBDB 3 support for EUDC export
15448         * lisp/net/eudc.el: Add bbdb-version defvar.
15449         (eudc--using-bbdb-3-or-newer-p): New function.
15450         * lisp/net/eudc-export.el (eudc-create-bbdb-record): Add support for
15451         bbdb-create-internal argument list changes introduced in BBDB 3.
15452         * lisp/net/eudcb-bbdb.el: Remove bbdb-version defvar.
15453         (eudc-bbdb-field): Call eudc--using-bbdb-3-or-newer-p.
15454         (Bug#21971)
15456 2015-11-22  Eli Zaretskii  <eliz@gnu.org>
15458         Allow loading modules by 'load-file'
15460         * src/lread.c (Fload): Call 'unbind_to' with 'Fmodule_load' as the
15461         2nd arg, to avoid the "binding stack not balanced" error.
15462         (syms_of_lread) <module-file-suffix>: New Lisp variable.
15464         * lisp/files.el (module-file-suffix): Declare.
15465         (load-file): Remove 'module-file-suffix' from
15466         'completion-ignored-extensions', to allow completion on modules.
15468         * etc/NEWS: Mention 'module-file-suffix'.
15470 2015-11-22  Eli Zaretskii  <eliz@gnu.org>
15472         Fix unoptimized builds
15474         * src/lisp.h (XTYPE): Move before XSYMBOL, to fix unoptimized
15475         builds.
15477 2015-11-22  Dmitry Gutov  <dgutov@yandex.ru>
15479         Work around the asynchronous-empty-diff problem
15481         * lisp/vc/vc-rcs.el (vc-rcs-diff):
15482         * lisp/vc/vc-mtn.el (vc-mtn-diff):
15483         * lisp/vc/vc-hg.el (vc-hg-diff):
15484         * lisp/vc/vc-git.el (vc-git-diff): Ignore the ASYNC argument,
15485         do a synchronous process call (bug#21969).
15487 2015-11-22  Karl Fogel  <kfogel@red-bean.com>
15489         Finish excising electric indent from `open-line'
15491         * lisp/simple.el (open-line): Remove INTERACTIVE argument.
15493         * test/automated/simple-test.el (open-line-indent, open-line-hook):
15494           Adjust accordingly.
15496         This change finishes what my commit of Thu Nov 19 17:32:37 2015 -0600
15497         (git commit c59353896) started.  It turns out that having INTERACTIVE
15498         cause `post-self-insert-hook' to run (via `newline') meant `open-line'
15499         still had the electric indent behavior, as `post-self-insert-hook'
15500         normally contains `electric-indent-post-self-insert-function' ever
15501         since `electric-indent-mode' has been on by default.  Tracing the code
15502         change in `open-line' is mildly twisty, because Artur Malabarba's
15503         earliest two commits of 24 Oct 2015 first removed the `interactive'
15504         form entirely (git commit 6939896e2) and then restored it with the new
15505         extra "p" already added (git commit bd4f04f86), such that there is no
15506         single-commit diff in which one sees the second "p" appear.  Thus this
15507         change is effectively a reversion of parts of each of those commits.
15509         This could close bug#21884, at least until further discussion.
15511 2015-11-22  Dmitry Gutov  <dgutov@yandex.ru>
15513         Adhere closer to the "implicit tag name" definition
15515         * lisp/progmodes/etags.el (etags-tags-completion-table):
15516         Adhere closer to the "implicit tag name" definition.  Simplify
15517         the regexp.  Search for the explicit tag name first, and when
15518         not found, search locally for the implicit one.  (Bug#21934)
15520 2015-11-22  Stefan Monnier  <monnier@iro.umontreal.ca>
15522         Unrevert most of regexp reentrancy abort patch
15524         The problem was in:
15525           * src/syntax.c (update_syntax_table_forward): Propertize even when truncated
15526         which is hence not unreverted.
15527         The rest is:
15528         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
15529         (UPDATE_SYNTAX_TABLE_FAST): Re-introduce.
15530         All callers in regex.c changed back to the _FAST versions.
15532         * test/automated/message-mode-tests.el: Tweak the test to rely on auto
15533         propertization in backward-sexp.
15535 2015-11-21  Paul Eggert  <eggert@cs.ucla.edu>
15537         Revert regexp reentrancy abort patch
15539         Although the patch does fix Bug#21688 and prevents a core dump,
15540         it also makes the message-mode-propertize test fail; see:
15541         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01667.html
15542         Perhaps someone else can come up with a better fix some day.
15543         * src/syntax.c (update_syntax_table_forward):
15544         Propertize even when truncated.
15545         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
15546         (UPDATE_SYNTAX_TABLE_FAST): Remove.
15547         All callers changed back to the non-_FAST versions.
15549 2015-11-21  Paul Eggert  <eggert@cs.ucla.edu>
15551         Add a few safety checks when ENABLE_CHECKING
15553         This was motivated by the recent addition of module code,
15554         which added some ENABLE_CHECKING-enabled checks that are
15555         useful elsewhere too.
15556         * src/alloc.c (compact_font_cache_entry):
15557         * src/fns.c (sweep_weak_table):
15558         * src/lread.c (oblookup):
15559         Use gc_asize rather than doing it by hand.
15560         * src/emacs-module.c (module_make_global_ref)
15561         (module_free_global_ref, module_vec_size):
15562         Omit assertions that lisp.h now checks.
15563         * src/lisp.h (XFASTINT, ASIZE): In functional implementations,
15564         check that the result is nonnegative.  Use eassume, as this
15565         info can help a bit when optimizing production code.
15566         (XSYMBOL) [!USE_LSB_TAG]: Assert that argument is a symbol,
15567         to be consistent with the USE_LSB_TAG case.
15568         (gc_asize): New function, when ASIZE is needed in the gc.
15569         (gc_aset): Use it.
15570         (HASH_TABLE_P): Move definition up, so that it can be used ...
15571         (XHASH_TABLE): ... here, to assert that the arg is a hash table.
15573 2015-11-21  Eli Zaretskii  <eliz@gnu.org>
15575         Simplify recording of main thread's ID on MS-Windows
15577         * src/w32term.c (w32_initialize):
15578         * src/w32console.c (initialize_w32_display):
15579         * src/w32fns.c (globals_of_w32fns): Don't record the main thread
15580         ID independently for each type of session (GUI, TTY, batch).
15581         * src/w32term.c (w32_init_main_thread): New function, records the
15582         main thread's thread ID.
15583         * src/w32term.h: Add prototype for w32_init_main_thread.
15584         * src/emacs.c (main) [WINDOWSNT]: Call w32_init_main_thread.
15586         * src/emacs-module.c [WINDOWSNT]: Rename main_thread_id to
15587         main_thread, for consistency with other threading libraries.  All
15588         users changed.  Include w32term.h.
15589         (check_main_thread) [WINDOWSNT]: Simplify the test: no need to
15590         make sure the main thread is alive, as we hold a handle on it
15591         opened by w32_init_main_thread.
15592         (module_init) [WINDOWSNT]: Reuse the thread ID recorded by
15593         w32_init_main_thread, instead of calling the requisite APIs once
15594         more.
15596 2015-11-21  Mark Oteiza  <mvoteiza@udel.edu>
15598         Backport: Fix issue where a new tempfile was created every refresh
15600         * lisp/mpc.el (mpc-format): Leave dir as relative path
15602 2015-11-21  Eli Zaretskii  <eliz@gnu.org>
15604         Call 'window-size-change-functions' for mini-windows
15606         * src/window.c (grow_mini_window, shrink_mini_window): Set the
15607         frame's 'window_sizes_changed' flag.
15608         * src/xdisp.c (redisplay_internal): Call the hooks on
15609         'window-size-change-functions' if the call to 'echo_area_display'
15610         sets the frame's 'window_sizes_changed' flag.
15611         (syms_of_xdisp) <window-size-change-functions>:
15612         Update doc string to indicate the mini-window resizes trigger a
15613         call to the hooks, and don't promise that will happen "before
15614         redisplay".  (Bug#19576, Bug#21333)
15616         * doc/lispref/windows.texi (Window Hooks): Update the description
15617         of 'window-size-change-functions'.
15619 2015-11-21  Eli Zaretskii  <eliz@gnu.org>
15621         Improve documentation of dynamic modules
15623         * src/fns.c (Frequire): Doc fix to include the dynamic module
15624         support.
15625         * src/lread.c (Fload, Vload_suffixes): Doc fixes to include the
15626         dynamic module support.
15627         (Fload): Treat the module suffix the same as '*.el' and '*.elc'
15628         wrt the MUST-SUFFIX argument.
15630         * etc/NEWS: Expand documentation of dynamically loaded modules.
15632 2015-11-21  Philipp Stephani  <phst@google.com>  (tiny change)
15634         Initial documentation for dynamic modules
15636         * etc/NEWS: Mention the new support for dynamically loaded modules.
15638 2015-11-21  Dmitry Gutov  <dgutov@yandex.ru>
15640         Add xref--etags-backend to xref-backing-functions using add-hook
15642         * lisp/progmodes/xref.el (xref-backend-functions): Move the
15643         default value into a separate `add-hook' call (bug#21964).
15645         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
15646         Don't declare the xref-backend-functions variable.
15647         It doesn't make any difference.
15649 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
15651         Fix double-decrement bug when freeing global refs
15653         * src/emacs-module.c (module_free_global_ref): Add a FIXME
15654         comment about error reporting.  Fix a recently-introduced typo
15655         that double-decremented the refcount.
15657 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
15659         Declare emacs_module_init in the module API
15661         * src/emacs-module.h (emacs_module_init): New decl.
15662         Without it, GCC might complain about a module that defines
15663         emacs_module_init without using it.  This also checks the
15664         API better.
15666 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
15668         Fix module test to use ptrdiff_t nargs too
15670         * modules/mod-test/mod-test.c (Fmod_test_return_t)
15671         (Fmod_test_sum, Fmod_test_signal, Fmod_test_throw)
15672         (Fmod_test_non_local_exit_funcall, Fmod_test_globref_make)
15673         (Fmod_test_string_a_to_b, Fmod_test_userptr_make)
15674         (Fmod_test_userptr_get, Fmod_test_vector_fill)
15675         (Fmod_test_vector_eq): Arg counts are ptrdiff_t, not int.
15676         (finalizer): Remove; no longer used.
15678 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
15680         Fix reindent-introduced typo in module code
15682         * src/emacs-module.c (MODULE_SETJMP_1): Fix typo that I
15683         introduced while reindenting the code earlier, and add a
15684         comment explaining the unusual use of do-while here.
15686 2015-11-20  Anders Lindgren  <andlind@gmail.com>
15688         Fixed bug#19576: `write-file' saves wrong buffer.
15690         If a function on the hook `window-size-change-functions' doesn't
15691         restore the current buffer, functions that save and restore the
15692         current window configuration (like `y-or-no-p') could silently
15693         change the current buffer.  When `write-file' asked the user
15694         confirmation to overwrite a file, `y-or-no-p' changed the current
15695         buffer, and the wrong buffer was saved to the file.
15697         * lisp/follow.el (follow-windows-start-end): Call `select-frame'
15698         using the `norecord' parameter.
15699         (follow-window-size-change): Restore current buffer. Call
15700         `select-frame' using the `norecord' parameter. Cleanup.
15702 2015-11-20  John Wiegley  <johnw@newartisans.com>
15704         Correct a documentation error in frames.texi
15706 2015-11-20  Stephen Leake  <stephen_leake@stephe-leake.org>
15708         * lisp/cedet/mode-local.el: Delete obsolete comment
15710 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
15712         Module function arg counts are ptrdiff_t, not int
15714         * src/emacs-module.c (struct module_fun_env)
15715         (module_make_function, module_funcall, Fmodule_call):
15716         * src/emacs-module.h (struct emacs_runtime, struct emacs_env_25):
15717         Use ptrdiff_t, not int, for arg counts.
15718         * src/emacs-module.c (module_make_function): Don’t bother
15719         checking arity against MOST_POSITIVE_FIXNUM, as that’s
15720         unnecessary here.  Make the checking clearer by negating it.
15721         (module_make_function, Fmodule_call): No need to use xzalloc
15722         since the storage doesn’t need to be cleared.
15723         (module_funcall): Don’t use VLA, since C11 doesn’t guarantee support
15724         for it, and many implementations are buggy with large VLAs anyway.
15725         Use SAFE_ALLOCA_LISP instead.
15726         (module_vec_set): Don’t crash if i < 0.
15727         (module_vec_get): Don’t crash if i < MOST_NEGATIVE_FIXNUM.
15728         (module_vec_set, module_vec_get): Do fixnum checks only when
15729         i is out of array bounds, for efficiency in the usual case.
15730         (Fmodule_load): Simplify fixnum range check.
15731         (Fmodule_call): Simplify arity check.  Use xnmalloc to detect
15732         integer overflow in array allocation size.
15734 2015-11-20  Eli Zaretskii  <eliz@gnu.org>
15736         Minor improvements in module test
15738         * modules/mod-test/mod-test.c: Include stdlib.h, to avoid warnings
15739         about missing prototype of malloc.
15740         * modules/mod-test/Makefile (CFLAGS): Add -std=gnu99, to avoid
15741         compiler warnings.
15743 2015-11-20  Eli Zaretskii  <eliz@gnu.org>
15745         Improve MS-Windows implementation in dynlib.c
15747         * src/dynlib.c [WINDOWSNT]: Include errno.h, lisp.h, and w32.h.
15748         No need to include windows.h, as w32.h already does that.
15749         <dynlib_last_err>: New static variable.
15750         (dynlib_reset_last_error): New function.
15751         (dynlib_open): Convert forward slashes to backslashes.  Convert
15752         file names from UTF-8 to either UTF-16 or the current ANSI
15753         codepage, and call either LoadLibraryW or LoadLibraryA.  If the
15754         argument is NULL, return a handle to the main module, like
15755         'dlopen' does.  Record the error, if any, for use by dynlib_error.
15756         (dynlib_sym): Check the handle for validity. Record the error, if
15757         any, for use by dynlib_error.
15758         (dynlib_error): Call w32_strerror to produce the error string, and
15759         zero out the last error code, like dlerror does.
15760         (dynlib_close): Check the handle for validity.  Record the error,
15761         if any, for use by dynlib_error.  Don't call FreeLibrary with a
15762         handle for the main module.
15763         * src/w32.c (globals_of_w32): Call dynlib_reset_last_error.
15765 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
15767         Include-file tweaks for modules
15769         * src/dynlib.c, src/emacs-module.c: Include <config.h> first.
15770         * src/dynlib.h: Do not include config.h.
15771         It’s every .c file’s responsibility to include config.h first.
15772         * src/emacs-module.c: Include emacs-module.h immediately after
15773         config.h, to test that emacs-module.h doesn’t depend on
15774         include files other than config.h.
15776 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
15778         Simplify push_handler and profile its malloc
15780         * src/lisp.h (PUSH_HANDLER): Remove.
15781         All callers changed to use push_handler directly.
15782         * src/eval.c (internal_condition_case)
15783         (internal_condition_case_1, internal_condition_case_2)
15784         (internal_condition_case_n):
15785         Use same pattern as for other invokers of push_handler.
15786         (push_handler, push_handler_nosignal): Use call-by-value
15787         instead of call-by-reference.  All uses changed.
15788         (push_handler): Simplify by rewriting in terms of
15789         push_handler_nosignal.
15790         (push_handler_nosignal): Profile any newly allocated memory.
15792 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
15794         * src/emacs-module.h: Include stddef.h, not stdlib.h.
15796 2015-11-20  Juanma Barranquero  <lekktu@gmail.com>
15798         Discover repository version in linked worktrees (bug#21930)
15800         * lisp/version.el (emacs-repository--version-git-1): Do not assume
15801         HEAD is at .git/HEAD, it can also be at .git/worktrees/<branch>/HEAD.
15802         (emacs-repository-get-version): Grok linked worktrees when EXTERNAL
15803         is nil too.
15805 2015-11-20  Juri Linkov  <juri@linkov.net>
15807         * lisp/replace.el (occur-regexp-descr): New function.
15808         (occur-1, occur-engine): Use it.
15810         * lisp/isearch.el (isearch-occur): Propertize regexp with
15811         isearch-string and isearch-regexp-function-descr for
15812         occur-regexp-descr to display the correct description
15813         message in the header (bug#21176, bug#21180).
15815 2015-11-20  Karl Fogel  <kfogel@red-bean.com>
15817         Revert `open-line' electric-indent sensitivity
15819         * lisp/simple.el (open-line): Remove electric indent code.
15820           (electric-indent-just-newline): Don't declare.
15822         * test/automated/simple-test.el (open-line-indent): Adjust test.
15824         This partly reverts Artur Malabarba's change that added electric
15825         indent sensitivity to `open-line' (Oct 24 22:26:27 2015 +0100, git
15826         commit bd4f04f86), and adjusts a new test he added right afterwards
15827         (Sat Oct 24 23:43:06 2015 +0100, git commit 207f235e3) accordingly.
15828         However, the new INTERACTIVE argument to `open-line', which he also
15829         added in the first commit, is not reverted here.
15831         See the thread "Questioning the new behavior of `open-line'." on the
15832         Emacs Devel mailing list, and in particular this message:
15834           From: Artur Malabarba
15835           Subject: Re: Questioning the new behavior of `open-line'.
15836           To: Karl Fogel
15837           Cc: David Kastrup, Pierpaolo Bernardi, emacs-devel
15838           Date: Wed, 18 Nov 2015 21:03:58 +0000
15839           Message-ID: \
15840             <CAAdUY-KN06pvCMy5bt3+Buk3yeKjf6n9iB2FaSTTOPpCqPwyhA@mail.gmail.com>
15842           https://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01707.html
15844 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
15846         Omit unnecessary clear in Fmodule_load
15848         * src/emacs-module.c (Fmodule_load):
15849         Simplify and avoid unnecessary initialization of priv member to 0.
15851         * src/emacs-module.c: (module_vec_set, module_vec_get, module_vec_size)
15853 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
15855         Prefer signed integer types in module code
15857         Generally speaking, at the C level the Emacs source code prefers
15858         signed types like ‘ptrdiff_t’ to unsigned types like ‘size_t’,
15859         partly to avoid the usual signedness confusion when comparing values.
15860         Change the module API to follow this convention.
15861         Use ‘int’ for small values that can’t exceed INT_MAX.
15862         * modules/mod-test/mod-test.c (Fmod_test_globref_make)
15863         (Fmod_test_string_a_to_b, Fmod_test_vector_fill)
15864         (Fmod_test_vector_eq):
15865         * src/emacs-module.c (struct emacs_value_frame)
15866         (module_make_global_ref, module_free_global_ref)
15867         (module_copy_string_contents, module_make_string)
15868         (module_vec_set, module_vec_get, module_vec_size):
15869         * src/emacs-module.h (struct emacs_runtime, struct emacs_env_25):
15870         * src/lread.c (suffix_p):
15871         Prefer signed to unsigned integer types.
15873 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
15875         Omit ‘const’ on locals
15877         Remove ‘const’ qualifier from locals that were newly added.
15878         We don’t normally bother declaring locals with ‘const’ even
15879         though they are not modified, for the same reason we don’t
15880         bother declaring them with ‘register’ even though their
15881         addresses are not taken; the advantage in compile-time
15882         checking isn’t worth the loss of readability.
15883         * modules/mod-test/mod-test.c (Fmod_test_non_local_exit_funcall)
15884         (Fmod_test_vector_fill, Fmod_test_vector_eq):
15885         * src/emacs-module.c (MODULE_SETJMP_1)
15886         (module_make_global_ref, module_free_global_ref)
15887         (module_non_local_exit_get, module_make_function)
15888         (module_extract_integer, module_extract_float)
15889         (module_get_user_ptr, module_set_user_ptr)
15890         (module_get_user_finalizer, module_set_user_finalizer)
15891         (module_vec_get, Fmodule_call)
15892         (module_non_local_exit_signal_1)
15893         (module_non_local_exit_throw_1, lisp_to_value)
15894         (finalize_storage, allocate_emacs_value, mark_modules)
15895         (module_handle_signal, module_handle_throw)
15896         (module_format_fun_env):
15897         * src/eval.c (push_handler, push_handler_nosignal)
15898         (init_handler):
15899         * src/lread.c (suffix_p):
15900         Omit unnecessary ‘const’.
15902 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
15904         Prefer intmax_t to int64_t in module code
15906         * modules/mod-test/mod-test.c (sum, Fmod_test_sum):
15907         * src/emacs-module.c (module_extract_integer)
15908         (module_make_integer):
15909         * src/emacs-module.h (struct emacs_env_25):
15910         Prefer intmax_t to int64_t.  This doesn’t change the generated
15911         code on any of the machines Emacs currently ports to, but it’s
15912         at least in theory more future-proof as C99 doesn’t guarantee
15913         that int64_t exists.
15915 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
15917         Rename module.c to emacs-module.c, etc.
15919         * src/emacs-module.c: Rename from src/module.c.
15920         * src/emacs-module.h: Rename from src/module.h.
15921         All uses changed.
15923 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
15925         Fix minor module problems found by static checking
15927         * src/dynlib.c (dynlib_close): #ifdef out for now, as it’s not used.
15928         * src/eval.c, src/lisp.h (lisp_eval_depth): Now static.
15929         * src/emacs-module.c (Fmodule_load): Fix pointer signedness bug.
15930         (Fmodule_call): Tell GCC that the default case is unreachable.
15932 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
15934         Style fixes for indenting etc. in module code
15936         This is mostly indenting and spacing changes.  Also, remove
15937         some unnecessary static decls instead of bothering to reindent them.
15938         * src/emacs-module.h (EMACS_EXTERN_C_BEGIN): Remove, and do this inline,
15939         as most other Emacs files do for this sort of thing.
15941 2015-11-19  Eli Zaretskii  <eliz@gnu.org>
15943         Minor improvements in modules testing Makefile
15945         * modules/mod-test/Makefile (EMACS, SO): New variables.
15946         (CFLAGS): When SO = dll, don't use -fPIC.
15947         (check): New target, runs the test.
15949 2015-11-19  Eli Zaretskii  <eliz@gnu.org>
15951         * .gitignore: Add "*.dll".
15953 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
15955         Migrate modules/.gitignore into .gitignore
15957         * .gitignore: Add former contents of modules/.gitignore.
15958         * modules/.gitignore: Remove.
15960 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
15962         Add copyright notices to module code
15964         Put them in the usual format for GNU Emacs copyright notices.
15966 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
15968         Rename emacs_module.h to module.h
15970         * src/module.h: Rename from src/emacs_module.h.
15971         All uses changed.
15973 2015-11-19  Juanma Barranquero  <lekktu@gmail.com>
15975         * src/module.c (Fmodule_load): Remove unused vars `doc_name', `args'
15977         * src/lread.c (Fload): Remove unused variable `size'
15979 2015-11-19  Alan Mackenzie  <acm@muc.de>
15981         src/keyboard.c (pre-command-hook): Fix typo in doc string: "pre" -> "post".
15983 2015-11-19  Dmitry Gutov  <dgutov@yandex.ru>
15985         Prioritize looking inside vc-parent-buffer over log-view-mode fallback
15987         * lisp/vc/vc.el (vc-deduce-fileset): Prioritize looking inside
15988         vc-parent-buffer over log-view-mode fallback (bug#21955).
15990 2015-11-18  Alan Mackenzie  <acm@muc.de>
15992         lisp/isearch.el: Eliminate macro isearch-call-message, replacing with funcall.
15994 2015-11-18  Ken Brown  <kbrown@cornell.edu>
15996         * configure.ac (LIBMODULES): Don’t define on Cygwin
15998 2015-11-18  Eli Zaretskii  <eliz@gnu.org>
16000         Fix MS-Windows build --with-modules
16002         * src/module.c: Reformat copyright commentary.
16003         (module_vec_get): Use explicit cast to size_t to avoid compiler
16004         warning in 32-bit builds.
16005         (check_main_thread) [WINDOWSNT]: Fix letter-case in Windows APIs.
16006         Compare thread IDs directly, as GetThreadId is not available
16007         before Windows Vista.
16008         (check_main_thread) [WINDOWSNT]: Duplicate the thread handle
16009         without using APIs and constants not available on XP and older
16010         systems.  Obtain and store the thread ID as well.
16012 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
16013             Philipp Stephani  <phst@google.com>
16015         Add dynamic module test and helper script
16017         Add 'modhelp.py' script (python2) to automate module testing and
16018         module generation.
16020         To build and test all modules in the modules/ dir
16021           $ ./modhelp.py test
16023         To generate a module from template code (good starting point)
16024           $ ./modhelp init mynewtestmodule
16026         See the script -h option for more documentation.
16028         * modules/modhelp.py: New module helper script.
16029         * modules/mod-test/Makefile: New file. Makefile for the test module.
16030         * modules/mod-test/mod-test.c: New file. Test module source file.
16031         * modules/mod-test/test.el: New file. ert test suite for the test module.
16032         * modules/.gitignore: New file. Local .gitignore file.
16034 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
16036         Make 'Fload' look for modules
16038         'Fload' can now load dynamic modules. This also makes 'require' work.
16040         * src/lread.c:
16041           (suffix_p): New function.
16042           (Fload): Use 'suffix_p'.  Call 'Fmodule_load' when we try to load a file
16043           with a module suffix.
16044           (syms_of_lread): Append module suffix to 'Vload_suffixes'.
16046 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
16047             Philipp Stephani  <phst@google.com>
16049         Add dynamic module module support
16051         * configure.ac: Add '--with-modules' option.  Conditionally add
16052           dynlib.o and module.o to the list of objects.  Add any system
16053           specific flags to the linker flags to support dynamic libraries.
16054         * m4/ax_gcc_var_attribute.m4: Add autoconf extension to test gcc
16055           attributes.
16056         * src/Makefile.in: Conditionally add module objects and linker flags.
16057         * src/alloc.c (garbage_collect_1): protect module local values from
16058           GC.
16059         * src/lisp.h: Add 'module_init' and 'syms_of_module' prototypes.
16060         * src/emacs-module.h: New header file included by modules.  Public
16061           module API.
16062         * src/emacs-module.c: New module implementation file.
16064 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
16066         Add new User Pointer (User_Ptr) type
16068         * src/lisp.h: Add new Lisp_Misc_User_Ptr type.
16069         (XUSER_PTR): New User_Ptr accessor.
16070         * src/alloc.c (make_user_ptr): New function.
16071         (mark_object, sweep_misc): Handle Lisp_Misc_User_Ptr.
16072         * src/data.c (Ftype_of): Return 'user-ptr' for user pointer.
16073         (Fuser-ptrp): New user pointer type predicate function.
16074         (syms_of_data): New 'user-ptrp', 'user-ptr' symbol.  New 'user-ptrp'
16075         subr.
16076         * src/print.c (print_object): Add printer for User_Ptr type.
16078 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
16079             Philipp Stephani  <phst@google.com>
16081         Add portable layer for dynamic loading
16083         * src/dynlib.h: New file.
16084         * src/dynlib.c: New file.
16086 2015-11-18  Philipp Stephani  <phst@google.com>
16088         Add catch-all & no-signal version of PUSH_HANDLER
16090         Ground work for modules. Add a non-signaling version of PUSH_HANDLER and
16091         a new "catch-all" handler type.
16093         * src/eval.c (init_handler, push_handler, push_handler_nosignal): New
16094           functions.
16095         * src/fns.c (hash_remove_from_table): Expose function public.
16096         * src/lisp.h: New handler type, define macro to push_handler call.
16098 2015-11-18  Ken Brown  <kbrown@cornell.edu>
16100         Silence byte-compiler warning
16102         * lisp/server.el (server-process-filter): Silence byte-compiler
16103         warning.
16105 2015-11-18  Paul Eggert  <eggert@cs.ucla.edu>
16107         Quote symbols in docstrings using `'
16109         Be more systematic about quoting symbols `like-this' rather than
16110         `like-this or 'like-this' in docstrings.  This follows up Artur
16111         Malabarba's email in:
16112         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01647.html
16114 2015-11-18  Peder O. Klingenberg  <peder@klingenberg.no>
16116         Fix savegames in dunnet
16118         * lisp/play/dunnet.el (dun-rot13): Use the standard rot13-region instead
16119           of separate implementation.
16121 2015-11-18  Artur Malabarba  <bruce.connor.am@gmail.com>
16123         * lisp/emacs-lisp/package.el (package--with-response-buffer):
16125         Ensure we're at the start of the buffer before searching for
16126         the end of headers.
16128 2015-11-18  Xue Fuqiao  <xfq.free@gmail.com>
16130         * admin/release-process: Improve wording.
16132 2015-11-18  Xue Fuqiao  <xfq.free@gmail.com>
16134         Backport: * CONTRIBUTE: Remove information about feature freeze.
16136         (cherry picked from commit ae0653b5ab9ee223751ec389b87011963e1cbbef)
16138 2015-11-18  Xue Fuqiao  <xfq.free@gmail.com>
16140         Backport: Document the release process
16142         * admin/notes/versioning: Add information about RC releases.
16143         * admin/release-process: Document the release process.
16144         * admin/authors.el (authors-ignored-files):
16145         * admin/README: Change FOR-RELEASE to release-process.
16146         * CONTRIBUTE:
16147         * admin/notes/bugtracker: Don't mention FOR-RELEASE.
16149         (cherry picked from commit 9a4aa0f5945a03611ae29c516025dbd353bd26ab)
16151 2015-11-18  Xue Fuqiao  <xfq.free@gmail.com>
16153         Backport: * admin/release-process: Rename from admin/FOR-RELEASE.
16155         (cherry picked from commit f8cc14b59700e51a4e31139c0a65c8154995e055)
16157 2015-11-18  Xue Fuqiao  <xfq.free@gmail.com>
16159         Backport: Mention CONTRIBUTE in README
16161         Mention CONTRIBUTE in README, since it was moved from etc/ to root.
16162         * etc/TODO: Remove the reference to `etc/CONTRIBUTE'.
16163         * README: Mention CONTRIBUTE.
16165         (cherry picked from commit ed2e7e20ae0945288c98091f308f5460c3453873)
16167 2015-11-18  Paul Eggert  <eggert@cs.ucla.edu>
16169         Fix docstring quoting problems with ‘ '’
16171         Problem reported by Artur Malabarba in:
16172         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01513.html
16173         Most of these fixes are to documentation; many involve fixing
16174         longstanding quoting glitches that are independent of the
16175         recent substitute-command-keys changes.  The changes to code are:
16176         * lisp/cedet/mode-local.el (mode-local-augment-function-help)
16177         (describe-mode-local-overload):
16178         Substitute docstrings before displaying them.
16179         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
16180         Quote the generated docstring for later substitution.
16182 2015-11-17  Eli Zaretskii  <eliz@gnu.org>
16184         Improve configure --help text for wide ints
16186         * configure.ac (wide-int): Clarify user-level advantages and
16187         disadvantages.
16189 2015-11-17  Stephen Leake  <stephen_leake@stephe-leake.org>
16191         Improve doc string
16193         * lisp/progmodes/xref.el (xref-backend-references): Improve doc string.
16195 2015-11-17  Paul Eggert  <eggert@cs.ucla.edu>
16197         eval_sub followed dangling pointer when debugging
16199         Problem reported by Pip Cet (Bug#21245).
16200         This bug could occur in eval_sub if the C compiler reused
16201         storage associated with the ‘argvals’ local after ‘argvals’
16202         went out of scope, and if the Elisp debugger stopped on Elisp
16203         function exit and accessed ‘argvals’.  It could also occur if
16204         a variadic function was called with so many arguments (over
16205         2048 args on x86-64) that SAFE_ALLOCA_LISP called malloc, then
16206         SAFE_FREE freed the arguments, then the memory manager used
16207         the storage for other purposes, then the debugger accessed the
16208         arguments.
16209         * src/eval.c (eval_sub): Declare ‘argvals’ at top level of
16210         function body.  Simplify local decls.
16211         When allocating args via SAFE_ALLOCA, call
16212         debugger before invoking SAFE_FREE, as the debugger needs
16213         access to the args.
16214         (eval_sub, apply_lambda): Rework to avoid need for
16215         set_backtrace_debug_on_exit hack.  This is cleaner,
16216         and should work better with buggy custom debuggers.
16218 2015-11-17  Daiki Ueno  <ueno@gnu.org>
16220         * lisp/image-mode.el: Support encrypted file
16222         (image-toggle-display-image): Read content from the buffer instead
16223         of the file, if the buffer holds a decrypted data.  (Bug#21870)
16225 2015-11-17  Paul Eggert  <eggert@cs.ucla.edu>
16227         ELF unexec: align section header
16229         This ports the recent unexelf.c changes to Fedora x86-64
16230         when configured with GCC’s -fsanitize=undefined option.
16231         * src/unexelf.c (unexec): Align new_data2_size to a multiple
16232         of ElfW (Shdr)’s alignment, so that NEW_SECTION_H returns a
16233         pointer aligned appropriately for its type.
16235 2015-11-17  Andreas Schwab  <schwab@linux-m68k.org>
16237         Do more checks on bytecode objects (Bug#21929)
16239         * src/eval.c (funcall_lambda): Check size of compiled function
16240         object.
16241         (Ffetch_bytecode): Likewise.
16243 2015-11-16  Johan Bockgård  <bojohan@gnu.org>
16245         pcase.el: Fix edebugging of backquoted cons patterns
16247         * lisp/emacs-lisp/pcase.el (pcase-QPAT): Fix edebugging of backquoted
16248         cons patterns. (Bug#21920)
16250 2015-11-16  Paul Eggert  <eggert@cs.ucla.edu>
16252         Improve fix for regex reentrancy abort
16254         Suggested by Stefan Monnier (Bug#21688).
16255         * src/syntax.c (update_syntax_table_forward):
16256         Remove recently-added PROPERTIZE arg, and assume it is true.
16257         All callers changed.
16258         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
16259         Invoke update_syntax_table directly.
16261 2015-11-16  Artur Malabarba  <bruce.connor.am@gmail.com>
16263         * lisp/faces.el (faces--attribute-at-point): Use `face-list-p'
16265         * lisp/emacs-lisp/package.el (package--with-response-buffer): Missing require
16267         * lisp/emacs-lisp/nadvice.el (add-function): Escape quote
16269 2015-11-16  Vasily Korytov  <vasily.korytov@yahoo.com>
16271         Recognize .rbw and .pyw files (bug#18753)
16273         * lisp/progmodes/python.el (auto-mode-alist):
16274         Recognize .pyw files.
16276         * lisp/progmodes/ruby-mode.el (auto-mode-alist):
16277         Recognize .rbw files.
16279 2015-11-16  Dmitry Gutov  <dgutov@yandex.ru>
16281         Fix ruby-mode auto-mode-alist entry
16283         * lisp/progmodes/ruby-mode.el (auto-mode-alist): Add grouping
16284         around the extensions (bug#21257).
16286 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
16288         Fix etags completion near eob
16290         * lisp/progmodes/etags.el (tags-completion-at-point-function):
16291         Use `goto-char', to avoid the end-of-buffer error (bug#20061).
16293 2015-11-15  Alan Mackenzie  <acm@muc.de>
16295         De-pessimize detection of C++ member initialization lists.
16297         list/progmodes/cc-engine.el (c-back-over-list-of-member-inits): New macro.
16298         (c-back-over-member-initializers): Reformulate such that c-at-toplevel-p
16299         is only called when a construct "looks right" rather than continually.
16300         (c-guess-basic-syntax, CASE 5R): Add a check for the mode being C++ Mode.
16302 2015-11-15  Artur Malabarba  <bruce.connor.am@gmail.com>
16304         Backport: * lisp/emacs-lisp/package.el: Fix a decoding issue.
16306         * lisp/url/url-handlers.el (url-insert-file-contents): Move some code to
16307         `url-insert-buffer-contents'.
16308         (url-insert-buffer-contents): New function
16310         (package--with-response-buffer): Use `url-insert-buffer-contents'.
16311         The previous code had some issues with decoding. Refactoring that
16312         function allows us to use the decoding from url-handlers while still
16313         treating both sync and async requests the same.
16315 2015-11-15  Stephen Leake  <stephen_leake@stephe-leake.org>
16317         Improve a few doc strings, comments
16319         * lisp/cedet/cedet-global.el (cedet-gnu-global-expand-filename):
16320         * lisp/cedet/ede/locate.el (ede-locate-base):
16321         * lisp/cedet/semantic/symref.el (semantic-symref-calculate-rootdir):
16322         * src/fns.c (Fdelq): Improve doc string.
16324         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions): Add FIXME.
16326 2015-11-15  Anders Lindgren  <andlind@gmail.com>
16328         Enhance NSTRACE (trace output for NextStep).
16330         Trace can be disabled for groups of functions. By default, event
16331         functions and functions that generate lots of output are disabled.
16333         Trace output of Objective-C functions now use the "[ClassName
16334         parameter:]" form.
16336         * src/nsterm.h (NSTRACE_ALL_GROUPS, NSTRACE_GROUP_EVENTS)
16337         (NSTRACE_GROUP_UPDATES, NSTRACE_GROUP_FRINGE, NSTRACE_GROUP_COLOR)
16338         (NSTRACE_GROUP_GLYPHS, NSTRACE_GROUP_FOCUS): New macros,
16339         controlling in which function groups trace should be active.
16340         (NSTRACE_WHEN): Support for silencing a function, this also
16341         silencing all called functions.
16342         (NSTRACE_UNSILENCE): New macro, used to re-enable trace.
16343         (NSTRACE_FMT_FSTYPE, NSTRACE_ARG_FSTYPE): New macros, used to
16344         print the full screen state in NSTRACE functions.
16346         * src/nsterm.m (nstrace_depth, nstrace_num): Made volatile as they
16347         can be accessed from multiple threads.
16348         (nstrace_enabled_global): New variable, when FALSE, trace is
16349         silenced.
16350         (nstrace_restore_global_trace_state): New function, used to
16351         restore `nstrace_enabled_global' at end of block.
16352         ([EmacsView setFrame:], [EmacsWindow setFrame:display:])
16353         ([EmacsWindow setFrame:display:animation:])
16354         ([EmacsWindow setFrameTopLeftPoint:]): New functions, print trace
16355         and call corresponding super function.
16356         (Many functions): Add or enhance trace output.
16358         * src/nsimage.m (ns_image_from_file): Enhanced trace output.
16360         * src/nsfns.m (x_set_tool_bar_lines): Add trace output.
16362         * src/nsmenu.m ([EmacsToolbar setVisible:]): New function, print trace
16363         and call corresponding super function.
16365 2015-11-15  Anders Lindgren  <andlind@gmail.com>
16367         Fixed a toolbar related issue on OS X.
16369         Earlier, when toggling the tool-bar in a maximized frame, the
16370         frame size didn't match the number of text lines, leaving an
16371         unused area at the bottom of the frame.
16373         * src/nsfns.m (x_set_tool_bar_lines): Exit maximized and full height
16374         fullscreen modes when tool bar is disabled.
16376 2015-11-15  Anders Lindgren  <andlind@gmail.com>
16378         Fixed OS X 10.6.8 build issue (bug#21862).
16380         * src/nsterm.h (EmacsView): Add missing declarations.
16381         * src/nsterm.m ([EmacsView windowDidBecomeKey]): New method, like
16382         the standard method but without the notification parameter.
16383         Intended to be used for direct calls.
16384         ([EmacsView windowDidEnterFullScreen]): Call the non-notification
16385         version of `windowDidBecomeKey'. Made the notification method call
16386         the non-notification method instead of the vice versa.
16387         (NSWindowDidEnterFullScreenNotification): Deleted, no longer
16388         needed.
16390 2015-11-15  Artur Malabarba  <bruce.connor.am@gmail.com>
16392         * lisp/faces.el (faces--attribute-at-point): Fix an issue
16394         Previous code would signal an error when the face at point was
16395         a manually built list of attributes such as '(:foregroud "white").
16397         * test/automated/faces-tests.el (faces--test-color-at-point): Add a test
16399 2015-11-15  Paul Eggert  <eggert@cs.ucla.edu>
16401         Fix regex abort when it tries to reenter itself
16403         Problem reported by Ken Raeburn.
16404         Solution suggested by Stefan Monnier (Bug#21688).
16405         * src/regex.c (re_match_2_internal):
16406         Use new _FAST functions to avoid regex code reentering itself.
16407         * src/syntax.c (update_syntax_table_forward): New arg PROPERTIZE.
16408         All callers changed.
16409         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST)
16410         (UPDATE_SYNTAX_TABLE_FAST): New inline functions.
16412 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
16414         Improve Ruby 1.9-style keyword keys highlighting
16416         * lisp/progmodes/ruby-mode.el (ruby-font-lock-keywords):
16417         Handle required keyword arguments (bug#21367).
16418         And highlight the colon together with the name.
16420 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
16422         Unify the absolutely equal xref-backend-references implementations
16424         * lisp/progmodes/elisp-mode.el (xref-backend-references):
16425         Remove.
16427         * lisp/progmodes/etags.el (xref-backend-references):
16428         Remove.
16430         * lisp/progmodes/xref.el (xref-backend-references):
16431         Define the default implementation.
16433 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
16435         Update project-find-regexp for the new xref API
16437         * lisp/progmodes/project.el (project--read-regexp):
16438         Update to use the new xref API methods.
16440         * lisp/progmodes/xref.el (xref-find-backend): Autoload.
16442 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
16444         Fix replacing a match with a shorter string
16446         In effect, partially reverting fe973fc.
16448         * lisp/progmodes/xref.el (xref-query-replace): Store the end
16449         of each match as a marker again, instead of length.
16450         (xref--query-replace-1): Update accordingly.
16452 2015-11-14  Artur Malabarba  <bruce.connor.am@gmail.com>
16454         * lisp/progmodes/xref.el (xref-pop-marker-stack): Downgrade errors
16456         Signal user-errors instead.
16458 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
16460         Document 'describe-symbol'
16462         * doc/emacs/help.texi (Help Summary): Mention "C-h o".
16463         (Name Help): Document "C-h o" and describe-symbol.
16465         * lisp/help-fns.el (describe-symbol): Doc fix.
16467 2015-11-14  Paul Eggert  <eggert@cs.ucla.edu>
16469         Change test name to avoid spellcheck issue.
16471 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
16473         Avoid signaling an error in 'describe-symbol'
16475         * lisp/help-fns.el (describe-symbol): Avoid errors when the symbol
16476         exists as a function/variable/face/etc., but is undocumented.
16478         * test/automated/help-fns.el (help-fns-test-describe-symbol): New
16479         test.
16481 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
16483         * INSTALL (--with-cairo): Document this new configure option.
16485 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
16487         Document that GNU Make >= 3.81 is required to build Emacs
16489         * doc/lispref/internals.texi (Building Emacs): Document that GNU
16490         Make 3.81 or later is now required.
16492 2015-11-14  Artur Malabarba  <bruce.connor.am@gmail.com>
16494         Backport: * lisp/emacs-lisp/package.el: Refactor -with-work-buffer-async.
16496         (package--with-work-buffer-async): Reimplement as
16497         `package--with-response-buffer'.
16498         (package--with-work-buffer): Mark obsolete.
16499         (package--with-response-buffer): New macro. This is a more self
16500         contained and less contrived version of
16501         `package--with-work-buffer-async'.  It uses keyword arguments,
16502         doesn't have async on the name, doesn't fallback on
16503         `package--with-work-buffer', and has _much_ simpler error
16504         handling.  On master, this macro will soon be part of another
16505         library (either standalone or inside url.el), which is why this
16506         commit is not to be merged back.
16508         (package--check-signature, package--download-one-archive)
16509         (package-install-from-archive, describe-package-1): Use it.
16511         (package--download-and-read-archives): Let
16512         `package--download-one-archive' take care of calling
16513         `package--update-downloads-in-progress'.
16515 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
16517         * CONTRIBUTE (Branches): Improve wording for back-ported commits.
16519 2015-11-14  Dmitry Gutov  <dgutov@yandex.ru>
16521         Merge branch 'master' into emacs-25
16523 2015-11-14  Dmitry Gutov  <dgutov@yandex.ru>
16525         Use generic dispatch for xref backends
16527         * lisp/progmodes/xref.el (xref-backend-functions):
16528         New variable.
16529         (xref-find-function): Remove.
16530         (xref-find-backend)
16531         (xref--etags-backend): New functions.
16532         (xref-identifier-at-point-function)
16533         (xref-identifier-completion-table-function): Remove.
16534         (xref-backend-definitions, xref-backend-references)
16535         (xref-backend-apropos, xref-backend-identifier-at-point)
16536         (xref-backend-identifier-completion-table):
16537         New generic functions.
16539         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
16540         Add `elisp--xref-backend' to the beginning of
16541         `xref-backend-functions', locally.  Delete references to
16542         removed functions and vars.
16543         (elisp-xref-find): Remove.
16544         (elisp--xref-backend): New function.
16545         (elisp--xref-find-references, elisp--xref-find-apropos)
16546         (elisp--xref-identifier-completion-table):
16547         Turn into appropriately named generic methods.
16549         * lisp/progmodes/etags.el (etags-xref-find): Remove.
16550         (xref-backend-identifier-completion-table)
16551         (xref-backend-references, xref-backend-definitions)
16552         (xref-backend-apropos): New generic methods.
16554 2015-11-14  Juri Linkov  <juri@linkov.net>
16556         Support rectangular regions for more commands
16558         * lisp/simple.el (region-extract-function): Handle the arg
16559         value ‘bounds’.
16560         (region-insert-function): New function.
16561         (shell-command-on-region): Add arg ‘region-noncontiguous-p’.
16562         If non-nil, operate on multiple chunks.
16563         (region-noncontiguous-p): New function.
16565         * lisp/rect.el: Add function rectangle--insert-region
16566         around region-insert-function.
16567         (extract-rectangle-bounds): New function.
16568         (rectangle--extract-region): Handle the arg value ‘bounds’.
16569         (rectangle--insert-region): New function.
16571         * lisp/emulation/cua-rect.el: Add function cua--insert-rectangle
16572         around region-insert-function.
16573         (cua--extract-rectangle-bounds): New function.
16574         (cua--rectangle-region-extract): Handle the arg value ‘bounds’.
16576         * lisp/replace.el (query-replace, query-replace-regexp): Add arg
16577         ‘region-noncontiguous-p’.  Use ‘use-region-p’.
16578         (query-replace-regexp-eval, map-query-replace-regexp)
16579         (replace-string, replace-regexp): Use ‘use-region-p’.
16580         (keep-lines, flush-lines, how-many): Use ‘use-region-p’.
16581         (perform-replace): Add arg ‘region-noncontiguous-p’.
16582         If non-nil, operate on multiple chunks.
16584         * src/casefiddle.c (Fdowncase_region): Add arg ‘region-noncontiguous-p’.
16585         If non-nil, operate on multiple chunks.  (Bug#19829)
16587 2015-11-14  Dmitry Gutov  <dgutov@yandex.ru>
16589         Handle multiple matches on the same line; add highlighting
16591         * lisp/progmodes/xref.el (xref-location-marker): Interpret the
16592         column value in characters.
16593         (xref--collect-matches): Rename from `xref--collect-match'.
16594         Search for all matches in the hit line.  Add `highlight' face to
16595         the matched region in the summary.  Update both callers.
16597 2015-11-14  Dmitry Gutov  <dgutov@yandex.ru>
16599         Replace xref-match-bounds with xref-match-length
16601         Relying on xref-location-marker to point to the beginning of the match
16603         * lisp/progmodes/xref.el (xref-match-bounds): Remove.
16604         (xref-match-length): Add.
16605         (xref-make-match): Change the arguments.
16606         (xref--match-buffer-bounds): Remove.
16607         (xref-match-item): Store length, instead of end-column.
16608         (xref-pulse-momentarily)
16609         (xref--collect-match)
16610         (xref--query-replace-1): Update accordingly.
16611         (xref-query-replace): Ditto.  And check that the search results
16612         are up-to-date.
16614 2015-11-13  John Wiegley  <johnw@newartisans.com>
16616         Merge remote-tracking branch 'origin/master' into emacs-25
16618 2015-11-13  l3thal  <kwhite@gnu.org>
16620         Merge branch 'erc-async-reconnect' into emacs-25
16622         Reconnect asynchronously.
16624 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
16626         Merge from gnulib
16628         This incorporates:
16629         2015-11-13 xalloc-oversized: improve performance with GCC 5
16630         * lib/xalloc-oversized.h: Copy from gnulib.
16632 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
16634         Spruce up ftfont.c memory allocation
16636         * src/ftfont.c (setup_otf_gstring):
16637         Avoid O(N**2) behavior when reallocating.
16638         (ftfont_shape_by_flt): Prefer xpalloc to xrealloc when
16639         reallocating buffers; this simplifies the code.  Do not trust
16640         mflt_run to leave the output areas unchanged on failure, as
16641         this isn’t part of its interface spec.
16643 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16645         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
16647 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
16649         Port recent XCB changes to 64-bit ‘long int’
16651         For historical reasons, libX11 represents 32-bit values like Atoms as
16652         ‘long int’ even on platforms where ‘long int’ is 64 bits.  XCB doesn’t
16653         do that, so adapt the recent XCB code to behave properly on 64-bit
16654         platforms.  Also, fix what appears to be a bug in the interpretation
16655         of xcb_get_property_value_length, at least on my Fedora platform
16656         which is running libxcb-1.11-5.fc21.
16657         * src/xfns.c (x_real_pos_and_offsets):
16658         * src/xterm.c (get_current_wm_state):
16659         xcb_get_property_value_length returns a byte count, not a word count.
16660         For 32-bit quantities, xcb_get_property_value returns a vector
16661         of 32-bit words, not of (possibly 64-bit) long int.
16663         Backport.
16665 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
16667         * src/undo.c (run_undoable_change): Now static.
16669         Backport.
16671 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16673         Remove support for ':timeout' from w32 tray notifications
16675         * src/w32fns.c (Fw32_notification_notify): Delete the code that
16676         supports ':timeout'.
16677         (syms_of_w32fns): Don't DEFSYM ':timeout'.  This avoids clashes
16678         with dbusbind.c when D-Bus is compiled in.
16680         * doc/lispref/os.texi (Desktop Notifications): Don't mention
16681         ':timeout'.
16683         Backport.
16685 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
16687         * test/automated/simple-test.el: Add test for bug#20698 (bug#21885)
16689         (simple-test--transpositions): New macro.
16690         (simple-transpose-subr): New test.
16692         Backport.
16694 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
16696         * lisp/progmodes/elisp-mode.el: Declare function `project-roots'
16698         Backport.
16700 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
16702         * src/undo.c: Small fixes for previous change
16704         (run_undoable_change): Mark void argument list.
16705         (record_property_change): Remove unused variable `boundary'.
16707         Backport.
16709 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16711         Add a few more variables to redisplay--variables
16713         * lisp/frame.el (redisplay--variables): Add bidi-paragraph-direction
16714         and bidi-display-reordering to the list.
16716         Backport.
16718 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16720         * lisp/loadup.el: Enlarge the size of the hash table to 80000.
16722         Backport.
16724 2015-11-13  Eli Barzilay  <eli@barzilay.org>
16726         Fix point positioning after transposing with negative arg
16728         * lisp/simple.el (transpose-subr): When invoked with a negative
16729         argument, move point to after the transposed text, like we do
16730         when invoked with a positive argument.  (Bug#21885)
16732         Backport.
16734 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16736         Fix last change in shr.el
16738         * lisp/net/shr.el (shr--have-one-fringe-p): Rename from
16739         have-fringes-p.  All callers changed.  Doc fix.  (Bug#21895)
16741         Backport.
16743 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16745         Fix last change
16747         * src/w32fns.c (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]:
16748         Don't DEFSYM tray notification symbols if D-Bus is being used.
16750         Backport.
16752 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16754         Another fix for MinGW64 and Cygwin builds due to notifications
16756         * src/w32fns.c: Ifdef away tray notification code if D-Bus is
16757         being compiled into Emacs.
16758         (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]: Don't defsubr
16759         Sw32_notification_notify and Sw32_notification_close if the code
16760         is not compiled.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
16762         Backport.
16764 2015-11-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
16766         Remove intern calls and XXX comments from Fx_export_frames
16768         * src/xfns.c (Fx_export_frames): Use Qpdf, Qpng, Qpostscript, and
16769         Qsvg instead of intern calls.  Use "postscript" instead of "ps"
16770         for consistency with image types.  Remove XXX comments.
16771         (syms_of_xfns) <Qpdf>: DEFSYM it.
16773         Backport.
16775 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
16777         Port recent XCB changes to 64-bit ‘long int’
16779         For historical reasons, libX11 represents 32-bit values like Atoms as
16780         ‘long int’ even on platforms where ‘long int’ is 64 bits.  XCB doesn’t
16781         do that, so adapt the recent XCB code to behave properly on 64-bit
16782         platforms.  Also, fix what appears to be a bug in the interpretation
16783         of xcb_get_property_value_length, at least on my Fedora platform
16784         which is running libxcb-1.11-5.fc21.
16785         * src/xfns.c (x_real_pos_and_offsets):
16786         * src/xterm.c (get_current_wm_state):
16787         xcb_get_property_value_length returns a byte count, not a word count.
16788         For 32-bit quantities, xcb_get_property_value returns a vector
16789         of 32-bit words, not of (possibly 64-bit) long int.
16791 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
16793         * src/undo.c (run_undoable_change): Now static.
16795 2015-11-13  Michael Albinus  <michael.albinus@gmx.de>
16797         Adapt Tramp version, do not merge with master
16799         * doc/misc/trampver.texi (trampver):
16800         * lisp/net/trampver.el (tramp-version): Set to "2.2.13-25.1".
16802 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16804         Remove support for ':timeout' from w32 tray notifications
16806         * src/w32fns.c (Fw32_notification_notify): Delete the code that
16807         supports ':timeout'.
16808         (syms_of_w32fns): Don't DEFSYM ':timeout'.  This avoids clashes
16809         with dbusbind.c when D-Bus is compiled in.
16811         * doc/lispref/os.texi (Desktop Notifications): Don't mention
16812         ':timeout'.
16814 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
16816         * test/automated/simple-test.el: Add test for bug#20698 (bug#21885)
16817         (simple-test--transpositions): New macro.
16818         (simple-transpose-subr): New test.
16820 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
16822         * lisp/progmodes/elisp-mode.el: Declare function `project-roots'
16824 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
16826         * src/undo.c: Small fixes for previous change
16827         (run_undoable_change): Mark void argument list.
16828         (record_property_change): Remove unused variable `boundary'.
16830 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16832         Add a few more variables to redisplay--variables
16834         * lisp/frame.el (redisplay--variables): Add bidi-paragraph-direction
16835         and bidi-display-reordering to the list.
16837 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16839         * lisp/loadup.el: Enlarge the size of the hash table to 80000.
16841 2015-11-13  Eli Barzilay  <eli@barzilay.org>
16843         Fix point positioning after transposing with negative arg
16845         * lisp/simple.el (transpose-subr): When invoked with a negative
16846         argument, move point to after the transposed text, like we do
16847         when invoked with a positive argument.  (Bug#21885)
16849 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16851         Fix last change in shr.el
16853         * lisp/net/shr.el (shr--have-one-fringe-p): Rename from
16854         have-fringes-p.  All callers changed.  Doc fix.  (Bug#21895)
16856 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16858         Fix last change
16860         * src/w32fns.c (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]:
16861         Don't DEFSYM tray notification symbols if D-Bus is being used.
16863 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16865         Another fix for MinGW64 and Cygwin builds due to notifications
16867         * src/w32fns.c: Ifdef away tray notification code if D-Bus is
16868         being compiled into Emacs.
16869         (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]: Don't defsubr
16870         Sw32_notification_notify and Sw32_notification_close if the code
16871         is not compiled.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
16873 2015-11-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
16875         Remove intern calls and XXX comments from Fx_export_frames
16877         * src/xfns.c (Fx_export_frames): Use Qpdf, Qpng, Qpostscript, and
16878         Qsvg instead of intern calls.  Use "postscript" instead of "ps"
16879         for consistency with image types.  Remove XXX comments.
16880         (syms_of_xfns) <Qpdf>: DEFSYM it.
16882 2015-11-13  Eric Hanchrow  <eric.hanchrow@gmail.com>
16884         shr: don't invoke unbound function (Bug#21895)
16886         * lisp/net/shr.el (have-fringes-p): New function.
16887         (shr-insert-document, shr-fill-text): Use it.
16889 2015-11-12  Juanma Barranquero  <lekktu@gmail.com>
16891         * test/automated/keymap-tests.el: Fix test to make it repeatable
16893         (keymap-store_in_keymap-FASTINT-on-nonchars): Reset Buffer-menu-mode-map
16894         entry to its initial value to make the test repeatable in interactive
16895         sessions (assuming it doesn't fail and crashes Emacs, of course).
16897 2015-11-13  Artur Malabarba  <bruce.connor.am@gmail.com>
16899         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors): Small fix
16901 2015-11-12  Phillip Lord  <phillip.lord@russet.org.uk>
16903         : Tests for undo-auto functionality.
16905 2015-11-12  Phillip Lord  <phillip.lord@newcastle.ac.uk>
16907         The heuristic that Emacs uses to add an `undo-boundary' has been
16908         reworked, as it interacts poorly with functions on `post-command-hook'
16909         or `after-change-functions'.
16911         * lisp/simple.el: New section added.
16912         * src/cmds.c (remove_excessive_undo_boundaries): Now in lisp.
16913         (self_insert_command): Calls simple.el to amalgamate.
16914         (delete_char): Calls simple.el to amalgamate.
16915         * src/keyboard.c (last_undo_boundary): Removed.
16916         * src/undo.c (run_undoable_change): New function.
16918 2015-11-12  Juri Linkov  <juri@linkov.net>
16920         Bind [?\S-\ ] to previous line command in Dired-like modes.
16922         * lisp/arc-mode.el (archive-mode-map):
16923         * lisp/dired.el (dired-mode-map):
16924         * lisp/proced.el (proced-mode-map):
16925         * lisp/vc/vc-dir.el (vc-dir-mode-map):
16926         Bind [?\S-\ ] to previous line command.
16927         (Bug#20790)
16929 2015-11-12  Eli Zaretskii  <eliz@gnu.org>
16931         Fix the MinGW64 and Cygwin-w32 builds
16933         * src/w32fns.c (MYNOTIFYICONDATAW_V1_SIZE)
16934         (MYNOTIFYICONDATAW_V2_SIZE, MYNOTIFYICONDATAW_V3_SIZE): Define and
16935         use instead of the corresponding NOTIFYICONDATAW_Vn_SIZE macros,
16936         which cause trouble with MinGW42 headers.  Ifdef away tray
16937         notifications code for Cygwin.  Reported by Andy Moreton
16938         <andrewjmoreton@gmail.com>.
16940 2015-11-12  Simen Heggestøyl  <simenheg@gmail.com>
16942         Enable sorting of JSON object keys when encoding
16944         * lisp/json.el (json-encoding-object-sort-predicate): New variable
16945         for specifying a sorting predicate for JSON objects during encoding.
16946         (json--plist-to-alist): New utility function.
16947         (json-encode-hash-table): Re-use `json-encode-alist' when object keys
16948         are to be sorted.
16949         (json-encode-alist): Sort output by
16950         `json-encoding-object-sort-predicate, when set.
16951         (json-encode-plist): Re-use `json-encode-alist' when object keys are
16952         to be sorted.
16953         (json-pretty-print-buffer-ordered): New command to pretty print the
16954         buffer with object keys sorted alphabetically.
16955         (json-pretty-print-ordered): New command to pretty print the region
16956         with object keys sorted alphabetically.
16958         * test/automated/json-tests.el (test-json-plist-to-alist)
16959         (test-json-encode-plist, test-json-encode-hash-table)
16960         (test-json-encode-alist-with-sort-predicate)
16961         (test-json-encode-plist-with-sort-predicate): New tests.
16963         * etc/NEWS: Add an entry for the new commands.
16965 2015-11-12  Juanma Barranquero  <lekktu@gmail.com>
16967         * test/automated/keymap-tests.el: New test file.
16969 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
16971         Speed up x_real_pos_and_offsets using XCB
16973         * src/xfns.c (x_real_pos_and_offsets) [USE_XCB]: Add XCB flavors of
16974         all X calls, and pipeline requests when possible, collecting results
16975         later.  Eliminate use of x_catch_errors (and thus XSync) in XCB case.
16977 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
16979         Enable use of XCB for checking window manager state
16981         * src/xterm.c (get_current_wm_state) [USE_XCB]: Use XCB calls instead
16982         of XGetWindowProperty plus error-catching, since we can explicitly
16983         check for errors in the XCB version.  This eliminates 3 XSync calls on
16984         top of the round-trip actually fetching the information.
16986 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
16988         Detect XCB and save a connection handle
16990         * configure.ac: If using X11, check for XCB libraries and header.
16991         * src/Makefile.in (XCB_LIBS): Define.
16992         (LIBX_EXTRA): Include it.
16994         * src/xterm.h [USE_XCB]: Include X11/Xlib-xcb.h.
16995         (struct x_display_info) [USE_XCB]: Add an XCB connection handle field.
16996         * src/xterm.c (x_term_init) [USE_XCB]: Initialize the new field.
16998 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
17000         Reduce some data dependencies between X calls
17002         Gains nothing in the traditional-Xlib code, but more closely aligns
17003         with how the XCB version will work.
17005         * src/xfns.c (x_real_pos_and_offsets): When translating coordinates,
17006         send coordinates (0,0) to the X server and add in the real coordinates
17007         after getting the response.  Move XGetGeometry for outer window inside
17008         error-trapping block.  Use DPY variable more, since it's available.
17010 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
17012         Use color cache for creating bitmap
17014         * src/image.c (x_create_bitmap_from_xpm_data) [ALLOC_XPM_COLORS]:
17015         Set attributes to use the caching color allocator.  Initialize and
17016         free the cache.
17018 2015-11-12  Eli Barzilay  <eli@barzilay.org>
17020         Add "^" to the interactive specs of `dired-next/previous-line'
17022         * lisp/dired.el (dired-next-line, dired-previous-line): It makes sense
17023         to bind these commands to the arrow keys, and that means that they work
17024         better with a "^" in the `interactive' declaration so selection works
17025         as expected.
17027 2015-11-12  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
17029         Sync with soap-client repository, version 3.0.2
17031         * lisp/net/soap-client.el: Bump version to 3.0.2.
17033         * lisp/net/soap-client.el (soap-warning): Use format, not format-message.
17035         * lisp/net/soap-client.el: Add cl-lib to Package-Requires.  Require cl-lib.
17036         (soap-validate-xs-simple-type): Use cl-labels instead of cl-flet.
17038         * lisp/net/soap-client.el: Support Emacs versions that do not have
17039         define-error.
17041         * lisp/net/soap-inspect.el: Remove version header.
17043         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Fix first line header
17044         format.
17046 2015-11-11  Alan Mackenzie  <acm@muc.de>
17048         CC Mode: Respect users' settings of open-paren-in-column-0-is-defun-start.
17050         * lisp/progmodes/cc-engine.el (c-backward-single-comment)
17051         (c-backward-comments, c-invalidate-state-cache-1, c-parse-state-1)
17052         (c-guess-basic-syntax):
17053         Remove bindings of open-paren-in-column-0-is-defun-start to nil.
17054         (c-get-fallback-scan-pos): "New" function (existed several years ago).
17055         (c-parse-state-get-strategy): Reintroduce the 'BOD strategy, using
17056         c-get-fallback-scan-pos.
17057         (c-parse-state-1): Handle 'BOD strategy.
17059         * lisp/progmodes/cc-mode.el (c-before-change, c-after-change)
17060         (c-font-lock-fontify-region): Remove bindings of
17061         open-paren-in-column-0-is-defun-start to nil.
17063         * doc/misc/cc-mode.texi (Performance Issues)
17064         (Limitations and Known Bugs): Fix mix up between @chapter and @appendix.
17066 2015-11-11  Artur Malabarba  <bruce.connor.am@gmail.com>
17068         * lisp/obarray.el: Fix shadowed variables.
17069         (obarray-map, obarray-remove, obarray-put, obarray-get):
17070         Change OBARRAY arg to OB to avoid shadowing ‘obarray’.
17072 2015-11-11  Eli Zaretskii  <eliz@gnu.org>
17074         Avoid error in submitting a form with EWW
17076         * lisp/gnus/mm-url.el (mm-url-form-encode-xwfu): Allow argument
17077         CHUNK to be nil.  (Bug#21881)
17079 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
17081         Rename seq-p and map-p to seqp and mapp
17083         * lisp/emacs-lisp/seq.el (seqp): New name.
17084         * lisp/emacs-lisp/map.el (mapp): New name.
17085         * doc/lispref/sequences.texi: Update the documentation for seqp.
17086         * test/automated/map-tests.el: Update the tests for mapp.
17088 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
17090         Rename obarray-p to obarrayp
17092         * lisp/obarray.el (obarrayp): New name.
17093         * test/automated/obarray-tests.el: Update the tests.
17095 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
17097         Rename obarray-foreach to obarray-map
17099         * lisp/obarray.el (obarray-map): New name.
17100         * test/automated/obarray-tests.el: Update the corresponding tests.
17102 2015-11-11  Przemysław Wojnowski  <esperanto@cumego.com>
17104         New file with obarray functions.
17106         * lisp/obarray.el: Basic obarray functions extracted from abbrev.el.
17107         * test/automated/obarray-tests.el: New file.
17109 2015-11-11  Eli Zaretskii  <eliz@gnu.org>
17111         Implement tray notifications for MS-Windows
17113         * src/w32fns.c (MY_NOTIFYICONDATAW): New typedef.
17114         (NOTIFYICONDATAW_V1_SIZE, NOTIFYICONDATAW_V2_SIZE)
17115         (NOTIFYICONDATAW_V3_SIZE, NIF_INFO, NIIF_NONE, NIIF_INFO)
17116         (NIIF_WARNING, NIIF_ERROR, EMACS_TRAY_NOTIFICATION_ID)
17117         (EMACS_NOTIFICATION_MSG): New macros.
17118         (NI_Severity): New enumeration.
17119         (get_dll_version, utf8_mbslen_lim, add_tray_notification)
17120         (delete_tray_notification, Fw32_notification_notify)
17121         (Fw32_notification_close): New functions.
17122         (syms_of_w32fns): Defsubr functions exposed to Lisp.  DEFSYM
17123         keywords used by w32-notification-notify.
17125         * doc/lispref/os.texi (Desktop Notifications): Describe the native
17126         w32 tray notifications.
17128 2015-11-11  Alan Mackenzie  <acm@muc.de>
17130         First commit to scratch/follow.  Make Isearch work with Follow Mode, etc.
17132         doc/lispref/window.texi (Basic Windows): Add paragraph defining "Group of
17133         Windows" and new @defun selected-window-group.
17134         (Window Start and End): Describe new &optional parameter GROUP and
17135         ...-group-function for window-start, window-end, set-window-start, and
17136         pos-visible-in-window-p.
17137         (Textual Scrolling) Describe the same for recenter.
17138         doc/lispref/positions.texi (Screen Lines): Describe the same for
17139         move-to-window-line.
17141         src/window.c (Fwindow_start, Fwindow_end, Fset_window_start)
17142         (Fpos_visible_in_window_p, Frecenter, Fmove_to_window_line): To each, add ar
17143         new optional parameter "group".  At the beginning of each, check whether the
17144         corresponding ...-group-function is set to a function, and if so execute this
17145         function in place of the normal processing.
17146         (syms_of_window): Define symbols for the six new variables below.
17147         (window-start-group-function, window-end-group-function)
17148         (set-window-start-group-function, recenter-group-function)
17149         (pos-visible-in-window-p-group-function, move-to-window-line-group-function):
17150         New permanent local buffer local variables.
17151         src/keyboard.c (Fposn_at_point): Add extra parameter in call to
17152         Fpos_visible_in_window_p.
17154         lisp/window.el (selected-window-group-function): New permanent local buffer
17155         local variable.
17156         (selected-window-group): New function.
17158         lisp/follow.el (follow-mode): Set the ...-group-function variables at mode
17159         enable, kill them at mode disable.  Add/remove follow-after-change to/from
17160         after-change-functions.
17161         (follow-start-end-invalid): New variable.
17162         (follow-redisplay): Manipulate follow-start-end-invalid.
17163         (follow-after-change, follow-window-start, follow-window-end)
17164         (follow-set-window-start, follow-pos-visible-in-window-p)
17165         (follow-move-to-window-line, follow-sit-for): New functions.
17167         lisp/isearch.el (isearch-call-message): New macro.
17168         (isearch-update, with-isearch-suspended, isearch-del-char)
17169         (isearch-search-and-update, isearch-ring-adjust): Invoke above new macro.
17170         (with-isearch-suspended): Rearrange code such that isearch-call-message is
17171         invoked before point is moved.
17172         (isearch-message): Add comment about where point must be at function call.
17173         (isearch-search): Remove call to isearch-message.
17174         (isearch-lazy-highlight-window-group): New variable.
17175         (isearch-lazy-highlight-new-loop): Unconditionally start idle timer.  Move
17176         the battery of tests to ...
17177         (isearch-lazy-highlight-maybe-new-loop): New function, started by idle timer.
17178         Note: (sit-for 0) is still called.
17179         (isearch-lazy-highlight-update): Check membership of
17180         isearch-lazy-highlight-window-group.  Don't set the `window' overlay
17181         property.
17182         (isearch-update, isearch-done, isearch-string-out-of-window)
17183         (isearch-back-into-window, isearch-lazy-highlight-maybe-new-loop)
17184         (isearch-lazy-highlight-search, isearch-lazy-highlight-update)
17185         (isearch-lazy-highlight-update): Call the six amended primitives (see
17186         src/window.c above) with the new `group' argument set to t, to cooperate
17187         with Follow Mode.
17189 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
17191         Optimize `file-equal-p' and `file-in-directory-p' in Tramp
17193         * lisp/net/tramp.el (tramp-handle-file-equal-p)
17194         (tramp-handle-file-in-directory-p): New defuns.  Suggested by
17195         Harvey Chapman <hchapman@3gfp.com>.
17197         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
17198         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist):
17199         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist):
17200         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist): Use them.
17202 2015-11-10  Karl Fogel  <kfogel@red-bean.com>
17204         * CONTRIBUTE: Encourage adding tests.
17206         Based on this post from John Wiegley:
17208           From: "John Wiegley" <johnw@newartisans.com>
17209           Subject: Re: [Emacs-diffs] master 1f02cbe: Fix bug#21766 and add test
17210           To: Juanma Barranquero <lekktu@gmail.com>
17211           Cc: emacs-diffs@gnu.org, bruce.connor.am@gmail.com,
17212               emacs-devel <emacs-devel@gnu.org>
17213           Date: Wed, 28 Oct 2015 18:45:29 -0700
17214           Message-ID: <m2y4emqwg6.fsf@newartisans.com>
17216           https://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02372.html
17218 2015-11-10  David Reitter  <david.reitter@gmail.com>
17220         Avoid creating notification objects when possible
17222         * src/nsterm.m (windowWillEnterFullScreen, windowWillExitFullScreen:)
17223         (windowDidEnterFullScreen, windowDidExitFullScreen): Provide convenience
17224         functions that do not require a notification object.  When needed,
17225         define NSWindowDidEnterFullScreenNotification to allow for compilation
17226         on OS X 10.6.8.
17228 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
17230         Move INTEGER_TO_CONS body out of .h file
17232         * src/data.c (INTBIG_TO_LISP): New macro, with most
17233         of the contents of the old INTEGER_TO_CONS.
17234         (intbig_to_lisp, uintbig_to_lisp): New functions.
17235         * src/lisp.h (INTEGER_TO_CONS):
17236         Simplify by using EXPR_SIGNED and the new functions.
17237         This shrinks code size a bit, and makes it easier to
17238         put a breakpoint on handling of large integers.
17240 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
17242         Merge from gnulib
17244         This incorporates:
17245         2015-11-10 intprops: new public macro EXPR_SIGNED
17246         2015-11-10 intprops: fix typo in clang port
17247         * lib/intprops.h: Copy from gnulib.
17249 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
17251         Spelling fixes
17253         * lisp/net/soap-inspect.el (soap-inspect-xs-simple-type):
17254         Fix misspelling in output.
17256 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
17258         * doc/lispref/variables.texi (Directory Local Variables):
17259         Document dir-locals wildcards.
17261         * lisp/files.el (dir-locals-file): Point to Info node.
17263         * doc/emacs/custom.texi (Directory Variables):
17264         Document dir-locals wildcards.
17266         * etc/NEWS: Document new functionality.
17268 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
17270         * lisp/files.el: Don't allow customization of dir-locals sorting.
17271         In retrospect, this is not a good idea for the same reason that
17272         `dir-locals-file' is a defconst, because it is important that this
17273         behavior be "uniform across different environments and users".
17274         Sure, the user can still change the sorting with a hack, but we
17275         shouldn't encourage them to change it.
17276         (dir-locals--all-files): Return list in the order returned by
17277         `file-expand-wildcards'.
17278         (file-expand-wildcards): Document the sorting predicate used.
17279         (dir-locals-sort-predicate): Delete variable.
17281 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
17283         * lisp/files.el (dir-locals-read-from-file): Better handle errors.
17285         * lisp/isearch.el (search-default-regexp-mode): Change default value.
17287 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
17289         * lisp/files.el (dir-locals-find-file): Don't stop at unreadable files.
17290         `locate-dominating-file' will now keep looking if the files it finds in
17291         a given directory are unreadable (or not files).
17293 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
17295         * lisp/files.el (dir-locals-file): Allow wildcards.
17296         (dir-locals-find-file, dir-locals-collect-variables)
17297         (dir-locals-read-from-file): Update accordingly.
17298         (hack-dir-local-variables): Rename a local variable.
17300         * lisp/files-x.el (modify-dir-local-variable): Update accordingly.
17302         * lisp/help-fns.el (describe-variable): Update accordingly.
17304         * .gitignore: Add .dir-locals?.el.
17306 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
17308         * lisp/emacs-lisp/map.el (map-merge-with): New function.
17310         * test/automated/map-tests.el (test-map-merge-with): New test.
17312 2015-11-10  Karl Fogel  <kfogel@red-bean.com>
17314         Fix some recently-perturbed bookmark autoloads
17316         * lisp/bookmark.el (bookmark-set-internal): Remove unnecessary autoload.
17317         (bookmark-set): Restore autoload.
17318         (bookmark-set-no-overwrite): Add autoload.
17320         Thanks to Juanma Barranquero for noticing the autoload problems
17321         introduced by my recent commit adding/changing the above functions
17322         (Sun Nov 8 14:16:43 2015 -0500, git commit 3812e17978).
17324 2015-11-09  Noah Friedman  <friedman@splode.com>
17326         * etc/emacs-buffer.gdb (ydump-buffer): Handle case where gap is at
17327         the start of buffer.  I don't recall if older versions of gdb were
17328         less strict but you cannot dump a 0-length range in gdb 7.9.1.
17330 2015-11-10  Dmitry Gutov  <dgutov@yandex.ru>
17332         * lisp/progmodes/project.el: Update Commentary.
17334         Merge branch 'project-next'
17336 2015-11-10  Dmitry Gutov  <dgutov@yandex.ru>
17338         Fold `project-ask-user' into `project-current'
17340         * lisp/progmodes/project.el (project-find-functions): Remove
17341         `project-ask-user'.
17342         (project-ask-user): Remove function and the corresponding
17343         `project-roots' implementation.
17344         (project-current): Add a new argument, MAYBE-PROMPT.  Prompt the
17345         user in case there's no project in the current directory.  Update
17346         all callers.
17348 2015-11-09  Karl Fogel  <kfogel@red-bean.com>
17350         When VC detects a conflict, specify which file
17352         * lisp/vc/vc.el (vc-message-unresolved-conflicts): New function.
17353         * lisp/vc/vc-svn.el (vc-svn-find-file-hook):
17354         * lisp/vc/vc-hg.el (vc-hg-find-file-hook):
17355         * lisp/vc/vc-bzr.el (vc-bzr-find-file-hook):
17356         * lisp/vc/vc-git.el (vc-git-find-file-hook): Use above new function
17357           to display a standard message that specifies the conflicted file.
17359         Before this change, the message VC used for indicating a conflicted
17360         file was just "There are unresolved conflicts in this file" without
17361         naming the file (and this language was duplicated in several places).
17362         After this change, it's "There are unresolved conflicts in file FOO"
17363         (and this language is now centralized in one function in vc.el).
17365         Justification: It's important for the message to name the conflicted
17366         file because the moment when VC realizes a file is conflicted does not
17367         always come interactively.  For example, some people automatically
17368         find a set of Org Mode files on startup, and may keep those .org files
17369         under version control.  If any of the files are conflicted, the user
17370         just sees some messages fly by, and might later check the "*Messages*"
17371         buffer to find out what files were conflicted.  I'm not saying this
17372         happened to me or anything; it's a purely hypothetical example.
17374 2015-11-09  Eli Zaretskii  <eliz@gnu.org>
17376         Fix assertion violation in define-key
17378         * src/keymap.c (store_in_keymap): Don't use XFASTINT on non-character
17379         objects.  Reported by Drew Adams <drew.adams@oracle.com>
17380         and Juanma Barranquero <lekktu@gmail.com>.
17382 2015-11-09  Dima Kogan  <dima@secretsauce.net>
17384         Fix a memory leak in GC of font cache
17386         * src/alloc.c (compact_font_cache_entry): Don't GC unmarked font
17387         entities if some of the fonts it references are marked.  This
17388         plugs a memory leak.  (Bug#21556)
17390 2015-11-09  Paul Eggert  <eggert@cs.ucla.edu>
17392         Use INT_ADD_WRAPV etc. to check integer overflow
17394         * src/alloc.c (xnmalloc, xnrealloc, xpalloc, Fmake_string):
17395         * src/buffer.c (record_overlay_string, overlay_strings):
17396         * src/casefiddle.c (casify_object):
17397         * src/ccl.c (Fccl_execute_on_string):
17398         * src/character.c (char_width, c_string_width, lisp_string_width)
17399         (count_size_as_multibyte, string_escape_byte8):
17400         * src/coding.c (coding_alloc_by_realloc, produce_chars):
17401         * src/data.c (arith_driver):
17402         * src/dispnew.c (realloc_glyph_pool, init_display):
17403         * src/editfns.c (styled_format):
17404         * src/fns.c (Ffillarray):
17405         * src/ftfont.c (ftfont_shape_by_flt):
17406         * src/gnutls.c (gnutls_hex_string):
17407         * src/gtkutil.c (get_utf8_string):
17408         * src/image.c (x_to_xcolors, x_detect_edges, png_load_body):
17409         * src/keymap.c (Fkey_description):
17410         * src/lisp.h (SAFE_ALLOCA_LISP):
17411         * src/term.c (encode_terminal_code):
17412         * src/tparam.c (tparam1):
17413         * src/xselect.c (x_property_data_to_lisp):
17414         * src/xsmfns.c (smc_save_yourself_CB):
17415         * src/xterm.c (x_term_init):
17416         When checking for integer overflow, prefer INT_MULTIPLY_WRAPV to
17417         more-complicated code involving division and/or
17418         INT_MULTIPLY_OVERFLOW, and similarly for INT_ADD_WRAPV and
17419         subtraction and/or INT_ADD_OVERFLOW.
17420         * src/casefiddle.c (casify_object): Simplify multibyte size check.
17421         * src/character.c: Remove some obsolete ‘#ifdef emacs’s.
17422         * src/data.c (arith_driver): Also check for division overflow,
17423         as that’s now possible given that the accumulator can now contain
17424         any Emacs integer.
17425         * src/lisp.h (lisp_word_count): Remove; no longer used.
17427 2015-11-09  Dmitry Gutov  <dgutov@yandex.ru>
17429         Make sure that the ignore file exists
17431         * lisp/vc/vc.el (vc-default-ignore-completion-table):
17432         Make sure that the ignore file exists.
17434 2015-11-09  Michael Sperber  <mike@xemacs.org>
17436         * lisp/gnus-sum.el (gnus-summary-backend-map): Bind B-backspace to
17437         `gnus-summary-delete-article` in a way that also works on XEmacs.
17439 2015-11-08  Simen Heggestøyl  <simenheg@gmail.com>
17441         Add support for retrieving paths to JSON elements
17443         Add support for retrieving the path to a JSON element. This can for
17444         instance be useful to retrieve paths in deeply nested JSON
17445         structures.
17447         * lisp/json.el (json-pre-element-read-function)
17448         (json-post-element-read-function): New variables to hold pre- and post
17449         read callback functions for `json-read-array' and `json-read-object'.
17450         (json--path): New variable used internally by `json-path-to-position'.
17451         (json--record-path, json--check-position): New functions used
17452         internally by `json-path-to-position'.
17453         (json-path-to-position): New function for retrieving the path to a
17454         JSON element at a given position.
17455         (json-read-object, json-read-array): Call
17456         `json-pre-element-read-function' and `json-post-element-read-function'
17457         when set.
17459         * test/automated/json-tests.el (test-json-path-to-position-with-objects)
17460         (test-json-path-to-position-with-arrays)
17461         (test-json-path-to-position-no-match): New tests for
17462         `json-path-to-position'.
17464 2015-11-08  Karl Fogel  <kfogel@red-bean.com>
17466         * etc/NEWS: Mention new `bookmark-set-no-overwrite'.
17468         This really should been part of my previous commit
17469         (Sun Nov 8 14:16:43 2015 -0500, git commit 3812e17978).
17471 2015-11-08  Karl Fogel  <kfogel@red-bean.com>
17473         Offer non-overwrite bookmark setter (Bug#15746)
17475         * lisp/bookmark.el (bookmark-set-internal): New helper function to do
17476         what `bookmark-set' used to do, but with more choices for overwrite
17477         vs push, and with minor changes to the interactive prompt format.
17478         (bookmark-set): Rewrite as wrapper around above.
17479         If overwriting, inform the user of that in the prompt.
17480         (bookmark-set-no-overwrite): New function, also done as wrapper.
17481         Bind to "M" in `ctl-x-r-map' autoloads.
17482         (bookmark-map): Similarly bind "M" here.
17484 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
17486         * src/unexelf.c (NEW_PROGRAM_H): Remove unused macro (Bug#20614).
17488 2015-11-08  Alan Modra  <amodra@gmail.com>
17490         ELF unexec: Don't insert a new section
17492         Reuse the .bss section instead, making it SHT_PROGBITS.  This way we
17493         don't need to mess with symbol st_shndx, or section sh_link and
17494         sh_info.
17496         This does lead to eu-elflint complaints about symbols defined in .bss
17497         with a needed version, because normally it is undefined symbols that
17498         have needed versions;  Defined symbols have version definitions.
17499         The exception is symbols defined by the linker in .dynbss for
17500         variables copied from a shared library in order to avoid text
17501         relocations, with copy relocs to copy their initial values from the
17502         shared library.  These symbols are both defined and have needed
17503         versions, and eu-elflink only expects to see them in SHT_NOBITS
17504         sections.  Of course there is no real problem with having such symbols
17505         in SHT_PROGBITS sections.  glibc ld.so handles them fine.
17507         * src/unexelf.c: Delete outdated comments.
17508         (PATCH_INDEX): Delete.
17509         (find_section): Delete.
17510         (unexec): Don't add a new section.  Instead reuse the last bss
17511         section, extending it to cover dumped data.  Make bss sections
17512         SHT_PROGBITS.  Remove all patching of sh_link, sh_info and
17513         st_shndx.  Rename bss sections.
17515 2015-11-08  Alan Modra  <amodra@gmail.com>
17517         ELF unexec: Drive from PT_LOAD header rather than sections
17519         This rewrites bss handling in the ELF unexec code.  Finding bss
17520         sections by name results in complicated code that
17521         - does not account for all names of possible bss sections,
17522         - assumes specific ordering of bss sections,
17523         - can wrongly choose a SHT_NOBITS section not in the bss segment,
17524         - incorrectly calculates bss size (no accounting for alignment gaps),
17525         - assumes .data and .bss are in the same segment.
17527         All of these problems and more are solved by finding the bss segment
17528         in PT_LOAD headers, ie. the address range included in p_memsz but not
17529         p_filesz of the last PT_LOAD header, then matching SHT_NOBITS sections
17530         in that address range.
17532         * src/unexelf.c: Delete old ppc comment.
17533         (OLD_PROGRAM_H): Define.
17534         (round_up): Delete.
17535         (unexec): Don't search for bss style sections by name.  Instead,
17536         use the last PT_LOAD header address range covered by p_memsz
17537         but not p_filesz and match any SHT_NOBITS section in that
17538         address range.  Simplify initialization of section header vars.
17539         Don't assume that section headers are above bss segment.  Move
17540         copying of bss area out of section loop.  Align .data2 section
17541         to 1, since it now covers the entire bss area.  For SHT_NOBITS
17542         sections in the bss segment, leave sh_addr and sh_addralign
17543         unchanged, but correct sh_offset.  Clear memory corresponding
17544         to SHT_NOBITS .plt section.  Delete comment and hacks for
17545         sections partly overlapping bss range now that the full range
17546         is properly calculated.  Delete now dead .sbss code.
17547         (Bug#20614)
17549 2015-11-08  Alan Modra  <amodra@gmail.com>
17551         ELF unexec: R_*_NONE relocs
17553         These should be ignored on all targets.
17555         * src/unexelf.c (unexec): Ignore R_*_NONE relocs for any target,
17556         not just Alpha.  Comment on reloc size assumption.
17558 2015-11-08  Alan Modra  <amodra@gmail.com>
17560         ELF unexec: _OBJC_ symbols in bss sections
17562         This code assumed that there was only one bss section.  Rather than
17563         checking for a particular index, check the section type.  Also, handle
17564         the possibility that the section was SHT_NOBITS originally and is
17565         unchanged, in which case no clearing is needed (and sh_offset isn't
17566         necessarily valid, which can lead to a wild memset).
17568         * src/unexelf.c (unexec): Properly handle _OBJC_ symbols in
17569         bss sections.
17571 2015-11-08  Alan Modra  <amodra@gmail.com>
17573         ELF unexec: Symbol table patching
17575         No st_shndx value larger than SHN_LORESERVE should be changed.
17576         * src/unexelf.c (unexec): Don't adjust any st_shndx larger than
17577         SHN_LORESERVE.  Error on SHN_XINDEX.
17579 2015-11-08  Alan Modra  <amodra@gmail.com>
17581         ELF unexec: Merge Alpha and MIPS COFF debug handling
17583         * src/unexelf.c (unexec): Merge Alpha and MIPS COFF debug handling.
17584         Don't find .mdebug section index, find the section in the loop.
17585         Allow for unlikely possibility that .mdebug is located at sh_offset
17586         before bss segment, by calculating move from difference in
17587         sh_offset rather than just assuming new_data2_size.  Simplify
17588         cbLineOffset handling.
17590 2015-11-08  Alan Modra  <amodra@gmail.com>
17592         ELF unexec: Tidy code
17594         Separate out some of the more mechanical changes so following patches
17595         are smaller.
17597         * src/unexelf.c (unexec): Rearrange initialization of program
17598         header vars.  Use pointer vars in loops rather than indexing
17599         section header array via macros.  Simplify _OBJC_ sym code
17600         and reloc handling code.
17602 2015-11-08  Alan Modra  <amodra@gmail.com>
17604         ELF unexec: Correct section header index
17606         First a small fix.  The code incorrectly uses "NEW_SECTION_H (n)" when
17607         it should have been using "NEW_SECTION_H (nn)" to find the name of the
17608         section currently being processed.  Of course, before the bss
17609         sections, n and nn have the same value, so this doesn't matter except
17610         in the case of .sbss.  For .sbss this probably meant .bss (most likely
17611         the next section) was copied from memory.  A later patch removes the
17612         bogus .sbss handling anyway.
17614         * src/unexelf.c (unexec): Use correct index to look up names.
17616 2015-11-08  Michael Albinus  <michael.albinus@gmx.de>
17618         Fix Bug#21841
17620         * lisp/filenotify.el (file-notify--rm-descriptor):
17621         Use `descriptor' instead of computing its value.
17622         (file-notify--descriptor): Additional argument FILE.  Adapt all callees.
17623         (file-notify-rm-watch): Use `descriptor' when calling file name handler.
17624         (Bug#21841)
17626 2015-11-08  Dmitry Gutov  <dgutov@yandex.ru>
17628         Remove dirs in vc project roots from the the vc project library roots
17630         * lisp/progmodes/project.el (project-library-roots):
17631         Remove directories inside the project roots from the result.
17632         (http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg00536.html)
17634 2015-11-08  Dmitry Gutov  <dgutov@yandex.ru>
17636         Move and rename xref-find-regexp to the project package
17638         * lisp/progmodes/project.el (project-find-regexp)
17639         (project--read-regexp)
17640         (project--find-regexp-in): New functions.
17642         * lisp/progmodes/xref.el (xref--find-xrefs): Extract from
17643         xref--show-xrefs.  Use in existing callers in place of that
17644         function.
17645         (xref--show-xrefs): Only do the "show" part.
17646         (xref-find-regexp): Rename, more or less, to
17647         project-or-libraries-find-regexp.
17649 2015-11-06  Dmitry Gutov  <dgutov@yandex.ru>
17651         Abolish temporary buffer management for xref
17653         * lisp/progmodes/xref.el (xref--temporary-buffers)
17654         (xref--current)
17655         (xref--inhibit-mark-current)
17656         (xref--mark-selected): Remove.  Remove all references.
17657         (xref--show-xrefs): Do not construct the
17658         list of the temporary buffers, nor pass it along.
17660 2015-11-06  Dmitry Gutov  <dgutov@yandex.ru>
17662         Rename "search path" to "library roots"
17664         * lisp/emacs-lisp/cl-seq.el (cl-set-difference): Retain the order
17665         of the elements from CL-LIST1.
17667         * test/automated/cl-lib-tests.el (cl-lib-test-set-functions):
17668         Update WRT to the above change.
17670         * lisp/progmodes/project.el (project-search-path-function): Rename
17671         to project-library-roots-function, update the documentation and
17672         references.
17673         (project-search-path): Likewise, to project-library-roots.
17674         (project-roots): Clarify documentation.
17675         (project-vc-search-path): Likewise, to project-vc-library-roots.
17676         (project-library-roots): In addition to the renames, thread the
17677         results through file-name-as-directory.
17678         (project-prune-directories): Accept a variable number of
17679         arguments.  Rename to project-combine-directories.
17680         (project-subtract-directories): New function.
17682         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references):
17683         Append project-roots and project-library-roots together.
17685         * lisp/progmodes/etags.el (etags--xref-find-references): Ditto.
17687 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
17689         Prefer xpalloc to doubling buffers by hand
17691         * src/lread.c (grow_read_buffer): New function, which uses xpalloc.
17692         (read1): Use it for simplicity.
17693         * src/macros.c (store_kbd_macro_char):
17694         * src/minibuf.c (read_minibuf_noninteractive):
17695         * src/term.c (encode_terminal_code):
17696         * src/xrdb.c (magic_db):
17697         Prefer xpalloc to growing buffers by hand.
17698         This doesn’t fix any bugs, but simplifies the code a bit.
17700 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
17702         Merge from gnulib
17704         This incorporates:
17705         2015-11-05 timespec-sub: fix overflow bug; add tests
17706         2015-11-04 intprops: revise _WRAPV macros, revert _OVERFLOW
17707         2015-11-03 intprops: add parentheses
17708         * lib/intprops.h, lib/timespec-add.c, lib/timespec-sub.c:
17709         Copy from gnulib.
17711 2015-11-07  David Reitter  <david.reitter@gmail.com>
17713         Provide NS notification objects where required to eliminate warnings
17715         * src/nsterm.m (windowDidResize:, toggleFullScreen:):
17716         Call notification functions with notification objects
17717         as per delegate APIs.
17719 2015-11-07  Noam Postavsky  <npostavs@users.sourceforge.net>
17721         Add test for bug #21824
17723         * test/automated/buffer-tests.el: New file.
17724         (overlay-modification-hooks-message-other-buf): New test.
17726 2015-11-07  Kelvin White  <kwhite@gnu.org>
17728         * lisp/erc/erc-pcomplete.el (pcomplete-erc-nicks): Fix bug#18771.
17730 2015-11-07  David Reitter  <david.reitter@gmail.com>
17732         Ignore fullscreen exit notifications on NS when frame is dead
17734         * src/nsterm.m (windowDidResize:, windowWillExitFullScreen:)
17735         (windowDidExitFullScreen:): Return if frame is dead.
17736         These functions may be called when a fullscreen frame
17737         is closed; they are called before, not after.
17739         May address Bug#21428.
17741 2015-11-07  Eli Zaretskii  <eliz@gnu.org>
17743         Speed up lookup in redisplay--variables
17745         * lisp/frame.el (redisplay--variables): Make it a hash-table.
17747         * src/xdisp.c (maybe_set_redisplay): Access redisplay--variables
17748         as a hash-table.  This speeds up this function by an order of
17749         magnitude: where previously a setq was slowed down by 100% by
17750         introducing the maybe_set_redisplay test, it is now only 5%
17751         slower.
17752         (syms_of_xdisp) <redisplay--variables>: Doc fix.
17754 2015-11-07  Artur Malabarba  <bruce.connor.am@gmail.com>
17756         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Fix a bug.
17758         The defsubst was being created as:
17759             (cl-defsubst name (args) ("DOC") ...)
17761         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors):
17762         Add test.
17764 2015-11-07  Mihai Olteanu  <mihai_olteanu@fastmail.fm>  (tiny change)
17766         Update doc string of hexl-mode
17768         * lisp/hexl.el (hexl-mode): Doc fix.  (Bug#21800)
17770 2015-11-07  Eli Zaretskii  <eliz@gnu.org>
17772         Fix error in copy-abbrev-table
17774         * lisp/abbrev.el (define-abbrev): Don't erase the :abbrev-table-modiff
17775         property of the abbrev-table.  (Bug#21828)
17777         * test/automated/abbrev-tests.el: New file.
17779 2015-11-07  Michael Albinus  <michael.albinus@gmx.de>
17781         Add test to auto-revert-tests.el for Bug#21841
17783         * test/automated/auto-revert-tests.el
17784         (auto-revert-test01-auto-revert-several-files): New test.
17785         (auto-revert-test02-auto-revert-tail-mode)
17786         (auto-revert-test03-auto-revert-mode-dired): Rename them.
17788 2015-11-07  Martin Rudalics  <rudalics@gmx.at>
17790         * doc/lispref/windows.texi (Coordinates and Windows): Fix typo.
17792 2015-11-07  Martin Rudalics  <rudalics@gmx.at>
17794         In x_consider_frame_title don't set title of tooltip frames
17796         * src/xdisp.c (x_consider_frame_title): Return immediately for
17797         tooltip frames to avoid displaying empty tooltips.
17799 2015-11-06  Anders Lindgren  <andlind@gmail.com>
17801         Fixed NextStep fullscreen problem (bug#21770).
17803         * src/nsterm.m (ns_constrain_all_frames): Don't constrain
17804         fullscreen frames.
17806 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
17808         Ensure redisplay after evaluation
17810         * lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp):
17811         Revert last change.
17812         * lisp/frame.el (redisplay--variables): Populate the
17813         redisplay--variables list.
17814         * src/xdisp.c (maybe_set_redisplay): New function.
17815         (syms_of_xdisp) <redisplay--variables>: New variable.
17816         * src/window.h (maybe_set_redisplay): Declare prototype.
17817         * src/data.c (set_internal): Call maybe_set_redisplay.  (Bug#21835)
17819 2015-11-06  Artur Malabarba  <bruce.connor.am@gmail.com>
17821         * test/automated/subr-tests.el (subr-test-when): Fix again.
17823 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
17825         Don't invoke overlay modification hooks in wrong buffer
17827         * src/buffer.c (report_overlay_modification): When called with
17828         AFTER non-zero, don't invoke overlay modification hooks if the
17829         buffer recorded in last_overlay_modification_hooks is different
17830         from the current buffer.  (Bug#21824)
17832 2015-11-06  Juanma Barranquero  <lekktu@gmail.com>
17834         * admin/notes/repo: Fix a few obsolete references to Bazaar.
17836 2015-11-06  Artur Malabarba  <bruce.connor.am@gmail.com>
17838         * test/automated/subr-tests.el (subr-test-when): Fix test.
17840 2015-11-06  Martin Rudalics  <rudalics@gmx.at>
17842         Avoid division by zero crash observed by Yuan MEI
17844         See http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg00194.html.
17846         * src/dispnew.c (required_matrix_height, required_matrix_width):
17847         Avoid division by zero.
17848         * src/xterm.c (x_term_init): Init dpyinfo->smallest_font_height and
17849         dpyinfo->smallest_char_width to 1.
17851 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
17853         Ensure redisplay after "C-x C-e"
17855         * lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp): Make sure
17856         redisplay happens to account for any side effects of the evaluated
17857         sexp.  (Bug#21835)
17859 2015-11-06  Michael Albinus  <michael.albinus@gmx.de>
17861         Skip some file notification tests for cygwin
17863         * test/automated/file-notify-tests.el (file-notify--test-with-events):
17864         Remove argument TIMEOUT.  Adapt all callees.
17865         (file-notify-test02-events, file-notify-test04-file-validity):
17866         Skip for cygwin.  (Bug#21804)
17868 2015-11-05  Stephen Leake  <stephen_leake@stephe-leake.org>
17870         * lisp/progmodes/xref.el: Require semantic/symref during compilation.
17872 2015-11-05  Daiki Ueno  <ueno@gnu.org>
17874         Suppress redundant Pinentry startup messages
17876         * lisp/net/pinentry.el (pinentry-start): Add optional QUIET argument.
17877         * lisp/epg.el: Declare `pinentry-start'.
17878         (epg--start): Call `pinentry-start' with QUIET argument set.
17880 2015-11-05  Xue Fuqiao  <xfq.free@gmail.com>
17882         * doc/emacs/ack.texi (Acknowledgments): Updates.
17884 2015-11-05  Juanma Barranquero  <lekktu@gmail.com>
17886         * test/automated/elisp-mode-tests.el: Silence some run-time warnings.
17887         (xref-elisp-deftest): Bind `find-file-suppress-same-file-warnings' to t.
17889 2015-11-05  Tassilo Horn  <tsdh@gnu.org>
17891         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
17892         Add prettification support for \times.
17894 2015-11-05  Juanma Barranquero  <lekktu@gmail.com>
17896         * test/automated/process-tests.el: Skip tests when bash is unavailable.
17897         (process-test-sentinel-accept-process-output)
17898         (process-test-sentinel-sit-for): skip-unless bash executable found.
17900 2015-11-05  Eli Zaretskii  <eliz@gnu.org>
17902         Add test for bug #21831
17904         * test/automated/process-tests.el
17905         (start-process-should-not-modify-arguments): New test.  (Bug#21831)
17906         Suggested by Nicolas Richard <youngfrog@members.fsf.org>
17908 2015-11-04  Stefan Monnier  <monnier@iro.umontreal.ca>
17910         * lisp/emacs-lisp/eieio-compat.el: Typo caught by tests.
17912         (eieio--generic-static-object-generalizer): Fix typo.
17913         * test/automated/eieio-tests.el: Byte-compile it again.  It looks
17914         like the underlying cause of bug#17852 was fixed in the mean time.
17916 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
17918         Revert "* lisp/subr.el (when): Use `macroexp-progn'"
17920         This reverts commit 8e843831eaf271801836b7a3e4dd3b4fb0bb72b8.
17921         It breaks bootstrapping (duh).
17923 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
17925         * lisp/files.el (report-errors): Obsolete.
17927         (normal-mode, hack-local-variables, dir-locals-find-file):
17928         Use `with-demoted-errors' instead.
17930 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
17932         * lisp/subr.el (when): Use `macroexp-progn'.
17934         * test/automated/subr-tests.el (subr-test-when): New test.
17936 2015-11-04  Juanma Barranquero  <lekktu@gmail.com>
17938         * lisp/progmodes/xref.el: Doc fixes.
17939         (xref-make-file-location, xref-make-buffer-location, xref-make)
17940         (xref-make-bogus-location, xref-make-match): Add cross-references.
17941         (xref--insert-xrefs): Fix typo in docstring.
17943 2015-11-04  Anders Lindgren  <andlind@gmail.com>
17945         Render fringe bitmaps correctly on NextStep (bug#21301)
17947         The fringe bitmaps were inverted, the background was not transparent,
17948         the image data was horizontally mirrored, and periodic fringe bitmaps
17949         were not supported.
17951         * src/nsimage.m ([EmacsImage initFromXBM:width:height:fg:bg:]):
17952         When both background and foreground colors are 0, set the background
17953         alpha channel to 0 (making the background transparent).  When
17954         copying the image data, do this from the most significant bit
17955         (leftmost) to the least (rightmost), to avoid mirroring.
17956         * src/nsterm.m (ns_draw_fringe_bitmap): Don't invert the image bits.
17957         Add support for periodic images (e.g. the empty line indicator).
17959 2015-11-03  Michael Heerdegen  <michael_heerdegen@web.de>
17961         * lisp/emacs-lisp/pcase.el (pcase): Tweak docstring.
17963 2015-11-03  Nicolas Petton  <nicolas@petton.fr>
17965         * admin/MAINTAINERS: Add seq-tests.el, map-tests.el, and thunk-tests.el.
17967         * admin/MAINTAINERS: Add thunk.el.
17969 2015-11-03  Jay Belanger  <jay.p.belanger@gmail.com>
17971         * lisp/calc/calc.el (calc-bug-address): Change maintainer address.
17973 2015-11-03  Michael Albinus  <michael.albinus@gmx.de>
17975         Fix a stupid error in gfilenotify.c
17977         * src/gfilenotify.c (dir_monitor_callback): Cancel monitor only,
17978         if we've got a `deleted' signal AND the file name is the watched one.
17980 2015-11-03  Stephen Leake  <stephen_leake@stephe-leake.org>
17982         Fix Bug#21816; case insensitive file system in elisp-mode-tests.el
17984         * test/automated/elisp-mode-tests.el (xref-elisp-test-run):
17985         Use case-insensitive string compare for file names.
17986         (emacs-test-dir): Add 'downcase' to cause case differences (at
17987         least on my system).
17989 2015-11-02  Juanma Barranquero  <lekktu@gmail.com>
17991         flymake-tests.el (warning-predicate-rx-gcc): Fix check
17993         * test/automated/flymake-tests.el (warning-predicate-rx-gcc):
17994         Also check that "make" is available, not just "gcc".
17996 2015-11-02  Ken Brown  <kbrown@cornell.edu>
17998         Document behavior of collation on Cygwin
18000         * test/automated/fns-tests.el (fns-tests-collate-sort): Mark as
18001         expected failure on Cygwin.
18002         * doc/lispref/strings.texi (Text Comparison): Document that
18003         punctuation and whitespace are not ignored for sorting on Cygwin.
18005 2015-11-02  Dani Moncayo  <dmoncayo@gmail.com>
18007         * build-aux/msys-to-w32: Prevent double slashes in w32 path list.
18009 2015-11-01  Glenn Morris  <rgm@gnu.org>
18011         * lisp/progmodes/f90.el (f90-no-block-limit): Add associate.
18012         (Bug#21794)
18013         * test/automated/f90.el (f90-test-bug21794): New test.
18015 2015-11-01  Juanma Barranquero  <lekktu@gmail.com>
18017         Fix incompatibility with TCC in test for bug#18745
18019         * test/automated/process-tests.el (process-test-quoted-batfile):
18020         Remove spaces unrelated to the bug being tested.
18022 2015-11-01  Michael Albinus  <michael.albinus@gmx.de>
18024         Improve completion in tramp-gvfs.el
18026         * lisp/net/tramp-gvfs.el (tramp-zeroconf-parse-device-names):
18027         Rename from `tramp-zeroconf-parse-service-device-names'.
18028         (tramp-zeroconf-parse-webdav-device-names): Remove.  Code merged
18029         with `tramp-zeroconf-parse-device-names'.
18030         (tramp-gvfs-parse-device-names): New defun.
18031         (top): Use it when `tramp-zeroconf-parse-device-names' is not
18032         applicable.
18034         * lisp/net/tramp.el (tramp-set-completion-function): The argument
18035         could also be a zeroconf service type.
18037 2015-10-31  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
18039         * lisp/net/ntlm.el: Change version to 2.0.0.
18041 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
18043         Fix bug#21762
18044         * lisp/progmodes/python.el (python-syntax-closing-paren-p): Check with
18045         `eql' instead of `=' to accommodate the case that (syntax-after (point))
18046         returns nil.
18047         * test/automated/python-tests.el (python-indent-inside-paren-7):
18048         New test.
18050 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
18052         * test/automated/python-tests.el: Avoid warnings.
18053         (python-tests-with-temp-buffer, python-tests-with-temp-file):
18054         Bind `python-indent-guess-indent-offset' to nil.
18056 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
18058         * src/alloc.c: Silence compiler warnings.
18059         (pointers_fit_in_lispobj_p, mmap_lisp_allowed_p): #ifdef DOUG_LEA_MALLOC.
18061 2015-10-31  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
18063         * etc/NEWS: Fix js-jsx-mode entry punctuation.
18065 2015-10-31  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
18067         Add JSX indentation via js-jsx-mode  (Bug#21799)
18069         * lisp/progmodes/js.el: Add JSX indentation support.
18070         (js--jsx-end-tag-re)
18071         (js--jsx-after-tag-re): New variables.
18072         (js--jsx-find-before-tag)
18073         (js--jsx-indented-element-p)
18074         (js--as-sgml)
18075         (js--expression-in-sgml-indent-line)
18076         (js-jsx-indent-line)
18077         (js-jsx-mode): New functions.
18078         * test/indent/js-jsx.js: New file.
18079         * etc/NEWS: Add information about js-jsx-mode.
18081 2015-10-31  Michael Albinus  <michael.albinus@gmx.de>
18083         Minor fix in filenotify.el
18085         * lisp/filenotify.el (file-notify--event-file-name)
18086         (file-notify--event-file1-name): Normalize result with
18087         `directory-file-name'.
18089 2015-10-31  Eli Zaretskii  <eliz@gnu.org>
18091         Avoid errors in redisplay--pre-redisplay-functions
18093         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor--detect): Don't
18094         use 'bobp', instead compare window-point with 1.  (Bug#21730)
18096 2015-10-30  Paul Eggert  <eggert@cs.ucla.edu>
18098         Merge from gnulib
18100         This incorporates:
18101         2015-10-30 intprops: add WRAPV and const flavors for GCC 5
18102         2015-10-25 stdalign: port to Sun C 5.9
18103         * doc/misc/texinfo.tex, lib/intprops.h, lib/stdalign.in.h:
18104         Copy from gnulib.
18106 2015-10-30  Eli Zaretskii  <eliz@gnu.org>
18108         * src/w32proc.c (_NLSCMPERROR): Fix a typo in the name of this macro.
18109         (w32_compare_strings): Adjust for the correction.
18111 2015-10-30  Michael Albinus  <michael.albinus@gmx.de>
18113         * test/automated/vc-tests.el (vc-test--state)
18114         (vc-test--working-revision, vc-test--checkout-model):
18115         Add result messages.
18117 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
18119         * test/automated/faces-tests.el: Add another test
18121 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
18123         * lisp/faces.el (faces--attribute-at-point): Fix bug
18124         introduced by previous commit.
18126 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
18128         * test/automated/faces-tests.el: New file.
18130 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
18132         * lisp/faces.el: Refactor common code and fix a bug.
18133         (faces--attribute-at-point): New function.  Fix a bug when the
18134         face at point is a list of faces and the desired attribute is not
18135         on the first one.
18136         (foreground-color-at-point, background-color-at-point): Use it.
18138 2015-10-30  Przemysław Wojnowski  <esperanto@cumego.com>
18140         * etc/tutorials/TUTORIAL.translators: Fix PL names.
18142 2015-10-30  Juanma Barranquero  <lekktu@gmail.com>
18144         * lisp/character-fold.el: Provide `character-fold'.
18146 2015-10-30  Tassilo Horn  <tsdh@gnu.org>
18148         * etc/themes/tsdh-dark-theme.el (tsdh-dark): Add more faces
18149         for Gnus and ivy.
18151 2015-10-30  Michael Albinus  <michael.albinus@gmx.de>
18153         Some minor fixes for tramp-gvfs.el
18155         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
18156         An attribute returned by gvfs-info might be empty.  In case of
18157         undetermined uid or gid, return "UNKNOWN" or -1, respectively.
18158         (tramp-zeroconf-parse-service-device-names): New defun.
18159         Derived from `tramp-zeroconf-parse-workstation-device-names'.
18160         (top): Add completion functions for "afp" and "smb" methods.
18162 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
18164         * test/automated/character-fold-tests.el: New file
18166 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
18168         * test/automated/sort-tests.el: New file.
18169         Tests in this file are randomly generated and then tested with
18170         regular, reverse, and case-fold sorting.
18172 2015-10-30  Eli Zaretskii  <eliz@gnu.org>
18174         Describe known problems with pinning Emacs to taskbar
18176         * etc/PROBLEMS: Describe the problem with pinning Emacs to taskbar
18177         on Windows 10.  For the details, see the discussion starting at
18178         http://lists.gnu.org/archive/html/help-emacs-windows/2015-09/msg00000.html.
18180 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
18182         * lisp/isearch.el: Avoid an error that blocks isearch.
18183         (isearch-update): Don't error if `isearch--current-buffer' has
18184         been killed.
18186         * test/automated/isearch-tests.el (isearch--test-update):
18187         New file.
18189 2015-10-30  Phil Sainty  <psainty@orcon.net.nz>
18191         Fix documentation of 'beginning/end-of-buffer'
18193         * lisp/simple.el (beginning-of-buffer, end-of-buffer): Clarify
18194         conditions under which the mark will be pushed at the previous
18195         position.  (Bug#21748)
18197 2015-10-30  Tassilo Horn  <tsdh@gnu.org>
18199         Add RefTeX feature idea: editing RefTeX TOC buffers
18201         More face defs for ivy, swiper, ace-window, eshell
18203 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
18205         * lisp/gnus/auth-source.el: Silence lexical-binding warnings.
18206         (auth-source-netrc-use-gpg-tokens): Simplify (symbol-value 'VAR) to
18207         just VAR.
18208         (auth-source-backend-parse): Use make-instance.
18209         (auth-source-search): Remove unused key args.
18210         Remove unused vars `accessor-key' and `backend'.  Avoid `eval'.
18211         (auth-source-search-backends): Use slot names rather than their initarg.
18212         (auth-source-netrc-create):
18213         (auth-source-delete):
18214         (auth-source-secrets-create, auth-source-plstore-search)
18215         (auth-source-macos-keychain-create, auth-source-macos-keychain-search)
18216         (auth-source-plstore-create, auth-source-netrc-search)
18217         (auth-source-netrc-parse): Remove unused key args.
18218         (auth-source-forget+): Simplify the arglist.
18219         (auth-source-macos-keychain-search-items)
18220         (auth-source-token-passphrase-callback-function): Mark unused args.
18221         (auth-source-epa-extract-gpg-token): Remove unused var `plain'.
18222         (pp-escape-newlines): Declare.
18223         (auto-source--symbol-keyword): New function.
18224         (auth-source-plstore-create, auth-source-netrc-create)
18225         (auth-source-netrc-normalize): Use it.
18226         (auth-source-netrc-search): Don't pass :delete to
18227         auth-source-netrc-parse since it doesn't use it.
18228         (auth-source-plstore-create, auth-source-netrc-create): Use plist-get
18229         symbol-value to index in keyword args.
18230         (auth-source-macos-keychain-result-append): Avoid setq.
18231         (auth-source-netrc-create): Remove unused vars `file' and `add'.
18232         (auth-source-user-or-password): Remove unused var `cname'.
18234 2015-10-29  Juri Linkov  <juri@linkov.net>
18236         * lisp/dired.el (dired-unmark-all-files-query): Declare.
18237         (dired-unmark-all-files): Let-bind it and use instead of ‘query’.
18238         (Bug#21746)
18240 2015-10-29  Juri Linkov  <juri@linkov.net>
18242         * lisp/ielm.el (ielm-indent-line): Use non-nil arg of comint-bol
18243         to go to the beginning of text line instead of command line.
18244         http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02360.html
18246 2015-10-29  Eli Zaretskii  <eliz@gnu.org>
18248         Fix encoding of saving *Help* buffers
18250         * lisp/help-fns.el (describe-function-1): If we use curved quotes,
18251         set help buffer's buffer-file-coding-system to UTF-8.  (Bug#21780)
18253 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
18255         * lisp/emacs-lisp/cl-generic.el: Add (major-mode MODE) context.
18256         (cl--generic-derived-specializers): New function.
18257         (cl--generic-derived-generalizer): New generalizer.
18258         (cl-generic-generalizers): New specializer (derived-mode MODE).
18259         (cl--generic-split-args): Apply the rewriter, if any.
18260         (cl-generic-define-context-rewriter): New macro.
18261         (major-mode): Use it to define a new context-rewriter, so we can write
18262         `(major-mode MODE)' instead of `(major-mode (derived-mode MODE))'.
18264         * lisp/frame.el (window-system): New context-rewriter so we can write
18265         `(window-system VAL)' instead of (window-system (eql VAL)).
18266         (cl--generic-split-args): Apply the rewriter, if any.
18267         (frame-creation-function): Use the new syntax.
18269         * lisp/term/x-win.el (window-system-initialization)
18270         (handle-args-function, frame-creation-function)
18271         (gui-backend-set-selection, gui-backend-selection-owner-p)
18272         (gui-backend-selection-exists-p, gui-backend-get-selection):
18273         * lisp/term/w32-win.el (window-system-initialization)
18274         (handle-args-function, frame-creation-function)
18275         (gui-backend-set-selection, gui-backend-get-selection)
18276         (gui-backend-selection-owner-p, gui-backend-selection-exists-p):
18277         * lisp/term/pc-win.el (gui-backend-get-selection)
18278         (gui-backend-selection-exists-p, gui-backend-selection-owner-p)
18279         (gui-backend-set-selection, window-system-initialization)
18280         (frame-creation-function, handle-args-function):
18281         * lisp/term/ns-win.el (window-system-initialization)
18282         (handle-args-function, frame-creation-function)
18283         (gui-backend-set-selection, gui-backend-selection-exists-p)
18284         (gui-backend-get-selection):
18285         * lisp/startup.el (handle-args-function):
18286         * lisp/term/xterm.el (gui-backend-get-selection)
18287         (gui-backend-set-selection): Use the new syntax.
18289 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
18291         * test/indent/css-mode.css: Add tests for url(...) syntax.
18293 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
18295         * lisp/emacs-lisp/smie.el: Use `declare' for `pure'.
18296         (smie-precs->prec2, smie-merge-prec2s, smie-bnf->prec2)
18297         (smie-prec2->grammar): Use `declare'.
18299 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
18301         * lisp/emacs-lisp/cl-generic.el: Accommodate future changes.
18302         (cl--generic-generalizer): Add `name' field.
18303         (cl-generic-make-generalizer): Add corresponding `name' argument.
18304         (cl-generic-define-generalizer): New macro.
18305         (cl--generic-head-generalizer, cl--generic-eql-generalizer)
18306         (cl--generic-struct-generalizer, cl--generic-typeof-generalizer)
18307         (cl--generic-t-generalizer): Use it.
18308         (cl-generic-ensure-function): Add `noerror' argument.
18309         (cl-generic-define): Use it so we don't follow aliases.
18310         (cl-generic-define-method): Preserve pre-existing ordering of methods.
18311         (cl--generic-arg-specializer): New function.
18312         (cl--generic-cache-miss): Use it.
18313         (cl-generic-generalizers): Only fset a temporary definition
18314         during bootstrap.
18315         (cl--generic-struct-tag, cl--generic-struct-specializers):
18316         Allow extra arguments.
18318         * lisp/emacs-lisp/eieio-compat.el
18319         (eieio--generic-static-symbol-generalizer)
18320         (eieio--generic-static-object-generalizer):
18321         Use cl-generic-define-generalizer.
18322         (eieio--generic-static-symbol-specializers): Allow extra arguments.
18324         * lisp/emacs-lisp/eieio-core.el (eieio--generic-generalizer)
18325         (eieio--generic-subclass-generalizer):
18326         Use cl-generic-define-generalizer.
18327         (eieio--generic-subclass-specializers): Allow extra arguments.
18329 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
18331         * lisp/emacs-lisp/bytecomp.el (compile-defun): Add defvars in scope.
18333 2015-10-29  Michael Albinus  <michael.albinus@gmx.de>
18335         Add "afp" method to Tramp
18337         * doc/misc/tramp.texi (GVFS based methods): Describe `afp' method.
18339         * lisp/net/tramp-gvfs.el (tramp-gvfs-methods): Add "afp" method.
18340         (tramp-gvfs-handle-expand-file-name)
18341         (tramp-gvfs-handler-mounted-unmounted)
18342         (tramp-gvfs-connection-mounted-p, tramp-gvfs-mount-spec)
18343         (tramp-gvfs-maybe-open-connection): Support also "afp".
18344         (tramp-gvfs-handle-file-attributes): Handle the case of empty
18345         "owner::user" and "owner::group" entries.
18347 2015-10-29  Andy Moreton  <andrewjmoreton@gmail.com>
18349         Handle negative coordinates in ‘x_calc_absolute_position’
18351         * src/w32term.c (x_calc_absolute_position): Find display origin to
18352         allow for negative coordinates.
18354 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
18356         (internal--syntax-propertize): Save match-data here (bug#21766)
18358         * lisp/emacs-lisp/syntax.el (internal--syntax-propertize): Save match-data.
18359         * lisp/simple.el (delete-trailing-whitespace): Undo last change.
18361 2015-10-28  Dmitry Gutov  <dgutov@yandex.ru>
18363         Don't require default-directory to end with a slash
18365         * doc/lispref/files.texi (Magic File Names): Document the change
18366         in unhandled-file-name-directory.
18368         * lisp/url/url-handlers.el
18369         (url-handler-unhandled-file-name-directory): Update accordingly.
18371         * src/buffer.c (default-directory): Update the docsting.
18373         * src/fileio.c (unhandled-file-name-directory): Default to calling
18374         `file-name-as-directory'
18375         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02294.html).
18377 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
18379         * lisp/isearch.el: Delete some outdated comments.
18381 2015-10-28  Vibhav Pant  <vibhavp@gmail.com>
18383         Fix eshell/clear not working if the output has a small line count
18385         * lisp/eshell/esh-mode.el (eshell/clear): Use (window-size) as the
18386         number of newlines to be inserted. This fixes the issue where
18387         eshell/clear wouldn't work if the prompt was not at the bottom of the
18388         window, and the output wasn't too long.
18390 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
18392         * lisp/files.el (write-file): Use vc-refresh-state.
18394         * lisp/autorevert.el (auto-revert-handler): Use vc-refresh-state.
18396         * lisp/vc/pcvs.el (cvs-revert-if-needed): Use vc-refresh-state.
18398 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
18400         * lisp/emacs-lisp/macroexp.el: Tweak macroexp-if optimizations.
18401         (macroexp-unprogn): Make sure we never return an empty list.
18402         (macroexp-if): Remove unused (and unsafe) optimization.
18403         Optimize (if A T (if B T E)) into (if (or A B) T E) instead, which does
18404         occur occasionally.
18406 2015-10-28  Juanma Barranquero  <lekktu@gmail.com>
18408         Fix bug#21766 and add test
18409         * lisp/simple.el (delete-trailing-whitespace): Save match data when
18410         calling `skip-syntax-backward'.
18411         * test/automated/simple-test.el (simple-delete-trailing-whitespace):
18412         New test.
18414 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
18416         * doc/lispref/sequences.texi (Sequence Functions): Fix typo.
18418 2015-10-28  Paul Eggert  <eggert@cs.ucla.edu>
18420         * src/dispnew.c (init_display): Simplify overflow checking.
18422 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
18424         * lisp/character-fold.el (character-fold-to-regexp): Fix case
18425         where string ends in space
18427 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
18429         * lisp/emacs-lisp/seq.el (seq-mapn): New function.
18431         * doc/lispref/sequences.texi (Sequence Functions): Document seq-mapn.
18433 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
18435         * lisp/character-fold.el: Make compatible with lax-whitespace.
18436         (character-fold-to-regexp): Rework internals to play nice with
18437         lax-whitespacing.
18439         When the user types a space, we want to match the table entry for
18440         ?\s, which is generally a regexp like "[ ...]".  However, the
18441         `search-spaces-regexp' variable doesn't "see" spaces inside these
18442         regexp constructs, so we need to use "\\( \\|[ ...]\\)" instead (to
18443         manually expose a space).
18445         Furthermore, the lax search engine acts on a bunch of spaces, not
18446         on individual spaces, so if the string contains sequential spaces
18447         like "  ", we need to keep them grouped together like this:
18448         "\\(  \\|[ ...][ ...]\\)".
18450 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
18452         * lisp/isearch.el: Refactor momentary messages.
18453         (isearch--momentary-message): New function.
18454         (isearch-toggle-lax-whitespace, isearch-toggle-case-fold)
18455         (isearch-toggle-invisible): Use it.
18457 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
18459         * lisp/isearch.el: Define all toggles with `isearch-define-mode-toggle'.
18460         (isearch-define-mode-toggle): New macro.
18461         (isearch-toggle-invisible): Rename to
18462         `isearch-define-mode-toggle'.
18463         (isearch-toggle-case-fold, isearch-toggle-invisible)
18464         (isearch-toggle-regexp, isearch-toggle-lax-whitespace): Define
18465         with `isearch-define-mode-toggle'.
18467 2015-10-28  Michael Albinus  <michael.albinus@gmx.de>
18469         Avoid using `add-to-list' on a let-local var in tramp-smb.el
18471         * lisp/net/tramp-compat.el (tramp-compat-delete-dups): New defun.
18472         * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files): Use it.
18474 2015-10-28  Michael Albinus  <michael.albinus@gmx.de>
18476         * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files):
18477         Revert 692bce5b9eccfae19ae2a5a23a9ccd8d6bf86076, `delete-dups'
18478         does not exist in XEmacs 21.4.
18480 2015-10-28  Anders Lindgren  <andlind@gmail.com>
18482         Fixed OS X startup crash
18484         Input events started to arrive before ns_term_init() was finished.
18485         Solved by blocking input.  This also seems to correct the "You
18486         can't open the application "Emacs" because it may be damaged or
18487         incomplete" error issued when double-clicking on the Emacs
18488         application.
18490         * src/nsterm.m (ns_constrain_all_frames, ns_init_term): Block input.
18491         * src/nsterm.m (ns_send_appdefined, EmacsApp): Trace output.
18493 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
18495         * src/process.c (Fget_buffer_process): Improve docstring.
18496         Document the fact that it doesn't return dead processes.
18498 2015-10-28  Anders Lindgren  <andlind@gmail.com>
18500         Fix incorrect NextStep tool-bar-mode -- wrong number of rows in frame.
18502         * src/nsterm.h (struct ns_output): New flag, in_animation.
18503         * src/nsfns.m (Fx_create_frame): Initialize in_animation flag.
18504         * src/nsmenu.m (free_frame_tool_bar, update_frame_tool_bar): Set
18505         in_animation flag around call to "setVisible". Set new tool bar
18506         height before call to setVisible.
18507         * src/nsterm.m (x_set_window_size): Don't call [view setRow:
18508         andColumns:] as this fools the subsequent call to updateFrameSize
18509         from performing the real resize.
18510         (windowDidResize): Don't update anything when in_animation is
18511         non-zero.
18513         Trace output.
18515         * src/nsmenu.m (free_frame_tool_bar, update_frame_tool_bar)
18516         (EmacsToolbar):
18517         * src/nsterm.m (x_set_window_size, updateFrameSize)
18518         ([EmacsView setRows: andColumns:])
18520 2015-10-28  Nicolas Petton  <nicolas@petton.fr>
18522         * lisp/emacs-lisp/thunk.el (thunk-delay): Fix the macro.
18524 2015-10-28  Tassilo Horn  <tsdh@gnu.org>
18526         Prettify TeX macros not ending in a word char
18528         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
18529         Prettify macros which don't end in a word character.
18531 2015-10-27  Dmitry Gutov  <dgutov@yandex.ru>
18533         Pipe Hg commit descriptions through 'tabindent'
18535         * lisp/vc/vc-hg.el (vc-hg-log-format): Pipe commit description
18536         through 'tabindent'.
18537         (vc-hg-log-view-mode): Set tab-width to 2 locally.
18538         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02259.html)
18540 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
18542         * lisp/net/tramp-smb.el: Avoid using `add-to-list' on a let-local var.
18543         (tramp-smb-handle-directory-files): Use `delete-dups'.
18545         * lisp/net/tramp.el (auto-save-file-name-transforms): Declare.
18547 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
18549         * lisp/international/ccl.el: Use lexical-binding.
18550         (ccl-compile-if): Remove unused var `false-ic'.
18551         (ccl-compile-write-repeat): Remove unused var `i'.
18552         (ccl-compile-map-single): Remove unused var `id'.
18553         (ccl-dump, ccl-dump-binary): Use explicit let-binding to bind the
18554         dynamic var `ccl-code'.
18556 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
18558         * lisp/json.el (json-new-object): Optimize trivial `list' call.
18560 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
18562         * lisp/help.el: Fix bug with incorrect arglist string.
18563         (help-add-fundoc-usage): Don't mistake a mis-formatted string
18564         for a list.
18566 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
18568         * lisp/gnus/gnus-topic.el: Silence some warnings.
18569         (gnus-topic-prepare-topic): Remove unused var `topic'.
18570         (gnus-topic-remove-topic): Mark unused arg `hide'.
18571         (gnus-tmp-header): Declare.
18572         (gnus-topic-goto-missing-group): Remove unused var `entry'.
18573         (gnus-topic-unmark-topic): Mark unused arg `dummy'.
18574         (gnus-topic-copy-matching): Mark unused arg `copyp'.
18575         Move initialization of `topic' into its declaration.
18577 2015-10-27  Stephen Leake  <stephen_leake@stephe-leake.org>
18579         Minor CEDET fixes
18581         * lisp/cedet/cedet-global.el (cedet-gnu-global-gtags-call):
18582         Handle warnings from gtags about invalid options.
18583         (cedet-gnu-global-create/update-database): Do incremental update
18584         properly.
18586         * lisp/cedet/ede/generic.el (ede-enable-generic-projects):
18587         Get monotone root right.
18589 2015-10-27  Michael Albinus  <michael.albinus@gmx.de>
18591         Fall back to polling in autorevert when needed
18593         * lisp/autorevert.el (auto-revert-notify-handler): When a
18594         `stopped' event arrives from file notification, fall back to polling.
18596         * test/automated/file-notify-tests.el
18597         (file-notify-test03-autorevert): Extend test for polling when file
18598         notification ceases to work.
18600 2015-10-27  Dmitry Gutov  <dgutov@yandex.ru>
18602         Show full commit messages in 'hg log' when appropriate
18604         * lisp/vc/vc-hg.el (vc-hg-log-format): New variable.
18605         (vc-hg-print-log, vc-hg-expanded-log-entry): Use it.
18606         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02191.html)
18608 2015-10-27  Nicolas Petton  <nicolas@petton.fr>
18610         Use a plain SVG file for the icon
18612         * etc/images/icons/hicolor/scalable/apps/emacs.svg: Use a plain SVG
18613           format instead of the Inkscape SVG format.
18615 2015-10-27  Michael Albinus  <michael.albinus@gmx.de>
18617         Fix subtle bug in auto-revert-tests.el
18619         * test/automated/auto-revert-tests.el
18620         (auto-revert-test02-auto-revert-mode-dired): Narrow *Messages*
18621         buffer where it belongs to.  (Bug#21668)
18623 2015-10-26  Nicolas Petton  <nicolas@petton.fr>
18625         * lisp/emacs-lisp/map.el: Better docstrings.
18627         * lisp/emacs-lisp/seq.el: Better docstrings.
18629         * lisp/emacs-lisp/seq.el: Rename all seq arguments to sequence.
18631 2015-10-26  Phillip Lord  <phillip.lord@russet.org.uk>
18633         * lisp/emacs-lisp/ert.el: Print results without newline escaping.
18635 2015-10-26  Stephen Leake  <stephen_leake@stephe-leake.org>
18637         Clarify that load-path contents should be directory file names
18639         * doc/lispref/files.texi (Directory Names): Define and use "directory
18640         file name".  Recommend `expand-file-name'.
18642         * src/lread.c (load-path): Fix doc string; elements are directory file
18643         names.
18645 2015-10-26  Eli Zaretskii  <eliz@gnu.org>
18647         Fix simple-test.el test
18649         * test/automated/simple-test.el (simple-test--dummy-buffer):
18650         Make sure indentation doesn't use TABs, otherwise the 6th test
18651         might fail.
18653 2015-10-26  Mark Oteiza  <mvoteiza@udel.edu>
18655         * lisp/net/eww.el (eww-bookmark-prepare): Use truncate-string-to-width.
18656         `substring' does not account for full width characters.
18658 2015-10-26  Michael Albinus  <michael.albinus@gmx.de>
18660         Further work on `stopped' events in filenotify.el
18662         * doc/lispref/os.texi (File Notifications): Rework examples.
18664         * lisp/filenotify.el (file-notify--rm-descriptor): Optional parameter.
18665         (file-notify--rm-descriptor, file-notify-callback): Improve check
18666         for sending `stopped' event.
18667         (file-notify-add-watch): Check for more events for `inotify'.
18669         * test/automated/file-notify-tests.el
18670         (file-notify--test-expected-events): New defvar.
18671         (file-notify--test-with-events): Use it.
18672         (file-notify--test-cleanup): Make it more robust when deleting
18673         directories.
18674         (file-notify--test-event-test): Check also for watched directories.
18675         (file-notify--test-event-handler): Suppress temporary .#files.
18676         (file-notify-test02-events, file-notify-test04-file-validity):
18677         Rework `stopped' events.
18678         (file-notify-test05-dir-validity): Wait for events when appropriate.
18680 2015-10-26  Artur Malabarba  <bruce.connor.am@gmail.com>
18682         * src/keyboard.c (post-command-hook): Shorten docstring.
18684 2015-10-26  Tassilo Horn  <tsdh@gnu.org>
18686         Fix infinite loop in sh-script's SMIE code
18688         * lisp/progmodes/sh-script.el (sh-smie-sh-forward-token): Fix infinite
18689         loop (bug#21747).
18691 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
18693         * lisp/isearch.el (search-default-regexp-mode): Revert to nil.
18694         Character-fold search _still_ doesn't play well with
18695         lax-whitespace.  So disable it by default (again) for now.
18697 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
18699         * lisp/isearch.el: No visual feedback for default search mode.
18700         During an isearch where character-folding is the default, we don't
18701         want to take up minibuffer space just to tell the user that
18702         "Char-fold " is on.  The same goes for other modes, if the user
18703         changes the default.  In contrast, if the user toggles OFF the
18704         default mode, they should see "Literal", to distinguish it from
18705         the default mode.
18706         (isearch--describe-regexp-mode): Return "" if describing the
18707         default mode, and return "literal " if describing a plain search
18708         and it is not default.
18710 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
18712         * test/automated/simple-test.el: New file.
18713         Define tests for `newline' and `open-line'.
18715 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
18717         * lisp/simple.el (open-line): Integrate with electric-indent-mode.
18718         Also run `post-self-insert-hook' when called interactively.
18720 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
18722         * lisp/simple.el (open-line): Fix docstring.
18723         Also explain apparently redundant line.
18725 2015-10-25  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
18726             Alexandru Harsanyi  <AlexHarsanyi@gmail.com>
18728         Sync with soap-client repository, version 3.0.1
18730         * lisp/net/soap-client.el, lisp/net/soap-inspect.el:
18731         Bump version to 3.0.1.
18733         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Update home page.
18735 2015-10-25  Eli Zaretskii  <eliz@gnu.org>
18737         * lisp/progmodes/grep.el (grep): Doc fix.  (Bug#21754)
18739 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
18741         * src/keyboard.c (post-command-hook): Extend the docstring.
18742         Mainly, explain how to use it without hanging Emacs, or giving the
18743         impression that it is hanging.  Also mention `pre-command-hook'.
18744         (pre-command-hook): Mention `post-command-hook'.
18746 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
18748         * lisp/custom.el (custom-declare-variable): Shorten code again.
18749         Without using pcase this time.  We can't use pcase because it is
18750         loaded after custom in loadup.el.  Also add a comment explaining
18751         this to future dummies like me.
18753 2015-10-25  Michael Albinus  <michael.albinus@gmx.de>
18755         * doc/lispref/os.texi (File Notifications): Document `stopped event'.
18757 2015-10-25  Michael Albinus  <michael.albinus@gmx.de>
18759         Introduce `stopped' event in file notification
18761         * lisp/filenotify.el (file-notify--rm-descriptor): New defun.
18762         (file-notify-rm-watch): Use it.
18763         (file-notify-callback): Implement `stopped' event.
18764         (file-notify-add-watch): Mention `stopped' in the docstring.
18765         Check, that upper directory exists.
18767         * test/automated/file-notify-tests.el (file-notify-test01-add-watch):
18768         Add two test cases.
18769         (file-notify-test02-events): Handle also `stopped' event.
18770         (file-notify-test04-file-validity): Add another test case.
18772 2015-10-25  Paul Eggert  <eggert@cs.ucla.edu>
18774         Revert commit that broke 'make bootstrap'
18776         * lisp/custom.el (custom-declare-variable): Revert commit
18777         79fac080d277fed07b3c192890ad59d36d9f83b6.  custom.el needs to work
18778         even when pcase has not been defined yet, when doing bootstrapping.
18780 2015-10-25  Paul Eggert  <eggert@cs.ucla.edu>
18782         Port recent inline functions fix to Standard C
18784         * src/lisp.h (LISP_MACRO_DEFUN, LISP_MACRO_DEFUN_VOID): Remove.
18785         All uses rewritten to define the function directly rather than to
18786         use a macro to define the function.  This conforms to Standard C,
18787         which does not allow stray semicolons at the top level.  I hope it
18788         also avoids the problems with TAGS.  Those macros, though clever,
18789         were pretty confusing anyway, and it wasn’t clear they were worth
18790         the aggravation even without the TAGS problem.
18792 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
18794         * lisp/isearch.el: Make character-fold search the default again.
18796 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
18798         * lisp/character-fold.el: Many improvements.
18799         (character-fold-search-forward, character-fold-search-backward):
18800         New command.
18801         (character-fold-to-regexp): Remove lax-whitespace hack.
18802         (character-fold-search): Remove variable.  Only isearch and
18803         query-replace use char-folding, and they both have their own
18804         variables to configure that.
18806 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
18808         * lisp/isearch.el: Generalize definition of regexp-function toggles.
18809         (isearch-specify-regexp-function): New macro for specifying
18810         possible values of `isearch-regexp-function'.
18811         (isearch-toggle-character-fold, isearch-toggle-symbol)
18812         (isearch-toggle-word): Define with `isearch-specify-regexp-function'.
18814 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
18816         * lisp/isearch.el (search-default-regexp-mode): New variable.
18817         (isearch-mode): Use it.
18819 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
18821         * lisp/isearch.el (search-exit-option, search-slow-window-lines)
18822         (search-slow-speed, search-upper-case)
18823         (search-nonincremental-instead, search-whitespace-regexp)
18824         (search-invisible, isearch-hide-immediately)
18825         (isearch-resume-in-command-history, search-ring-max)
18826         (regexp-search-ring-max, search-ring-update, search-highlight)
18827         (isearch-fail): Delete :group entries.
18829 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
18831         * lisp/custom.el (custom-declare-variable): Shorten code a bit.
18833 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
18835         addpm.c: Silence some warnings.
18837         * nt/addpm.c (DdeCommand): Cast pData argument of DdeClientTransaction
18838         to LPBYTE.
18839         (add_registry): Pass NULL to optional lpClass argument of
18840         RegCreateKeyEx, not an empty string.
18842 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
18844         addpm.c: Do not add obsolete GTK libraries to the path.
18846         * nt/addpm.c (REG_GTK, REG_RUNEMACS_PATH): Delete.
18847         (add_registry): Remove variables `size' and `gtk_key'.
18848         Do not add the GTK DLL directory to the library search path; it is
18849         confusing behavior (in particular, the same Emacs version with and
18850         without invoking addpm will use a different path), and the GTK image
18851         libraries are obsolete anyway.
18853 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
18855         addpm.c: Replace existing registry entries, but do not create new ones
18857         * nt/addpm.c (add_registry): If the Emacs registry key exists, replace
18858         existing values from previous versions, but do not add new ones; the
18859         key could exist for other reasons unrelated to old Emacsen, like X-style
18860         resources, or to set some environment variables like HOME or LANG, and
18861         in that case we don't want to populate it with obsolete values.
18863 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
18865         * nt/addpm.c (add_registry): Do not compute unused return value.
18867 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
18869         addpm.c: Don't pass REG_OPTION_NON_VOLATILE to RegOpenKeyEx
18871         * nt/addpm.c (add_registry): Pass 0 to ulOptions argument of
18872         RegOpenKeyEx, not REG_OPTION_NON_VOLATILE.  This doesn't change
18873         current behavior because REG_OPTION_NON_VOLATILE is defined to
18874         be 0L anyway, but that option is actually documented only for
18875         RegCreateKeyEx.
18877 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
18879         * src/w32notify.c (Fw32notify_add_watch): Fix version check.
18881 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
18883         Update frame title when redisplay scrolls selected window
18885         * src/xdisp.c (redisplay_window): Reconsider the frame's title
18886         when the mode-line of the frame's selected window needs to be
18887         updated.
18889 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
18891         Update frame title when scrolling the selected window
18893         * src/window.c (wset_update_mode_line): New function, sets either
18894         the window's update_mode_line flag or the global update_mode_lines
18895         variable.
18896         (Fset_window_start, set_window_buffer, window_scroll_pixel_based)
18897         (window_scroll_line_based): Call it instead of only setting the
18898         window's update_mode_line flag.
18900 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
18902         An even better fix for bug#21739
18904         * src/window.c (set_window_buffer): If the window is the frame's
18905         selected window, set update_mode_lines, not the window's
18906         update_mode_line flag.
18907         * src/buffer.c (Fkill_buffer): Undo last change.
18908         (set_update_modelines_for_buf): Function deleted.
18910 2015-10-24  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
18911             Alexandru Harsanyi  <AlexHarsanyi@gmail.com>
18913         Sync with soap-client repository, version 3.0.0
18915         * lisp/net/soap-client.el, lisp/net/soap-inspect.el:
18916         Bump version to 3.0.0.
18918         * lisp/net/soap-inspect.el: Merge in changes from Emacs master branch.
18920         * lisp/net/soap-client.el: Merge in changes from Emacs master branch.
18922         * lisp/net/soap-inspect.el: Shorten first line description.
18924         * lisp/net/soap-client.el: Make a small whitespace fix.
18926         * lisp/net/soap-inspect.el: Update copyright years.
18928         * lisp/net/soap-client.el (soap-encoded-namespaces): Move above
18929         first use in soap-encode-xs-element.
18931         * lisp/net/soap-client.el (soap-type-is-array?): new defun
18932         (soap-encode-xs-element): handle array elements in this function
18933         (soap-encode-xs-complex-type): flag error if asked to encode an
18934         array type, this is handled in `soap-encode-xs-element'
18936         * lisp/net/soap-inspect.el (soap-inspect-xs-attribute-group):
18937         Do not print type for attribute group.
18939         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-attribute-group)
18940         New function.
18941         (soap-inspect-xs-attribute-group): Likewise.
18943         * lisp/net/soap-inspect.el
18944         (soap-resolve-references-for-xs-attribute-group): Resolve
18945         references of attributes in an attribute group.
18947         * lisp/net/soap-client.el (soap-decode-xs-attributes): Process attribute
18948         type directly, not through soap-wsdl-get.
18950         * lisp/net/soap-client.el (soap-xs-parse-attribute): Leave reference
18951         nil if reference attribute is nil.
18953         * lisp/net/soap-client.el (soap-resolve-references-for-xs-attribute):
18954         Convert XML schema attributes to xsd:string.
18956         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-attribute):
18957         New function.
18958         (soap-sample-value-for-xs-simple-type): Prepend attributes to result.
18959         (soap-sample-value-for-xs-complex-type): Likewise.
18960         (soap-inspect-xs-attribute): New function.
18961         (soap-inspect-xs-simple-type): Print attributes.
18962         (soap-inspect-xs-complex-type): Likewise.
18964         * lisp/net/soap-inspect.el (soap-resolve-references-for-xs-simple-type):
18965         Resolve references for attributes.
18966         (soap-resolve-references-for-xs-complex-type): Likewise.
18968         * lisp/net/soap-client.el (soap-xml-node-find-matching-child):
18969         Rename from soap-xml-node-first-child.
18970         (soap-xs-parse-attribute): Call soap-xml-node-find-matching-child.
18971         (soap-xs-parse-simple-type): Likewise.
18973         * lisp/net/soap-client.el (soap-invoke-async): Add error checking.
18975         * lisp/net/soap-client.el (soap-invoke-internal): New function.
18976         (soap-invoke-async): Call soap-invoke-internal.
18977         (soap-invoke): Likewise.
18979         * lisp/net/soap-client.el (soap-invoke-async): Ensure buffer passed to
18980         url-retrieve callback is killed.
18982         * lisp/net/soap-client.el (soap-parse-wsdl-phase-validate-node):
18983         Rename function.
18984         (soap-parse-wsdl-phase-fetch-imports): Likewise.
18985         (soap-parse-wsdl-phase-parse-schema): Likewise.
18986         (soap-parse-wsdl-phase-fetch-schema): Likewise.
18987         (soap-parse-wsdl-phase-finish-parsing): Likewise.
18988         (soap-parse-wsdl): Update calls.
18990         * lisp/net/soap-client.el (soap-invoke-async): Fix callback invocation.
18992         * lisp/net/soap-client.el (soap-invoke-async): New function.
18993         (soap-invoke): Reimplement using soap-invoke-async.
18995         * lisp/net/soap-client.el (soap-parse-server-response):
18996         Improve docstring.
18997         (soap-invoke): Inline call to soap-parse-server-response.
18999         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
19000         Prevent incorrect warning.
19002         * lisp/net/soap-client.el (soap-parse-server-response):
19003         Rename soap-process-url-response.  Destroy the mime part.
19004         (soap-invoke): Call soap-parse-server-response.
19006         * lisp/net/soap-client.el: Update copyright date.
19008         * lisp/net/soap-client.el: Fix checkdoc issues.
19010         * lisp/net/soap-client.el: Fix indentation and long lines.
19012         * lisp/net/soap-client.el (soap-time-format): Remove variable.
19013         (soap-encode-xs-basic-type): Simplify date-time format detection.
19014         (soap-decode-xs-basic-type): Remove soap-time-format support.
19016         * lisp/net/soap-client.el (soap-process-url-response): New function.
19017         (soap-fetch-xml-from-url): Call soap-process-url-response.
19018         (soap-parse-wsdl-phase-1): New function.
19019         (soap-parse-wsdl-phase-2): Likewise.
19020         (soap-parse-wsdl-phase-3): Likewise.
19021         (soap-parse-wsdl-phase-4): Likewise.
19022         (soap-parse-wsdl-phase-5): Likewise.
19023         (soap-parse-wsdl): Call phase functions.
19025         * lisp/net/soap-client.el (soap-decode-xs-basic-type):
19026         Remove one-argument and call.
19028         * lisp/net/soap-client.el (soap-decode-date-time): Improve docstring.
19030         * lisp/net/soap-client.el (soap-xmlschema-imports): Remove variable.
19031         (soap-parse-schema): Add wsdl argument.  Look up XML schema
19032         imports from wsdl.
19033         (soap-load-wsdl): Do not set soap-xmlschema-imports.
19034         (soap-parse-wsdl): Get XML schema imports from wsdl.
19036         * lisp/net/soap-client.el (soap-current-file): Remove variable.
19037         (soap-wsdl): Add current-file slot.
19038         (soap-fetch-xml-from-url): Add wsdl argument.  Look up current
19039         file from wsdl.
19040         (soap-fetch-xml-from-file): Likewise.
19041         (soap-fetch-xml): Likewise.
19042         (soap-load-wsdl): Always create wsdl object first.
19043         (soap-parse-wsdl): Pass wsdl to soap-fetch-xml.
19045         * lisp/net/soap-client.el (soap-xs-element): Add is-group slot.
19046         (soap-xs-parse-element): Set is-group slot.
19047         (soap-resolve-references-for-xs-element): Skip is-group elements.
19048         (soap-xs-complex-type): Add is-group slot.
19049         (soap-xs-parse-complex-type): Set is-group slot.
19050         (soap-xs-parse-sequence): Parse xsd:group elements.
19051         (soap-resolve-references-for-xs-complex-type): Inline elements
19052         from referenced xsd:group nodes.
19053         (soap-parse-schema): Parse xsd:group nodes.
19055         * lisp/net/soap-client.el (soap-invoke):
19056         Don't set url-http-version to 1.0.
19058         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
19059         Allow choice nodes to accept multiple values.
19061         * lisp/net/soap-client.el (soap-encode-body): Check parameters argument
19062         for extra header values.
19064         * lisp/net/soap-client.el (soap-well-known-xmlns):
19065         Add wsa and wsaw tags.
19066         (soap-operation): Add input-action and output-action slots.
19067         (soap-parse-operation): Parse wsaw:Action nodes.
19068         (soap-encode-body): Encode service-url for WS-Addressing.
19069         (soap-create-envelope): Likewise.
19070         (soap-invoke): Update soap-create-envelope call to provide
19071         service-url argument.
19073         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
19074         Support xsi:type override attribute.
19075         (soap-decode-array): Likewise.
19077         * lisp/net/soap-client.el (soap-parse-schema):
19078         Handle location attribute.
19080         * lisp/net/soap-client.el (soap-decode-type): Check that multiRef
19081         matched validation regexp.
19083         * lisp/net/soap-client.el (soap-encode-xs-simple-type):
19084         Encode xsd:list nodes.
19085         (soap-decode-xs-simple-type): Decode xsd:list nodes.
19087         * lisp/net/soap-client.el (soap-get-candidate-elements):
19088         Fix reference handling.
19090         * lisp/net/soap-client.el (soap-xs-simple-type): Add is-list slot.
19091         (soap-xs-parse-simple-type): Call soap-xs-add-list for xsd:list nodes.
19092         (soap-xs-add-list): New function.
19094         * lisp/net/soap-client.el (soap-encode-xs-element): When a boolean is
19095         expected, interpret nil as "false".
19097         * lisp/net/soap-client.el (soap-make-xs-basic-types): Add gYearMonth,
19098         gYear, gMonthDay, gDay and gMonth.
19100         * lisp/net/soap-client.el (soap-time-format): New variable.
19101         (soap-encode-xs-basic-type): Handle dateTime, time, date,
19102         gYearMonth, gYear, gMonthDay, gDay and gMonth.
19103         (soap-decode-date-time): New function.
19104         (soap-decode-xs-basic-type): Use soap-decode-date-time.
19106         * lisp/net/soap-client.el (soap-encode-xs-basic-type): Validate value
19107         after encoding.
19108         (soap-decode-xs-basic-type): Validate value before decoding.
19110         * lisp/net/soap-client.el (soap-validate-xs-basic-type): New function.
19111         (soap-validate-xs-simple-type): Call soap-validate-xs-basic-type.
19113         * lisp/net/soap-client.el (soap-xs-add-union): Append result to base
19114         instead of overwriting it.
19115         (soap-validate-xs-simple-type): Add union support.
19117         * lisp/net/soap-client.el (soap-xs-add-restriction): Translate pattern
19118         to Emacs regexp using xsdre-translate.
19119         (soap-validate-xs-simple-type): Validate value against pattern.
19121         * lisp/net/soap-client.el (soap-xs-add-union): Preserve WSDL order of
19122         inline simpleType nodes.
19123         (soap-decode-type): Handle union types.
19125         * lisp/net/soap-client.el (soap-decode-xs-attributes): Decode basic-type
19126         attributes.
19128         * lisp/net/soap-client.el (soap-get-xs-attributes-from-groups): Rename
19129         from soap-xs-attribute-group-consolidate, all callers updated
19130         (soap-get-xs-attributes): Rename from
19131         soap-xs-attributes-consolidate, all callers updated
19133         * lisp/net/soap-client.el (soap-xs-type): Add attribute-group slot.
19134         (soap-xs-attribute-group): New type.
19135         (soap-xs-parse-attribute-group): New function.
19136         (soap-resolve-references-for-xs-attribute-group): Likewise.
19137         (soap-xs-add-extension): Handle attribute groups.
19138         (soap-resolve-references-for-xs-simple-type): Likewise.
19139         (soap-xs-parse-complex-type): Likewise.
19140         (soap-xs-parse-extension-or-restriction): Likewise.
19141         (soap-resolve-references-for-xs-complex-type): Likewise.
19142         (soap-xs-attribute-group-consolidate): New function.
19143         (soap-xs-attributes-consolidate): Handle attribute groups.
19144         (soap-parse-schema): Likewise.
19146         * lisp/net/soap-client.el (soap-encode-xs-basic-type):
19147         Fix boolean encoding.
19149         * lisp/net/soap-client.el (soap-encode-xs-complex-type): Print ref
19150         element names in warnings.
19152         * lisp/net/soap-client.el (soap-decode-xs-complex-type): Fix splicing.
19154         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
19155         Eliminate invalid warnings for choice types.
19157         * lisp/net/soap-client.el (soap-encode-xs-complex-type-attributes):
19158         Also encode base type attributes.
19160         * lisp/net/soap-client.el (soap-encode-xs-complex-type): Fix compilation
19161         warning.  Print e-name in warnings, or element if e-name is nil.
19163         * lisp/net/soap-client.el (soap-xs-element): Add alternatives slot.
19164         (soap-xs-parse-element): Set substitution-group.
19165         (soap-resolve-references-for-xs-element): Populate alternatives slot.
19166         (soap-get-candidate-elements): New function.
19167         (soap-encode-xs-complex-type): Iterate through all candidate elements.
19168         Handle types with nil type indicator.  Fix warning logic.
19170         * lisp/net/soap-client.el (soap-current-wsdl): Move declaration
19171         earlier in the file to prevent compiler warning.
19173         * lisp/net/soap-client.el (soap-node-optional): New function.
19174         (soap-node-multiple): Likewise.
19175         (soap-xs-parse-element): Call soap-node-optional and
19176         soap-node-multiple.
19177         (soap-xs-complex-type): Add optional? and multiple? slots.
19178         (soap-xml-get-children-fq): New function.
19179         (soap-xs-element-get-fq-name): Likewise.
19180         (soap-xs-complex-type-optional-p): Likewise.
19181         (soap-xs-complex-type-multiple-p): Likewise.
19182         (soap-xs-attributes-consolidate): Likewise.
19183         (soap-decode-xs-attributes): Likewise.
19184         (soap-decode-xs-complex-type): Decode types with nil type indicator.
19185         Support children that use local namespaces.  Decode attributes.
19186         Add type considerations to optional? and multiple? warnings.
19188         * lisp/net/soap-client.el (soap-xs-parse-extension-or-restriction):
19189         Store parsed attributes.
19190         (soap-encode-xs-complex-type-attributes): Encode custom attributes.
19192         * lisp/net/soap-client.el (soap-encode-xs-complex-type-attributes):
19193         Don't add the xsi:type attribute (Exchange refuses requests which have
19194         this attribute).
19196         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Convert to lexical binding,
19197         correct compiler warnings about unused function arguments and
19198         local variables.
19200         * lisp/net/soap-client.el (soap-decode-xs-complex-type): Handle nil
19201         type indicator.
19202         (soap-parse-envelope): Handle response headers.
19203         (soap-parse-response): Likewise.  Only return non-nil decoded values.
19205         * lisp/net/soap-client.el (soap-validate-xs-simple-type):
19206         Return validated value.
19208         * lisp/net/soap-client.el (soap-xs-parse-element)
19209         (soap-xs-parse-simple-type)
19210         (soap-xs-parse-complex-type)
19211         (soap-parse-message)
19212         (soap-parse-operation): Add the current namespace to the element
19213         being created.
19214         (soap-resolve-references-for-xs-element)
19215         (soap-resolve-references-for-xs-simple-type)
19216         (soap-resolve-references-for-xs-complex-type)
19217         (soap-resolve-references-for-operation): Resolve the namespace to
19218         the namespace tag.
19219         (soap-make-wsdl): specify a namespace tag when creating the xsd
19220         and soapenc namespaces
19221         (soap-wsdl-resolve-references): don't update namespace tags in
19222         elements here
19223         (soap-parse-port-type): bind the urn: to soap-target-xmlns
19224         (soap-encode-body): don't add nil namespace tags to
19225         soap-encoded-namespaces
19227         * lisp/net/soap-inspect.el: Use `soap-make-wsdl` to construct the object
19228         for registering the soap-inspect method.  Make debbugs tests pass.
19229         * lisp/net/soap-client.el (soap-decode-any-type): Use soap-l2fq on the
19230         type name, also skip string only nodes when decoding a structure.
19231         (soap-xs-parse-complex-type): (BUG) Dispatch parsing for choice
19232         types too.
19233         (soap-encode-body): Grab the header value from the param table.
19235         * lisp/net/soap-client.el (soap-should-encode-value-for-xs-element):
19236         New function.
19237         (soap-encode-xs-element): Don't encode nil value unless needed.
19239         * lisp/net/soap-client.el (soap-bound-operation): New slot `soap-body`.
19240         (soap-parse-binding): Parse the message parts required in the body.
19241         (soap-encode-body): Encode only the parts that are declared to be
19242         part of the body.
19244         * lisp/net/soap-client.el (soap-encode-xs-element): use the fq name
19245         when writing out the tag.
19246         (soap-encode-body): Remove hack that inserts the xmlns in the
19247         element attributes list.
19249         * lisp/net/soap-client.el (soap-xs-attribute): Add "default" slot.
19250         (soap-xs-parse-attribute): Default slot is set from the XML
19251         "fixed" attribute.
19252         (soap-encode-xs-complex-type-attributes): Encode any attributes
19253         that have a default value.  Also, don't put the xsi:nil attribute
19254         when the complex type has no content anyway.
19256         * lisp/net/soap-client.el (soap-well-known-xmlns):
19257         Add the xml namespace.
19258         (soap-local-xmlns): Start with the xml namespace.
19259         (soap-xml-node-first-child): Skip xsd:annotation nodes too.
19260         (soap-make-xs-basic-types): More xsd types added.
19261         (soap-encode-xs-basic-type, soap-decode-xs-basic-type):
19262         Handle "language", "time", "date", "nonNegativeInteger".
19263         (soap-resolve-references-for-xs-element): Don't signal an error if
19264         the element does not have a type.
19265         (soap-xs-parse-simple-type): Subtypes are handled with ecase,
19266         added stum for xsd:list.
19267         (soap-xs-add-union): Call soap-l2fq on all union members.
19268         (soap-xs-add-extension): Call soap-l2fq on the base member.
19269         (soap-resolve-references-for-xs-simple-type): Don't signal an
19270         error if the simple type has no base.
19271         (soap-resolve-references-for-xs-simple-type): Bugfix, call
19272         soap-wsdl-get on each type of the base.
19274         * lisp/net/soap-client.el (soap-resolve-references-for-xs-attribute):
19275         Referenced type can be eiher a simple type or a basic type.
19276         (soap-xs-add-restriction)
19277         (soap-xs-parse-extension-or-restriction): Use `soap-l2fq' on base.
19278         (soap-make-xs-basic-types)
19279         (soap-encode-xs-basic-type, soap-decode-xs-basic-type):
19280         Add support for more XMLSchema basic types.
19281         (soap-current-file, soap-xmlschema-imports): New defvars.
19282         (soap-parse-schema): Add locations from xsd:import tags to
19283         `soap-xmlschema-imports'.
19284         (soap-wsdl): Make destructor private.
19285         (soap-make-wsdl): New defun, SOAP-WSDL object constructor.
19286         (soap-wsdl-add-alias): Check if we try to replace aliases.
19287         (soap-fetch-xml-from-url, soap-fetch-xml-from-file)
19288         (soap-fetch-xml): New defuns.
19289         (soap-load-wsdl): Update to load the WSDL from either a file or
19290         an url.
19291         (soap-load-wsdl-from-url): Now an alias to `soap-load-wsdl'.
19292         (soap-parse-wsdl): Process wsdl:import tags and imports from
19293         `soap-xmlschema-imports'.
19294         * lisp/net/soap-client.el (soap-l2wk): Bugfix: call symbolp instead of
19295         symbol-name.
19296         (soap-l2fq): Make the name part always a string.
19297         (soap-name-p): New defun, used for name tests.
19299         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-complex-type):
19300         Supply sample values for choice types with a special tag.
19301         * lisp/net/soap-client.el (soap-encode-xs-complex-type):
19302         Handle anonymous elements correctly.
19303         (soap-encode-value): Accept nodes that have no namespace tag.
19305         * lisp/net/soap-client.el (soap-invoke): Encode the string for
19306         `url-request-data' as UTF-8.  Fixes issue 16.
19308 2015-10-24  Nicolas Petton  <nicolas@petton.fr>
19310         Update the new icon
19312         Move the E slightly to the right in the circle.
19314         * etc/images/icons/hicolor/128x128/apps/emacs.png:
19315         * etc/images/icons/hicolor/16x16/apps/emacs.png:
19316         * etc/images/icons/hicolor/24x24/apps/emacs.png:
19317         * etc/images/icons/hicolor/32x32/apps/emacs.png:
19318         * etc/images/icons/hicolor/48x48/apps/emacs.png:
19319         * etc/images/icons/hicolor/scalable/apps/emacs.svg:
19320         * nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns:
19321         * nt/icons/emacs.ico: New icom update.
19323 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
19325         Avoid missing inline functions from lisp.h in TAGS
19327         * src/lisp.h (LISP_MACRO_DEFUN): Mention in the commentary the
19328         need to end each invocation with a semi-colon.
19329         Add a semi-colon at the end of each invocation of LISP_MACRO_DEFUN
19330         and LISP_MACRO_DEFUN_VOID.  This is to avoid missing in TAGS
19331         inline functions defined immediately after each invocation, and
19332         also avoid tagging every invocation of these macros.
19334 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
19336         A better fix for bug#21739
19338         * src/buffer.c (set_update_modelines_for_buf): New function.
19339         (Fkill_buffer): Use it to set the global variable
19340         update_mode_lines if the killed buffer was displayed in some
19341         window.  Don't set windows_or_buffers_changed.  This is a better
19342         fix for bug#21739 than the previous fix, since it will cause only
19343         redisplay of mode lines, not of entire windows, but will still
19344         catch attention of x_consider_frame_title in xdisp.c, which
19345         redraws the frame title.
19347 2015-10-24  Tassilo Horn  <tsdh@gnu.org>
19349         * lisp/dired-aux.el (dired-compress-files-alist): Add support for
19350         tar.bz2 and tar.xz archives.
19352 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
19354         Fix infloop in redisplay introduced by a recent change
19356         * src/xdisp.c (redisplay_internal): Avoid inflooping when
19357         redisplaying the selected window sets the selected frame's
19358         redisplay flag.  (Bug#21745)
19360 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
19362         * lisp/emacs-lisp/thunk.el: Better documentation.
19364 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
19366         Replace the old icon for Windows and Mac OSX
19368         * nt/icons/emacs.ico:
19369         * nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns:
19370         Use the new icons.
19372 2015-10-23  Stephen Leake  <stephen_leake@stephe-leake.org>
19374         * lisp/emacs-lisp/package.el (package-autoload-ensure-default-file):
19375         `load-path' should contain only directory names.
19377 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
19379         New library thunk.el
19381         thunk.el is extracted from stream.el in ELPA, with additional tests.
19383         * lisp/emacs-lisp/thunk.el: New file.
19384         * test/automated/thunk-tests.el: New file.
19385         * etc/NEWS: Add information about thunk.el
19387 2015-10-23  Michael Albinus  <michael.albinus@gmx.de>
19389         Fix bug#21669
19391         * lisp/filenotify.el (file-notify-rm-watch): Improve check for
19392         calling low-level functions.
19394         * test/automated/file-notify-tests.el (file-notify--test-timeout):
19395         Decrase to 6 seconds for remote directories.
19396         (file-notify-test02-events): Expect different number of
19397         `attribute-changed' events for the local and remote cases.  Apply
19398         short delays between the operations, in order to receive all
19399         events in the remote case.  Combine `attribute-change' tests.
19400         (Bug#21669)
19402 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
19404         Decode the HTML source when displaying it in EWW
19406         * lisp/net/eww.el (eww-view-source): Decode the HTML source
19407         according to its headers.
19409 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
19411         New default icon
19413         * etc/images/icons/hicolor/128x128/apps/emacs23.png:
19414         * etc/images/icons/hicolor/16x16/apps/emacs23.png:
19415         * etc/images/icons/hicolor/24x24/apps/emacs23.png:
19416         * etc/images/icons/hicolor/32x32/apps/emacs23.png:
19417         * etc/images/icons/hicolor/48x48/apps/emacs23.png:
19418         * etc/images/icons/hicolor/scalable/apps/emacs23.svg:
19419         * etc/images/icons/hicolor/scalable/mimetypes/emacs-document23.svg:
19420         Move the old logo files to emacs23.*.
19421         * etc/images/icons/hicolor/128x128/apps/emacs.png:
19422         * etc/images/icons/hicolor/16x16/apps/emacs.png:
19423         * etc/images/icons/hicolor/24x24/apps/emacs.png:
19424         * etc/images/icons/hicolor/32x32/apps/emacs.png:
19425         * etc/images/icons/hicolor/48x48/apps/emacs.png:
19426         * etc/images/icons/hicolor/scalable/apps/emacs.svg:
19427         * etc/images/icons/hicolor/scalable/mimetypes/emacs-document.svg:
19428         New files.
19429         * etc/images/icons/README: Update the copyright information.
19431 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
19433         Fix redisplay of frame title when current buffer is killed
19435         * src/buffer.c (Fkill_buffer): Set windows_or_buffers_changed to a
19436         non-zero value, to redisplay more than just the affected windows.
19437         (Bug#21739)
19439 2015-10-23  Anders Lindgren  <andlind@gmail.com>
19441         NextStep maximization and NSTRACE rewrite
19443         Full-height, full-width, and maximized windows now cover the
19444         entire screen (except the menu bar), including the part where the
19445         system dock is placed.  The system zoom animation is no longer
19446         used.
19448         Made NonMaximized->FullWidth->FullHeight->NonMaximized restore the
19449         original size.
19451         * src/nsterm.m (ns_menu_bar_height): New function, return height of
19452         the menu bar, or 0 when it's hidden.
19453         (constrain_frame_rect): New function for constraining a frame.
19454         (ns_constrain_all_frames): Set frame size explicitly rather than
19455         relying on the system doing it for us by writing back the current
19456         frame size.
19457         (windowWillUseStandardFrame): Register non-maximized width or
19458         height as new user size.  When entering full width or height,
19459         the other size component is taken from the user size.
19460         (fullscreenState): New method for accessing the fullscreen state.
19461         (constrainFrameRect): Restrict frame to be placed under the menu bar,
19462         if present.  The old version, sometimes, restricted the height of a
19463         frame to the screen, this version never does this.
19464         (zoom): Perform zoom by setting the frame to the full size of the
19465         screen (minus the menu bar).  The default system function, with the
19466         zoom animation, is no longer used, as the final frame size doesn't
19467         cover the entire screen.
19469         Rework how to constrain resizing to the character grid.  The old
19470         system used "resizeIncrements" in NSWindows.  However, once a frame
19471         was resized so that it was not aligned to the text grid, it
19472         remained unaligned even after a resize.  In addition, it conflicted
19473         when resizing a fullheight window.
19475         * src/nsterm.m (windowWillResize): Restrict frame size to text grid,
19476         unless when pixelwise frame resizing is enabled.
19477         (updateFrameSize, initFrameFromEmacs)
19478         (toggleFullScreen, handleFS): Don't set resizeIncrements.
19480         Redesign the NS trace system.  The call structure is represented
19481         using indentations and vertical lines.  The NSTRACE macro accepts
19482         printf-style arguments.  New macros for printing various
19483         information.
19485         * src/nsterm.h (NSTRACE_ENABLED): Macro to enable trace system.
19486         (NSTRACE, NSTRACE_WHEN, NSTRACE_UNLESS): Macros to start a new
19487         block (typically a function), accept printf-style arguments.
19488         (NSTRACE_MSG): Macro for extra information, accepts
19489         printf-style arguments.
19490         (NSTRACE_what): Macros for printing various types.
19491         (NSTRACE_FMT_what): Macro with printf format string snippets.
19492         (NSTRACE_ARG_what): Macros for passing printf-style arguments,
19493         corresponds to NSTRACE_FMT_what.
19494         (NSTRACE_RETURN): Macro to print return value, accept
19495         printf-style arguments.
19496         (NSTRACE_RETURN_what): Macros to print return value for
19497         various types.
19499         * src/nsterm.m: Remove old NSTRACE macro
19500         * src/nsterm.m (nstrace_num): Trace counter.
19501         (nstrace_depth): Current call depth.
19502         (nstrace_leave): NSTRACE support function, called when the
19503         local variable "nstrace_enabled" goes out of scope using the
19504         "cleanup" extension.
19505         (ns_print_fullscreen_type_name): NSTRACE_FSTYPE support function.
19506         (constrain_frame_rect, ns_constrain_all_frames)
19507         (ns_update_auto_hide_menu_bar, ns_update_begin)
19508         (ns_update_window_begin, update_window_end, ns_update_end)
19509         (ns_focus, ns_unfocus, ns_ring_bell, ns_frame_raise_lower)
19510         (ns_frame_rehighlight, x_make_frame_visible)
19511         (x_make_frame_invisible, x_iconify_frame, x_free_frame_resources)
19512         (x_destroy_window, x_set_offset, x_set_window_size)
19513         (ns_fullscreen_hook, ns_lisp_to_color, ns_color_to_lisp)
19514         (ns_defined_color, frame_set_mouse_pixel_position)
19515         (note_mouse_movement, ns_mouse_position, ns_frame_up_to_date)
19516         (ns_define_frame_cursor, x_get_keysym_name, ns_redraw_scroll_bars)
19517         (ns_clear_frame, ns_clear_frame_area, ns_scroll_run)
19518         (ns_after_update_window_line, ns_shift_glyphs_for_insert)
19519         (dumpcursor, ns_draw_vertical_window_border)
19520         (ns_draw_window_divider, ns_draw_relief)
19521         (ns_dumpglyphs_box_or_relief, ns_maybe_dumpglyphs_background)
19522         (ns_dumpglyphs_image, ns_draw_glyph_string, ns_send_appdefined)
19523         (ns_read_socket, ns_select, ns_set_vertical_scroll_bar)
19524         (ns_set_horizontal_scroll_bar, ns_condemn_scroll_bars)
19525         (ns_redeem_scroll_bar, ns_judge_scroll_bars, ns_delete_terminal)
19526         (ns_create_terminal, ns_term_init, sendEvent)
19527         (applicationDidFinishLaunching, applicationDidBecomeActive)
19528         (timeout_handler, fd_handler, EmacsView_dealloc, changeFont)
19529         (acceptsFirstResponder, resetCursorRects, keyDown, mouseDown)
19530         (deltaIsZero, rightMouseDown, otherMouseDown, mouseUp)
19531         (rightMouseUp, otherMouseUp, scrollWheel, mouseMoved)
19532         (mouse_autoselect_window, in_window, mouseDragged)
19533         (rightMouseDragged, otherMouseDragged, windowShouldClose)
19534         (updateFrameSize, windowWillResize, windowDidResize)
19535         (windowDidBecomeKey, windowDidResignKey, windowWillMiniaturize)
19536         (initFrameFromEmacs, windowDidMove, windowDidDeminiaturize)
19537         (windowDidExpose, windowDidMiniaturize, windowWillEnterFullScreen)
19538         (windowDidEnterFullScreen, windowWillExitFullScreen)
19539         (windowDidExitFullScreen, toggleFullScreen, handleFS, setFSValue)
19540         (mouseEntered, mouseExited, menuDown, toolbarClicked, drawRect)
19541         (draggingEntered, performDragOperation, validRequestorForSendType)
19542         (setMiniwindowImage, constrainFrameRect, performZoom, zoom)
19543         (EmacsScroller_initFrame, EmacsScroller_setFrame)
19544         (EmacsScroller_dealloc, condemn, reprieve, judge)
19545         (resetCursorRects, setPosition, EmacsScroller_mouseDown)
19546         (EmacsScroller_mouseDragged, syms_of_nsterm): Use new trace system.
19548         * src/nsfns.m: Remove old NSTRACE macro
19549         * src/nsfns.m (x_set_icon_name, ns_set_name, x_explicitly_set_name)
19550         (x_implicitly_set_name, x_set_title, ns_set_name_as_filename)
19551         (ns_implicitly_set_icon_type, x_set_icon_type): Use new trace system.
19553         * src/nsimage.m: Remove old NSTRACE macro
19554         * src/nsimage.m (ns_image_from_XBM, ns_image_for_XPM)
19555         (ns_image_from_bitmap_file, ns_load_image): Use new trace system.
19557         * src/nsmenu.m: Remove old NSTRACE macro
19558         * src/nsmenu.m (ns_update_menubar, ns_menu_show, ns_popup_dialog):
19559         Use new trace system.
19561 2015-10-22  Katsumi Yamaoka  <yamaoka@jpl.org>
19563         No need to use eval-and-compile
19565         * lisp/gnus/auth-source.el: Do require epg (when compiling) before
19566         autoload epg functions.
19568 2015-10-22  Katsumi Yamaoka  <yamaoka@jpl.org>
19570         Fix auth-source-epa-make-gpg-token compilation (bug#21724)
19572         * lisp/gnus/auth-source.el: Add eval-and-compile to autoloads for
19573         epg-context-set-passphrase-callback, epg-decrypt-string, and
19574         epg-encrypt-string; require epg when compiling for the setf-method
19575         for epg-context-armor. (bug#21724)
19577 2015-10-22  Eli Zaretskii  <eliz@gnu.org>
19579         Include file cleanup for w32 files in src directory
19581         * src/w32xfns.c: Don't include keyboard.h, window.h, charset.h,
19582         fontset.h, blockinput.h.
19583         * src/w32uniscribe.c: Don't include dispextern.h, character.h,
19584         charset.h, fontset.h.
19585         * src/w32term.c: Don't include systty.h, systime.h, charset.h,
19586         character.h, ccl.h, dispextern.h, disptab.h, intervals.h,
19587         process.h, atimer.h, keymap.h, w32heap.h.  Include bitmap/gray.xbm
19588         in an ifdef-ed away block.
19589         Include fcntl.h for CYGWIN.
19590         (set_frame_param): Remove unused function.
19591         * src/w32select.c: Don't include charset.h and composite.h.
19592         (setup_config, Fw32_get_clipboard_data): Avoid compiler warnings
19593         due to pointer signedness mismatches.
19594         * src/w32reg.c (w32_get_string_resource): Avoid compiler warnings
19595         due to pointer signedness mismatches.
19596         * src/w32proc.c: Include unistd.h.  Don't include systime.h,
19597         process.h, dispextern.h.
19598         (sys_spawnve, Fw32_short_file_name, Fw32_long_file_name)
19599         (Fw32_application_type): Avoid compiler warnings due to pointer
19600         signedness mismatches.
19601         * src/w32menu.c: Don't include keymap.h, termhooks.h, window.h,
19602         character.h, charset.h, dispextern.h.
19603         (simple_dialog_show, add_menu_item): Avoid compiler warnings due
19604         to pointer signedness mismatches.
19605         * src/w32inevt.c: Don't include dispextern.h, window.h,
19606         termhooks.h, w32heap.h.
19607         * src/w32font.c: Don't include dispextern.h, character.h,
19608         charset.h, fontset.h, font.h.
19609         (intern_font_name, add_font_entity_to_list)
19610         (registry_to_w32_charset, w32_to_x_charset, fill_in_logfont)
19611         (list_all_matching_fonts): Avoid compiler warnings due to pointer
19612         signedness mismatches.
19613         * src/w32fns.c: Don't include character.h, intervals.h,
19614         dispextern.h, epaths.h, charset.h, ccl.h, fontset.h, systime.h,
19615         termhooks.h, w32heap.h, bitmap/gray.xbm, font.h, w32font.h.
19616         (w32_color_map_lookup, add_system_logical_colors_to_map)
19617         (x_decode_color, x_set_name, FPRINTF_WM_CHARS, Fxw_color_defined_p)
19618         (Fxw_color_values, x_display_info_for_name, Fset_message_beep)
19619         (x_create_tip_frame, Fx_file_dialog, Fsystem_move_file_to_trash)
19620         (w32_parse_hot_key, Ffile_system_info, w32_kbd_patch_key): Avoid
19621         compiler warnings, mainly due to pointer signedness mismatches.
19622         (unwind_create_frame_1): Remove unused function.
19623         * src/w32console.c: Don't include character.h, disptab.h, frame.h,
19624         window.h, termhooks.h, dispextern.h.
19625         (w32con_write_glyphs, w32con_write_glyphs_with_face): Fix pointer
19626         signedness mismatch.
19627         * src/w32.c: Include c-strcase.h and systty.h.  Don't include
19628         w32heap.h.
19630 2015-10-22  Tassilo Horn  <tsdh@gnu.org>
19632         Improve doc-view wrt. auto-revert-mode
19634         * lisp/doc-view.el (doc-view-revert-buffer): Don't revert when file
19635         is corrupted (bug#21729).
19636         (doc-view-mode): Set doc-view-revert-buffer as revert-buffer-function.
19638 2015-10-22  Oleh Krehel  <ohwoeowho@gmail.com>
19640         Describe dired-do-compress-to in the manual
19642         * etc/NEWS: Update.
19644         * lisp/dired-aux.el: Fix typo.
19646         * doc/emacs/dired.texi: Add entry.
19648 2015-10-22  Jürgen Hötzel  <juergen@archlinux.org>
19650         Further fix for proper locale handling in tramp-gvfs.el
19652         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
19653         Just suppress LC_MESSAGES locale category settings.
19655 2015-10-21  Paul Eggert  <eggert@cs.ucla.edu>
19657         New lispref section “Security Considerations”
19659         This attempts to document some of the issues recently discussed
19660         on emacs-devel, and to indicate other such issues.  The section
19661         could be a lot longer.
19662         * doc/lispref/os.texi (Security Considerations):
19663         New node.
19664         * doc/lispref/elisp.texi (Top):
19665         * doc/lispref/processes.texi (Shell Arguments):
19666         * lisp/subr.el (shell-quote-argument):
19667         * src/callproc.c (syms_of_callproc):
19668         Reference it.
19670 2015-10-21  Paul Eggert  <eggert@cs.ucla.edu>
19672         Merge from gnulib
19674         This incorporates:
19675         2015-10-18 stdalign: work around pre-4.9 GCC x86 bug
19676         2015-10-18 time_rz: avoid warning from bleeding-edge gcc's -Wnonnull
19677         * doc/misc/texinfo.tex, lib/stdalign.in.h, lib/time_rz.c:
19678         Copy from gnulib.
19680 2015-10-21  Katsumi Yamaoka  <yamaoka@jpl.org>
19682         * lisp/gnus/mailcap.el (mailcap-mime-data): Remove fboundp checks.
19683         (mailcap-viewer-passes-test): Do it instead.  Thanks to Stefan Monnier.
19685 2015-10-21  Ken Brown  <kbrown@cornell.edu>
19687         Further include-file cleanup
19689         * src/sheap.c: Include stdlib.h.
19690         * src/unexcw.c: Include string.h.
19692 2015-10-21  Eli Zaretskii  <eliz@gnu.org>
19694         Fix logic in 'server-kill-emacs-query-function'
19696         * lisp/server.el (server-kill-emacs-query-function): Correct the
19697         logic that controls whether the user is asked for confirmation.
19698         (Bug#21723)
19700 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
19702         * lisp/isearch.el (isearch-search-fun-default): Simplify logic.
19703         (isearch--lax-regexp-function-p): New function.
19705 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
19707         * lisp/isearch.el: Support lax-whitespace in regexp-function searches.
19708         (isearch-search-fun-default): Let-bind `search-spaces-regexp'
19709         around `isearch-regexp-function'.
19711 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
19713         * lisp/isearch.el: Rename word search to regexp-function search.
19714         `isearch-word' went well beyond its original purpose, and the name
19715         no longer makes sense.  It is now called
19716         `isearch-regexp-function', and its value should always be a function
19717         that converts a string to a regexp (though setting it to t is still
19718         supported for now).
19719         (isearch-word): Make obsolete.
19720         (isearch-regexp-function): New variable.
19721         (isearch-mode, isearch-done, isearch--state, isearch--set-state)
19722         (with-isearch-suspended, isearch-toggle-regexp)
19723         (isearch-toggle-word, isearch-toggle-symbol)
19724         (isearch-toggle-character-fold, isearch-query-replace)
19725         (isearch-occur, isearch-highlight-regexp)
19726         (isearch-search-and-update, isearch-message-prefix)
19727         (isearch-search-fun-default, isearch-search)
19728         (isearch-lazy-highlight-new-loop, isearch-lazy-highlight-search):
19729         Use it.
19730         (isearch-lazy-highlight-regexp-function): New var.
19731         (isearch-lazy-highlight-word): Make obsolete.
19732         (isearch--describe-regexp-mode): New function.
19733         (isearch--describe-word-mode): Make obsolete.
19735         * lisp/info.el (Info-isearch-search):
19736         * lisp/replace.el (replace-search, replace-highlight):
19737         * lisp/obsolete/longlines.el (longlines-search-function):
19738         * lisp/hexl.el (hexl-isearch-search-function):
19739         * lisp/cedet/semantic/senator.el (senator-isearch-search-fun):
19740         Use the new var.
19742 2015-10-21  Oleh Krehel  <ohwoeowho@gmail.com>
19744         Add dired-do-compress-to command bound to "c"
19746         * lisp/dired-aux.el (dired-shell-command): Use the caller's
19747           `default-directory', return the result of `process-file'.
19748         (dired-compress-file-suffixes): Add comment on why "tar -zxf" isn't
19749         used by default.
19750         (dired-compress-files-alist): New defvar.
19751         (dired-do-compress-to): New command.
19753         * lisp/dired.el (dired-mode-map): Bind `dired-do-compress-to' to "c".
19754         (dired-do-compress-to): Add an autoload entry.
19756         * etc/NEWS: Add two entries.
19758 2015-10-21  Tassilo Horn  <tsdh@gnu.org>
19760         Make RefTeX work with LaTeX subfiles package
19762         * lisp/textmodes/reftex.el (reftex-TeX-master-file): Recognize subfiles
19763         document class argument as master file for referencing purposes.
19765 2015-10-21  Katsumi Yamaoka  <yamaoka@jpl.org>
19767         * lisp/gnus/mailcap.el (mailcap-mailcap-entry-passes-test): Doc fix.
19769 2015-10-20  Paul Eggert  <eggert@cs.ucla.edu>
19771         Include-file cleanup for src directory
19773         Omit ‘#include "foo.h"’ unless the file needs foo.h (Bug#21707).
19774         In a few cases, add ‘#include "foo.h"’ if the file needs foo.h
19775         but does not include it directly.  As a general rule, a source
19776         file should include foo.h if it needs the interfaces that foo.h
19777         defines.
19778         * src/alloc.c: Don’t include process.h.  Include dispextern.h,
19779         systime.h.
19780         * src/atimer.c: Don’t include blockinput.h.
19781         * src/buffer.c: Include coding.h, systime.h.  Don’t include
19782         keyboard.h, coding.h.
19783         * src/callint.c: Don’t include commands.h, keymap.h.
19784         * src/callproc.c: Don’t include character.h, ccl.h, composite.h,
19785         systty.h, termhooks.h.
19786         * src/casetab.c: Don’t include character.h.
19787         * src/category.c: Don’t include charset.h, keymap.h.
19788         * src/ccl.h: Don’t include character.h.
19789         * src/character.c: Don’t include charset.h.
19790         * src/charset.c: Don’t include disptab.h.
19791         * src/chartab.c: Don’t include ccl.h.
19792         * src/cm.c: Don’t include frame.h, termhooks.h.
19793         * src/cmds.c: Don’t include window.h, dispextern.h.
19794         * src/coding.c: Don’t include window.h, frame.h.
19795         * src/composite.c: Include composite.h.  Don’t include window.h,
19796         font.h.
19797         * src/data.c: Don’t include syssignal.h, termhooks.h, font.h.
19798         * src/dbusbind.c: Don’t include frame.h.
19799         * src/decompress.c: Don’t include character.h.
19800         * src/dired.c: Don’t include character.h, commands.h, charset.h.
19801         * src/dispnew.c: Don’t include character.h, indent.h, intervals.h,
19802         process.h, timespec.h.  Include systime.h.
19803         * src/doc.c: Include coding.h.  Don’t include keyboard.h.
19804         * src/editfns.c: Include composite.h.  Don’t include frame.h.
19805         * src/emacs.c: Include fcntl.h, coding.h.  Don’t include
19806         commands.h, systty.h..
19807         * src/fileio.c: Don’t include intervals.h, dispextern.h.
19808         Include composite.h.
19809         * src/filelock.c: Don’t include character.h, systime.h.
19810         * src/fns.c: Don’t include time.h, commands.h, keyboard.h,
19811         keymap.h, frame.h, blockinput.h, xterm.h.  Include composite.h.
19812         * src/font.c: Include termhooks.h.
19813         * src/font.h: Don’t include ccl.h, frame.h.  Add forward decls of
19814         struct composition_it, struct face, struct glyph_string.
19815         * src/fontset.c: Don’t include buffer.h, ccl.h, keyboard.h,
19816         intervals.h, window.h, termhooks.h.
19817         * src/frame.c: Don’t include character.h, commands.h, font.h.
19818         * src/frame.h: Don’t include dispextern.h.
19819         * src/fringe.c: Don’t include character.h.
19820         * src/ftcrfont.c: Don’t include dispextern.h, frame.h,
19821         character.h, charset.h, fontset.h.
19822         * src/ftfont.c: Don’t include frame.h, blockinput.h, coding.h,
19823         fontset.h.
19824         * src/ftxfont.c: Don’t include dispextern.h, character.h,
19825         charset.h, fontset.h.
19826         * src/gfilenotify.c: Don’t include frame.h, process.h.
19827         * src/gtkutil.c: Include dispextern.h, frame.h, systime.h.
19828         Don’t include syssignal.h, buffer.h, charset.h, font.h.
19829         * src/gtkutil.h: Don’t include frame.h.
19830         * src/image.c: Include fcntl.h and stdio.h instead of sysstdio.h.
19831         Don’t include character.h.
19832         * src/indent.c: Don’t include keyboard.h, termchar.h.
19833         * src/inotify.c: Don’t include character.h, frame.h.
19834         * src/insdel.c: Include composite.h.  Don’t include blockinput.h.
19835         * src/intervals.c: Don’t include character.h, keyboard.h.
19836         * src/intervals.h: Don’t include dispextern.h, composite.h.
19837         * src/keyboard.c: Don’t include sysstdio.h, disptab.h, puresize.h.
19838         Include coding.h.
19839         * src/keyboard.h: Don’t incldue systime.h.
19840         * src/keymap.c: Don’t include charset.h, frame.h.
19841         * src/lread.c: Include dispextern.h and systime.h.
19842         Don’t include frame.h.  Include systime.h.
19843         * src/macros.c: Don’t include commands.h, character.h, buffer.h.
19844         * src/menu.c: Include character.h, coding.h.  Don’t include
19845         dispextern.h.
19846         * src/menu.h: Don’t include systime.h.
19847         * src/minibuf.c: Don’t include commands.h, dispextern.h, syntax.h,
19848         intervals.h, termhooks.h.
19849         * src/print.c: Include coding.h.  Don’t include keyboard.h,
19850         window.h, dispextern.h, termchar.h, termhooks.h, font.h.
19851         Add forward decl of struct terminal.
19852         * src/process.c: Don’t include termhooks.h, commands.h,
19853         dispextern.h, composite.h.
19854         * src/region-cache.c: Don’t include character.h.
19855         * src/scroll.c: Don’t include keyboard.h, window.h.
19856         * src/search.c: Don’t include category.h, commands.h.
19857         * src/sound.c: Don’t include dispextern.h.
19858         * src/syntax.c: Don’t include command.h, keymap.h.
19859         * src/sysdep.c: Don’t include window.h, dispextern.h.
19860         * src/systime.h: Use ‘#ifdef emacs’, not ‘#ifdef EMACS_LISP_H’,
19861         * src/term.c: Don’t include systty.h, intervals.h, xterm.h.
19862         * src/terminal.c: Include character.h.
19863         Don’t include charset.h, coding.h.
19864         * src/textprop.c: Don’t include character.h.
19865         * src/undo.c: Don’t include character.h, commands.h, window.h.
19866         * src/unexsol.c: Don’t include character.h, charset.h.
19867         * src/widget.c: Include widget.h.  Don’t include keyboard.h,
19868         window.h, dispextern.h, blockinput.h, character.h, font.h.
19869         * src/widgetprv.h: Don’t include widget.h.
19870         * src/window.c: Don’t include character.h, menu.h, intervals.h.
19871         * src/xdisp.c: Include composite.h, systime.h.  Don’t include
19872         macros.h, process.h.
19873         * src/xfaces.c: Don’t include charset.h, keyboard.h, termhooks.h,
19874         intervals.h.
19875         * src/xfns.c: Don’t include menu.h, character.h, intervals.h,
19876         epaths.h, fontset.h, systime.h, atimer.h, termchar.h.
19877         * src/xfont.c: Don’t include dispextern.h, fontset.h, ccl.h.
19878         * src/xftfont.c: Don’t include dispextern.h, character.h, fontset.h.
19879         * src/xgselect.c: Don’t include timespec.h, frame.h.
19880         Include systime.h.
19881         * src/xgselect.h: Don’t include time.h.
19882         Use a forward decl to struct timespec instead.
19883         * src/xmenu.c: Don’t include keymap.h, character.h, charset.h,
19884         dispextern.h.  Include systime.h.
19885         * src/xml.c: Don’t include character.h.
19886         * src/xrdb.c [USE_MOTIF]: Don’t include keyboard.h.
19887         * src/xselect.c: Don’t include dispextern.h, character.h,
19888         buffer.h, process.h.
19889         * src/xsmfns.c: Don’t include systime.h, sysselect.h.
19890         * src/xterm.c: Don’t include syssignal.h, charset.h, disptab.h,
19891         intervals.h process.h, keymap.h, xgselect.h.  Include composite.h.
19893 2015-10-20  Paul Eggert  <eggert@cs.ucla.edu>
19895         (/ N) now returns the reciprocal of N
19897         This is more compatible with Common Lisp and XEmacs (Bug#21690).  See:
19898         http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg01053.html
19899         * lisp/color.el (color-hue-to-rgb, color-hsl-to-rgb)
19900         (color-xyz-to-srgb, color-xyz-to-lab):
19901         * lisp/emacs-lisp/cl-extra.el (cl-float-limits):
19902         * lisp/net/shr-color.el (shr-color-hue-to-rgb)
19903         (shr-color-hsl-to-rgb-fractions):
19904         Exploit the change to simplify the code a bit.
19905         * lisp/emacs-lisp/bytecomp.el (byte-compile-quo):
19906         Don’t complain about single-argument calls to ‘/’.
19907         * src/data.c (arith_driver, float_arith_driver):
19908         Implement the change.
19910 2015-10-20  Dmitry Gutov  <dgutov@yandex.ru>
19912         Call vc-dir-refresh after stash operations
19914         * lisp/vc/vc-git.el (vc-git-stash-apply-at-point)
19915         (vc-git-stash-pop-at-point): Call vc-dir-refresh (bug#13960).
19917         * lisp/vc/vc-dir.el (vc-dir-resynch-file): Expand FNAME as well,
19918         since it can be abbreviated (as returned by vc-find-root).
19920 2015-10-20  Dmitry Gutov  <dgutov@yandex.ru>
19922         * lisp/vc/vc-svn.el:
19923         * lisp/vc/vc-mtn.el:
19924         * lisp/vc/vc-hg.el:
19925         * lisp/vc/vc-cvs.el:
19926         * lisp/vc/vc-git.el:
19927         * lisp/vc/vc-bzr.el: Don't declare vc-exec-after anymore.
19928         Its usages have been replaced with vc-run-delayed.
19930 2015-10-20  Dima Kogan  <dima@secretsauce.net>
19932         Fix memory leak in fontset handling
19934         * src/font.c (copy_font_spec): Make a deep copy of the input
19935         argument FONT.  (Bug#21651)
19937 2015-10-20  Michael Sperber  <mike@xemacs.org>
19939         * lisp/gnus/mailcap.el (mailcap-mime-data):
19940         Conditonalize `doc-view-mode', which does not exist on XEmacs.
19942 2015-10-20  Oleh Krehel  <ohwoeowho@gmail.com>
19944         Update the way directories are compressed
19946         * lisp/dired-aux.el (dired-compress-file-suffixes): Update the recipe
19947         for *.tar.gz decompression to use a pipe.
19948         Add an entry for the default directory compression (to *.tar.g).
19949         (dired-compress-file): Update.
19951         See https://lists.gnu.org/archive/html/emacs-devel/2015-10/msg00949.html.
19953 2015-10-20  Michael Sperber  <mike@xemacs.org>
19955         Unbreak `group' option for `mail-sources'
19957         * lisp/gnus/nnml.el (nnml-retrieve-groups, nnml-request-scan):
19958         * lisp/gnus/nnmail.el (nnmail-get-new-mail-per-group)
19959         (nnmail-get-new-mail-1): Unbreak `group' option for `mail-sources'.
19961 2015-10-19  Nicolas Petton  <nicolas@petton.fr>
19963         New function seq-position
19965         * lisp/emacs-lisp/seq.el (seq-position): New function.
19966         * test/automated/seq-tests.el: New tests for seq-position.
19967         * doc/lispref/sequences.texi: Add documentation for `seq-position'.
19969 2015-10-19  Ken Brown  <kbrown@cornell.edu>
19971         Enable --with-wide-int build on 32-bit Cygwin
19973         * src/sheap.c (STATIC_HEAP_SIZE): Remove distinction between x86
19974         and x86_64 to enable --with-wide-int build on 32-bit Cygwin.
19976 2015-10-19  Glenn Morris  <rgm@gnu.org>
19978         * doc/emacs/ack.texi (Acknowledgments): Small, sad, update.
19980 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
19982         Resurrect image loading under auto-image-file-mode
19984         * src/image.c (x_find_image_fd): Handle the case of -2 returned by
19985         'openp' specially.  This special case was lost in the changes on
19986         2015-08-18.  (Bug#21685)
19988 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
19990         Fix return value of 'set-file-extended-attributes'
19992         * lisp/files.el (set-file-extended-attributes): Return non-nil
19993         when setting either ACLs or SELinux context succeeds.  Document
19994         the return value.  (Bug#21699)
19996         * doc/lispref/files.texi (Changing Files): Document the return
19997         value of set-file-extended-attributes.
19999 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
20001         Improve documentation of functions that change files
20003         * doc/lispref/files.texi (Changing Files): Document that these
20004         functions signal an error on failure.
20006 2015-10-18  Eli Zaretskii  <eliz@gnu.org>
20008         Fix doc string of 'shell-quote-argument'
20010         * lisp/subr.el (shell-quote-argument): Doc fix.  (Bug#21702)
20012 2015-10-18  Michael Albinus  <michael.albinus@gmx.de>
20014         Some minor Tramp changes
20016         * doc/misc/tramp.texi (Obtaining Tramp): Add http git cloning.
20018         * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
20019         Expand `tramp-auto-save-directory'.
20021 2015-10-18  Michael Albinus  <michael.albinus@gmx.de>
20023         Minor edits in Tramp
20025         * lisp/net/tramp-adb.el (directory-listing-before-filename-regexp):
20026         Declare it.
20028         * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
20029         Remove declaration.
20031 2015-10-17  Mark Oteiza  <mvoteiza@udel.edu>
20033         * lisp/emacs-lisp/eldoc.el: Add back-to-indentation to the command list.
20035 2015-10-17  Eli Zaretskii  <eliz@gnu.org>
20037         Avoid crashes when redisplayng a window changes faces or fonts
20039         * src/xdisp.c (redisplay_internal): If redisplaying the selected
20040         window or one of the frames turns on the frame's 'redisplay' flag,
20041         redisplay again.  (Bug#21428)
20043         * src/frame.c (x_set_font): Set the frame's 'fonts_changed' flag.
20045 2015-10-17  Michael Albinus  <michael.albinus@gmx.de>
20047         Solve timimg issues in file-notify-tests.el
20049         * test/automated/file-notify-tests.el (file-notify-test02-events):
20050         Rectify `attribute-change' tests.  There are timing issues with
20051         gfilenotify.  (Bug#21669)
20053 2015-10-16  Paul Eggert  <eggert@cs.ucla.edu>
20055         Fix quoting of data within htmlfontify doc
20057         * doc/misc/htmlfontify.texi (Data Structures, Customization):
20058         Fix quoting of data structures.  A Lisp quote is needed only
20059         when data appears within Lisp code.
20061 2015-10-16  Artur Malabarba  <bruce.connor.am@gmail.com>
20063         * lisp/emacs-lisp/package.el: Reload archive-contents if
20064         priorities change.
20065         (package--old-archive-priorities): New variable.
20066         (package-read-all-archive-contents, package-menu--refresh): Use it
20067         to decide when the `package-archive-contents' needs to be read
20068         again.
20070 2015-10-16  Paul Eggert  <eggert@cs.ucla.edu>
20072         Make src headers idempotent and standalone
20074         Redo src/*.h so that each include file is idempotent (that is, can
20075         be included multiple times with the latter inclusions having no
20076         effect) and standalone (that is, can be included by itself,
20077         with no include file other than config.h needed as a prerequisite).
20078         This is standard practice in GNU programs nowadays.
20079         * lwlib/lwlib-widget.h, src/buffer.h, src/category.h, src/character.h:
20080         * src/charset.h, src/coding.h, src/commands.h, src/disptab.h:
20081         * src/fontset.h, src/gnutls.h, src/indent.h, src/keymap.h, src/macros.h:
20082         * src/regex.h [emacs]:
20083         * src/syntax.h, src/systty.h, src/termhooks.h:
20084         Include lisp.h, for Lisp_Object.
20085         * src/buffer.h, src/category.h, src/cm.h, src/commands.h, src/disptab.h:
20086         * src/indent.h, src/intervals.h, src/keyboard.h, src/macros.h:
20087         * src/process.h, src/puresize.h, src/region-cache.h, src/syntax.h:
20088         * src/syssignal.h, src/sysstdio.h, src/systty.h, src/termchar.h:
20089         * src/termopts.h, src/tparam.h, src/unexec.h:
20090         Protect against multiple inclusion.
20091         * src/buffer.h: Include character.h, for STRING_CHAR.
20092         * src/emacsgtkfixed.h (struct frame):
20093         * src/fontset.h (struct face):
20094         * src/region-cache.h (struct buffer):
20095         * src/termhooks.h (struct glyph):
20096         * src/xsettings.h (struct x_display_info):
20097         Add possibly-forward decl.
20098         * src/syntax.h: Include buffer.h, for BVAR.
20099         * src/sysselect.h: Include lisp.h, for eassume.
20100         * src/termchar.h: Include <stdio.h>, for FILE.
20101         * src/widget.h: Include <X11/IntrinsicP.h>, for Widget.
20102         * src/xsettings.h: Include <X11/Xlib.h>, for XEvent.
20104 2015-10-16  Jürgen Hötzel  <juergen@archlinux.org>
20106         Handle symlink targets containing spaces in tramp-gvfs.el
20108         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
20109         Handle symlink targets containing spaces.
20111 2015-10-16  Artur Malabarba  <bruce.connor.am@gmail.com>
20113         * lisp/custom.el (custom-theme-load-path): Demote to defvar.
20115         `custom-theme-load-path' was a defcustom, but it shouldn't be for the
20116         same reason that `load-path' shouldn't.  Setting it via the customize
20117         interface is a trap for the user.
20119         Installed themes commonly add themselves to this variable, which means
20120         its value is not fit for being saved (it will permanently remember dirs
20121         that don't exist anymore).
20123         This is aggravated by the fact that Emacs always applies the `user'
20124         theme on top of any theme that's loaded, since this will apply the old
20125         variable value and remove any new directories that had been recently
20126         added by themes themselves.
20128         Not to mention, we already have `custom-theme-directory', which is safe
20129         to customize.
20131 2015-10-16  Stefan Monnier  <monnier@iro.umontreal.ca>
20133         * lisp/mpc.el: Rename the new toggling commands.
20134         (mpc-toggle-consume, mpc-toggle-repeat, mpc-toggle-single)
20135         (mpc-toggle-shuffle): Add "-toggle" in the name.
20137 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
20139         Improve the doc string of 'completion-boundaries'
20141         * lisp/minibuffer.el (completion-boundaries): Rename the argument
20142         TABLE to COLLECTION, for consistency with other high-level
20143         completion functions.  Document how COLLECTION is called if it
20144         is a function.  (Bug#21644)
20146 2015-10-16  Oleh Krehel  <ohwoeowho@gmail.com>
20148         * lisp/dired-aux.el (dired-shell-command): Fix compile warning.
20150 2015-10-16  Oleh Krehel  <ohwoeowho@gmail.com>
20152         Make dired-do-compress work for *.zip files
20154         * lisp/dired-aux.el (dired-check-process): Transform the top-level
20155           comment into a docstring.
20156         (dired-shell-command): New command.  This mirrors
20157         `dired-check-process', but is more user-friendly for passing
20158         arguments.
20159         (dired-compress-file-suffixes): Allow to specify the command switches
20160         along with input (%i) and output (%o) inside the PROGRAM part.
20161         Add an entry for *.zip files, and update the entry for *.tar.gz files
20162         to the new style.  Update the docstring.
20163         (dired-compress-file): When PROGRAM matches %i or %o, use the new
20164         logic.
20165         (dired-update-file-line): Avoid an error when at end of buffer.
20167         Fixes bug#21637.
20169 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
20171         Minor improvement in documentation of internals
20173         * doc/lispref/internals.texi (Writing Emacs Primitives): Document QUIT.
20175 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
20177         Improve documentation of COLLECTION in completion functions
20179         * doc/lispref/minibuf.texi (Minibuffer Completion): Add a
20180         cross-reference to "Programmed Completion".
20182         * src/minibuf.c (Fcompleting_read): Improve the doc string.
20183         (Bug#21644)
20185 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
20187         Add more release info to etc/HISTORY
20189         * etc/HISTORY: Add more release information about 19.x and 20.x
20190         versions.
20192 2015-10-15  Paul Eggert  <eggert@cs.ucla.edu>
20194         New file etc/HISTORY
20196         * admin/FOR-RELEASE: Procedure for etc/HISTORY.
20197         * etc/HISTORY: New file.
20198         * etc/NEWS: Mention it.
20200 2015-10-15  Dmitry Gutov  <dgutov@yandex.ru>
20202         js-mode: Don't misindent generator methods
20204         * lisp/progmodes/js.el (js--looking-at-operator-p): Distinguish
20205         generator methods from multiplication operator
20206         (https://github.com/mooz/js2-mode/issues/275).
20208 2015-10-15  Paul Eggert  <eggert@cs.ucla.edu>
20210         Fix animation timeout delay calculation
20212         * lisp/image.el (image-animate-timeout):
20213         Don’t assume speed is floating-point.
20215 2015-10-15  Mark Oteiza  <mvoteiza@udel.edu>
20217         Add commands for controlling MPD modes
20219         * lisp/mpc.el (mpc-cmd-consume, mpc-cmd-random, mpc-cmd-repeat)
20220         (mpc-cmd-single): New functions.
20221         (mpc-consume, mpc-repeat, mpc-single, mpc-shuffle): New commands.
20222         (mpc-mode-menu): Add new commands as menu items.
20224 2015-10-15  Dmitry Gutov  <dgutov@yandex.ru>
20226         Refer to `(elisp)Basic Completion' in completing-read docstring
20228         * src/minibuf.c (Fcompleting_read): Refer to `(elisp)Basic
20229         Completion' in the docstring (bug#21644).
20231 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
20233         * lisp/mpc.el (mpc-format): Always push form to pred
20235 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
20237         Spelling fixes
20239         * configure.ac (bitmapdir): Fix misspelling of bmd_acc.
20240         * test/automated/coding-tests.el (ert-test-coding-bogus-coding-systems):
20241         Fix misspelling of nonexistent file name.
20243 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
20245         * lisp/mpc.el (mpc-mode-menu, mpc-toggle-play): Fix docstrings
20247 2015-10-14  Michael Albinus  <michael.albinus@gmx.de>
20249         Some editing fixes in Tramp
20251         * lisp/net/tramp-gvfs.el:
20252         * doc/misc/tramp.texi: "customer option" -> "custom option".
20254         * lisp/net/tramp.el (tramp-completion-function-alist): Fix docstring.
20256 2015-10-14  Jürgen Hötzel  <juergen@archlinux.org>
20258         Use proper localization in tramp-gvfs.el
20260         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
20261         Suppress localized settings in order to proper parse gfvs output.
20263 2015-10-14  Warren Lynn  <wrn.lynn@gmail.com>  (tiny change)
20265         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band):
20266         Quote argument in proper order.  (Bug#21562)
20268 2015-10-14  Nicolas Petton  <nicolas@petton.fr>
20270         Fix typos in docstrings
20272         * lisp/emacs-lisp/map.el:
20273         * lisp/emacs-lisp/seq.el: Fix typos in the docstrings of the pcase
20274           macros.
20276 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
20278         * lisp/mpc.el (mpc-volume-refresh): Check if buffer is live.
20280 2015-10-14  Oleh Krehel  <ohwoeowho@gmail.com>
20282         Make dired-jump work with tar-subfile-mode
20284         * lisp/dired-x.el (dired-jump): When in `tar-subfile-mode', instead of
20285           emitting an error, switch to `tar-superior-buffer'.
20287 2015-10-14  Juanma Barranquero  <lekktu@gmail.com>
20289         * .gitignore: Add build-aux/ar-lib.
20291 2015-10-14  Nicolas Petton  <nicolas@petton.fr>
20293         Better docstrings in seq.el and map.el
20295         * lisp/emacs-lisp/map.el:
20296         * lisp/emacs-lisp/seq.el: Improve the docstring for the pcase patterns.
20298 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
20300         Merge from gnulib
20302         This incorporates:
20303         2015-10-13 binary-io, u64, unistd: port to strict C
20304         2015-09-26 c-ctype: do not worry about EBCDIC + char signed
20305         2015-09-25 c-ctype: port better to z/OS EBCDIC
20306         2015-09-25 gnulib-common.m4: fix gl_PROG_AR_RANLIB/AM_PROG_AR clash
20307         * doc/misc/texinfo.tex, lib/binary-io.c, lib/c-ctype.h, lib/u64.c:
20308         * lib/unistd.c, m4/gnulib-common.m4, m4/gnulib-comp.m4:
20309         Copy from gnulib.
20311 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
20313         Take XPNTR private
20315         * src/alloc.c (PURE_POINTER_P): Remove.
20316         All uses replaced with PURE_P.
20317         (XPNTR_OR_SYMBOL_OFFSET): New function.
20318         (XPNTR): Move here from lisp.h.
20319         Reimplement in terms of XPNTR_OR_SYMBOL_OFFSET.
20320         (mark_maybe_object, valid_lisp_object_p, survives_gc_p):
20321         Remove unnecessary cast.
20322         (purecopy): Use XPNTR_OR_SYMBOL_OFFSET instead of XPNTR,
20323         to avoid an unnecessary runtime test for symbols.
20324         * src/lisp.h (lisp_h_XPNTR, XPNTR): Remove, moving XPNTR to alloc.c.
20325         Only alloc.c needs XPNTR now.
20327 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
20329         Add MPC play/pause command
20331         * lisp/mpc.el (mpc-toggle-play): New command.
20332         (mpc-mode-map): Bind it to "s".
20333         (mpc-mode-menu): Add corresponding menu item.
20335 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
20337         Add bindings and menu items for prev and next tracks
20339         * lisp/mpc.el (mpc-mode-map): Bind ">" to mpc-next,
20340         "<" to mpc-prev.
20341         (mpc-mode-menu): Add corresponding menu items
20343 2015-10-13  Ken Raeburn  <raeburn@raeburn.org>
20345         Reduce face-related consing during frame creation.
20347         * lisp/faces.el (face--attributes-unspecified): Compute the "unspecified"
20348         attribute list once.
20349         (face-spec-reset-face): Use it instead of building the list.
20351 2015-10-13  Ken Raeburn  <raeburn@permabit.com>
20353         Do process ConfigureNotify events indicating size changes.
20355         * src/xterm.c (handle_one_xevent): If consecutive ConfigureNotify
20356         events don't have the same size, process each one.
20358 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
20360         Derive mpc-mode from special-mode
20362         lisp/mpc.el (mpc-mode-map): Make from sparse keymap.  Unbind g.
20363         (mpc-mode): Derive from special mode.
20364         (mpc-songs-mode-map): Don't set parent keymap.
20366 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
20368         Fix error messages for when covers are not found.
20370         The last change to mpc-format let the binding to file call
20371         mpc-file-local-copy with nil argument.  Instead, employ if-let here
20372         so nil bindings don't result in needless computation and errors.
20373         * lisp/mpc.el: Require 'subr-x at compile time.
20374         * lisp/mpc.el (mpc-format): Use if-let.
20376 2015-10-13  Oleh Krehel  <ohwoeowho@gmail.com>
20378         Make dired-do-compress work for *.tar.gz files
20380         * lisp/dired-aux.el (dired-compress-file-suffixes): Associate
20381           "tar -zxvf" to *.tar.gz; update docstring.
20383         (dired-compress-file): Allow to specify switches after the command in
20384         `dired-compress-file-suffixes'.
20386 2015-10-13  Oleh Krehel  <ohwoeowho@gmail.com>
20388         Make dired-do-compress work for directories
20390         * lisp/dired-aux.el (dired-compress-file): When FILE is a directory,
20391           instead of emitting an error, call "tar -czf FILE.tar.gz FILE".
20392         Also convert the top comment into a docstring.
20394 2015-10-13  Stefan Monnier  <monnier@iro.umontreal.ca>
20396         * lisp/mpc.el (mpc-songs-refresh): Don't side-effect `active'
20398         ... since it might come straight from the memoizing table.
20400 2015-10-13  Juanma Barranquero  <lekktu@gmail.com>
20402         * src/w32fns.c (x_change_tool_bar_height): Remove unused variable frame.
20404 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
20406         Use special-mode in eww list modes
20408         * lisp/net/eww.el (eww-bookmark-mode, eww-history-mode)
20409         (eww-buffers-mode): Derive from special-mode and remove redundant
20410         setting of buffer-read-only.
20411         (eww-mode-map): Remove redundant keymap parent setting.
20412         (eww-bookmark-mode-map, eww-history-mode-map, eww-buffers-mode-map):
20413         Remove redundant keymap suppressions and mappings.
20415 2015-10-13  Martin Rudalics  <rudalics@gmx.at>
20417         Allow setting frame pixel sizes from frame parameters (Bug#21415)
20419         Also fix some misfeatures in frame (re-)sizing code, add more
20420         debugging information and remove some dead code.
20422         * lisp/frame.el (frame-notice-user-settings, make-frame): Change
20423         parameter names when setting `frame-size-history'.
20424         (frame--size-history): New function.
20426         * src/frame.c (frame_inhibit_resize): If frame has not been made
20427         yet, return t if inhibit_horizontal_resize or
20428         inhibit_vertical_resize bit have been set.
20429         (adjust_frame_size): Simplify.
20430         (make_frame): Initialize inhibit_horizontal_resize,
20431         inhibit_vertical_resize, tool_bar_redisplayed, tool_bar_resized.
20432         (Fframe_after_make_frame): Reset inhibit_horizontal_resize and
20433         inhibit_vertical_resize slots.
20434         (x_set_frame_parameters): Handle `text-pixels' specification for
20435         width and height parameters.  Don't consider new_height or
20436         new_width changes.  Call adjust_frame_size instead of
20437         Fset_frame_size.
20438         (x_figure_window_size): Two new arguments x_width and y_width
20439         returning frame's figures width and height.  Calculate tool bar
20440         height before frame sizes so SET_FRAME_HEIGHT can pick it up.
20441         Handle `text-pixels' specification for width and height
20442         parameters.
20443         (Qtext_pixels, Qx_set_frame_parameters, Qset_frame_size)
20444         (Qx_set_window_size_1, Qx_set_window_size_2)
20445         (Qx_set_window_size_3, Qx_set_menu_bar_lines)
20446         (Qupdate_frame_menubar, Qfree_frame_menubar_1)
20447         (Qfree_frame_menubar_2): New symbols.
20448         * src/frame.h (structure frame): New booleans
20449         tool_bar_redisplayed, tool_bar_resized,
20450         inhibit_horizontal_resize, inhibit_vertical_resize.
20451         (x_figure_window_size): Update external declaration.
20452         * src/gtkutil.c (xg_frame_set_char_size): Set size hints before
20453         calling gtk_window_resize.
20454         (update_frame_tool_bar): Make inhibiting of frame resizing more
20455         discriminative.  Set tool_bar_resized bit.
20456         * src/nsfns.m (x_set_tool_bar_lines): Make inhibiting of frame
20457         resizing more discriminative.  Call adjust_frame_size instead of
20458         x_set_window_size.
20459         (Fx_create_frame): Handle x_width and x_height if
20460         set by x_figure_window_size.
20461         * src/nsterm.m (x_set_window_size): For GNUSTEP build don't
20462         subtract 3 from tool bar height.
20463         (x_set_window_size): Add frame_size_history_add call.
20464         (x_new_font): Call adjust_frame_size instead of
20465         x_set_window_size.
20466         * src/w32fns.c (x_change_tool_bar_height): Reset
20467         tool_bar_redisplayed and tool_bar_resized bits when adding tool
20468         bar.  Make inhibiting of frame resizing more discriminative.
20469         (w32_wnd_proc): Remove dead code in WM_WINDOWPOSCHANGING case.
20470         (Fx_create_frame): Handle x_width and x_height if set by
20471         x_figure_window_size.  Set size hints before adjusting frame size.
20472         (x_create_tip_frame): Adjust x_figure_window_size call.
20473         * src/w32term.c (x_set_window_size): Add frame_size_history_add
20474         call.
20475         * src/widget.c (set_frame_size): Remove dead code.  Add
20476         frame_size_history_add call.  When frame_resize_pixelwise is t
20477         use FRAME_PIXEL_WIDTH and FRAME_PIXEL_HEIGHT instead of
20478         pixel_width and pixel_height.
20479         (update_various_frame_slots): Remove dead code.
20480         (EmacsFrameResize): Add more information in
20481         frame_size_history_add call.
20482         (EmacsFrameQueryGeometry): Round only when frame_resize_pixelwise
20483         is not set.
20484         * src/xdisp.c (redisplay_tool_bar): Set tool_bar_redisplayed bits.
20485         * src/xfns.c (x_set_menu_bar_lines): Change argument name.
20486         (x_change_tool_bar_height): Reset tool_bar_redisplayed and
20487         tool_bar_resized bits when adding tool bar.  Make inhibiting of
20488         frame resizing more discriminative.
20489         (Fx_create_frame): Handle x_width and x_height if set by
20490         x_figure_window_size.  Set size hints before adjusting frame size.
20491         (x_create_tip_frame): Adjust x_figure_window_size call.
20492         * src/xmenu.c (update_frame_menubar): Don't handle Lucid specially.
20493         (set_frame_menubar): On Lucid never add core-border-width to
20494         avoid that adding XtNinternalBorderWidth adds it again.
20495         (free_frame_menubar): Handle frame_inhibit_resize true for Motif.
20496         * src/xterm.c (x_new_font): In non-toolkit case handle size
20497         change of menu bar.
20498         (x_set_window_size_1): Fix calls to frame_size_history_add.
20499         (x_wm_set_size_hint): Remove dead code.  Set
20500         size_hints.min_width and size_hints.min_height to base_width and
20501         base_height.
20503 2015-10-13  Michael Albinus  <michael.albinus@gmx.de>
20505         * test/automated/file-notify-tests.el (file-notify--test-timeout):
20506         Add docstring.  Increase to 10 seconds for remote
20507         directories.  (Bug#21669)
20509 2015-10-12  Paul Eggert  <eggert@cs.ucla.edu>
20511         Unmacroize ebrowse.c and etags.c a bit
20513         * lib-src/ebrowse.c (READ_CHUNK_SIZE): Now an enum constant.
20514         (streq, filename_eq, set_flag, has_flag): Now inline functions.
20515         (set_flag): First arg is now an address, not an lvalue.
20516         All callers changed.
20517         (filename_eq, set_flag, has_flag):
20518         Rename from FILENAME_EQ, SET_FLAG, HAS_FLAG.
20519         All callers changed.
20520         * lib-src/etags.c (streq, strcaseeq, strneq, strncaseeq):
20521         Now inline functions.  Remove asserts that are unnecessary these
20522         days (and in some cases were too-generous anyway).
20524 2015-10-12  Mark Oteiza  <mvoteiza@udel.edu>
20526         Use highlight for current items
20528         * lisp/mpc.el (mpc-select-make-overlay, mpc-tagbrowser-all-select):
20529         Apply highlight face instead of region face.
20531 2015-10-12  Mark Oteiza  <mvoteiza@udel.edu>
20533         Search for more cover image names in MPC
20535         * lisp/mpc.el (mpc-format): Also look for .folder.jpg or folder.jpg
20536         case insensitively
20538 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
20540         Remove or comment out unused variables
20542         * src/w32fns.c (x_set_mouse_color): Comment out variables cursor,
20543         nontext_cursor, mode_cursor, hand_cursor and count.
20544         (x_change_tool_bar_height): Remove variable old_text_height.
20545         (deliver_wm_chars): Remove variable strip_Alt.
20546         (Fw32_shell_execute): Remove variable document_a.
20547         (Fw32_frame_geometry): Remove variable fullboth.
20548         * src/w32term.c (w32_setup_relief_color): Comment out variable
20549         w32_display_info.
20550         (w32_horizontal_scroll_bar_handle_click): Remove variables start, end.
20551         (w32_read_socket): Comment out variables rows, columns.
20552         * src/w32uniscribe.c (uniscribe_check_otf_1): Remove variable rest.
20554 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
20556         * src/w32proc.c (sys_select): Fix bitwise test.
20558 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
20560         Minor typo corrections in doc strings
20562         * lisp/menu-bar.el (popup-menu, popup-menu-normalize-position):
20563         Doc fixes.
20565 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
20567         * nt/INSTALL: Recommend MSYS Automake/Autoconf from ezwinports.
20569 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
20571         Attempt to avoid crashes in plist-member
20573         * src/fns.c (Fplist_member): Don't call QUIT between a CONSP test
20574         and a call to XCDR.  (Bug#21655)
20576 2015-10-12  Mike FABIAN  <mfabian@redhat.com>
20578         * lisp/select.el (gui-get-primary-selection): In
20579         gui-get-primary-selection use gui--selection-value-internal (Bug#20906)
20581 2015-10-12  Tassilo Horn  <tsdh@gnu.org>
20583         Support RTF in doc-view
20585         * lisp/doc-view.el (doc-view-set-doc-type): Add entry for RTF extension.
20587 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
20589         * src/w32fns.c (get_wm_chars): Increment counter, not pointer.
20591 2015-10-11  Nicolas Petton  <nicolas@petton.fr>
20593         Replace the usage of an obsolete function in auth-source.el
20595         * lisp/gnus/auth-source.el (auth-source-epa-make-gpg-token):
20596         Replace an usage of `epg-context-set-armor' with `setf'.
20598 2015-10-11  Nicolas Petton  <nicolas@petton.fr>
20600         * lisp/gnus/auth-source.el: Use sharp-quoting with functions.
20602 2015-10-11  Jay Belanger  <jay.p.belanger@gmail.com>
20604         Have calc-yank recognize numbers in different bases.
20606         * lisp/calc/calc-yank.el (math-number-regexp): New function.
20607         (calc-yank): Use `math-number-regexp' to recognize numbers.
20609 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
20611         Handle an opaque-move X11 window manager operation more efficiently
20613         * src/xterm.c (handle_one_xevent): If a ConfigureNotify event is
20614         followed by more ConfigureNotify events for the same window, process
20615         only the last one.
20617 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
20619         Fix cursor setting for tip frame; re-enable cursor generation
20621         * src/xfns.c (x_create_tip_frame): Include the cursor in the window
20622         attributes sent when creating the new X window.  Don't skip setting
20623         the pointerColor parameter.
20625 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
20627         Rewrite x_set_mouse_color to sync less
20629         We can track serial numbers of X requests and correlate error events
20630         with the associated requests.  This way we can identify errors for
20631         specific calls without having to use XSync after every one.
20633         * src/xfns.c (enum mouse_cursor): New type.
20634         (struct mouse_cursor_types, struct mouse_cursor_data): New types.
20635         (mouse_cursor_types): New array listing the Lisp variables and default
20636         cursor appearances for each cursor type.
20637         (x_set_mouse_color_handler): New function; checks error event serial
20638         number against submitted requests.
20639         (x_set_mouse_color): Updated to use the new error handler callback,
20640         and to be more table-driven, to simplify repetitious code.
20642 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
20644         Add x_catch_errors_with_handler
20646         * src/xterm.c (struct x_error_message_stack): Add new fields for a
20647         callback function and associated data pointer.
20648         (x_error_catcher): If the callback function is set, call it after
20649         saving the error message string.
20650         (x_catch_errors_with_handler): Renamed from x_catch_errors but now
20651         accepts a callback function and data pointer.
20652         (x_catch_errors): Now a wrapper function.
20653         * src/xterm.h (x_special_error_handler): New typedef.
20654         (x_catch_errors_with_handler): Declare.
20656 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
20658         Introduce x_uncatch_errors_after_check to reduce XSync calls
20660         Both x_had_errors_p and x_check_errors call XSync, so if they're
20661         immediately followed by x_uncatch_errors, its XSync call will be
20662         redundant, resulting in a wasted round trip to the X server.
20664         * src/xterm.c (x_uncatch_errors_after_check): New routine; a copy of
20665         x_uncatch_errors without the XSync call.
20666         (XTmouse_position, x_wm_supports):
20667         * src/xfns.c (x_set_mouse_color):
20668         * src/xmenu.c (Fx_menu_bar_open_internal):
20669         * src/xselect.c (x_own_selection, x_get_foreign_selection):
20670         (Fx_get_atom_name): Call it instead of x_uncatch_errors.
20671         * src/xterm.h (x_uncatch_errors_after_check): Declare.
20673 2015-10-10  Jay Belanger  <jay.p.belanger@gmail.com>
20675         Document the optional prefix to `calc-yank'
20677         * doc/misc/calc.texi (Yanking into the Stack): Document the optional
20678         prefix to `calc-yank'.
20679         * lisp/calc/calc-yank.el (calc-yank): Ensure that things killed from
20680         the Calc buffer are yanked back unchanged.
20682 2015-10-10  Mark Oteiza  <mvoteiza@udel.edu>
20684         * lisp/calendar/calendar.el: Display buffer before executing body.
20686         In each use of this macro, the modeline is derived from a window width
20687         calculation, which will be wrong if (display-buffer) splits the window
20688         horizontally.
20690 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
20692         Use ‘echo’ safely with ‘\’ or leading ‘-’
20694         POSIX says that ‘echo FOO’ produces implementation-defined output
20695         if FOO contains leading ‘-’, or ‘\’ anywhere, so don’t assume GNU
20696         behavior in that case.
20697         * Makefile.in (removenullpaths): Remove.
20698         (epaths-force): Rewrite to avoid the need for ‘echo’.
20699         (install-etc): Be clearer about escaping the shell metacharacters
20700         ‘\’ and ‘$’.
20701         * Makefile.in (install-arch-indep, install-etcdoc):
20702         * admin/charsets/mapconv, admin/merge-gnulib, admin/merge-pkg-config:
20703         * admin/quick-install-emacs, build-aux/gitlog-to-emacslog:
20704         * configure.ac, lib-src/rcs2log, make-dist:
20705         * src/Makefile.in (lisp.mk):
20706         Don’t assume ‘echo’ outputs ‘\’ and leading ‘-’ unscathed.
20707         For example, use ‘printf '%s\n' "$foo"’ rather than ‘echo "$foo"’
20708         if $foo can contain arbitrary characters.
20709         * lisp/Makefile.in (TAGS): Use ‘ls’, not ‘echo’, to avoid ‘\’ issues.
20710         * doc/lispref/two-volume.make (vol1.pdf):
20711         * test/etags/make-src/Makefile (web ftp publish):
20712         Use ‘printf’ rather than ‘echo -e’.
20714 2015-10-10  Kaushal Modi  <kaushal.modi@gmail.com>
20716         Allow numbers with different radixes to be yanked.
20718         * lisp/calc/calc-yank.el (calc-yank): Allow radixes besides the
20719         default base 10.
20721 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
20723         Improve CHECK_IMPURE and PURE_P speedup
20725         * src/data.c (Faset): Use XVECTOR and XSTRING rather than XPNTR.
20727 2015-10-10  Jay Belanger  <jay.p.belanger@gmail.com>
20729         Use events instead of chars to keep track of steps.
20731         * lisp/calc/calc-prog.el (calc-kbd-loop): Use events instead of chars
20732         to keep track of steps.
20734 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
20736         Fix --enable-gcc-warnings problem with older GCC
20738         * src/puresize.h: Add INLINE_HEADER_BEGIN, INLINE_HEADER_END.
20739         This is for building with --enable-gcc-warnings with
20740         GCC 4.6 through 5.0.
20742 2015-10-10  Eli Zaretskii  <eliz@gnu.org>
20744         Fix vertical-motion in truncated lines that end in a stretch
20746         * src/indent.c (Fvertical_motion): Expect overshoot when point is
20747         beyond window margin and lines are truncated, even if we have a
20748         stretch at point.  (Bug#21468)
20750 2015-10-10  Eli Zaretskii  <eliz@gnu.org>
20752         Avoid link-time errors due to inline functions
20754         * src/emacs.c: Include puresize.h, to avoid link-time errors in
20755         unoptimized builds due to PURE_P and CHECK_IMPURE, which are now
20756         inline functions.
20758 2015-10-10  Andreas Schwab  <schwab@linux-m68k.org>
20760         * src/data.c (Faset): Fix last change.
20762 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
20764         CHECK_IMPURE and PURE_P speedup
20766         * src/intervals.c (create_root_interval):
20767         Do CHECK_IMPURE only for strings; not needed for buffers.
20768         Prefer ! STRINGP to BUFFERP, for a tad more speed.
20769         * src/puresize.h (CHECK_IMPURE, PURE_P):
20770         Now inline functions instead of macros.
20771         (PURE_P): Don’t use XPNTR; that is now the caller’s responsibility.
20772         All callers changed.
20773         (CHECK_IMPURE): New argument PTR, to save us the work of running XPNTR.
20774         All callers changed.
20776 2015-10-09  Noah Friedman  <friedman@splode.com>
20778         (tramp-open-connection-setup-interactive-shell): Send -onlcr as well.
20780 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
20782         * lisp/progmodes/cc-mode.el (c-after-font-lock-init): Only *move*
20784         our after-change-function, rather than re-adding it if it was removed.
20786 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
20788         * lisp/cedet/ede: Silence some compiler warnings
20790         * lisp/cedet/ede.el: Require cl-lib.  Silence some compiler warnings.
20791         (ede-menu-obj-of-class-p): Use cl-some rather than `eval'.
20792         (ede-apply-object-keymap, ede-reset-all-buffers)
20793         (ede-auto-add-to-target): Use dolist.
20794         (ede-new, ede-flush-deleted-projects, ede-global-list-sanity-check):
20795         Use field names rather than initarg names in `oref'.
20796         (ede-load-project-file): Remove unused var `file'.
20797         (ede-map-any-target-p): Use cl-some rather than ede-map-targets.
20798         (ede-set): Remove unused var `a'.
20800         * lisp/cedet/ede/emacs.el: Silence some compiler warnings.
20801         (ede-project-autoload): Avoid the old-style "name" argument.
20802         (ede-emacs-find-matching-target): Use field names rather than initarg
20803         names in `oref'.
20805         * lisp/cedet/ede/linux.el: Silence some compiler warnings.
20806         (ede-linux-load, ede-project-autoload): Avoid the old-style
20807         "name" argument.
20808         (ede-linux-find-matching-target): Use field names rather than initarg
20809         names in `oref'.
20811 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
20813         * lisp/textmodes/reftex.el: Silence byte-compiler warnings.
20815 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
20817         * lisp/progmodes/prolog.el (prolog-smie-rules): Try and avoid
20818         indenting too far after ":-".
20820 2015-10-09  Eli Zaretskii  <eliz@gnu.org>
20822         Update case-table and categories of recently added characters
20824         * lisp/international/characters.el: Update information about Latin
20825         Extended-C, Latin Extended-D, Latin Extended-E, Cyrillic Extended,
20826         Georgian, Glagolitic, Deseret, Old Hungarian, and Warang Citi
20827         blocks.  (Byug#21654)
20829 2015-10-09  Martin Rudalics  <rudalics@gmx.at>
20831         * src/frame.c (adjust_frame_size): In minibuffer-only windows
20832         don't count minibuffer height twice.  (Bug#21643)
20834 2015-10-09  Eli Zaretskii  <eliz@gnu.org>
20836         Avoid inflooping in font-lock
20838         * lisp/font-lock.el (font-lock-extend-region-wholelines): Bind
20839         inhibit-field-text-motion around the call to
20840         line-beginning-position, to avoid inflooping.  (Bug#21615)
20842 2015-10-09  Tassilo Horn  <tsdh@gnu.org>
20844         Refactor duplicated code; ensure default is in completions
20846         * lisp/textmodes/reftex-cite.el (reftex--query-search-regexps):
20847         New function.
20848         (reftex-extract-bib-entries): Use it.
20849         (reftex-extract-bib-entries-from-thebibliography): Use it.
20851 2015-10-09  Vincent Belaïche  <vincentb1@users.sourceforge.net>
20853         * doc/misc/autotype.texi (Skeletons as Abbrevs): "if" -> "ifst"
20854         in the example.
20856 2015-10-08  Stefan Monnier  <monnier@iro.umontreal.ca>
20858         * lisp/calc/calc.el: Silence byte-compiler warnings.
20859         (calc-scan-for-dels): Use ignore-errors.
20860         (calc-dispatch, calc-do-dispatch): Make unused arg optional.
20861         (calc-read-key-sequence): Remove unused var `prompt2'.
20862         (calc-kill-stack-buffer): Remove unused var `buflist'.
20863         (calc): Remove unused var `oldbuf'.
20864         (calc-refresh): Use inhibit-read-only.
20865         (calc-can-abbrev-vectors): Declare.
20866         (calc-record): Remove unused var `mainbuf'.
20867         (math-sub-bignum): Remove unused var `sum'.
20868         (math-svo-c, math-svo-wid, math-svo-off): Declare.
20870 2015-10-08  Daiki Ueno  <ueno@gnu.org>
20872         Use g_clear_error instead of g_error_free
20874         * src/image.c: Define g_clear_error instead of g_error_free.
20875         (init_svg_functions): Resolve symbol g_clear_error instead of
20876         g_error_free.
20877         (svg_load_image): Use g_clear_error instead of g_error_free, to
20878         suppress GLib warnings when ERR is not set.  See bug#21641.
20880 2015-10-08  Paul Eggert  <eggert@cs.ucla.edu>
20882         * src/image.c (image_size_error): Simplify.
20884 2015-10-08  Paul Eggert  <eggert@cs.ucla.edu>
20886         Fix problems caught with --enable-gcc-warnings
20888         * src/image.c (lookup_rgb_color):
20889         * src/xfns.c (x_defined_color):
20890         * src/xterm.c (x_parse_color):
20891         Remove unused locals.
20893 2015-10-08  Jay Belanger  <jay.p.belanger@gmail.com>
20895         * lisp/calc/calc.el (calc-digit-start-entry): Fix typo.
20897 2015-10-08  Jay Belanger  <jay.p.belanger@gmail.com>
20899         Format initial input uniformly
20901         * lisp/calc/calc.el (calc-digit-start-entry): New function.
20902         * lisp/calc/calc.el (calcDigit-start):
20903         * lisp/calc/calc-aent.el (calc-alg-digit-entry):
20904         Use `calc-digit-start-entry' to format input.
20906 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
20908         Disable non-working pointerColor setting for X tooltip frame
20910         It generates a bunch of server traffic, but there's some bug wherein
20911         the new mouse cursor settings don't seem to get used.  In most
20912         situations the cursor isn't likely to be seen anyway, so it's not
20913         urgent to fix.
20915         * src/xfns.c (x_create_tip_frame): Don't set pointerColor.
20917 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
20919         Reduce some unnecessary X calls
20921         * src/xfns.c (x_real_pos_and_offsets): Remove a redundant XGetGeometry
20922         call.  If border width is wanted, get it from the XGetGeometry call
20923         instead of calling XGetWindowAttributes on the same window.  Skip some
20924         X calls if we've already detected an error from the X server.
20925         * src/xterm.c (x_wm_supports): Delete x_sync before x_had_errors_p.
20926         (handle_one_xevent): Delete XSync call before x_uncatch_errors.
20928 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
20930         Reduce color allocation/query traffic in the TrueColor case
20932         When working with an X visual with TrueColor class, pixel values can
20933         be generated from the RGB values according to mask value provided by
20934         the server on connection.  Some of the image-handling code was already
20935         doing this.
20937         * src/xterm.h (x_make_truecolor_pixel): New function; code taken from
20938         lookup_rgb_color.
20939         (x_mutable_colormap): New function.
20940         * src/image.c (lookup_rgb_color): Move pixel composition code to
20941         x_make_truecolor_pixel.
20942         (x_kill_gs_process): Call x_mutable_colormap.
20943         * src/xfaces.c (x_free_colors, x_free_dpy_colors): Call
20944         x_mutable_colormap.
20945         * src/xftfont.c (xftfont_get_colors): Call x_query_colors.
20946         * src/xterm.c (x_query_colors): For a TrueColor display, decompose the
20947         pixel value into RGB values directly, and don't send a request to the
20948         server.
20949         (x_alloc_nearest_color): For a TrueColor display, construct the pixel
20950         value with x_make_truecolor_pixel.
20951         (x_copy_color): For an immutable color map, just return the provided
20952         pixel value.
20954 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
20956         Cache XParseColor results in the X display info structure
20958         With repeated lookups of foreground and background colors for multiple
20959         faces per frame, we issue a lot of redundant color name lookups to the
20960         X server, waiting every time for the response.  On a remote network
20961         with, say, 30ms round-trip time, this can add nearly a full second to
20962         creation of a new frame.
20964         * src/gtkutil.c (xg_check_special_colors): Call x_parse_color.
20965         * src/image.c (get_spec_bg_or_alpha_as_argb):
20966         (xpm_init_color_cache, xpm_lookup_color):
20967         * src/xfns.c (x_defined_color):
20968         * src/xterm.c (x_parse_color): New function; caches color names not
20969         starting with "#" in the display-info structure.
20970         (x_delete_display): Delete the cache content.
20971         * src/xterm.h (struct color_name_cache_entry): New type.
20972         (x_parse_color): Declare.
20973         (struct x_display_info): Add a new field for the cache.
20975 2015-10-07  Stefan Monnier  <monnier@iro.umontreal.ca>
20977         * src/syntax.c (syms_of_syntax): Make syntax-propertize--done local.
20979 2015-10-07  Eli Zaretskii  <eliz@gnu.org>
20981         Fix segfault in image_size_error
20983         * src/image.c (image_size_error): Pass a Lisp string to
20984         image_error, not a C string.  (Bug#21641)
20986 2015-10-07  Simen Heggestøyl  <simenheg@gmail.com>
20988         Highlight CSS variable definitions
20990         * lisp/textmodes/css-mode.el (css-nmstart-re): Tweak regexp to accept
20991         CSS variables.  (Bug#21638)
20993 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
20995         * test/automated/tabulated-list-test.el: New file.
20996         Test bug#21639 and some basic functionality.
20998 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
21000         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-sort):
21001         Check if column can be sorted before trying.  (Bug#21639)
21003 2015-10-07  Nicolas Richard  <youngfrog@members.fsf.org>
21005         Add test for `self-insert-command' (bug#21633)
21007         * test/automated/cmds-tests.el: New file.
21009 2015-10-07  Martin Rudalics  <rudalics@gmx.at>
21011         * src/window.c (resize_frame_windows): Don't set root window's
21012         top position when resizing horizontally.
21014 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
21016         * lisp/progmodes/prog-mode.el (prettify-symbols-alist):
21017         Document more possible values.
21019 2015-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
21021         * lisp/textmodes/tex-mode.el: Use lexical-binding.
21023 2015-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
21025         * lisp/indent.el (indent--default-inside-comment): New function.
21026         (indent-for-tab-command): Use it for `noindent' indentation.
21028 2015-10-06  Paul Eggert  <eggert@cs.ucla.edu>
21030         Fix bug in GC_CHECK_MARKED_OBJECTS check
21032         * src/alloc.c (mark_object): Fix bug in checking code.
21033         When GC_CHECK_MARKED_OBJECTS is defined, the bug caused
21034         CHECK_ALLOCATED_AND_LIVE_SYMBOL to repeatedly do the
21035         CHECK_ALLOCATED and CHECK_LIVE tests for the first symbol in each
21036         bucket.  The bug did not affect behavior either in the normal case
21037         where GC_CHECK_MARKED_OBJECTS is not defined, or where Emacs does
21038         not have an internal error that a properly-written
21039         CHECK_ALLOCATED_AND_LIVE_SYMBOL would detect.
21041 2015-10-06  Tassilo Horn  <tsdh@gnu.org>
21043         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
21044         Add prettified version for \\Bbb{Q}.
21046 2015-10-06  Artur Malabarba  <bruce.connor.am@gmail.com>
21048         * test/automated/package-test.el (package-test-install-single):
21049         Add a test for bug#21625.
21051 2015-10-06  Aaron Ecay  <aaronecay@gmail.com>
21053         * lisp/emacs-lisp/package.el (package-install): Fix error when pkg is
21054           not a package-desc object.  Also clarify documentation.  (Bug#21625)
21056 2015-10-06  Eli Zaretskii  <eliz@gnu.org>
21058         Fix display of characters adjacent to ZWJ and ZWNJ
21060         * src/bidi.c (bidi_resolve_neutral): Treat all Bn (a.k.a. "control")
21061         characters the same as directional formatting controls.
21062         (bidi_level_of_next_char): Include all Bn characters in rule L1,
21063         as mandated by the UBA.
21065 2015-10-06  Andreas Schwab  <schwab@suse.de>
21067         * src/cmds.c (Fself_insert_command): Don't use XFASTINT on a negative
21068         number.  (Bug#21633)
21070 2015-10-05  Xue Fuqiao  <xfq.free@gmail.com>
21072         * doc/lispref/objects.texi (Window Type): Add a cross reference.
21074         * src/buffer.c (syms_of_buffer): Typo fix.  (Bug#21622)
21076 2015-10-05  Eli Zaretskii  <eliz@gnu.org>
21078         * lisp/language/misc-lang.el (composition-function-table):
21079         Fix entries for Arabic and Syriac.
21081 2015-10-05  Damien Cassou  <damien@cassou.me>
21083         Add first unit tests for auth-source.el
21085         * test/automated/auth-source-tests.el: New file.
21087 2015-10-05  Eli Zaretskii  <eliz@gnu.org>
21089         Remove redundant redisplay code
21091         * src/xdisp.c (redisplay_internal, try_cursor_movement)
21092         (try_window_reusing_current_matrix, try_window_id): Remove
21093         redundant restrictions on redisplay optimizations based on the
21094         frame's 'redisplay' flag.  See
21095         http://osdir.com/ml/general/2015-10/msg02110.html for the relevant
21096         discussions.
21098 2015-10-04  Stefan Monnier  <monnier@iro.umontreal.ca>
21100         * src/xdisp.c (windows_or_buffers_changed): Improve docstring.
21102 2015-10-04  Xue Fuqiao  <xfq.free@gmail.com>
21104         Update tutorials/TUTORIAL.cn
21106         * etc/tutorials/TUTORIAL.cn: Improve translation.
21108 2015-10-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
21110         * src/macfont.m (macfont_encode_char, syms_of_macfont):
21111         Remove unused vars.
21113 2015-10-04  Stefan Merten  <stefan@merten-home.de>
21115         Pull in version numbers from rst.el upstream release.
21117         * lisp/textmodes/rst.el (rst-cvs-header, rst-svn-rev)
21118         (rst-svn-timestamp, rst-official-version)
21119         (rst-official-cvs-rev, rst-package-emacs-version-alist):
21120         Update version numbers.
21122 2015-10-04  Eli Zaretskii  <eliz@gnu.org>
21124         * test/automated/coding-tests.el: New file.
21126 2015-10-04  Michael Albinus  <michael.albinus@gmx.de>
21128         Improve XEmacs compatibility of Tramp
21130         * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
21131         Declare if it doesn't exist.
21132         (file-remote-p): Remove defalias, which was necessary for GNU Emacs 21.
21133         (redisplay): Make it an alias if it doesn't exist.
21135         * lisp/net/tramp.el (tramp-get-remote-tmpdir): Don't use
21136         `file-remote-p' (due to XEmacs compatibility).
21138         * lisp/net/trampver.el (locate-dominating-file)
21139         (tramp-compat-replace-regexp-in-string): Autoload.
21140         (tramp-repository-get-version): Do not dupe byte-compiler.
21142 2015-09-02  K. Handa  <handa@gnu.org>
21144         fix for the case that M17N_FLT_USE_NEW_FEATURE is not defined
21146         * src/ftfont.c (ftfont_drive_otf) [not M17N_FLT_USE_NEW_FEATURE]:
21147         Adjusted for the change of type of elements in the array
21148         MFLTGlyphString.glyphs.
21150 2015-10-04  Eli Zaretskii  <eliz@gnu.org>
21151             Michael Heerdegen  <michael_heerdegen@web.de>
21153         shr: fix too long lines in rendered buffers (Bug#21012)
21155         * lisp/net/shr.el (shr-insert-document, shr-fill-text):
21156         Correct calculation of available width.
21157         (shr-find-fill-point): Don't overflow window edge if shr-kinsoku-shorten
21158         is nil.
21160 2015-10-04  Vincent Belaïche  <vincentb1@users.sourceforge.net>
21162         Restore blank line before next section, erroneously erased
21163         in my previous commit
21165         * etc/compilation.txt (symbol ant): Add an additional trailing blank
21166         line to this section, so that there are two of them immediately before
21167         the next section.
21169 2015-10-04  Vincent Belaïche  <vincentb1@users.sourceforge.net>
21171         Support MSW filename style for ant compilation error regexp
21173         * etc/compilation.txt (symbol ant):
21174         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
21175         Support MSW filename style.
21177 2015-10-03  Paul Eggert  <eggert@cs.ucla.edu>
21179         * nt/INSTALL: Minor spelling and quote fixes.
21181         * lisp/ibuffer.el: Fix docstring length (Bug#21541).
21183 2015-10-03  Simen Heggestøyl  <simenheg@gmail.com>
21185         Maintain ordering of JSON object keys by default
21187         * lisp/json.el (json-object-type): Mention order handling in doc-string.
21188         (json--plist-reverse): New utility function.
21189         (json-read-object): Maintain ordering for alists and plists.
21190         (json-pretty-print): Ensure that ordering is maintained.
21192         * test/automated/json-tests.el (test-json-plist-reverse): New test for
21193         `json--plist-reverse'.
21194         (json-read-simple-alist): Update test to accommodate for changes in
21195         `json-read-object'.
21197         * etc/NEWS: Document the new behavior of the pretty printing functions.
21199 2015-10-03  Andreas Schwab  <schwab@linux-m68k.org>
21201         * src/coding.c (complement_process_encoding_system): Revert last change.
21203 2015-10-03  Ulf Jasper  <ulf.jasper@web.de>
21205         * admin/MAINTAINERS: Add entry for Ulf Jasper.
21207 2015-10-03  Xue Fuqiao  <xfq.free@gmail.com>
21209         Doc fix for `defmacro'
21211         * doc/lispref/objects.texi (Macro Type): `defmacro' is a macro now.
21213 2015-10-03  Andreas Schwab  <schwab@linux-m68k.org>
21215         More validatation of coding systems
21217         * src/fileio.c (Finsert_file_contents): Remove redundant
21218         coding-system check.
21219         (choose_write_coding_system): Likewise.
21220         * src/coding.c (complement_process_encoding_system): Check argument
21221         for valid coding system.
21223 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
21225         Avoid crashes in coding_inherit_eol_type
21227         * src/coding.c (coding_inherit_eol_type): Check the validity of
21228         the arguments.  Suggested by Andreas Schwab <schwab@linux-m68k.org>.
21229         (Bug#21602)
21231 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
21233         More validatation of coding system in 'write-region'
21235         * src/coding.c (choose_write_coding_system): More validation of
21236         coding-system from various sources.  Suggested by Andreas Schwab
21237         <schwab@linux-m68k.org>.  (Bug#21602)
21239 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
21241         Avoid crashes due to invalid coding-system
21243         * src/fileio.c (choose_write_coding_system)
21244         (Finsert_file_contents): Check validity of coding-system-for-write
21245         and coding-system-for-read bound by the caller.  (Bug#21602)
21247 2015-10-03  Tassilo Horn  <tsdh@gnu.org>
21249         Adapt to new prettify-symbols-unprettify-at-point default
21251         * etc/NEWS: Mention that unprettication of symbol at point is off
21252         by default.
21254 2015-10-03  Tassilo Horn  <tsdh@gnu.org>
21256         Revert my two recent process.c changes
21258         Revert "Improve last commit to process.c" and "Remove callback-handled
21259         channels from Available set" because they did not fix bug#21313.
21261         This reverts commits bfa1aa8e2bdaf14adbbf1e9e824051d3f740694c and
21262         27f871907cc24f33a7d12ac3a4ab71a88f0bc554.
21264 2015-10-02  Markus Triska  <triska@metalevel.at>
21266         * lisp/progmodes/prolog.el: Update and extend operator table.
21267         (prolog-smie-grammar): Add multifile, public etc.
21269 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
21271         Allow autogen even when Git is not installed
21273         * autogen.sh: Test ‘git status’ before trying to use Git.
21275 2015-10-02  Stefan Monnier  <monnier@iro.umontreal.ca>
21277         * lisp/vc/vc-git.el (vc-git-region-history): Handle local changes.
21278         Adjust lto/lfrom when we have uncommitted changes.
21280 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
21282         Fix problems found by clang 3.5.0
21284         * src/cmds.c (Fdelete_char): Don’t assume XINT returns int.
21285         * src/font.c (font_parse_family_registry):
21286         Use &"str"[X] instead of "str"+X, to pacify clang -Wstring-plus-int.
21288 2015-10-02  Eli Zaretskii  <eliz@gnu.org>
21290         * nt/INSTALL: Update instructions for running autogen.sh.
21292         * nt/INSTALL: Point to ezwinports for libXpm binaries.
21294 2015-10-02  Daniel Colascione  <dancol@dancol.org>
21296         Fix winner in cl-lib not loaded case
21298         * lisp/winner.el (winner-change-fun): Don't use cl-lib functions
21299         without requiring CL
21301 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
21303         Fix a few problems with directed quotes
21305         This is in response to a problem report by Kaushal Modi in:
21306         http://bugs.gnu.org/21588#25
21307         * lisp/cedet/mode-local.el (describe-mode-local-overload):
21308         * lisp/emacs-lisp/bytecomp.el (byte-compile-fix-header):
21309         * lisp/info-xref.el (info-xref-check-all-custom):
21310         * lisp/mail/emacsbug.el (report-emacs-bug-hook):
21311         Prefer directed to undirected single quotes in diagnostics.
21313 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
21315         Revert "Attempt to fix slow redisplay caused by last changes"
21317         * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
21318         (try_cursor_movement): Don't relax requirements for redisplay
21319         optimizations for the selected frame.  (Bug#21597)
21321         This reverts commit c4c1fb97727ff52bcfa83ad5ed94a64a93d12e59.
21323 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
21325         Fix slow redisplay when daemon frame exists
21327         * src/xdisp.c (redisplay_internal): Don't consider daemon frames
21328         when looking for frames that need to be redisplayed.  (Bug#21597)
21330 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
21332         Attempt to fix slow redisplay caused by last changes
21334         * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
21335         (try_cursor_movement): Relax requirements for redisplay
21336         optimizations for the selected frame.  (Bug#21597)
21338 2015-10-01  Stephen Leake  <stephen_leake@stephe-leake.org>
21340         * src/dired.c (Ffile_name_completion, Ffile_name_all_completions):
21341         Improve doc string.
21343 2015-10-01  Stephen Leake  <stephen_leake@stephe-leake.org>
21345         * lisp/minibuffer.el (minibuffer-completion-help):
21346         Set default base-size, in case completion table does not set it.
21348 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
21350         Fix GUD display of GDB output with non-ASCII text
21352         * lisp/progmodes/gdb-mi.el (gdb-mi-decode-strings): New defcustom.
21353         (gdb-mi-decode): New function.
21354         (gud-gdbmi-marker-filter): If gdb-mi-decode-strings is non-nil,
21355         decode octal escapes in GDB output.  (Bug#21572)
21357 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
21359         * nt/INSTALL: Document where to find XPM support files.
21361 2015-10-01  Tassilo Horn  <tsdh@gnu.org>
21363         Un- and re-prettification are not exclusive
21365         * lisp/progmodes/prog-mode.el (prettify-symbols--post-command-hook):
21366         Re-apply prettification to previous symbol also when unprettifying
21367         next one.
21369 2015-10-01  Tassilo Horn  <tsdh@gnu.org>
21371         Don't unprettify symbol at point by default
21373         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
21374         Default to disabled (nil).
21376 2015-09-30  Artur Malabarba  <bruce.connor.am@gmail.com>
21378         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
21379         Support unprettifying when point is after a symbol.
21381         * etc/NEWS: Document `prettify-symbols-unprettify-at-point'.
21383 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
21385         Avoid assertion violations in push_prefix_prop
21387         * src/xdisp.c (push_prefix_prop): Avoid assertion violations when
21388         a line that has a line-prefix defined starts with an image.  (Bug#21428)
21390 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
21392         Disable some display optimizations when frames need redisplay
21394         These optimizations were previously disabled by the
21395         windows_or_buffers_changed flag, which now is not set
21396         when only some frames need to be redrawn.
21397         * src/xdisp.c (redisplay_internal): Redisplay any frame whose
21398         'redisplay' flag is set.
21399         (try_window_reusing_current_matrix, try_window_id)
21400         (try_cursor_movement): Disable these optimizations when the
21401         frame's 'redisplay' flag is set.
21403 2015-09-30  Tassilo Horn  <tsdh@gnu.org>
21405         Don't modify buffer by unprettification
21407         * lisp/progmodes/prog-mode.el (prettify-symbols--compose-symbol):
21408         (prettify-symbols--post-command-hook, prettify-symbols-mode): Don't
21409         modify buffer when setting/removing custom prettify-symbols-start/end
21410         text properties.  Add them to font-lock-extra-managed-props, too.
21412 2015-09-30  Stefan Monnier  <monnier@iro.umontreal.ca>
21414         Try to avoid redisplaying all frames when creating a new one
21416         * src/xfns.c (x_set_menu_bar_lines, x_change_tool_bar_height):
21417         * src/xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
21418         (Finternal_set_lisp_face_attribute, update_face_from_frame_parameter):
21419         * src/frame.c (x_set_screen_gamma): Set the specific frame's
21420         `redisplay' bit rather than windows_or_buffers_changed.
21422         * src/window.c (apply_window_adjustment): Remove redundant setting of
21423         windows_or_buffers_changed.
21425         * src/xdisp.c (redisplay_internal): Set the specific frame's
21426         `redisplay' bit rather than update_mode_lines in response to
21427         cursor_type_changed.
21428         (syms_of_xdisp): Use hash-tables for redisplay_*_cause tables.
21429         (AINC): Adjust accordingly.
21431 2015-09-30  Tassilo Horn  <tsdh@gnu.org>
21433         Implement unprettification of symbol at point
21435         * lisp/progmodes/prog-mode.el: Implement feature for unprettifying the
21436         symbol at point.
21437         (prettify-symbols--current-symbol-bounds): New variable.
21438         (prettify-symbols--post-command-hook): New function.
21439         (prettify-symbols-unprettify-at-point): New defcustom.
21440         (prettify-symbols-mode): Use it.
21441         (prettify-symbols--compose-symbol): Use them.
21443 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
21445         * src/macfont.m (mac_font_descriptor_supports_languages):
21446         Regard "zh" as synonym of "zh-Hans".
21448 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
21450         Work around crash when displaying etc/HELLO on OS X 10.11
21452         * src/macfont.m (mac_font_get_weight)
21453         (mac_font_descriptor_get_adjusted_weight): New functions.
21454         (macfont_store_descriptor_attributes): Adjust weight.
21456 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
21458         * src/macfont.m: Fix compilation with USE_CT_GLYPH_INFO.
21460 2015-09-30  Nicolas Petton  <nicolas@petton.fr>
21462         * lisp/arc-mode.el (archive-rar-summarize): Better alignment
21463         of the columns.
21465 2015-09-30  Nicolas Petton  <nicolas@petton.fr>
21467         Use unar and lsar to handle RAR archives in arc-mode
21469         * lisp/arc-mode.el (archive-rar-extract, archive-extract-by-file): Rely
21470         on unar and lsar instead of unrar-free for RAR archives (bug#17663).
21472 2015-09-30  Wieland Hoffmann  <themineo@gmail.com>  (tiny change)
21474         Clarify :create in auth-source's docs
21476         * lisp/gnus/auth-source.el (auth-source-search):
21477         Clarify :create's meaning.
21479 2015-09-30  Phil Sainty  <psainty@orcon.net.nz>
21481         Avoid empty -path arguments in rgrep
21483         * lisp/progmodes/grep.el (rgrep-default-command): Remove nil from
21484         the list produced according to grep-find-ignored-directories,
21485         before passing it to Find/Grep invocation.  (Bug#21548)
21487 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
21489         Clarify documentation of pos-visible-in-window-p
21491         * src/window.c (Fpos_visible_in_window_p): Clarify the meaning of
21492         t for POS.  See
21493         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg01040.html
21494         for the original report.
21496         * doc/lispref/windows.texi (Window Start and End): Clarify the
21497         meaning of t for the POSITION argument of pos-visible-in-window-p.
21499 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
21501         * lisp/progmodes/prolog.el: Fix various indentation cases.
21502         (prolog-operator-chars): New const (add \\).
21503         (prolog-smie-forward-token, prolog-smie-backward-token): Use it.
21504         (prolog-smie-rules): Add rules according to bug#21526.
21506 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
21508         * lisp/progmodes/sh-script.el: Old "dumb" continued line indent.
21509         (sh-indent-after-continuation): Add new value `always' (bug#17620)
21510         (sh-smie-sh-rules): Remove old handling of continued lines.
21511         (sh-smie--indent-continuation): New function.
21512         (sh-set-shell): Use it.
21514 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
21516         * lisp/progmodes/octave.el: Use grammar more; Handle enumeration fun.
21517         Remove redundant :group keyword args.
21518         (octave-begin-keywords, octave-else-keywords, octave-end-keywords):
21519         Remove variables.
21520         (octave-operator-table, octave-smie-bnf-table): Use let-when-compile to
21521         turn them into compile-time variables.
21522         Auto-generate the "foo ... end" rules from the "foo ... endfoo" rules.
21523         Add rules for break, continue, return, global, and persistent.
21524         Refine the rule for "until".
21525         (octave-smie--funcall-p, octave-smie--end-index-p)
21526         (octave-smie--in-parens-p): New functions.
21527         (octave-smie-backward-token, octave-smie-forward-token): Use them to
21528         distinguish the "enumeration" function and the "end" index from
21529         their corresponding keywords.
21530         (octave--block-offset-keywords): New constant.
21531         (octave-smie-rules): Use it.  Adjust rules for new global/persistent
21532         parsing.
21533         (octave-reserved-words): Redefine using octave-smie-grammar.
21534         (octave-font-lock-keywords): Use octave-smie--funcall-p and
21535         octave-smie--end-index-p.
21537 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
21539         * lisp/emacs-lisp/lisp-mode.el (let-when-compile): Work like let*.
21541 2015-09-29  Eli Zaretskii  <eliz@gnu.org>
21543         * nt/INSTALL: Remove references to GTK site.
21544         That site no longer offers Windows downloads.
21546 2015-09-29  Eli Zaretskii  <eliz@gnu.org>
21548         * nt/INSTALL: Add instructions for installing Git.
21550 2015-09-29  Katsumi Yamaoka  <yamaoka@jpl.org>
21552         * lisp/net/shr.el (shr-colorize-region): Allow 88-color tty to
21553         use colors.  Suggested by Eli Zaretskii.
21555 2015-09-28  Katsumi Yamaoka  <yamaoka@jpl.org>
21557         * lisp/net/shr.el (shr-colorize-region): Don't do it on a system
21558         not supporting 256 above colors (bug#21557).
21560 2015-09-28  Dmitry Gutov  <dgutov@yandex.ru>
21562         Revert "Don't rely on defaults in decoding UTF-8 encoded Lisp files"
21564         This reverts commit db828f62f6f17414fbbc3206dac123dc73dd6055.
21566 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
21568         Add documentation for seq.el
21570         * doc/lispref/sequences.texi: Add documentation regarding extending
21571         seq.el, as well as missing documentation for seq-elt, seq-length, seq-p,
21572         seq-do and seq-map.
21574 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
21576         Better documentation for seq-some
21578         * doc/lispref/sequences.texi:
21579         * lisp/emacs-lisp/seq.el: Update the documentation of seq-some to
21580         guarantee that the returned value is the first non-nil value that
21581         resulted from applying the predicate.
21583 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
21585         * lisp/arc-mode.el: Sharp-quote function arguments.
21587 2015-09-28  Eli Zaretskii  <eliz@gnu.org>
21589         Avoid redisplay error in ediff-regions-wordwise
21591         * lisp/vc/ediff-util.el
21592         (ediff-clone-buffer-for-region-comparison): Make sure the mark is
21593         set before activating it.  (Bug#21567)
21595 2015-09-28  Eli Zaretskii  <eliz@gnu.org>
21597         Another attempt to fix crashes due to prematurely freed faces
21599         * src/xdisp.c (redisplay_internal): Inhibit freeing of realized
21600         faces for as long as we might have desired matrices that reference
21601         those faces.  (Bug#21428)
21603 2015-09-28  Tassilo Horn  <tsdh@gnu.org>
21605         Add auctex development list email address
21607 2015-09-28  Tassilo Horn  <tsdh@gnu.org>
21609         * admin/MAINTAINERS: Add entries for AUCTeX team and myself.
21611 2015-09-28  Arash Esbati  <esbati@gmx.de>  (tiny change)
21613         Improve wrapfig package support and caption parsing
21615         * lisp/textmodes/reftex-vars.el (reftex-label-alist-builtin):
21616         Correct description string and add wraptable environment.
21617         (reftex-default-context-regexps): Improve caption regexp.
21619 2015-09-28  Anders Lindgren  <andlind@gmail.com>
21621         Respect value of frame_resize_pixelwise when handling fullscreen state
21623         * src/nsterm.m (handleFS): Respect frame_resize_pixelwise when
21624         setting size increments.
21626 2015-09-27  Michael Albinus  <michael.albinus@gmx.de>
21628         * src/gfilenotify.c (Fgfile_add_watch): Cleanup temporary variable.
21630 2015-09-27  Simen Heggestøyl  <simenheg@gmail.com>
21632         Add prettify-symbols-alist for js-mode
21634         * lisp/progmodes/js.el (js--prettify-symbols-alist): New defconst.
21635         (js-mode): Use it.
21637 2015-09-27  Eli Zaretskii  <eliz@gnu.org>
21639         * nt/subdirs.el: File deleted (no longer used).
21641 2015-09-26  Alan Mackenzie  <acm@muc.de>
21643         Fix follow-scroll-up/down, making them replacements for scroll-up/down
21645         1. Allow point to move between follow windows in scroll operations.
21646         2. Fix bug where `right-char' just before EOB caused spurious scrolling,
21647         when EOB was isolated in the last follow window.
21649         * lisp/follow.el (follow-fixed-window): New variable.
21650         (follow-get-scrolled-point): New function.
21651         (follow-scrol-up, follow-scroll-down): Add autoload cookies.
21652         Reformulate the code.  Put `scroll-command' properties on the functions.
21653         Correct minor errors in ...-down's doc string and code.
21654         (follow-calc-win-end): Amend incomplete doc string.  Use
21655         `pos-visible-in-window-p' to check whether EOB is in the window.
21656         (follow-estimate-first-window-start): Correct an off-by-1 error.
21657         (follow-adjust-window): Add handling for explicit scrolling operations.
21659 2015-09-26  Paul Eggert  <eggert@cs.ucla.edu>
21661         * admin/MAINTAINERS: Add self, plus list some more files
21662         sans maintaners.
21664 2015-09-26  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
21666         New DWIM commands for changing letter-case
21668         * lisp/simple.el (upcase-dwim, downcase-dwim, capitalize-dwim):
21669         New functions.  (Bug#21501)
21671 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
21673         * etc/PROBLEMS: Document problems with pasting on MS-Windows.
21675 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
21677         Make face realization be more frame-specific
21679         * src/frame.h (struct f): New flag face_change.
21680         * src/xfaces.c (Finternal_make_lisp_face)
21681         (Finternal_copy_lisp_face, Finternal_set_lisp_face_attribute)
21682         (update_face_from_frame_parameter): Set the face_change flag only
21683         for the frame whose faces are affected.
21684         * src/xdisp.c (init_iterator): If a frame's face_change flag is
21685         set, free faces only on that frame.
21686         (redisplay_internal): Disable "display optimization 1" if the
21687         frame's face_change flag is set.
21688         (redisplay_window): Don't allow skipping a window's redisplay if
21689         its frame's face_change flag is set.
21690         * src/frame.c (x_set_screen_gamma): Instead of calling
21691         Fclear_face_cache, call clear_face_cache and set
21692         windows_or_buffers_changed to a non-zero value.  This avoids
21693         setting the global face_change flag that triggers face realization
21694         on all frames and thorough redisplay of all of them.
21696         * lisp/term/tty-colors.el (tty-register-default-colors): Don't
21697         clear face cache if the selected frame is a GUI frame.
21699 2015-09-26  Tassilo Horn  <tsdh@gnu.org>
21701         Remove font-latex specific check
21703         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
21704         Use syntax-ppss data to identify verbatim contents.
21706 2015-09-25  Tassilo Horn  <tsdh@gnu.org>
21708         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
21709         Fix some false negatives.
21711 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
21713         Reorder Windows version in Emacs manifests
21715         * nt/emacs-x64.manifest:
21716         * nt/emacs-x86.manifest: Reorder Windows version from lowest to
21717         highest.
21719 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
21721         Update Emacs manifest files for Windows 10
21723         * nt/emacs-x86.manifest:
21724         * nt/emacs-x64.manifest: Declare compatibility with Windows 10.
21726 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
21728         Avoid non-ASCII decoding errors in C src files
21730         * src/nsterm.m:
21731         * src/lisp.h:
21732         * src/editfns.c:
21733         * src/doprnt.c: Add 'coding' cookies -- these files include
21734         Unicode characters and should be decoded as UTF-8.
21736 2015-09-25  Alan Mackenzie  <acm@muc.de>
21738         Resurrect edebug-set-initial-mode, repurposing it to set the global mode
21740         * lisp/emacs-lisp/edebug.el (edebug-initial-mode-alist): Uncomment, and
21741         amend to match current modes and functions.
21742         (edebug-set-initial-mode): Uncomment and change from setting a defun's
21743         `edebug-initial-mode''s property to setting the variable
21744         `edebug-initial-mode'.
21745         (top level): Create new binding C-x C-a C-m for
21746         `edebug-set-initial-mode'.
21748         * doc/lispref/edebug.texi (Edebug Execution Modes): Document
21749         `edebug-set-initial-mode' and its new key binding.
21750         (Edebug Options): Mention the new command in the pertinent place.
21752         * etc/NEWS: Write entry for this change.
21754 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
21756         Avoid non-ASCII decoding errors in Texinfo files
21758         * doc/misc/tramp.texi:
21759         * doc/lispref/strings.texi:
21760         * doc/lispref/positions.texi:
21761         * doc/lispref/help.texi:
21762         * doc/lispref/functions.texi:
21763         * doc/lispintro/emacs-lisp-intro.texi:
21764         * doc/emacs/text.texi:
21765         * doc/emacs/modes.texi:
21766         * doc/emacs/mini.texi:
21767         * doc/emacs/display.texi:
21768         * doc/emacs/custom.texi:
21769         * doc/emacs/basic.texi: Add 'coding' cookies -- these files use
21770         Unicode characters and should be decoded as UTF-8.
21771         * doc/lispref/frames.texi (Size Parameters): Don't use a non-ASCII
21772         apostrophe unnecessarily.
21774 2015-09-25  Paul Eggert  <eggert@cs.ucla.edu>
21776         Merge from gnulib
21778         This incorporates:
21779         2015-09-25 c-ctype: rewrite to use inline functions
21780         2015-09-24 maint: add coding cookies to non-ASCII sources
21781         2015-09-24 gitlog-to-changelog: trim only trailing whitespaces
21782         * build-aux/gitlog-to-changelog, doc/misc/texinfo.tex:
21783         * lib/acl-internal.c, lib/acl-internal.h, lib/c-ctype.c:
21784         * lib/c-ctype.h, lib/get-permissions.c, lib/qcopy-acl.c:
21785         * lib/set-permissions.c:
21786         Copy from gnulib.
21788 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
21790         Update publicsuffix.txt from upstream
21792         * etc/publicsuffix.txt: Update from
21793         https://publicsuffix.org/list/effective_tld_names.dat
21794         dated 2015-09-24 17:29:21 UTC.
21796 2015-09-24  Eli Zaretskii  <eliz@gnu.org>
21798         Prevent timers from messing up TTY menus
21800         * src/term.c (tty_menu_activate): Inhibit redisplay for as long as
21801         the TTY menu is open.  (Bug#21530)
21803 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
21805         No need to mention K&R C in c-mode intro
21807 2015-09-24  Stefan Monnier  <monnier@iro.umontreal.ca>
21809         Fix recent bootstrap problems
21811         * src/syntax.c (parse_sexp_propertize): Fix last fix.
21812         * lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): Fix paren typo.
21813         * lisp/emacs-lisp/lisp-mode.el: Require cl-lib for cl-progv.
21815 2015-09-24  Michael Albinus  <michael.albinus@gmx.de>
21817         * src/gfilenotify.c (Fgfile_add_watch): Decrease polling rate.
21819 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
21821         Properly quote nested xml comments (Bug#6267) (Bug#20001)
21823         * lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): New function.
21824         (nxml-mode): Set comment-quote-nested-function.
21826 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
21828         Allow major-modes full control over quoting nested comments
21830         * lisp/newcomment.el (comment-quote-nested-function): New variable.
21831         (comment-quote-nested-default): New function.
21832         (comment-quote-nested): Use `comment-quote-nested-function'.
21834 2015-09-23  Paul Eggert  <eggert@cs.ucla.edu>
21836         Prefer CALLN in a few more places
21838         * src/macfont.m (macfont_set_family_cache):
21839         * src/nsterm.m (append2):
21840         * src/xterm.c (x_cr_export_frames):
21841         Prefer CALLN to allocating the arg arrays by hand.
21843 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
21845         Adapt file-notify-test02-events test case
21847         * test/automated/file-notify-tests.el (file-notify-test02-events):
21848         Create a new watch for every test.
21850 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
21852         Continue gfilenotify.c implementation of missing parts
21854         * lisp/filenotify.el (file-notify-add-watch): Append `flags' to
21855         `gfile-add-watch' call.
21856         (file-notify-rm-watch): Modify `file-notify-descriptors' only
21857         after calling the low level functions.
21859         * src/gfilenotify.c (dir_monitor_callback): Check, whether
21860         event_type is expected.
21861         (Fgfile_add_watch): Allow also `change'and `attribute-change' for FLAGS.
21862         (Fgfile_rm_watch): Fix typo.
21863         (syms_of_gfilenotify): Declare Qchange and Qattribute_change.
21865 2015-09-23  Stefan Monnier  <monnier@iro.umontreal.ca>
21867         * src/syntax.c (parse_sexp_propertize): Handle spurious
21868         e_property_truncated flag.
21869         (update_syntax_table_forward): Remove invalid assertion.
21871 2015-09-23  Eli Zaretskii  <eliz@gnu.org>
21873         * src/xdisp.c (produce_stretch_glyph): Support ':relative-width'
21874         space display spec on text-mode terminals, by calling
21875         PRODUCE_GLYPHS instead of x_produce_glyphs.  Remove the
21876         HAVE_WINDOW_SYSTEM guards from the supporting code, as well as the
21877         test for a GUI frame.
21879 2015-09-23  Oleh Krehel  <ohwoeowho@gmail.com>
21881         Move let-when-compile to lisp-mode.el
21883         This fixes the bootstrapping problem of `let-when-compile' using
21884         `cl-progv' while being in subr.el (i.e. before cl stuff was loaded).
21886 2015-09-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
21888         * lisp/url/url-http.el (url-http-parse-headers): Do not
21889         automatically include Authorization header in redirect.
21890         (Bug#21350)
21892 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
21894         Clarify documentation of ':relative-width'
21896         * doc/lispref/display.texi (Specified Space): Document that
21897         ':relative-width' is only supported on GUI frames.
21899 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
21901         Fix 'current-column' in presence of :relative-width
21903         * src/indent.c (check_display_width): Support ':relative-width'
21904         in a display spec that specifies a stretch glyph.  (Bug#21533)
21906 2015-09-22  Ken Manheimer  <ken.manheimer@gmail.com>
21908         Reformat the pdbtrack remote-file fix ChangeLog.2 entry
21910         ... to conform better to CONTRIBUTE guidelines.
21912 2015-09-22  Stefan Monnier  <monnier@iro.umontreal.ca>
21914         * lisp/progmodes/prolog.el: Fix indentation of empty line
21916         * lisp/emacs-lisp/smie.el (smie-rules-function): Document new
21917         `empty-line-token' element.
21918         (smie-indent-empty-line): New function.
21919         (smie-indent-functions): Add it.
21921         * lisp/progmodes/prolog.el (prolog-smie-rules): Fix :list-intro
21922         behavior and use the new `empty-line-token' element (bug#21526).
21923         (prolog-mode-variables): Fix comment-start-skip setting to match
21924         comment-start.
21926         * test/indent/prolog.prolog: Add nested indentation tests.
21928         * lisp/newcomment.el (comment-normalize-vars): Fix default value of
21929         comment-start-skip not to misuse submatch 1.
21931 2015-09-22  Alan Mackenzie  <acm@muc.de>
21933         Make description of `edebug-initial-mode' user friendly
21935         Fixes bug#21365.
21937         * doc/lispref/edebug.texi (Edebug Execution Modes): Change the
21938         description of `edebug-initial-mode' from that of its implementation
21939         to that of its visual effect and use.  Move the paragraph higher up.
21941 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
21943         lisp/progmodes/gud.el (gud-format-command): Fix last commit
21945         * lisp/progmodes/gud.el (gud-format-command): Don't use Tramp internal
21946         functions 'tramp-file-name-localname' and 'tramp-dissect-file-name'.
21948 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
21950         Improve last commit to process.c
21952 2015-09-22  Michael Albinus  <michael.albinus@gmx.de>
21954         Implement gfile-valid-p
21956         * lisp/filenotify.el (file-notify-callback): Fix typo.
21957         (gfile-valid-p): Remove defalias.
21959         * src/gfilenotify.c (dir_monitor_callback): Cancel the monitor if
21960         the file or directory to be watched is deleted.
21961         (Fgfile_add_watch): Make watch_object a triple.
21962         (Fgfile_rm_watch): Check, whether watch is cancelled already.
21963         (Fgfile_valid_p): New defun.
21964         (syms_of_gfilenotify): Declare Sgfile_valid_p.
21966 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
21968         Remove callback-handled channels from Available set
21970         * src/process.c (wait_reading_process_output): Remove channel from
21971         Available set if it is handled by a callback, e.g., dbus or
21972         inotify (bug#21313).
21974 2015-09-21  Mark Oteiza  <mvoteiza@udel.edu>
21976         Use lunate epsilon for TeX \epsilon
21978         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
21979         Add \varepsilon using GREEK SMALL LETTER EPSILON, and change
21980         \epsilon to use GREEK LUNATE EPSILON SYMBOL
21982 2015-09-21  Stefan Monnier  <monnier@iro.umontreal.ca>
21984         * lisp/progmodes/prolog.el: Fix nested electric if-then-else
21986         * lisp/progmodes/prolog.el (prolog-find-unmatched-paren): Use innermost
21987         rather than outermost paren (bug#21526).
21989 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
21991         Improve git diff hunk headers for .el, .texi
21993         Problem reported by Alan Mackenzie in:
21994         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00826.html
21995         * .gitattributes (*.el, *.texi): New patterns.
21996         * autogen.sh: Configure diff.elisp.xfuncname and
21997         diff.texinfo.xfuncname if using Git.
21999 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
22001         Don't rely on defaults in decoding UTF-8 encoded Lisp files
22003         * lisp/replace.el:
22004         * lisp/textmodes/rst.el:
22005         * lisp/whitespace.el: Add an explicit UTF-8 encoding tag.
22007 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
22009         Clarify or replace a few \u escapes
22011         * doc/lispref/nonascii.texi (Character Properties)
22012         More-detailed commentary for \u escapes.
22013         * lisp/progmodes/python.el (python--prettify-symbols-alist):
22014         * lisp/replace.el (query-replace-from-to-separator):
22015         * lisp/textmodes/rst.el (rst-bullets, rst-re-alist-def)
22016         (rst-mode-syntax-table):
22017         * lisp/whitespace.el (whitespace-display-mappings):
22018         Prefer actual character to \u escape when this makes the code
22019         easier to follow in the usual case where Unicode chars can be
22020         displayed.
22022 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
22024         Pacify GCC -Wmaybe-uninitialized in xdisp.c
22026         * src/xdisp.c (face_before_or_after_it_pos): Use do-while rather
22027         than while loop to avoid GCC -Wmaybe-uninitialized diagnostic with
22028         charpos.  The loop should always execute at least once anyway.
22030 2015-09-21  Tassilo Horn  <tsdh@gnu.org>
22032         Signal error on invalid regexp
22034         * lisp/textmodes/reftex-cite.el (reftex-extract-bib-entries):
22035         Signal an error when the user tries searching with a regexp
22036         matching the empty string.
22038 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
22040         Another fix of file-notify-tests for w32notify
22042         * test/automated/file-notify-tests.el (file-notify-test02-events):
22043         Further adaptation for w32notify: reduce the number of expected
22044         'changed' events.  (Bug#21435)
22046 2015-09-21  Michael Albinus  <michael.albinus@gmx.de>
22048         Adapt tests and manual for w32notify
22050         * doc/lispref/os.texi (File Notifications): w32notify does not
22051         send `attribute-changed' events.
22053         * test/automated/file-notify-tests.el (file-notify--test-with-events):
22054         Simplify parameters.  Adapt all callees.
22055         (file-notify-test02-events): w32notify does not send
22056         `attribute-changed' events.
22057         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
22058         Do not skip in case of w32notify.  Simply ignore this part of the test.
22060 2015-09-21  Dima Kogan  <dima@secretsauce.net>
22062         Fix setting breakpoints when remote-debugging
22064         * lisp/progmodes/gud.el (gud-format-command): Send localized file
22065         names to the debugger running on the remote.  (Bug#13304)
22067 2015-09-21  Nicolas Petton  <nicolas@petton.fr>
22069         Better docstring and parameter name for seq-find
22071         * lisp/emacs-lisp/seq.el (seq-find): Improve the docstring and rename
22072         the parameter `sentinel' to `default'.
22074         * doc/lispref/sequences.texi (Sequence Functions): Update the
22075           documentation for `seq-find' accordingly.
22077 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
22079         Avoid infinite recursion while displaying box face
22081         * src/xdisp.c (face_before_or_after_it_pos): Fix calculation of
22082         the previous string/buffer character position under bidi
22083         iteration.  (Bug#21428)
22085 2015-09-21  Anders Lindgren  <andlind@gmail.com>
22087         Keep upper edge unchanged when changing size of NS frame
22089         * src/nsterm.m (x_set_window_size): Keep upper frame edge unchanged
22090         (Bug#21415).
22092 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
22094         * lisp/progmodes/prolog.el: Improve handling of if/then/else.
22095         (prolog-smie-rules): Accommodate standard if/then/else special
22096         indentation.
22097         (prolog-mode): Add . to electric-indent-chars.
22098         (prolog-electric--if-then-else): Re-indent the line before adding space
22099         after the new char (bug#21526).
22101 2015-09-20  Mark Oteiza  <mvoteiza@udel.edu>
22103         Add prettify symbols to python-mode
22105         * lisp/progmodes/python.el (python-prettify-symbols-alist):
22106         New variable.
22107         (python-mode): Use it
22109 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
22111         * lisp/emacs-lisp/syntax.el (syntax-begin-function): Make obsolete.
22113 2015-09-20  Jostein Kjønigsen  <jostein@secure.kjonigsen.net>  (tiny change)
22115         (compilation-error-regexp-alist-alist): Tone down guile-file
22117         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
22118         Make guile-file a bit less enthusiastic (bug#21496).
22120 2015-09-20  Drew Csillag  <drew@thecsillags.com>
22122         * lisp/progmodes/m4-mode.el (m4-font-lock-keywords):
22123         Fix m4_* highlighting.
22125         * lisp/progmodes/m4-mode.el (m4-font-lock-keywords): Fix recognition
22126         of commands when they have a "m4_" prefix.
22128 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
22130         '.' -> `.' in doc string
22132         * lisp/emacs-lisp/timer.el (run-at-time): In doc string, quote
22133         individual chars with grave quotes instead of straight quotes, as
22134         this works better when they are translated to curved quotes.
22136 2015-09-20  Michael Albinus  <michael.albinus@gmx.de>
22138         Improve file notifications, especially for Tramp
22140         * doc/lispref/files.texi (Magic File Names):
22141         Mention `file-notify-valid-p'.
22143         * doc/lispref/os.texi (File Notifications):
22144         Describe `file-notify-valid-p'.
22146         * etc/NEWS: Add `file-notify-valid-p'.
22148         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-notify-add-watch):
22149         Improve implementation.
22150         (tramp-gvfs-monitor-file-process-filter): Rename from
22151         `tramp-gvfs-file-gvfs-monitor-file-process-filter'.  Delete
22152         process if appropriate.
22154         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
22155         Improve implementation.
22156         (tramp-sh-gvfs-monitor-dir-process-filter): Rename from
22157         `tramp-sh-file-gvfs-monitor-dir-process-filter'.  Delete process
22158         if appropriate.
22159         (tramp-sh-inotifywait-process-filter): Rename from
22160         `tramp-sh-file-inotifywait-process-filter'.  Delete process if
22161         appropriate.
22163         * lisp/net/tramp.el (tramp-handle-file-notify-rm-watch):
22164         Use `delete-process'.
22165         (tramp-handle-file-notify-valid-p): Check also, that file or
22166         directory to be watched still exists.
22168         * test/automated/file-notify-tests.el (file-notify--test-timeout):
22169         New defun.  Use it at all places a timeout is needed.
22170         (file-notify--test-cleanup): Delete directories recursively.
22171         Cleanup also Tramp connections.
22172         (file-notify-test02-events): Add tests for `attribute-change'.
22173         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
22174         Add tests for `file-notify-rm-watch'.
22176 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
22178         Use %s to format strings instead of splicing them
22180         If FOO might contain quotes that are part of a file or variable
22181         name, the quotes should not be translated when showing FOO’s name
22182         in a diagnostic.  So, for example, (message (concat (FOO ": bar")))
22183         is not quite right, as it would translate FOO’s quotes.
22184         Change it to (message "%s: bar" FOO) instead.
22185         * lisp/allout.el (allout-process-exposed):
22186         * lisp/calc/calc-ext.el (calc-do-prefix-help):
22187         * lisp/calc/calc-store.el (calc-store-into):
22188         * lisp/calendar/todo-mode.el (todo-category-completions):
22189         * lisp/cedet/semantic/complete.el (semantic-completion-message):
22190         * lisp/org/ob-latex.el (convert-pdf):
22191         * lisp/org/org-crypt.el (org-crypt-check-auto-save):
22192         * lisp/org/ox-latex.el (org-latex-compile):
22193         * lisp/org/ox-man.el (org-man-compile):
22194         * lisp/org/ox-odt.el (org-odt--export-wrap):
22195         * lisp/org/ox-texinfo.el (org-texinfo-compile):
22196         * lisp/progmodes/ruby-mode.el (ruby-in-ppss-context-p):
22197         * lisp/progmodes/verilog-mode.el (verilog-batch-execute-func)
22198         (verilog-signals-combine-bus, verilog-read-defines)
22199         (verilog-getopt-file, verilog-expand-dirnames)
22200         (verilog-modi-lookup, verilog-modi-modport-lookup-one):
22201         * lisp/term/ns-win.el (ns-spi-service-call):
22202         Use %s to avoid translating quotes of file names etc. in diagnostics.
22204 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
22206         * lisp/progmodes/js.el (js--syntax-begin-function): Remove.
22207         (js-mode): Don't set syntax-begin-function.
22209 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
22211         * lisp/font-lock.el (font-lock-compile-keywords): Don't assume
22212         syntax-begin-function is a symbol.
22214 2015-09-20  Eli Zaretskii  <eliz@gnu.org>
22216         Improve documentation of 'run-at-time'
22217         * lisp/emacs-lisp/timer.el (run-at-time): Improve the doc string.
22218         In particular, don't refer to 'diary-entry-time', because it is
22219         unavailable until diary-lib is loaded.  Also, refer to
22220         'timer-duration-words', not 'timer-duration', as the latter's doc
22221         string says nothing about the accepted strings.
22223 2015-09-19  Jay Belanger  <jay.p.belanger@gmail.com>
22225         * lisp/calc/calc-ext.el (calc-do-prefix-help): Tidy up error message.
22227 2015-09-19  Ken Manheimer  <ken.manheimer@gmail.com>
22229         Repair pdbtrack remote file tracking
22230         * lisp/progmodes/python.el (python-pdbtrack-set-tracked-buffer):
22231         Rectify pdbtrack so it follows transitions from one remote source
22232         file to the next.
22234 2015-09-19  Artur Malabarba  <bruce.connor.am@gmail.com>
22236         * lisp/emacs-lisp/timer.el (run-at-time): Docstring formatting.
22238 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
22240         Adapt vc-src to the old-new vc-checkin API
22241         * lisp/vc/vc-src.el (vc-src-checkin): Accept and ignore an
22242         additional optional parameter.
22244 2015-09-19  Simen Heggestøyl  <simenheg@gmail.com>
22246         Add overflow module to CSS property list
22247         * lisp/textmodes/css-mode.el (css-property-ids): Add properties
22248         from CSS Overflow Module Level 3.
22250 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
22252         Fix documentation of "C-u C-x v v"
22253         * doc/emacs/maintaining.texi (Advanced C-x v v): Make the
22254         documentation of "C-u C-x v v" match what the code does.
22256         Resurrect the ability to specify a revision in vc-next-action
22257         * lisp/vc/vc-bzr.el (vc-bzr-checkin):
22258         * lisp/vc/vc-dav.el (vc-dav-checkin):
22259         * lisp/vc/vc-git.el (vc-git-checkin):
22260         * lisp/vc/vc-hg.el (vc-hg-checkin):
22261         * lisp/vc/vc-mtn.el (vc-mtn-checkin): Accept and silently ignore
22262         an additional optional argument, the revision to checkin.
22263         * lisp/vc/vc-sccs.el (vc-sccs-checkin):
22264         * lisp/vc/vc-cvs.el (vc-cvs-checkin):
22265         * lisp/vc/vc-rcs.el (vc-rcs-checkin): Allow to optionally specify
22266         a revision to checkin.
22267         * lisp/vc/vc.el (vc-next-action): Allow to optionally specify the
22268         revision when checking in files.
22269         See http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00688.html
22270         for the details.
22272 2015-09-18  Wilson Snyder  <wsnyder@wsnyder.org>
22274         * lisp/progmodes/verilog-mode.el (verilog-forward-sexp-function)
22275         (verilog-decls-princ, verilog-modport-princ)
22276         (verilog-modi-modport-lookup-one): Fix checkdoc warnings.
22278 2015-09-17  Jay Belanger  <jay.p.belanger@gmail.com>
22280         Fix the routine for help on Calc's prefixes
22281         * lisp/calc/calc-ext.el (calc-prefix-help-retry): New variable.
22282         (calc-do-prefix-help): Use `read-char' to determine the next Calc
22283         command.
22285 2015-09-17  Stefan Monnier  <monnier@iro.umontreal.ca>
22287         * lisp/font-lock.el (font-lock-beginning-of-syntax-function): Remove.
22288         (font-lock-fontify-block): Don't let-bind it.
22289         (font-lock-compile-keywords): Don't use it.
22290         (font-lock-set-defaults): Don't set it.  Allow the variable alist to
22291         start one slot earlier, instead.
22292         * lisp/emacs-lisp/syntax.el (font-lock-beginning-of-syntax-function):
22293         Don't declare.
22294         (syntax-ppss): Don't use it either.
22295         * lisp/font-core.el (font-lock-defaults): Remove SYNTAX-BEGIN
22296         from docstring.
22297         * doc/emacs/display.texi (Font Lock): Don't mention
22298         font-lock-beginning-of-syntax-function.
22299         * doc/lispref/modes.texi (Font Lock Basics): Update description of
22300         font-lock-defaults.
22301         (Syntactic Font Lock): Remove font-lock-beginning-of-syntax-function.
22302         * lisp/loadhist.el (unload-feature-special-hooks):
22303         Remove font-lock-beginning-of-syntax-function.
22304         * lisp/obsolete/lazy-lock.el (lazy-lock-fontify-region):
22305         * lisp/emacs-lisp/lisp.el (beginning-of-defun-raw): Don't let-bind
22306         font-lock-beginning-of-syntax-function.
22308 2015-09-17  Paul Eggert  <eggert@cs.ucla.edu>
22310         Backslash cleanup in Elisp source files
22311         This patch should not change behavior.  It typically omits backslashes
22312         where they are redundant (e.g., in the string literal "^\$").
22313         In a few places, insert backslashes where they make regular
22314         expressions clearer: e.g., replace "^\*" (equivalent to "^*") with
22315         "^\\*", which has the same effect as a regular expression.
22316         Also, use ‘\ %’ instead of ‘\%’ when avoiding confusion with SCCS IDs,
22317         and similarly use ‘\ $’ instead of ‘\$’ when avoiding confusion with
22318         RCS IDs, as that makes it clearer that the backslash is intended.
22320         Some more minor backslash fixes
22321         * test/automated/compile-tests.el (compile-tests--test-regexps-data):
22322         * test/automated/info-xref.el (info-xref-test-write-file):
22323         Double backslashes in strings.
22325         Fix several backslash typos in Elisp strings
22326         * lisp/calendar/todo-mode.el (todo-files, todo-rename-file)
22327         (todo-find-filtered-items-file, todo-reset-nondiary-marker)
22328         (todo-reset-done-string, todo-reset-comment-string)
22329         (todo-reset-highlight-item):
22330         * lisp/erc/erc-networks.el (erc-networks-alist):
22331         * lisp/gnus/gnus-art.el (gnus-button-handle-library):
22332         * lisp/gnus/gnus-group.el (gnus-read-ephemeral-gmane-group-url):
22333         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
22334         (nntp-telnet-shell-prompt):
22335         * lisp/gnus/spam-report.el (spam-report-gmane-regex):
22336         * lisp/image-dired.el (image-dired-rotate-original):
22337         (image-dired-get-exif-file-name):
22338         * lisp/international/latin1-disp.el (latin1-display-ucs-per-lynx):
22339         * lisp/mail/undigest.el (rmail-digest-parse-rfc1153strict):
22340         * lisp/mh-e/mh-letter.el (mh-file-is-vcard-p):
22341         * lisp/mh-e/mh-mime.el (mh-file-mime-type-substitutions):
22342         * lisp/net/shr-color.el (shr-color->hexadecimal):
22343         * lisp/org/org-bibtex.el (org-bibtex-fields):
22344         * lisp/org/org-docview.el (org-docview-export):
22345         * lisp/org/org-entities.el (org-entities):
22346         * lisp/org/ox-icalendar.el (org-icalendar-cleanup-string):
22347         * lisp/progmodes/cperl-mode.el (cperl-indent-exp):
22348         * lisp/progmodes/ebnf2ps.el (ebnf-file-suffix-regexp)
22349         (ebnf-style-database):
22350         * lisp/progmodes/idlw-help.el (idlwave-do-context-help1):
22351         * lisp/progmodes/ruby-mode.el (ruby-imenu-create-index-in-block):
22352         * lisp/progmodes/sql.el (sql-product-alist):
22353         * lisp/progmodes/verilog-mode.el (verilog-error-regexp-emacs-alist)
22354         (verilog-error-font-lock-keywords)
22355         (verilog-assignment-operator-re):
22356         * lisp/progmodes/vhdl-mode.el (vhdl-compiler-alist):
22357         * lisp/textmodes/reftex-parse.el (reftex-parse-from-file):
22358         * lisp/vc/add-log.el (change-log-version-number-regexp-list):
22359         Fix typo by replacing ‘\’ with ‘\\’ in a string literal.
22360         For example, to get the regular expression ‘\.’ use the string
22361         literal "\\.", not "\." (which is equivalent to ".").
22362         * lisp/emulation/viper-util.el (viper-glob-unix-files):
22363         Remove stray ‘\j’ from string.
22364         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
22365         (nntp-telnet-shell-prompt):
22366         Treat > like $ when matching a shell prompt.
22367         * lisp/progmodes/make-mode.el (makefile-browse):
22368         Properly quote a diagnostic.
22370         Fix minor quoting problems in diagnostics
22371         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
22372         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
22373         Follow text-quoting-style in diagnostic, and quote a file name.
22375 2015-09-17  Eli Zaretskii  <eliz@gnu.org>
22377         * doc/lispref/frames.texi (Cursor Parameters):
22378         Document 'x-stretch-cursor'.
22380 2015-09-16  Paul Eggert  <eggert@cs.ucla.edu>
22382         Omit unnecessary \ before paren in C docstrings
22383         Although \( is needed in docstrings in Elisp code, it is not needed in
22384         docstrings in C code, since C function definitiions do not start with
22385         a parenthesis.  The backslashes made the docstrings a bit harder to
22386         read and to format in columns.  Also, some C docstrings had ( in
22387         column 1 and this did not appear to be causing any problems.  So,
22388         simplify C docstrings by replacing \( with ( and \) with ).
22390         A few more minor quoting fixes in a script and a text file
22392         Minor quoting fixes in scripts and doc
22393         Prefer straight quotes in random script files, as they are not
22394         converted.  Prefer grave quotes in a couple of places in the manual
22395         that were missed earlier, as these quotes are converted.
22397         Minor backslash fixes in manuals and scripts
22398         * Makefile.in (install-arch-indep):
22399         * admin/charsets/compact.awk:
22400         * admin/charsets/gb180302.awk (gb_to_index):
22401         * admin/charsets/gb180304.awk (gb_to_index):
22402         Avoid undefined behavior in Awk regular expression backslashes.
22403         * doc/misc/efaq.texi (Matching parentheses):
22404         Omit unnecessary backslashes.
22405         * doc/misc/gnus-faq.texi (FAQ 5-8):
22406         Avoid undefined behavior in suggested sed backslash usage.
22408         Add -Wswitch to --enable-gcc-warnings
22409         Make --enable-gcc-warnings a bit pickier, by also using -Wswitch.
22410         * configure.ac (WERROR_CFLAGS): Don’t add -Wno-switch.
22411         * lib-src/etags.c (main, consider_token, C_entries):
22412         * src/coding.c (encode_invocation_designation):
22413         * src/data.c (Ftype_of):
22414         * src/eval.c (Fdefvaralias, default_toplevel_binding)
22415         (Fbacktrace__locals, mark_specpdl):
22416         * src/lisp.h (record_xmalloc):
22417         * src/syntax.c (scan_lists, scan_sexps_forward):
22418         * src/window.c (window_relative_x_coord):
22419         * src/xdisp.c (push_it, pop_it):
22420         * src/xterm.c (xg_scroll_callback, x_check_fullscreen):
22421         Error out or do nothing (as appropriate) if a switch statement
22422         with an enum value does not cover all of the enum.
22423         * src/dispextern.h (struct iterator_stack_entry.u.comp):
22424         Remove unused member discovered by using -Wswitch.
22425         * src/lisp.h (record_xmalloc): Add a ‘+ 0’ to pacify -Wswitch.
22426         * src/vm-limit.c (check_memory_limits):
22427         Simplify warning-diagnostic computation by using a table.
22429         etags ‘fatal’ function is now printf-like
22430         * lib-src/etags.c (fatal): Now printf-like.  All callers changed.
22431         Also, now static; not clear why it needed to be extern.
22432         (verror): New function, with most of the old contents of ‘error’.
22433         (fatal, error): Use it.
22435 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
22437         More adaptations in file-notify-tests.el
22438         * test/automated/file-notify-tests.el
22439         (file-notify-test05-dir-validity): Skip for w32notify in
22440         batch-mode.  (Bug#21432)
22442 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
22444         Adapt test in file-notify-tests.el
22445         * test/automated/file-notify-tests.el
22446         (file-notify-test04-file-validity): Skip for w32notify in
22447         batch-mode.  Add test lost last commit.
22449 2015-09-16  Dima Kogan  <dima@secretsauce.net>
22451         winner no longer holds on to dead frames
22452         * lisp/winner.el (winner-change-fun): Cull dead frames.
22453         This prevents a potentially massive memory leak.  See:
22454         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00619.html
22456 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
22458         Use common report_file_notify_error function
22459         * src/fileio.c (report_file_notify_error): New function.
22460         * src/inotify.c (report_inotify_error): Remove function.
22461         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
22462         (Finotify_rm_watch): Use report_file_notify_error.
22463         * src/lisp.h (report_file_notify_error): Declare external function.
22464         * src/w32notify.c (report_w32notify_error): Remove function.
22465         (Fw32notify_add_watch, Fw32notify_rm_watch):
22466         Use report_file_notify_error.
22468 2015-09-16  Jay Belanger  <jay.p.belanger@gmail.com>
22470         Fix documentation.
22471         * doc/misc/calc.texi (Single-Variable Statistics): Fix the wording of
22472         the documentation of the root mean square.
22474 2015-09-16  Martin Rudalics  <rudalics@gmx.at>
22476         Remove tool_bar_redisplayed_once and associated code.
22477         * src/frame.h (tool_bar_redisplayed_once): Remove slot.
22478         * src/frame.c (make_frame, x_set_font): Remove initialization of
22479         f->tool_bar_redisplayed_once.
22480         * src/w32fns.c (x_change_tool_bar_height):
22481         * src/xfns.c (x_change_tool_bar_height): Don't check for
22482         f->tool_bar_redisplayed_once.
22483         * src/xdisp.c (redisplay_internal): Remove handling of
22484         f->tool_bar_redisplayed_once.
22486 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
22488         Restore some of the quoting in the manuals
22489         * doc/lispref/windows.texi (Coordinates and Windows)
22490         (Coordinates and Windows):
22491         * doc/lispref/variables.texi (Lexical Binding)
22492         (File Local Variables):
22493         * doc/lispref/text.texi (Format Properties):
22494         * doc/lispref/symbols.texi (Symbol Components):
22495         * doc/lispref/strings.texi (Creating Strings):
22496         * doc/lispref/sequences.texi (Sequence Functions):
22497         * doc/lispref/searching.texi (Regexp Special, Regexp Search)
22498         (Search and Replace):
22499         * doc/lispref/processes.texi (Bindat Spec):
22500         * doc/lispref/os.texi (Idle Timers):
22501         * doc/lispref/objects.texi (Basic Char Syntax):
22502         * doc/lispref/numbers.texi (Float Basics, Random Numbers):
22503         * doc/lispref/nonascii.texi (Character Properties):
22504         * doc/lispref/modes.texi (Major Mode Conventions, Mode Hooks)
22505         (Mode Line Variables):
22506         * doc/lispref/minibuf.texi (Text from Minibuffer):
22507         * doc/lispref/loading.texi (Autoload):
22508         * doc/lispref/keymaps.texi (Controlling Active Maps):
22509         * doc/lispref/frames.texi (Frame Layout, Size and Position)
22510         (Size Parameters, Implied Frame Resizing):
22511         * doc/lispref/files.texi (Changing Files, Magic File Names):
22512         * doc/lispref/eval.texi (Self-Evaluating Forms):
22513         * doc/lispref/display.texi (Progress, Abstract Display)
22514         (Abstract Display Example, Bidirectional Display):
22515         * doc/lispref/commands.texi (Event Mod):
22516         * doc/emacs/windows.texi (Displaying Buffers):
22517         * doc/emacs/trouble.texi (Bug Criteria, Checklist):
22518         * doc/emacs/text.texi (Enriched Text):
22519         * doc/emacs/programs.texi (MixedCase Words):
22520         * doc/emacs/picture-xtra.texi (Insert in Picture)
22521         (Tabs in Picture):
22522         * doc/emacs/misc.texi (Emacs Server, Printing):
22523         * doc/emacs/mini.texi (Minibuffer History):
22524         * doc/emacs/maintaining.texi (Old Revisions, VC Change Log)
22525         (Pulling / Pushing):
22526         * doc/emacs/killing.texi (Yanking, Cut and Paste, Clipboard):
22527         * doc/emacs/help.texi (Help, Help Echo):
22528         * doc/emacs/glossary.texi (Glossary):
22529         * doc/emacs/frames.texi (Mouse Commands, Creating Frames)
22530         (Frame Commands):
22531         * doc/emacs/files.texi (Reverting, Saving, Directories):
22532         * doc/emacs/entering.texi (Exiting):
22533         * doc/emacs/emacs.texi (Top):
22534         * doc/emacs/cmdargs.texi (Window Size X, Icons X):
22535         * doc/emacs/anti.texi (Antinews): Restore quoting of text where
22536         appropriate or replace quoting with @dfn.
22537         * doc/misc/ediff.texi (Window and Frame Configuration):
22538         * doc/lispref/processes.texi (Network Feature Testing):
22539         * doc/lispref/display.texi (Display Margins): Quote the phrase
22540         after "a.k.a." where appropriate.
22542 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
22544         Clarify reftex-extra-bindings docs
22545         * lisp/textmodes/reftex-vars.el (reftex-extra-bindings):
22546         * doc/misc/reftex.texi (Key Bindings): Document that the variable
22547         only has an effect at load-time.
22549 2015-09-16  Daniel McClanahan  <danieldmcclanahan@gmail.com>  (tiny change)
22551         * lisp/emacs-lisp/lisp-mode.el (lisp--el-match-keyword): Fix
22552         search argument.  (Bug#21492) (Bug#21493)
22554 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
22556         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
22557         Add pretty symbols for \qquad and \varrho.
22559 2015-09-15  Jay Belanger  <jay.p.belanger@gmail.com>
22561         Add new functions for the root mean square of a (Calc) vector
22562         * lisp/calc/calc-stat.el (calcFunc-rms, calc-vector-rms):
22563         New functions.
22564         * lisp/calc/calc-ext.el (calc-init-extensions): Add keybinding for
22565         `calc-vector-rms', add autoloads for `calc-vector-rms' and
22566         `calcFunc-rms'.
22567         * lisp/calc/calc-map.el (calc-u-oper-keys): Add entry for
22568         `calcFunc-rms'.
22569         * lisp/calc/calc-menu.el (calc-vectors-menu): Add entry for
22570         `calc-vector-rms'.
22571         * doc/misc/calc.texi (Single-Variable Statistics): Document the rms
22572         command.
22574 2015-09-15  Stephen Leake  <stephen_leake@stephe-leake.org>
22576         Add monotone EDE generic project
22577         * lisp/cedet/ede/generic.el (ede-enable-generic-projects):
22578         Add monotone generic project.
22580         Revert premature commit
22581         * doc/lispref/files.texi: Revert premature commit of change to
22582         file-name-all-completions.
22584         Fix a bug in elisp--xref-find-definitions related to cl-generic defaults
22585         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions): Fix bug
22586         with cl-generic defaults.
22587         (elisp--xref-find-references): Add doc string.
22588         * test/automated/elisp-mode-tests.el (xref-elisp-generic-*): Improve
22589         tests to find bug.
22591         Fix bugs in eieio-oref-default related to class symbols
22592         * lisp/emacs-lisp/eieio-core.el (class-p): Handle symbol properly.
22593         (eieio-oref-default): Handle class properly.
22595 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
22597         Quote “fullboth” when defining it
22598         * doc/lispref/frames.texi (Size Parameters): Use @dfn for “fullboth”
22599         and rewrite the containing paragraph, which was awkward.  (Bug#21472).
22601 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
22603         Minor doc fix in emacs/ack.texi
22604         * doc/emacs/ack.texi (Acknowledgments): Fix an xref missing the
22605         first argument.
22607 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
22609         Adapt tests in auto-revert-tests.el
22610         * test/automated/auto-revert-tests.el (auto-revert--timeout):
22611         Make it a defconst.
22612         (auto-revert--wait-for-revert): New defun.
22613         (auto-revert-test00-auto-revert-mode)
22614         (auto-revert-test01-auto-revert-tail-mode)
22615         (auto-revert-test02-auto-revert-mode-dired): Use it.
22617 2015-09-15  Stefan Monnier  <monnier@iro.umontreal.ca>
22619         * lisp/emacs-lisp/lisp-mode.el (lisp-mode-symbol-regexp): New const.
22620         Use it everywhere "\\(\\sw\\|\\s_\\|\\\\.\\)+" was used.
22621         (cl-lib-fdefs): Add defgeneric.
22622         (cl-kw): Add all elements of eieio-kw and cl-lib-kw.
22623         (eieio-kw, cl-lib-kw, el-kw): Remove.
22625 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
22627         Quote less in manuals
22628         The manuals often used quotes ``...'' when it is better to use @dfn or
22629         @code or capitalized words or no quoting at all.  For example, there is
22630         no need for the `` and '' in “if a variable has one effect for
22631         @code{nil} values and another effect for ``non-@code{nil}'' values”.
22632         Reword the Emacs, Lisp intro, and Lisp reference manuals to eliminate
22633         unnecessary quoting like this, and to use @dfn etc. instead when called
22634         for (Bug#21472).
22636 2015-09-15  Mark Oteiza  <mvoteiza@udel.edu>
22638         * lisp/custom.el (load-theme): Only compute hash when needed.
22640 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
22642         Pacify --enable-gcc-warnings
22643         * src/inotify.c (report_inotify_error): Declare it _Noreturn.
22645 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
22647         Improve error reports in inotify.c
22648         * src/inotify.c (report_inotify_error): New function.  Clone of
22649         report_w32notify_error.
22650         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
22651         (Finotify_rm_watch): Use it.
22653 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
22655         Fix the file-notify tests for watch validation on w32
22656         * test/automated/file-notify-tests.el
22657         (file-notify-test04-file-validity): Move the directory deletion
22658         out of the file-notify--test-with-events macro.
22659         (file-notify-test04-file-validity)
22660         (file-notify-test05-dir-validity): Enlarge the timeout of
22661         read-event to 0.5, as 0.1 is borderline on w32.  (Bug#21432)
22663 2015-09-15  Tassilo Horn  <tsdh@gnu.org>
22665         Use OPEN BOX instead of space for \quad.
22666         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist): Use OPEN BOX
22667         character for \quad instead of a space.
22669 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
22671         Add missing *.pbm images
22672         * etc/images/connect.pbm: New file.
22673         * etc/images/custom/down-pushed.pbm: New file.
22674         * etc/images/custom/down.pbm: New file.
22675         * etc/images/custom/right-pushed.pbm: New file.
22676         * etc/images/custom/right.pbm: New file.
22677         * etc/images/describe.pbm: New file.
22678         * etc/images/disconnect.pbm: New file.
22679         * etc/images/ezimage/bits.pbm: New file.
22680         * etc/images/ezimage/bitsbang.pbm: New file.
22681         * etc/images/ezimage/box-minus.pbm: New file.
22682         * etc/images/ezimage/box-plus.pbm: New file.
22683         * etc/images/ezimage/box.pbm: New file.
22684         * etc/images/ezimage/checkmark.pbm: New file.
22685         * etc/images/ezimage/dir-minus.pbm: New file.
22686         * etc/images/ezimage/dir-plus.pbm: New file.
22687         * etc/images/ezimage/dir.pbm: New file.
22688         * etc/images/ezimage/doc-minus.pbm: New file.
22689         * etc/images/ezimage/doc-plus.pbm: New file.
22690         * etc/images/ezimage/doc.pbm: New file.
22691         * etc/images/ezimage/info.pbm: New file.
22692         * etc/images/ezimage/key.pbm: New file.
22693         * etc/images/ezimage/label.pbm: New file.
22694         * etc/images/ezimage/lock.pbm: New file.
22695         * etc/images/ezimage/mail.pbm: New file.
22696         * etc/images/ezimage/page-minus.pbm: New file.
22697         * etc/images/ezimage/page-plus.pbm: New file.
22698         * etc/images/ezimage/page.pbm: New file.
22699         * etc/images/ezimage/tag-gt.pbm: New file.
22700         * etc/images/ezimage/tag-minus.pbm: New file.
22701         * etc/images/ezimage/tag-plus.pbm: New file.
22702         * etc/images/ezimage/tag-type.pbm: New file.
22703         * etc/images/ezimage/tag-v.pbm: New file.
22704         * etc/images/ezimage/tag.pbm: New file.
22705         * etc/images/ezimage/unlock.pbm: New file.
22706         * etc/images/gnus/important.pbm: New file.
22707         * etc/images/gnus/mail-send.pbm: New file.
22708         * etc/images/gnus/receipt.pbm: New file.
22709         * etc/images/gnus/toggle-subscription.pbm: New file.
22710         * etc/images/gnus/unimportant.pbm: New file.
22711         * etc/images/gud/all.pbm: New file.
22712         * etc/images/gud/rcont.pbm: New file.
22713         * etc/images/gud/recstart.pbm: New file.
22714         * etc/images/gud/recstop.pbm: New file.
22715         * etc/images/gud/rfinish.pbm: New file.
22716         * etc/images/gud/rnext.pbm: New file.
22717         * etc/images/gud/rnexti.pbm: New file.
22718         * etc/images/gud/rstep.pbm: New file.
22719         * etc/images/gud/rstepi.pbm: New file.
22720         * etc/images/gud/thread.pbm: New file.
22721         * etc/images/lock-broken.pbm: New file.
22722         * etc/images/lock-ok.pbm: New file.
22723         * etc/images/lock.pbm: New file.
22724         * etc/images/mail/copy.pbm: New file.
22725         * etc/images/mail/forward.pbm: New file.
22726         * etc/images/mail/not-spam.pbm: New file.
22727         * etc/images/mail/outbox.pbm: New file.
22728         * etc/images/mail/preview.pbm: New file.
22729         * etc/images/mail/save-draft.pbm: New file.
22730         * etc/images/mh-logo.pbm: New file.
22731         * etc/images/mpc/add.pbm: New file.
22732         * etc/images/mpc/ffwd.pbm: New file.
22733         * etc/images/mpc/next.pbm: New file.
22734         * etc/images/mpc/pause.pbm: New file.
22735         * etc/images/mpc/play.pbm: New file.
22736         * etc/images/mpc/prev.pbm: New file.
22737         * etc/images/mpc/rewind.pbm: New file.
22738         * etc/images/mpc/stop.pbm: New file.
22739         * etc/images/redo.pbm: New file.
22740         * etc/images/smilies/braindamaged.pbm: New file.
22741         * etc/images/smilies/cry.pbm: New file.
22742         * etc/images/smilies/dead.pbm: New file.
22743         * etc/images/smilies/evil.pbm: New file.
22744         * etc/images/smilies/forced.pbm: New file.
22745         * etc/images/smilies/grin.pbm: New file.
22746         * etc/images/smilies/indifferent.pbm: New file.
22747         * etc/images/sort-ascending.pbm: New file.
22748         * etc/images/sort-column-ascending.pbm: New file.
22749         * etc/images/sort-criteria.pbm: New file.
22750         * etc/images/sort-descending.pbm: New file.
22751         * etc/images/sort-row-ascending.pbm: New file.
22752         * etc/images/unchecked.pbm: New file.
22753         * etc/images/zoom-in.pbm: New file.
22754         * etc/images/README: Update instructions for PBM files.
22756         Add separator.pbm tool-bar image
22757         * etc/images/separator.pbm: New file.  Having it avoids the side
22758         effect of changing the tool-bar height when the default font's size
22759         changes and XPM image support is not available, due to the SPC
22760         characters that are left in the Lisp string used to display the tool
22761         bar, because there are no images to display instead of those SPC
22762         characters.
22764         Make show-paren-match face visible on mono-color displays
22765         * lisp/faces.el (show-paren-match): Use the underline face for
22766         mono-color displays.  (Bug#21481)
22768 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
22770         Don’t double-encode non-ASCII mail clipboard
22771         * lisp/mail/mailclient.el (mailclient-send-it):
22772         Also fix the case when mailclient-place-body-on-clipboard-flag
22773         is non-nil.  Problem reported by Eli Zaretskii (Bug#21471#37).
22775 2015-09-14  Michael Albinus  <michael.albinus@gmx.de>
22777         Adapt file-notify-tests.el test cases
22778         * lisp/filenotify.el (file-notify-rm-watch): Ignore `file-notify-error'.
22779         * src/inotify.c (Finotify_valid_p): Adapt docstring.
22780         * test/automated/file-notify-tests.el
22781         (file-notify-test03-autorevert)
22782         (file-notify-test04-file-validity)
22783         (file-notify-test04-file-validity-remote)
22784         (file-notify-test05-dir-validity)
22785         (file-notify-test05-dir-validity-remote): Adapt docstring.
22786         (file-notify-test04-file-validity): Let events arrive before
22787         calling final `file-notify-valid-p'.  Do not ignore errors.
22788         (file-notify-test05-dir-validity): Do not manipulate
22789         `temporary-file-directory', it isn't necessary.  Let events arrive
22790         before calling final `file-notify-valid-p'.  Do not ignore errors.
22792 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
22794         Don’t double-encode non-ASCII for mail client
22795         * lisp/mail/mailclient.el (mailclient-encode-string-as-url):
22796         Use RFC 6068’s list of unreserved characters.
22797         (mailclient-send-it): When encoding the body as a URL,
22798         first decode it as per Content-Type: and Content-Transfer-Encoding:,
22799         as URLs must use percent-encoded UTF-8 (Bug#21471).
22800         * doc/misc/url.texi (mailto): Update RFC number.
22802 2015-09-14  Stefan Monnier  <monnier@iro.umontreal.ca>
22804         * lisp/progmodes/cc-langs.el (c-make-init-lang-vars-fun): Use dolist.
22806 2015-09-14  Alan Mackenzie  <acm@muc.de>
22808         Replace `cadar' with `cadr/car', since `cadar' is problematic on Emacs
22809         (c-make-init-lang-vars-fun): Replace two occurrences of `cadar' with
22810         `cadr/car'.
22812 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
22814         Clarify documentation of char-table extra slots
22815         * doc/lispref/sequences.texi (Char-Tables): Clarify that extra
22816         slot numbers are zero-based.  (Bug#21467)
22818 2015-09-14  Alan Mackenzie  <acm@muc.de>
22820         Elisp mode: Make font-lock and imenu handle escaped characters in symbols
22821         Fixes bug#21449.
22822         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression)
22823         (lisp--el-match-keyword, lisp-el-font-lock-keywords-1)
22824         (lisp-cl-font-lock-keywords-1, lisp-el-font-lock-keywords-2)
22825         (lisp-cl-font-lock-keywords-2, lisp-string-in-doc-position-p):
22826         Insert "\\|\\\\." into regexps which match symbols.
22828 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
22830         Improve the doc string of w32notify-valid-p
22831         * src/w32notify.c (Fw32notify_valid_p): Mention in the doc string
22832         that removing a watch makes its object invalid.
22834 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
22836         Fix tests for file-notify-valid-p
22837         * test/automated/file-notify-tests.el (file-notify--test-cleanup):
22838         Use delete-directory to delete file-notify--test-tmpfile if it is
22839         a directory.  Likewise for file-notify--test-tmpfile1.
22840         (file-notify-test04-file-validity)
22841         (file-notify-test05-dir-validity): Delete the parent directory of
22842         the test.  Ignore errors when cleaning up after the test.
22844 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
22846         Report file-notify-error in w32notify.c
22847         * src/w32notify.c (report_w32notify_error): New function.
22848         (Fw32notify_add_watch, Fw32notify_rm_watch): Use it to report
22849         errors, instead of calling report_file_error.  (Bug#21432)
22851         Implement w32notify-valid-p
22852         * src/w32notify.c (Fw32notify_valid_p): New function.  (Bug#21432)
22853         * lisp/filenotify.el (w32notify-valid-p): No longer an alias for
22854         'identity'.
22856 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
22858         Test file-notify-valid-p
22859         * test/automated/file-notify-tests.el
22860         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
22861         New tests.
22863 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
22865         Fix markup in ELisp manual
22866         * doc/lispref/frames.texi (Font and Color Parameters): Fix markup
22867         of the 'alpha' parameter value.  (Bug#21470)
22869 2015-09-13  Michael Albinus  <michael.albinus@gmx.de>
22871         Introduce `file-notify-valid-p'
22872         * lisp/filenotify.el (file-notify-valid-p): New defun.
22873         (gfile-valid-p, w32notify-valid-p): Make them an alias to `identity'.
22874         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist)
22875         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist)
22876         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist)
22877         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist)
22878         <file-notify-valid-p>: Add handler.
22879         * lisp/net/tramp.el (tramp-file-name-for-operation):
22880         Add `file-notify-valid-p'.
22881         (tramp-handle-file-notify-valid-p): New defun.
22882         * src/inotify.c (Finotify_valid_p): New defun.
22883         (syms_of_inotify): Declare Sinotify_valid_p.
22885 2015-09-13  Paul Eggert  <eggert@cs.ucla.edu>
22887         Port Unicode char detection to FreeBSD+svgalib
22888         Problem reported by Ashish SHUKLA in:
22889         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00531.html
22890         * configure.ac: Check for struct unipair.unicode instead of for
22891         <linux/kd.h>, since that’s more specific to what the code
22892         actually needs.
22893         * src/terminal.c: Use HAVE_STRUCT_UNIPAIR_UNICODE, not HAVE_LINUX_KD_H.
22895         * src/indent.c (Fvertical_motion): Simplify bugfix (Bug#21468).
22897 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
22899         Fix vertical cursor motion across overlay strings with newlines
22900         * src/indent.c (Fvertical_motion): Don't leave point in the middle
22901         of an overlay string with newlines, as that will position the
22902         cursor after the string at whatever column is there.  (Bug#21468)
22904 2015-09-12  Michael Albinus  <michael.albinus@gmx.de>
22906         Fix tests in file-notify-tests.el
22907         * test/automated/file-notify-tests.el: Remove Tramp declarations.
22908         (file-notify-test00-availability): Print remote command w/o Tramp
22909         internal functions.
22910         (file-notify-test02-events, file-notify-test02-events-remote):
22911         Adapt docstring.
22912         (file-notify-test03-autorevert): Use `format-message' when
22913         inspecting *Messages* buffer.
22915 2015-09-12  Stefan Monnier  <monnier@iro.umontreal.ca>
22917         Bind inhibit-modification-hooks rather than a/b-c-f
22918         * lisp/wid-edit.el (widget-editable-list-insert-before)
22919         (widget-editable-list-delete-at):
22920         * lisp/progmodes/cperl-mode.el (cperl-find-pods-heres)
22921         (cperl-font-lock-unfontify-region-function):
22922         * lisp/progmodes/antlr-mode.el (save-buffer-state-x):
22923         * lisp/obsolete/longlines.el (longlines-mode):
22924         * lisp/obsolete/fast-lock.el (save-buffer-state):
22925         * lisp/mouse.el (mouse-save-then-kill-delete-region):
22926         * lisp/gnus/message.el (message-hide-headers):
22927         * lisp/eshell/esh-mode.el (eshell-send-input, eshell-output-filter):
22928         * lisp/ibuffer.el (ibuffer-update-title-and-summary)
22929         (ibuffer-redisplay-engine): Bind inhibit-modification-hooks to t rather
22930         than after/before-change-functions to nil.
22932 2015-09-11  Stefan Monnier  <monnier@iro.umontreal.ca>
22934         (jit-lock-deferred-fontify): Pay attention to skipped redisplays
22935         * lisp/jit-lock.el (jit-lock-deferred-fontify): Make sure we refresh
22936         the buffers, even if the forced redisplay is interrupted.
22938         * lisp/emacs-lisp/eieio-core.el (class-p): Accept class objects
22940         Merge syntax-propertize--done and parse-sexp-propertize-done
22941         * lisp/emacs-lisp/syntax.el (syntax-propertize--done): Remove.
22942         (syntax-propertize): Set syntax-propertize--done even if
22943         syntax-propertize-function is nil.  Avoid recursive invocations.
22944         (syntax-propertize-chunks): New var.
22945         (internal--syntax-propertize): Use it.  Rename from syntax--jit-propertize.
22946         Simplify.
22947         (parse-sexp-propertize-function): Don't set any more.
22948         * src/syntax.c (SETUP_SYNTAX_TABLE): Call parse_sexp_propertize as needed.
22949         (parse_sexp_propertize): Don't assume charpos is not yet propertized.
22950         Call Qinternal__syntax_propertize instead of
22951         Vparse_sexp_propertize_function.  Truncate e_property if needed.
22952         (update_syntax_table_forward): Streamline.
22953         (syms_of_syntax): Define Qinternal__syntax_propertize.
22954         (syntax_propertize__done): Rename from parse_sexp_propertize_done.
22956 2015-09-11  Paul Eggert  <eggert@cs.ucla.edu>
22958         Prefer straight quoting in some text files
22959         Mostly this just changes ` to ' in static text.  Some exceptions:
22960         * INSTALL.REPO: Use curved quotes, as the diagnostic in question
22961         typically does that now.
22962         * admin/quick-install-emacs (TRY, top level):
22963         Use straight quoting in diagnostics.
22964         * src/README: Fix working-directory confusion.
22966         * CONTRIBUTE: Move send-email here from git-workflow.
22968 2015-09-11  Michael Albinus  <michael.albinus@gmx.de>
22970         Improve file notifications in Tramp
22971         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
22972         Set proper events to watch for.
22973         (tramp-sh-file-gvfs-monitor-dir-process-filter): Report only
22974         watched events.
22976 2015-09-11  Eli Zaretskii  <eliz@gnu.org>
22978         Fix NS build with --enable-checking='glyphs'
22979         * src/nsfns.m (unwind_create_frame): Make the preprocessor
22980         conditionals for referencing 'dpyinfo' consistent throughout the
22981         function.  (Bug#21426)
22983 2015-09-10  Nicolas Petton  <nicolas@petton.fr>
22985         Add seq-find
22986         This function is similar to `seq-some' but returns the found element.
22987         In the cases where nil can be the found element, a sentinel optional
22988         argument can be provided to avoid ambiguities.
22989         * lisp/emacs-lisp/seq.el (seq-find): New function.
22990         * test/automated/seq-tests.el (test-seq-find): Add tests for `seq-find'.
22991         * doc/lispref/sequences.texi (Sequence Functions): Add documentation for
22992         seq-find.
22994 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
22996         Document file-notify--test-with-events.
22997         * test/automated/file-notify-tests.el (file-notify--test-with-events):
22998         Add docstring.
23000 2015-09-10  Michael Albinus  <michael.albinus@gmx.de>
23002         Report used native library in file-notify-tests.el
23003         * test/automated/file-notify-tests.el
23004         (tramp-get-remote-gvfs-monitor-dir)
23005         (tramp-get-remote-inotifywait): Declare them.
23006         (file-notify-test00-availability): Print used native library.
23008 2015-09-10  Mark Oteiza  <mvoteiza@udel.edu>
23010         * lisp/mpc.el (mpc--proc-connect): Use file-name-absolute-p.
23011         (mpc-file-local-copy): Check for absolute path.  Check more config
23012         locations.
23014 2015-09-10  Eli Zaretskii  <eliz@gnu.org>
23016         Improve documentation of categories
23017         * doc/lispref/syntax.texi (Categories): Clarify the example of
23018         using define-category and modify-category-entry.  (Bug#21448)
23020 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
23022         Revert some stray curved quotes I missed earlier
23023         Problem reported by David Kastrup in:
23024         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00440.html
23025         * lisp/international/mule-cmds.el (leim-list-header):
23026         Use format-message with an ASCII-only format.
23028         Prefer NUMBERP to spelling it out
23029         * src/editfns.c (styled_format):
23030         * src/frame.h (NUMVAL):
23031         * src/image.c (parse_image_spec):
23032         * src/lisp.h (CHECK_NUMBER_OR_FLOAT)
23033         (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER):
23034         * src/process.c (Fsignal_process):
23035         * src/xdisp.c (calc_pixel_width_or_height, on_hot_spot_p):
23036         * src/xfaces.c (check_lface_attrs):
23037         * src/xselect.c (x_fill_property_data, x_send_client_event):
23038         Use NUMBERP rather than INTEGERP || FLOATP.
23040 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
23042         Improve file-notify-tests
23043         * test/automated/file-notify-tests.el: Use lexical-binding.
23044         (file-notify--test-cleanup): New function.
23045         (file-notify-test00-availability, file-notify-test01-add-watch)
23046         (file-notify-test02-events, file-notify-test03-autorevert): Use it.
23047         (file-notify--test-with-events): New macro.
23048         (file-notify-test02-events): Use it.
23050 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
23052         Add patch-sending instructions to git-workflow
23053         From a suggestion by Mitchel Humpherys in:
23054         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00421.html
23055         * admin/notes/git-workflow (Sending patches): New section.
23057         Port to GIFLIB 5.0.6 and later
23058         Problem reported by Mitchel Humpherys in:
23059         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00420.html
23060         * src/image.c (HAVE_GIFERRORSTRING) [HAVE_GIF]: New macro.
23061         (GifErrorString, init_gif_functions) [HAVE_GIF && WINDOWSNT]:
23062         (gif_load) [HAVE_GIF]: Use it.
23064 2015-09-10  Glenn Morris  <rgm@gnu.org>
23066         * lisp/cedet/ede/auto.el (ede-project-autoload): Doc fix.
23068 2015-09-09  Glenn Morris  <rgm@gnu.org>
23070         * test/automated/file-notify-tests.el (file-notify-test02-events):
23071         Fix recent change.
23073 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
23075         Refix movemail GCC pacification
23076         Problem reported by Ken Brown in:
23077         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00406.html
23078         * lib-src/movemail.c (main): Fix previous change.
23080 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
23082         * lisp/calendar/time-date.el (time-to-seconds, time-less-p):
23083         Mark unused vars with underscore.
23085         * src/syntax.c (SETUP_SYNTAX_TABLE): Move truncation...
23086         (parse_sexp_propertize): ...from here.
23088         * lisp/filenotify.el: Use lexical-binding
23089         (file-notify-add-watch): Avoid add-to-list.
23091 2015-09-09  Tassilo Horn  <tsdh@gnu.org>
23093         Start checking event types in file-notify tests
23094         * test/automated/file-notify-tests.el (file-notify--test-events):
23095         New variable.
23096         (file-notify--test-event-handler): Append received event to
23097         file-notify--test-events for later analysis.
23098         (file-notify-test02-events): Assert that the expected notifications have
23099         arrived in the expected order.
23101 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
23103         Merge from gnulib and texinfo
23104         This incorporates:
23105         2015-08-03 Improve port of stdalign to C++11
23106         * lib/stdalign.in.h: Copy from gnulib.
23107         * doc/misc/texinfo.tex: Copy from texinfo.
23109 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
23111         Make syntax.c call syntax-propertize on demand
23112         * lisp/emacs-lisp/syntax.el (syntax--jit-propertize): New function.
23113         (parse-sexp-propertize-function): Use it.
23114         (syntax-propertize): Disable parse-sexp-propertize-function.
23115         * src/syntax.c (parse_sexp_propertize, update_syntax_table_forward):
23116         New functions.
23117         (syms_of_syntax): New vars `parse-sexp-propertize-done' and
23118         `parse-sexp-propertize-function'.
23119         * src/syntax.h (struct gl_state_s): Add `e_property_truncated' field.
23120         (UPDATE_SYNTAX_TABLE_FORWARD): Use update_syntax_table_forward.
23121         (SETUP_BUFFER_SYNTAX_TABLE): Set e_property_truncated.
23122         * lisp/progmodes/elisp-mode.el (elisp-byte-code-syntax-propertize):
23123         Don't assume `point' is set.
23125 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
23127         Fix indentation of an @example in ELisp manual
23128         * doc/lispref/syntax.texi (Categories): Untabify the example.
23129         (Bug#21448)
23131 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
23133         Define internal-char-font even if --without-x
23134         The function is used now even in non-graphical environments.
23135         Problem reported by Glenn Morris in:
23136         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00401.html
23137         * src/font.c (Finternal_char_font): Move here ...
23138         * src/fontset.c (Finternal_char_font): ... from here.
23140 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
23142         * lisp/emacs-lisp/cl-generic.el (cl-generic-generalizers):
23143         Remove warning.
23145 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
23147         Fix display of complex local data types in GDB-MI
23148         * lisp/progmodes/gdb-mi.el (gdb-locals-handler-custom): If a
23149         variable has no value, display "<complex data type>" as a
23150         placeholder, instead of a confusing "nil".  (Bug#21438)
23152 2015-09-09  Oleh Krehel  <ohwoeowho@gmail.com>
23154         Remove redundant redefinition of seq-drop-while from seq.el
23155         * lisp/emacs-lisp/seq.el (seq-drop-while): Define only once.
23157 2015-09-09  Phil Sainty  <psainty@orcon.net.nz>
23159         * lisp/emacs-lisp/package.el (package--ensure-init-file):
23160         More robust check for `package-initialize' calls in init file.
23161         This function accepts an optional argument, but calls passing
23162         an argument would not have been detected.
23164 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
23166         Port movemail to RHEL 6 with --enable-gcc-warnings
23167         * lib-src/movemail.c (main): Declare local only if needed.
23169         Port recent Linux console changes to RHEL 6
23170         * src/terminal.c [HAVE_LINUX_KD_H]: Include <sys/ioctl.h>.
23172         Improvements for curved quotes on Linux consule
23173         This should help Emacs work better out-of-the-box on Linux consoles,
23174         which have only limited support for displaying Unicode characters.
23175         Also, undo the recent change that caused text-quoting-style to
23176         affect quote display on terminals, so that the two features are
23177         independent.  See Alan Mackenzie in:
23178         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00244.html
23179         Finally, add a style parameter to startup--setup-quote-display,
23180         so that this function can also be invoked after startup, with
23181         different styles depending on user preference at the time.
23182         * configure.ac: Check for linux/kd.h header.
23183         * doc/emacs/display.texi (Text Display): Document quote display.
23184         * doc/lispref/display.texi (Active Display Table):
23185         * etc/NEWS:
23186         * lisp/startup.el (startup--setup-quote-display, command-line):
23187         text-quoting-style no longer affects quote display.
23188         * doc/lispref/frames.texi (Terminal Parameters): Fix typo.
23189         * lisp/international/mule-util.el (char-displayable-p):
23190         * lisp/startup.el (startup--setup-quote-display):
23191         On a text terminal supporting glyph codes, use the reported
23192         glyph codes instead of the terminal coding system, as this
23193         is more accurate on the Linux console.
23194         * lisp/startup.el (startup--setup-quote-display):
23195         New optional arg STYLE.
23196         * src/fontset.c (Finternal_char_font):
23197         Report glyph codes for a text terminal, if they are available.
23198         Currently this is supported only for the Linux console.
23199         * src/termhooks.h (struct terminal): New member glyph-code-table.
23200         * src/terminal.c [HAVE_LINUX_KD_H]: Include <errno.h>, <linux/kd.h>.
23201         (calculate_glyph_code_table) [HAVE_LINUX_KD_H]: New function.
23202         (terminal_glyph_code): New function.
23204 2015-09-08  Juri Linkov  <juri@linkov.net>
23206         * lisp/info.el (Info-fontify-node): Don't stop at the non-title
23207         underline.  (Bug#21433)
23209 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
23211         * lisp/calendar/time-date.el (with-decoded-time-value): Fix debug spec.
23213 2015-09-08  Tassilo Horn  <tsdh@gnu.org>
23215         Fix double-reporting of rename events with inotify
23216         * lisp/filenotify.el (file-notify-callback): Fix double-reporting
23217         of rename events with inotify (bug#21435).
23219 2015-09-08  Vasilij Schneidermann  <v.schneidermann@gmail.com>  (tiny change)
23221         * lisp/play/tetris.el (tetris-move-down): New command (bug#21360).
23222         (tetris-mode-map): Use it.
23224 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
23226         Remove a few simple cases of global redisplay
23227         * src/dispnew.c (redraw_frame): Don't redisplay all frames.
23228         * src/xdisp.c (echo_area_display): Set the frame's `redisplay' bit
23229         rather than returning a "resized_p" boolean.
23230         (redisplay_internal): Adjust call accordingly.
23231         * src/xfaces.c (free_realized_faces): Don't redisplay all frames.
23232         (free_all_realized_faces): Set windows_or_buffers_changed so as to ease
23233         tracking of this undesirable situation.
23235         * src/process.c (status_notify): Avoid global redisplay (bug#11822)
23236         * src/process.c (status_notify): Only set the update_mode_line on the
23237         relevant buffers rather than setting it globally.
23239 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
23241         * lisp/electric.el (electric-quote-post-self-insert-function):
23242         Don't use syntax-ppss if comment-use-syntax is nil (e.g. message-mode).
23243         (electric-quote-mode): Activate everywhere in message-mode.
23245 2015-09-07  Paul Eggert  <eggert@cs.ucla.edu>
23247         Go back to grave quoting in source-code docstrings etc.
23248         This reverts almost all my recent changes to use curved quotes
23249         in docstrings and/or strings used for error diagnostics.
23250         There are a few exceptions, e.g., Bahá’í proper names.
23251         * admin/unidata/unidata-gen.el (unidata-gen-table):
23252         * lisp/abbrev.el (expand-region-abbrevs):
23253         * lisp/align.el (align-region):
23254         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet)
23255         (outlineify-sticky):
23256         * lisp/apropos.el (apropos-library):
23257         * lisp/bookmark.el (bookmark-default-annotation-text):
23258         * lisp/button.el (button-category-symbol, button-put)
23259         (make-text-button):
23260         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
23261         * lisp/calc/calc-embed.el (calc-do-embedded):
23262         * lisp/calc/calc-ext.el (calc-user-function-list):
23263         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
23264         * lisp/calc/calc-help.el (calc-describe-key)
23265         (calc-describe-thing, calc-full-help):
23266         * lisp/calc/calc-lang.el (calc-c-language)
23267         (math-parse-fortran-vector-end, math-parse-tex-sum)
23268         (math-parse-eqn-matrix, math-parse-eqn-prime)
23269         (calc-yacas-language, calc-maxima-language, calc-giac-language)
23270         (math-read-giac-subscr, math-read-math-subscr)
23271         (math-read-big-rec, math-read-big-balance):
23272         * lisp/calc/calc-misc.el (calc-help, report-calc-bug):
23273         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
23274         (calc-auto-recompute):
23275         * lisp/calc/calc-prog.el (calc-fix-token-name)
23276         (calc-read-parse-table-part, calc-user-define-invocation)
23277         (math-do-arg-check):
23278         * lisp/calc/calc-store.el (calc-edit-variable):
23279         * lisp/calc/calc-units.el (math-build-units-table-buffer):
23280         * lisp/calc/calc-vec.el (math-read-brackets):
23281         * lisp/calc/calc-yank.el (calc-edit-mode):
23282         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
23283         * lisp/calendar/appt.el (appt-display-message):
23284         * lisp/calendar/diary-lib.el (diary-check-diary-file)
23285         (diary-mail-entries, diary-from-outlook):
23286         * lisp/calendar/icalendar.el (icalendar-export-region)
23287         (icalendar--convert-float-to-ical)
23288         (icalendar--convert-date-to-ical)
23289         (icalendar--convert-ical-to-diary)
23290         (icalendar--convert-recurring-to-diary)
23291         (icalendar--add-diary-entry):
23292         * lisp/calendar/time-date.el (format-seconds):
23293         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
23294         (timeclock-make-hours-explicit, timeclock-log-data):
23295         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
23296         (todo-item-mark, todo-check-format)
23297         (todo-insert-item--next-param, todo-edit-item--next-key)
23298         (todo-mode):
23299         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
23300         * lisp/cedet/mode-local.el (describe-mode-local-overload)
23301         (mode-local-print-binding, mode-local-describe-bindings-2):
23302         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
23303         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
23304         * lisp/cus-start.el (standard):
23305         * lisp/cus-theme.el (describe-theme-1):
23306         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
23307         (custom--sort-vars-1, load-theme):
23308         * lisp/descr-text.el (describe-text-properties-1, describe-char):
23309         * lisp/dired-x.el (dired-do-run-mail):
23310         * lisp/dired.el (dired-log):
23311         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
23312         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
23313         (ad-disable-advice, ad-remove-advice, ad-set-argument)
23314         (ad-set-arguments, ad--defalias-fset, ad-activate)
23315         (ad-deactivate):
23316         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
23317         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
23318         (byte-optimize-while, byte-optimize-apply):
23319         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
23320         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
23321         (byte-compile-log-file, byte-compile-format-warn)
23322         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
23323         (byte-compile-cl-warn)
23324         (byte-compile-warn-about-unresolved-functions)
23325         (byte-compile-file, byte-compile--declare-var)
23326         (byte-compile-file-form-defmumble, byte-compile-form)
23327         (byte-compile-normal-call, byte-compile-check-variable)
23328         (byte-compile-variable-ref, byte-compile-variable-set)
23329         (byte-compile-subr-wrong-args, byte-compile-setq-default)
23330         (byte-compile-negation-optimizer)
23331         (byte-compile-condition-case--old)
23332         (byte-compile-condition-case--new, byte-compile-save-excursion)
23333         (byte-compile-defvar, byte-compile-autoload)
23334         (byte-compile-lambda-form)
23335         (byte-compile-make-variable-buffer-local, display-call-tree)
23336         (batch-byte-compile):
23337         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use):
23338         * lisp/emacs-lisp/chart.el (chart-space-usage):
23339         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
23340         (check-declare-warn, check-declare-file)
23341         (check-declare-directory):
23342         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
23343         (checkdoc-message-text-engine):
23344         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer)
23345         (cl--describe-class):
23346         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
23347         (cl--generic-describe, cl-generic-generalizers):
23348         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
23349         (cl-symbol-macrolet):
23350         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
23351         * lisp/emacs-lisp/copyright.el (copyright)
23352         (copyright-update-directory):
23353         * lisp/emacs-lisp/edebug.el (edebug-read-list):
23354         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
23355         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
23356         (eieio-oref):
23357         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
23358         * lisp/emacs-lisp/eieio-speedbar.el:
23359         (eieio-speedbar-child-make-tag-lines)
23360         (eieio-speedbar-child-description):
23361         * lisp/emacs-lisp/eieio.el (defclass, change-class):
23362         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
23363         (elint-init-form, elint-check-defalias-form)
23364         (elint-check-let-form):
23365         * lisp/emacs-lisp/ert.el (ert-get-test, ert-results-mode-menu)
23366         (ert-results-pop-to-backtrace-for-test-at-point)
23367         (ert-results-pop-to-messages-for-test-at-point)
23368         (ert-results-pop-to-should-forms-for-test-at-point)
23369         (ert-describe-test):
23370         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
23371         (find-function-library):
23372         * lisp/emacs-lisp/generator.el (iter-yield):
23373         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
23374         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
23375         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
23376         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
23377         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
23378         (advice--make, define-advice):
23379         * lisp/emacs-lisp/package-x.el (package-upload-file):
23380         * lisp/emacs-lisp/package.el (package-version-join)
23381         (package-disabled-p, package-activate-1, package-activate)
23382         (package--download-one-archive)
23383         (package--download-and-read-archives)
23384         (package-compute-transaction, package-install-from-archive)
23385         (package-install, package-install-selected-packages)
23386         (package-delete, package-autoremove, describe-package-1)
23387         (package-install-button-action, package-delete-button-action)
23388         (package-menu-hide-package, package-menu--list-to-prompt)
23389         (package-menu--perform-transaction)
23390         (package-menu--find-and-notify-upgrades):
23391         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
23392         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
23393         * lisp/emacs-lisp/ring.el (ring-previous, ring-next):
23394         * lisp/emacs-lisp/rx.el (rx-check, rx-anything)
23395         (rx-check-any-string, rx-check-any, rx-check-not, rx-=)
23396         (rx-repeat, rx-check-backref, rx-syntax, rx-check-category)
23397         (rx-form):
23398         * lisp/emacs-lisp/smie.el (smie-config-save):
23399         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
23400         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
23401         * lisp/emacs-lisp/testcover.el (testcover-1value):
23402         * lisp/emacs-lisp/timer.el (timer-event-handler):
23403         * lisp/emulation/viper-cmd.el (viper-toggle-parse-sexp-ignore-comments)
23404         (viper-toggle-search-style, viper-kill-buffer)
23405         (viper-brac-function):
23406         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
23407         * lisp/env.el (setenv):
23408         * lisp/erc/erc-button.el (erc-nick-popup):
23409         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login, english):
23410         * lisp/eshell/em-dirs.el (eshell/cd):
23411         * lisp/eshell/em-glob.el (eshell-glob-regexp)
23412         (eshell-glob-entries):
23413         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
23414         * lisp/eshell/esh-opt.el (eshell-show-usage):
23415         * lisp/facemenu.el (facemenu-add-new-face)
23416         (facemenu-add-new-color):
23417         * lisp/faces.el (read-face-name, read-face-font, describe-face)
23418         (x-resolve-font-name):
23419         * lisp/files-x.el (modify-file-local-variable):
23420         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
23421         (set-auto-mode, hack-one-local-variable--obsolete)
23422         (dir-locals-set-directory-class, write-file, basic-save-buffer)
23423         (delete-directory, copy-directory, recover-session)
23424         (recover-session-finish, insert-directory)
23425         (file-modes-char-to-who, file-modes-symbolic-to-number)
23426         (move-file-to-trash):
23427         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer):
23428         * lisp/find-cmd.el (find-generic, find-to-string):
23429         * lisp/finder.el (finder-commentary):
23430         * lisp/font-lock.el (font-lock-fontify-buffer):
23431         * lisp/format.el (format-write-file, format-find-file)
23432         (format-insert-file):
23433         * lisp/frame.el (get-device-terminal, select-frame-by-name):
23434         * lisp/fringe.el (fringe--check-style):
23435         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
23436         * lisp/help-fns.el (help-fns--key-bindings)
23437         (help-fns--compiler-macro, help-fns--parent-mode)
23438         (help-fns--obsolete, help-fns--interactive-only)
23439         (describe-function-1, describe-variable):
23440         * lisp/help.el (describe-mode)
23441         (describe-minor-mode-from-indicator):
23442         * lisp/image.el (image-type):
23443         * lisp/international/ccl.el (ccl-dump):
23444         * lisp/international/fontset.el (x-must-resolve-font-name):
23445         * lisp/international/mule-cmds.el (prefer-coding-system)
23446         (select-safe-coding-system-interactively)
23447         (select-safe-coding-system, activate-input-method)
23448         (toggle-input-method, describe-current-input-method)
23449         (describe-language-environment):
23450         * lisp/international/mule-conf.el (code-offset):
23451         * lisp/international/mule-diag.el (describe-character-set)
23452         (list-input-methods-1):
23453         * lisp/mail/feedmail.el (feedmail-run-the-queue):
23454         * lisp/mouse.el (minor-mode-menu-from-indicator):
23455         * lisp/mpc.el (mpc-playlist-rename):
23456         * lisp/msb.el (msb--choose-menu):
23457         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
23458         * lisp/net/imap.el (imap-interactive-login):
23459         * lisp/net/mairix.el (mairix-widget-create-query):
23460         * lisp/net/newst-backend.el (newsticker--sentinel-work):
23461         * lisp/net/newst-treeview.el (newsticker--treeview-load):
23462         * lisp/net/rlogin.el (rlogin):
23463         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
23464         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
23465         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
23466         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
23467         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
23468         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
23469         (org-babel-goto-named-result):
23470         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
23471         * lisp/org/ob-ref.el (org-babel-ref-resolve):
23472         * lisp/org/org-agenda.el (org-agenda-prepare):
23473         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
23474         (org-clock-resolve):
23475         * lisp/org/org-ctags.el (org-ctags-ask-rebuild-tags-file-then-find-tag):
23476         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
23477         * lisp/org/org-habit.el (org-habit-parse-todo):
23478         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
23479         (org-mouse-context-menu):
23480         * lisp/org/org-table.el (org-table-edit-formulas):
23481         * lisp/org/ox.el (org-export-async-start):
23482         * lisp/proced.el (proced-log):
23483         * lisp/progmodes/ada-mode.el (ada-get-indent-case)
23484         (ada-check-matching-start, ada-goto-matching-start):
23485         * lisp/progmodes/ada-prj.el (ada-prj-display-page):
23486         * lisp/progmodes/ada-xref.el (ada-find-executable):
23487         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
23488         * lisp/progmodes/etags.el (etags-tags-apropos-additional):
23489         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
23490         (flymake-start-syntax-check-process):
23491         * lisp/progmodes/python.el (python-shell-get-process-or-error)
23492         (python-define-auxiliary-skeleton):
23493         * lisp/progmodes/sql.el (sql-comint):
23494         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
23495         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate):
23496         * lisp/recentf.el (recentf-open-files):
23497         * lisp/replace.el (query-replace-read-from)
23498         (occur-after-change-function, occur-1):
23499         * lisp/scroll-bar.el (scroll-bar-columns):
23500         * lisp/server.el (server-get-auth-key):
23501         * lisp/simple.el (execute-extended-command)
23502         (undo-outer-limit-truncate, list-processes--refresh)
23503         (compose-mail, set-variable, choose-completion-string)
23504         (define-alternatives):
23505         * lisp/startup.el (site-run-file, tty-handle-args, command-line)
23506         (command-line-1):
23507         * lisp/subr.el (noreturn, define-error, add-to-list)
23508         (read-char-choice, version-to-list):
23509         * lisp/term/common-win.el (x-handle-xrm-switch)
23510         (x-handle-name-switch, x-handle-args):
23511         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
23512         * lisp/textmodes/reftex-ref.el (reftex-label):
23513         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
23514         * lisp/textmodes/two-column.el (2C-split):
23515         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
23516         (tutorial--find-changed-keys):
23517         * lisp/type-break.el (type-break-noninteractive-query):
23518         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
23519         (wdired-do-perm-changes):
23520         * lisp/whitespace.el (whitespace-report-region):
23521         Prefer grave quoting in source-code strings used to generate help
23522         and diagnostics.
23523         * lisp/faces.el (face-documentation):
23524         No need to convert quotes, since the result is a docstring.
23525         * lisp/info.el (Info-virtual-index-find-node)
23526         (Info-virtual-index, info-apropos):
23527         Simplify by generating only curved quotes, since info files are
23528         typically that ways nowadays anyway.
23529         * lisp/international/mule-diag.el (list-input-methods):
23530         Don’t assume text quoting style is curved.
23531         * lisp/org/org-bibtex.el (org-bibtex-fields):
23532         Revert my recent changes, going back to the old quoting style.
23534 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
23536         * lisp/emacs-lisp/package.el: Reduce autoloading before compiling.
23537         (package--autoloads-file-name)
23538         (package--activate-autoloads-and-load-path): New function.
23539         (package-activate-1): Delegate autoloading and load-path
23540         configuration to `package--activate-autoloads-and-load-path'.
23541         (package--compile): Before compilation, call
23542         `package--activate-autoloads-and-load-path' instead of
23543         `package-activate-1'.
23545 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
23547         * src/keyboard.c (read_key_sequence): Complete last fix (bug#21403).
23549 2015-09-07  Eli Zaretskii  <eliz@gnu.org>
23551         Fix deletion of symlinks to directories on MS-Windows
23552         * src/w32.c (sys_unlink): If 'unlink' fails, and the argument is a
23553         symlink to a directory, try again with 'rmdir'.
23554         (is_symlink): If the argument is a symlink to a directory, set a
23555         bit in the return value to indicate that fact.
23557 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
23559         * lisp/emacs-lisp/package.el (package-initialize): Set enable-at-startup
23560         When `package-initialize' is called as part of loading the init file,
23561         the user probably doesn't want it to be called again afterwards.
23562         In this situation, `package-initialize' now sets
23563         `package-enable-at-startup' to nil to prevent that.  The user can have
23564         the old behavior by setting this variable to t after the call to
23565         `package-initialize'.  (Bug#21423)
23566         * doc/emacs/package.texi (Package Installation): Document it.
23567         * doc/lispref/package.texi (Packaging Basics): Document it.
23568         * etc/NEWS: Document it.
23570 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
23572         Bump version of ntlm.el to 2.00
23573         * lisp/net/ntlm.el: Bump version to 2.00.  New maintainer.
23574         Add comm keyword.
23576 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
23578         * doc/misc/gnus.texi (Mail Source Specifiers):
23579         Allow :mailbox to be a list.
23581 2015-09-06  Dmitry Gutov  <dgutov@yandex.ru>
23583         * lisp/progmodes/etags.el (etags-tags-completion-table):
23584         Allow even one non-regular character before the implicit tag name.
23585         Reported at http://emacs.stackexchange.com/questions/15269/.
23587 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
23589         Add support for NTLMv2 authentication
23590         * lisp/net/ntlm.el (ntlm): New customization group.
23591         (ntlm-compatibility-level): New defcustom.
23592         (ntlm-compute-timestamp): New function.
23593         (ntlm-generate-nonce): Likewise.
23594         (ntlm-build-auth-response): Add support for NTLMv2 authentication.
23596 2015-09-06  Artur Malabarba  <bruce.connor.am@gmail.com>
23598         * lisp/emacs-lisp/package.el: Rename custom faces.
23599         All of the recently introduced faces, like `package-name-face', have
23600         been renamed to no end in `-face' to comply with the convention
23601         described in (info "(elisp) Defining Faces").
23602         (package-name, package-description)
23603         (package-status-built-in, package-status-external)
23604         (package-status-available, package-status-new)
23605         (package-status-held, package-status-disabled)
23606         (package-status-installed, package-status-dependency)
23607         (package-status-unsigned, package-status-incompat)
23608         (package-status-avail-obso): New faces.
23609         (package-menu--print-info-simple): Use them.
23611 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
23613         mail-source.el: Make the imap mail-source's :mailbox handle a list
23614         * lisp/gnus/mail-source.el (mail-source-fetch-imap):
23615         Allow :mailbox to be  a list.
23617 2015-09-06  Eric Abrahamsen  <eric@ericabrahamsen.net>
23619         nnimap.el: Handle nil arg to nnimap-request-group
23620         * lisp/gnus/nnimap.el (nnimap-request-group): Handle nil "info" arg.
23621         This arg isn't always passed in, check it's not nil before making it
23622         into a list.  The active arg will also be nil if the group is new,
23623         check for that.
23625 2015-09-06  Michael Albinus  <michael.albinus@gmx.de>
23627         File notifications: Support renaming over directory boundaries
23628         * lisp/filenotify.el (file-notify-handle-event):
23629         (file-notify--pending-event): Adapt docstring.
23630         (file-notify--descriptor, file-notify-callback): Reimplement in
23631         order to support renaming over directory boundaries.
23632         (file-notify-add-watch): Adapt `file-notify--descriptor' call.
23633         * doc/lispref/os.texi (File Notifications): Remove limitation of
23634         file renaming to the same directory.
23636 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
23638         Spelling fix (Bug#21420)
23640 2015-09-05  Nicolas Petton  <nicolas@petton.fr>
23642         Improve the semantic of map-some
23643         Update map-some to return the returned by the predicate, similar to
23644         seq-some.
23645         * lisp/emacs-lisp/map.el (map-some): Update the function to return the
23646           return value of the predicate.
23647         * test/automated/map-tests.el (test-map-some): Update the test to check
23648           for non-nil values only.
23650         Rename map-contains-key-p and map-some-p
23651         Remove the "-p" suffix from both function names.
23652         * lisp/emacs-lisp/map.el (map-contains-key, map-some):
23653           Rename the functions.
23654         * test/automated/map-tests.el (test-map-contains-key, test-map-some):
23655           Update both test functions.
23657         Improve the semantic of seq-some
23658         Update seq-some to return non-nil if the predicate returns non-nil for
23659         any element of the seq, in which case the returned value is the one
23660         returned by the predicate.
23661         * lisp/emacs-lisp/seq.el (seq-some): Update the function and its
23662           docstring.
23663         * test/automated/seq-tests.el (test-seq-some): Add a regression test.
23664         * doc/lispref/sequences.texi (Sequence Functions): Update the
23665           documentation for seq-some.
23667         Rename seq-some-p to seq-some and seq-contains-p to seq-contains
23668         * lisp/emacs-lisp/seq.el (seq-some, seq-contains): Rename the functions
23669           without the "-p" prefix.
23670         * test/automated/seq-tests.el (test-seq-some, test-seq-contains): Update
23671           the tests accordingly.
23672         * doc/lispref/sequences.texi (Sequence Functions): Update the
23673           documentation for seq.el.
23675 2015-09-05  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
23677         text-quoting-style for usage of fn names with ‘’
23678         * lisp/help.el (help--docstring-quote): Don’t assume
23679         text-quoting-style is ‘curve’ when generating usage strings for
23680         functions whose names contain curved quotes.
23682 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
23684         Fix fix for describe-function keybinding confusion
23685         This fixes a bug introduced by the previous patch.
23686         * lisp/help-fns.el (help-fns--signature):
23687         Last arg of help-fns--signature is now a buffer, or nil if a
23688         raw signature is wanted.  All callers changed.
23689         (describe-function-1): Use this to do the right thing with signatures.
23691 2015-09-05  Johan Bockgård  <bojohan@gnu.org>
23693         * doc/lispref/frames.texi (Mouse Tracking): Fix typo.
23695         Use PAT rather than UPAT in pcase macros
23696         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
23697         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>: Use PAT rather
23698           than UPAT.
23700 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
23702         Fix describe-function keybinding confusion
23703         * lisp/help-fns.el (describe-function-1): Compute signature
23704         in the original buffer, not in standard-output, so that
23705         substitute-command-keys uses the proper keybindings.
23706         This fixes Bug#21412, introduced in commit
23707         2015-06-11T10:23:46-0700!eggert@cs.ucla.edu.
23709 2015-09-05  Xue Fuqiao  <xfq.free@gmail.com>
23711         * doc/emacs/programs.texi (Program Modes): Remove an index entry.
23713 2015-09-05  Robert Pluim  <rpluim@gmail.com>  (tiny change)
23715         Avoid read error messages from 'inotify'
23716         * src/process.c (wait_reading_process_output): Add a
23717         'tls_available' set and manipulate it instead of 'Available' when
23718         checking TLS inputs.  Assign the value to 'Available' only if we
23719         find any TLS data waiting to be read.  This avoids error messages
23720         from 'inotify' that tries to read data it shouldn't.  (Bug#21337)
23722 2015-09-05  Eli Zaretskii  <eliz@gnu.org>
23724         Avoid errors in thing-at-point with 2nd argument non-nil
23725         * lisp/thingatpt.el (thing-at-point): Only call 'length' on
23726         sequences.  (Bug#21391)
23728 2015-09-05  Philip  <pipcet@gmail.com>  (tiny change)
23730         Fix segfaults due to using a stale face ID
23731         * src/xdisp.c (forget_escape_and_glyphless_faces): New function.
23732         (display_echo_area_1, redisplay_internal): Call it to avoid
23733         reusing stale face IDs for 'escape-glyph' and 'glyphless-char'
23734         faces, which could case a segfault if the frame's face cache was
23735         freed since the last redisplay.  (Bug#21394)
23736         * src/xfaces.c (free_realized_faces):
23737         Call forget_escape_and_glyphless_faces.
23738         * src/dispextern.h (forget_escape_and_glyphless_faces): Add prototype.
23740 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
23742         Fix minor problems with " in manual
23744 2015-09-04  Michael Albinus  <michael.albinus@gmx.de>
23746         * doc/misc/tramp.texi (Frequently Asked Questions): New item for ad-hoc
23747         multi-hop files.
23749 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
23751         Support automated ‘make check’ in non-C locale
23752         This lets the builder optionally test Emacs behavior in other locales.
23753         The C locale is still the default for tests.
23754         * test/automated/Makefile.in (TEST_LOCALE): New macro.
23755         (emacs): Use it.
23756         * test/automated/flymake-tests.el (flymake-tests--current-face):
23757         Use C locale for subprocesses so that tests behave as expected.
23758         * test/automated/python-tests.el:
23759         (python-shell-prompt-validate-regexps-1)
23760         (python-shell-prompt-validate-regexps-2)
23761         (python-shell-prompt-validate-regexps-3)
23762         (python-shell-prompt-validate-regexps-4)
23763         (python-shell-prompt-validate-regexps-5)
23764         (python-shell-prompt-validate-regexps-6)
23765         (python-shell-prompt-set-calculated-regexps-1):
23766         Adjust expected output to match locale.
23767         * test/automated/tildify-tests.el (tildify-test--test)
23768         (tildify-space-test--test, tildify-space-undo-test--test):
23769         This test assumes UTF-8 encoding.
23771 2015-09-03  Paul Eggert  <eggert@cs.ucla.edu>
23773         Fix some more docstring etc. quoting problems
23774         Mostly these fixes prevent the transliteration of apostrophes
23775         that should stay apostrophes.  Also, prefer curved quotes in
23776         Bahá’í proper names, as that’s the preferred Bahá’í style and
23777         these names are chock-full of non-ASCII characters anyway.
23778         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-autoload)
23779         (eieio-defclass-internal):
23780         * lisp/emacs-lisp/eieio.el (defclass):
23781         * lisp/hi-lock.el (hi-lock-mode):
23782         Don’t transliterate Lisp apostrophes when generating a
23783         doc string or diagnostic.
23784         * lisp/international/mule-diag.el (list-coding-systems-1):
23785         * lisp/international/ogonek.el (ogonek-jak, ogonek-how):
23786         * lisp/mail/sendmail.el (sendmail-query-user-about-smtp):
23787         * lisp/vc/ediff-mult.el (ediff-redraw-registry-buffer):
23788         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
23789         Substitute quotes before putting them in the help buffer.
23791 2015-09-03  Stefan Monnier  <monnier@iro.umontreal.ca>
23793         Re-add the notion of echo_prompt lost in the translation
23794         * src/keyboard.h (struct kboard): Replace echo_after_prompt with new
23795         echo_prompt which contains the actual string.  Update all uses.
23796         * src/keyboard.c (kset_echo_prompt): New function.
23797         (echo_update): Add echo_prompt at the very beginning.
23798         (read_char): Remove workaround for bug#19875, not needed any more.
23799         (read_key_sequence): Set echo_prompt rather than echo_string
23800         (bug#21403).
23801         (mark_kboards): Mark echo_prompt.
23803         Fix disassembly of non-compiled lexical functions (bug#21377)
23804         * lisp/emacs-lisp/bytecomp.el (byte-compile): Handle `closure' arg.
23805         * lisp/emacs-lisp/disass.el: Use lexical-binding.
23806         (disassemble): Recognize `closure's as well.
23807         (disassemble-internal): Use indirect-function and
23808         help-function-arglist, and accept `closure's.
23809         (disassemble-internal): Use interactive-form.
23810         (disassemble-1): Use functionp.
23812         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
23813         Don't compose inside verbatim blocks!
23815 2015-09-03  Mark Oteiza  <mvoteiza@udel.edu>
23817         * lisp/thingatpt.el (thing-at-point-uri-schemes): Add "man:"
23818         (bug#19441).
23820         * lisp/mpc.el (mpc--proc-connect): Handle unix sockets (bug#19394).
23822 2015-09-03  Dmitry Gutov  <dgutov@yandex.ru>
23824         vc-git-mode-line-string: Explicitly re-apply the face
23825         * lisp/vc/vc-git.el (vc-git-mode-line-string): Explicitly re-apply
23826         the face (bug#21404).
23828 2015-09-02  Paul Eggert  <eggert@cs.ucla.edu>
23830         Treat initial-scratch-message as a doc string
23831         * doc/emacs/building.texi (Lisp Interaction):
23832         * doc/lispref/os.texi (Startup Summary):
23833         * etc/NEWS: Document this.
23834         * lisp/startup.el (initial-scratch-message):
23835         Look up find-file’s key rather than hardcoding it.
23836         (command-line-1): Substitute the doc string.
23837         This also substitutes the quotes, which will help test display
23838         quoting at startup.
23840         Fix describe-char bug with glyphs on terminals
23841         * lisp/descr-text.el (describe-char): Terminals can have glyphs in
23842         buffers too, so don’t treat them differently from graphic displays.
23843         Without this fix, describe-char would throw an error on a terminal
23844         if given a glyph with a non-default face.
23846         Follow text-quoting-style in display table init
23847         This attempts to fix a problem reported by Alan Mackenzie in:
23848         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00112.html
23849         * doc/lispref/display.texi (Active Display Table):
23850         Mention how text-quoting-style affects it.
23851         * doc/lispref/help.texi (Keys in Documentation):
23852         Say how to set text-quoting-style in ~/.emacs.
23853         * etc/NEWS: Document the change.
23854         * lisp/startup.el (startup--setup-quote-display):
23855         Follow user preference if text-quoting-style is set.
23856         (command-line): Setup quote display again if user expresses
23857         a preference in .emacs.
23859 2015-09-02  K. Handa  <handa@gnu.org>
23861         Fix typo
23862         * src/ftfont.c (ftfont_drive_otf): otf_positioning_type_components_mask
23863         -> OTF_positioning_type_components_mask.
23865         Fix previous change
23866         * src/ftfont.c (ftfont_drive_otf): Remember some bits of
23867         OTF_Glyph->positioning_type in MFLTGlyphFT->libotf_positioning_type.
23869 2015-09-01  David Caldwell  <david@porkrind.org>  (tiny change)
23871         * lisp/vc/vc-hooks.el (vc-refresh-state): New command.
23872         Rename from vc-find-file-hook and make interactive.
23873         (vc-find-file-hook): Redefine as obsolete alias.
23875 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
23877         Escape ` and ' in doc
23878         Escape apostrophes and grave accents in docstrings if they are
23879         are supposed to stand for themselves and are not quotes.  Remove
23880         apostrophes from docstring examples like ‘'(calendar-nth-named-day
23881         -1 0 10 year)’ that confuse source code with data.  Do some other
23882         minor docstring fixups as well, e.g., insert a missing close quote.
23884 2015-09-01  Stefan Monnier  <monnier@iro.umontreal.ca>
23886         Generalize the prefix-command machinery of C-u
23887         * lisp/simple.el (prefix-command-echo-keystrokes-functions)
23888         (prefix-command-preserve-state-hook): New hooks.
23889         (internal-echo-keystrokes-prefix): New function.
23890         (prefix-command--needs-update, prefix-command--last-echo): New vars.
23891         (prefix-command-update, prefix-command-preserve): New functions.
23892         (reset-this-command-lengths): New compatibility definition.
23893         (universal-argument--mode): Call prefix-command-update.
23894         (universal-argument, universal-argument-more, negative-argument)
23895         (digit-argument): Call prefix-command-preserve-state.
23896         * src/keyboard.c: Call internal-echo-keystrokes-prefix to build
23897         the "prefix argument" to echo.
23898         (this_command_key_count_reset, before_command_key_count)
23899         (before_command_echo_length): Delete variables.
23900         (echo_add_key): Always add a space.
23901         (echo_char): Remove.
23902         (echo_dash): Don't give up when this_command_key_count is 0, since that
23903         is now the case after a prefix command.
23904         (echo_update): New function, extracted from echo_now.
23905         (echo_now): Use it.
23906         (add_command_key, read_char, record_menu_key): Remove old disabled code.
23907         (command_loop_1): Don't refrain from pushing an undo boundary when
23908         prefix-arg is set.  Remove other prefix-arg special case, now handled
23909         directly in the prefix commands instead.  But call echo_now if there's
23910         a prefix state to echo.
23911         (read_char, record_menu_key): Use echo_update instead of echo_char.
23912         (read_key_sequence): Use echo_now rather than echo_dash/echo_char.
23913         (Freset_this_command_lengths): Delete function.
23914         (syms_of_keyboard): Define Qinternal_echo_keystrokes_prefix.
23915         (syms_of_keyboard): Don't defsubr Sreset_this_command_lengths.
23916         * lisp/simple.el: Use those new hooks for C-u.
23917         (universal-argument--description): New function.
23918         (prefix-command-echo-keystrokes-functions): Use it.
23919         (universal-argument--preserve): New function.
23920         (prefix-command-preserve-state-hook): Use it.
23921         (command-execute): Call prefix-command-update if needed.
23922         * lisp/kmacro.el (kmacro-step-edit-prefix-commands)
23923         (kmacro-step-edit-prefix-index): Delete variables.
23924         (kmacro-step-edit-query, kmacro-step-edit-insert): Remove ad-hoc
23925         support for prefix arg commands.
23926         (kmacro-step-edit-macro): Don't bind kmacro-step-edit-prefix-index.
23927         * lisp/emulation/cua-base.el (cua--prefix-override-replay)
23928         (cua--shift-control-prefix): Use prefix-command-preserve-state.
23929         Remove now unused arg `arg'.
23930         (cua--prefix-override-handler, cua--prefix-repeat-handler)
23931         (cua--shift-control-c-prefix, cua--shift-control-x-prefix):
23932         Update accordingly.
23933         (cua--prefix-override-timeout): Don't call reset-this-command-lengths
23934         any more.
23935         (cua--keep-active, cua-exchange-point-and-mark): Don't set mark-active
23936         if the mark is not set.
23938 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
23940         Rework quoting in Emacs Lisp Introduction
23941         * doc/lispintro/emacs-lisp-intro.texi (Sample let Expression)
23942         (if in more detail, type-of-animal in detail, else): Rework the
23943         early example to use " rather than ' so that we don’t burden
23944         complete novices with the low-priority detail of text quoting style.
23945         (Complete zap-to-char, kill-region, Complete copy-region-as-kill)
23946         (kill-new function, kill-ring-yank-pointer)
23947         (Complete forward-sentence, Loading Files)
23948         (Code for current-kill, Code for current-kill, yank):
23949         Resurrect the Emacs 22 versions of the code, which uses grave
23950         quoting style in doc strings.
23951         (Complete zap-to-char): Mention how quoting works in doc strings.
23953         Setup quote display only if interactive
23954         * lisp/startup.el (command-line):
23955         Skip call to startup--setup-quote-display if noninteractive.
23956         Without this change, python-shell-prompt-validate-regexps-1
23957         fails in test/automated/python-tests.el when run in an
23958         en_US.utf8 locale on Fedora.
23960 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
23962         Use defalias at the top level
23963         * lisp/gnus/gnus-util.el (gnus-format-message):
23964         * lisp/net/tls.el (tls-format-message): Use defalias at the top level
23965         so as to make eval-and-compile unnecessary.  Thanks to Stefan Monnier.
23967 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
23969         terminal-init-w32console mimics command-line
23970         Problem reported by Eli Zaretskii.
23971         * lisp/startup.el (startup--setup-quote-display):
23972         New function, refactored from a part of ‘command-line’.
23973         (command-line): Use it.
23974         * lisp/term/w32console.el (terminal-init-w32console):
23975         Use it, so that this function stays consistent with ‘command-line’.
23977         Display replacement quotes with shadow glyphs
23978         * lisp/startup.el (command-line): When displaying ASCII
23979         replacements for curved quotes, use a shadow glyph instead of a
23980         regular one, to avoid ambiguity.
23982 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
23984         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Mask "Password:".
23986 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
23988         Docstring fixes re quotes in C code
23989         Fix some docstring quoting problems, mostly by escaping apostrophe.
23991 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
23993         Some Tramp password fixes
23994         * lisp/net/tramp.el (tramp-clear-passwd): Clear also the passwords
23995         of the hops.
23996         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Move "-p" "Password:"
23997         at the beginning of the command.  Otherwise, it could be
23998         interpreted as password prompt if the remote host echoes the
23999         command.
24000         (tramp-remote-coding-commands): Add "openssl enc -base64".
24002 2015-09-01  Dmitry Gutov  <dgutov@yandex.ru>
24004         Make vc-git-working-revision always return the commit hash
24005         * lisp/vc/vc-git.el (vc-git-working-revision):
24006         Return the commit hash (bug#21383).
24007         (vc-git--symbolic-ref): New function, extracted from above.
24008         (vc-git-mode-line-string): Use it.
24010 2015-09-01  K. Handa  <handa@gnu.org>
24012         Use the new type MFLTGlyphFT for MFLTGlyphString.glyphs
24013         * src/ftfont.c (MFLTGlyphFT): New type.
24014         (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_drive_otf)
24015         (ftfont_shape_by_flt): Make MFLTGlyphFT the actual type of
24016         elements in the array MFLTGlyphString.glyphs.
24018 2015-09-01  Stephen Leake  <stephen_leake@stephe-leake.org>
24020         Improve comments in elisp-mode.el, elisp-mode-tests.el
24021         * lisp/progmodes/elisp-mode.el: Clean up FIXMEs, comments.
24023         Delete Emacs 25 test in mode-local.el
24024         * lisp/cedet/mode-local.el (describe-mode-local-overload):
24025         Fix missed an edit in previous commit.
24027         Show all known mode-local overrides in *Help*
24028         * lisp/cedet/mode-local.el (describe-mode-local-overload):
24029         Assume Emacs 25. Add all known mode-local overrides.
24031 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
24033         * lisp/gnus/gnus-sum.el (gnus-summary-search-article):
24034         Ensure that the article where the search word is found is displayed
24035         and pointed to in the summary buffer.
24037 2015-08-31  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
24039         * lisp/newcomment.el (comment-dwim): Use `use-region-p'.
24040         When the region is active, but is empty (length 0), act as though
24041         the region was not active; that is, put a comment at the end of
24042         the line.  (Bug#21119)
24044 2015-08-31  Katsumi Yamaoka  <yamaoka@jpl.org>
24046         Port tls.el to older Emacs
24047         * lisp/net/tls.el (tls-format-message):
24048         Alias to format-message, or format if not available.
24049         (open-tls-stream): Use it.
24051 2015-08-31  Rüdiger Sonderfeld  <ruediger@c-plusplus.net>
24053         hideif.el: Recognize .h++ as C++ header
24054         * lisp/progmodes/hideif.el (hide-ifdef-header-regexp): Add .h++.
24056         isearch: Document character folding mode
24057         * lisp/isearch.el (isearch-forward):
24058         Mention `isearch-toggle-character-fold' in doc string.
24060 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
24062         Quoting fixes in ERC and Eshell
24063         * lisp/erc/erc-autoaway.el (erc-autoaway-set-away):
24064         * lisp/erc/erc-backend.el (define-erc-response-handler):
24065         * lisp/erc/erc-fill.el (erc-fill-static-center):
24066         * lisp/eshell/em-dirs.el (eshell-save-some-last-dir):
24067         * lisp/eshell/em-glob.el (eshell-glob-entries):
24068         * lisp/eshell/em-hist.el (eshell-save-some-history):
24069         * lisp/eshell/em-unix.el (eshell-remove-entries, eshell/rm)
24070         (eshell-shuffle-files):
24071         * lisp/eshell/esh-cmd.el (eshell-do-eval):
24072         * lisp/eshell/esh-proc.el (eshell-process-interact)
24073         (eshell-query-kill-processes):
24074         Respect ‘text-quoting-style’ in diagnostics and doc strings.
24076         Quoting fixes in Gnus
24077         * lisp/gnus/gnus-agent.el:
24078         (gnus-agent-possibly-synchronize-flags-server):
24079         * lisp/gnus/gnus-art.el (gnus-article-browse-delete-temp-files):
24080         * lisp/gnus/gnus-eform.el (gnus-edit-form):
24081         * lisp/gnus/gnus-group.el (gnus-group-edit-group)
24082         (gnus-group-nnimap-edit-acl):
24083         * lisp/gnus/gnus-topic.el (gnus-topic-edit-parameters):
24084         * lisp/gnus/mail-source.el (mail-source-delete-old-incoming):
24085         * lisp/gnus/message.el (message-strip-subject-encoded-words)
24086         (message-check-recipients, message-send-form-letter):
24087         * lisp/gnus/mm-decode.el (mm-display-part):
24088         * lisp/gnus/mm-uu.el (mm-uu-pgp-signed-extract-1):
24089         * lisp/gnus/mml-smime.el (mml-smime-get-dns-cert)
24090         (mml-smime-get-ldap-cert):
24091         * lisp/gnus/spam-report.el (spam-report-process-queue):
24092         Respect ‘text-quoting-style’ in diagnostics.
24093         * lisp/gnus/gnus-art.el (article-display-face)
24094         * lisp/gnus/gnus-fun.el (gnus-display-x-face-in-from):
24095         Use straight quoting in email.
24096         * lisp/gnus/rfc2231.el (rfc2231-decode-encoded-string):
24097         Escape apostrophes in doc strings.
24099         Quoting fixes in lisp mail, mh-e, net, url
24100         * lisp/mail/emacsbug.el (report-emacs-bug)
24101         (report-emacs-bug-hook): Use straight quotes in outgoing email,
24102         * lisp/mail/feedmail.el (feedmail-message-action-help-blat):
24103         * lisp/mail/rmail.el (rmail-unknown-mail-followup-to):
24104         * lisp/mail/rmailout.el (rmail-output-read-file-name):
24105         * lisp/net/imap.el (imap-interactive-login):
24106         * lisp/net/tls.el (open-tls-stream):
24107         * lisp/url/url-auth.el (url-register-auth-scheme):
24108         Respect ‘text-quoting-style’ in diagnostics.
24109         * lisp/mh-e/mh-e.el (mh-sortm-args):
24110         Quote docstring example using text quotes, not as a Lisp quote.
24112 2015-08-31  Stephen Leake  <stephen_leake@stephe-leake.org>
24114         Fix some byte-compiler warnings in EDE
24115         This fixes a bug that caused ede-generic-new-autoloader to overwrite the
24116         existing autoloader list, rather than add to it.
24117         * lisp/cedet/ede/auto.el (ede-project-class-files): Delete obsolete name
24118         argument to eieio class constructor.
24119         (ede-show-supported-projects): New.
24120         (ede-add-project-autoload): Replace obsolete `eieio-object-name-string'
24121         with (oref ... name).
24122         (ede-auto-load-project): Use slot name, not initarg key.
24123         * lisp/cedet/ede/generic.el (ede-generic-load)
24124         (ede-generic-find-matching-target): Use slot name, not initarg key.
24125         (ede-find-target): Use oref-default on class name.
24126         (ede-generic-new-autoloader): Delete obsolete name argument to eieio
24127         class constructor.
24128         (ede-enable-generic-projects): Make project type names unique.
24130 2015-08-31  Eli Zaretskii  <eliz@gnu.org>
24132         Fix directory accessibility tests for w32 network volumes
24133         * src/w32.c (faccessat): Don't fail with network volumes without a
24134         share.
24135         (w32_accessible_directory_p): Handle network volumes without a
24136         share.
24138         Fix handling long file names in readdir on MS-Windows
24139         * src/w32.c (sys_readdir): Append "\*" to the directory after
24140         converting it to UTF-16/ANSI, not before, to avoid overflowing the
24141         260-character limit on file names in filename_to_utf16/ansi.
24143         Make file-accessible-directory-p reliable on MS-Windows
24144         * src/w32.c (w32_accessible_directory_p): New function.
24145         * src/w32.h (w32_accessible_directory_p): Add prototype.
24146         * src/fileio.c (file_accessible_directory_p) [WINDOWSNT]: Call
24147         w32_accessible_directory_p to test a directory for accessibility
24148         by the current user.  (Bug#21346)
24149         (Ffile_accessible_directory_p): Remove the w32 specific caveat
24150         from the doc string.
24152 2015-08-31  Martin Rudalics  <rudalics@gmx.at>
24154         Don't call do_pending_window_change in signal handlers (Bug#21380)
24155         * src/gtkutil.c (xg_frame_resized):
24156         * src/xterm.c (x_set_window_size):
24157         * src/w32term.c (x_set_window_size): Don't call
24158         do_pending_window_change.
24160 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
24162         Quoting fixes in lisp/org
24163         * lisp/org/org-agenda.el (org-search-view, org-todo-list)
24164         (org-tags-view):
24165         * lisp/org/org-capture.el (org-capture-mode)
24166         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
24167         (org-ctags-ask-append-topic):
24168         * lisp/org/org.el (org-time-string-to-time)
24169         (org-time-string-to-absolute):
24170         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
24171         (org-ctags-ask-append-topic):
24172         * lisp/org/org.el (org-time-string-to-time)
24173         (org-time-string-to-absolute):
24174         Respect ‘text-quoting-style’ in diagnostics.
24175         * lisp/org/org-agenda.el (org-agenda-custom-commands)
24176         (org-agenda-dim-blocked-tasks): Plural of TODO is TODOs, not TODO’s.
24177         * lisp/org/org-capture.el (org-capture-fill-template):
24178         Avoid contraction in output file that might be ASCII.
24179         * lisp/org/org-compat.el (format-message):
24180         Define if not already defined, for backward compatibility.
24181         * lisp/org/org-src.el (org-edit-src-save):
24182         * lisp/org/org.el (org-cycle, org-ctrl-c-ctrl-c):
24183         Escape apostrophes in diagnostics.
24185         Treat “instead” strings as docstrings
24186         * lisp/emacs-lisp/bytecomp.el (byte-compile-form):
24187         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
24188         Substitute quotes in instead strings.
24190 2015-08-31  Nicolas Petton  <nicolas@petton.fr>
24192         Better documentation of seq-let
24193         * doc/lispref/sequences.texi (Sequence Functions): Rephrase the
24194         documentation of seq-let.
24196 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
24198         * lisp/international/ccl.el: Fix quoting.
24200         Quoting fixes in lisp/international and lisp/leim
24201         * lisp/international/ccl.el (ccl-dump, ccl-dump-call):
24202         * lisp/international/ja-dic-utl.el (skkdic-lookup-key):
24203         * lisp/international/mule-cmds.el:
24204         (select-safe-coding-system-interactively, leim-list-file-name):
24205         * lisp/international/quail.el (quail-use-package, quail-help):
24206         * lisp/international/titdic-cnv.el (tit-process-header)
24207         (miscdic-convert):
24208         Respect text quoting style in doc strings and diagnostics.
24209         * lisp/international/quail.el (lisp/international/quail.el):
24210         * lisp/leim/quail/ethiopic.el ("ethiopic"):
24211         Escape apostrophes in doc strings.
24213         Make ‘text-quoting-style’ a plain defvar
24214         It doesn’t need customization, as it’s likely useful only by experts.
24215         Suggested by Stefan Monnier in:
24216         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg01020.html
24217         * lisp/cus-start.el: Remove doc.c section for builtin customized vars.
24219         Quoting fixes in lisp/textmodes
24220         * lisp/textmodes/bibtex.el (bibtex-validate)
24221         (bibtex-validate-globally, bibtex-search-entries):
24222         * lisp/textmodes/ispell.el (ispell-command-loop):
24223         * lisp/textmodes/page-ext.el (search-pages, pages-directory):
24224         * lisp/textmodes/texinfmt.el (texinfmt-version)
24225         (texinfo-format-region, texinfo-format-buffer-1):
24226         * lisp/textmodes/two-column.el (2C-split):
24227         Respect text quoting style in doc strings and diagnostics.
24228         * lisp/textmodes/conf-mode.el (conf-mode-map, conf-quote-normal):
24229         * lisp/textmodes/sgml-mode.el (sgml-specials, sgml-mode):
24230         Escape apostrophes in doc strings.
24232         Documentation fixes re quotes
24233         Prefer curved quotes in examples if users will typically see
24234         curved quotes when the examples run.
24235         Mention format-message when appropriate.
24236         Don’t use @code in examples.
24237         Quote an apostrophe with @kbd.
24239         Quoting fixes in lisp/progmodes
24240         * lisp/progmodes/cc-engine.el (c-bos-report-error):
24241         * lisp/progmodes/cpp.el (cpp-edit-reset):
24242         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
24243         * lisp/progmodes/etags.el (etags-tags-apropos-additional)
24244         (etags-tags-apropos, list-tags, tags-apropos):
24245         * lisp/progmodes/executable.el (executable-set-magic):
24246         * lisp/progmodes/octave.el (octave-sync-function-file-names)
24247         (octave-help, octave-find-definition-default-filename)
24248         (octave-find-definition):
24249         Respect text quoting style in doc strings and diagnostics.
24250         * lisp/progmodes/cc-langs.el (c-populate-syntax-table):
24251         * lisp/progmodes/verilog-mode.el (verilog-auto-reset-widths):
24252         * lisp/progmodes/vhdl-mode.el (vhdl-electric-quote):
24253         Escape apostrophes in doc strings.
24254         * lisp/progmodes/cmacexp.el (c-macro-expansion):
24255         Use straight quoting in ASCII comment.
24256         * lisp/progmodes/idlwave.el (idlwave-auto-fill-split-string)
24257         (idlwave-pad-keyword):
24258         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate)
24259         (vhdl-electric-open-bracket, vhdl-electric-close-bracket):
24260         (vhdl-electric-semicolon, vhdl-electric-comma)
24261         (vhdl-electric-period, vhdl-electric-equal):
24262         Use directed quotes in diagnostics and doc strings.
24264 2015-08-30  Xue Fuqiao  <xfq.free@gmail.com>
24266         Minor documentation and NEWS tweak
24267         * doc/lispintro/emacs-lisp-intro.texi (fwd-para let):
24268         Add an index entry.
24269         * etc/NEWS: Fix a typo in character-fold-to-regexp.
24271 2015-08-30  Michael Albinus  <michael.albinus@gmx.de>
24273         * lisp/net/tramp-sh.el (tramp-convert-file-attributes):
24274         Revert patch from 2015-08-24.  Tramp shall behave like for local files.
24275         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
24276         Adapt test.
24278 2015-08-30  Paul Eggert  <eggert@cs.ucla.edu>
24280         Text quoting fixes in cedet, emulation, emacs-lisp
24281         * lisp/cedet/ede.el (ede-check-project-directory):
24282         * lisp/cedet/semantic/analyze/debug.el
24283         (semantic-analyzer-debug-insert-include-summary):
24284         * lisp/cedet/semantic/bovine/c.el (semantic-c-describe-environment):
24285         * lisp/cedet/semantic/decorate/include.el
24286         (semantic-decoration-unknown-include-describe)
24287         (semantic-decoration-all-include-summary):
24288         * lisp/cedet/semantic/ia.el (semantic-ia-fast-jump):
24289         * lisp/emulation/edt.el (edt-load-keys):
24290         * lisp/emulation/viper-cmd.el
24291         (viper-display-current-destructive-command)
24292         (viper-query-replace, viper-brac-function):
24293         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-compile):
24294         * lisp/emulation/viper-macs.el (viper-unrecord-kbd-macro):
24295         Respect text quoting style in doc string or diagnostic.
24296         * lisp/cedet/mode-local.el (describe-mode-local-overload):
24297         Use format-message to avoid overtranslating quotes.
24298         * lisp/emacs-lisp/checkdoc.el (checkdoc-in-sample-code-p):
24299         Escape an apostrophe in a docstring.
24300         * lisp/emacs-lisp/warnings.el (lwarn): Fix doc string.
24302 2015-08-29  Daniel Colascione  <dancol@dancol.org>
24304         Fix which-func for curly quotes: look for symbol, not message
24305         * lisp/progmodes/which-func.el (which-func-ff-hook): Look for new
24306         imenu-unavailable error symbol instead of trying to match message
24307         exactly.
24308         * lisp/imenu.el (imenu-unavailable): New error.
24309         (imenu-unavailable-error): New function.
24311 2015-08-29  Eli Zaretskii  <eliz@gnu.org>
24313         Fix Python tests on MS-Windows
24314         * test/automated/python-tests.el
24315         (python-shell-calculate-command-1): Run python-shell-interpreter
24316         through shell-quote-argument before comparing with what
24317         python-shell-calculate-command returns.
24318         (python-shell-calculate-pythonpath-1)
24319         (python-shell-calculate-pythonpath-2)
24320         (python-shell-calculate-process-environment-2): Use path-separator
24321         instead of a literal ':'.
24322         (python-shell-calculate-exec-path-2)
24323         (python-shell-calculate-exec-path-3)
24324         (python-shell-calculate-exec-path-4)
24325         (python-shell-with-environment-1)
24326         (python-shell-with-environment-2): Run "/env/bin" through
24327         expand-file-name before comparing with exec-path.  (Bug#21375)
24329 2015-08-29  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
24331         Use Core Text types/functions/variables/enumerators directly
24332         * src/macfont.h (FontDescriptorRef, FontRef, FontSymbolicTraits)
24333         (CharacterCollection): Remove typedefs.  All uses replaced with
24334         definitions.
24335         (MAC_FONT_NAME_ATTRIBUTE, MAC_FONT_FAMILY_NAME_ATTRIBUTE)
24336         (MAC_FONT_TRAITS_ATTRIBUTE, MAC_FONT_SIZE_ATTRIBUTE)
24337         (MAC_FONT_CASCADE_LIST_ATTRIBUTE)
24338         (MAC_FONT_CHARACTER_SET_ATTRIBUTE, MAC_FONT_LANGUAGES_ATTRIBUTE)
24339         (MAC_FONT_FORMAT_ATTRIBUTE, MAC_FONT_SYMBOLIC_TRAIT)
24340         (MAC_FONT_WEIGHT_TRAIT, MAC_FONT_WIDTH_TRAIT)
24341         (MAC_FONT_SLANT_TRAIT): Remove macros.  All uses replaced with
24342         definitions.
24343         (MAC_FONT_TRAIT_ITALIC, MAC_FONT_TRAIT_BOLD)
24344         (MAC_FONT_TRAIT_MONO_SPACE, MAC_FONT_TRAIT_COLOR_GLYPHS)
24345         (MAC_FONT_FORMAT_BITMAP)
24346         (MAC_CHARACTER_COLLECTION_IDENTITY_MAPPING)
24347         (MAC_CHARACTER_COLLECTION_ADOBE_JAPAN1): Remove enumerators.
24348         All uses replaced with definitions.
24349         (kCTFontTraitItalic, kCTFontTraitBold, kCTFontTraitMonoSpace)
24350         (kCTFontTraitColorGlyphs, kCTCharacterCollectionIdentityMapping)
24351         (kCTCharacterCollectionAdobeJapan1 kCTFontOrientationDefault):
24352         Add compatibility enumerators for older versions.
24353         (mac_font_descriptor_create_with_attributes)
24354         (mac_font_descriptor_create_matching_font_descriptors)
24355         (mac_font_descriptor_create_matching_font_descriptor)
24356         (mac_font_descriptor_copy_attribute)
24357         (mac_font_descriptor_supports_languages)
24358         (mac_font_create_with_name, mac_font_get_size)
24359         (mac_font_copy_family_name, mac_font_copy_character_set)
24360         (mac_font_get_glyphs_for_characters, mac_font_get_ascent)
24361         (mac_font_get_descent, mac_font_get_leading)
24362         (mac_font_get_underline_position)
24363         (mac_font_get_underline_thickness, mac_font_copy_graphics_font)
24364         (mac_font_copy_non_synthetic_table): Remove macros.  All uses
24365         replaced with definitions.
24366         (mac_font_create_preferred_family_for_attributes)
24367         (mac_font_get_advance_width_for_glyph)
24368         (mac_font_get_bounding_rect_for_glyph)
24369         (mac_font_create_available_families, mac_font_shape):
24370         Remove macros for renamed functions.
24371         (mac_nsctfont_copy_font_descriptor): Remove unused macro.
24372         * src/macfont.m (mac_font_descriptor_supports_languages):
24373         Rename from mac_ctfont_descriptor_supports_languages.
24374         (mac_font_create_preferred_family_for_attributes): Rename from
24375         mac_ctfont_create_preferred_family_for_attributes.
24376         (mac_font_get_advance_width_for_glyph): Rename from
24377         mac_ctfont_get_advance_width_for_glyph.
24378         Use kCTFontOrientationDefault also for older versions.
24379         (mac_font_get_bounding_rect_for_glyph): Rename from
24380         mac_ctfont_get_bounding_rect_for_glyph.
24381         Use kCTFontOrientationDefault also for older versions.
24382         (mac_font_create_available_families): Rename from
24383         mac_ctfont_create_available_families.
24384         (mac_font_equal_in_postscript_name): Rename from
24385         mac_ctfont_equal_in_postscript_name.  All uses changed.
24386         (mac_font_create_line_with_string_and_font): Rename from
24387         mac_ctfont_create_line_with_string_and_font.  All uses changed.
24388         (mac_font_shape): Rename from mac_ctfont_shape.
24389         (mac_font_family_compare): Remove unused declaration.
24391 2015-08-29  Paul Eggert  <eggert@cs.ucla.edu>
24393         Fix minor text quoting in calc, calendar, vc
24394         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
24395         * lisp/calc/calc-help.el (calc-j-prefix-help):
24396         * lisp/calc/calc-misc.el (calc-help):
24397         * lisp/calc/calc.el (calc-algebraic-mode, calc-mode):
24398         Escape an apostrophe in a docstring.
24399         * lisp/calc/calc-forms.el (calc-hms-notation):
24400         * lisp/calc/calc-mode.el (calc-display-raw, calc-algebraic-mode):
24401         Escape an apostrophe in a diagnostic.
24402         * lisp/calc/calc-misc.el (calc-help):
24403         * lisp/calendar/diary-lib.el (diary-include-files):
24404         * lisp/calendar/todo-mode.el (todo-prefix, todo-item-mark):
24405         * lisp/vc/diff-mode.el (diff-delete-trailing-whitespace):
24406         * lisp/vc/ediff-diff.el (ediff-same-contents):
24407         * lisp/vc/ediff-merg.el (ediff-re-merge):
24408         * lisp/vc/ediff-ptch.el (ediff-patch-file-internal):
24409         * lisp/vc/ediff-util.el (ediff-test-save-region)
24410         (ediff-status-info):
24411         * lisp/vc/ediff.el (ediff-merge-revisions)
24412         (ediff-merge-revisions-with-ancestor):
24413         * lisp/vc/pcvs.el (cvs-mode-checkout, cvs-vc-command-advice):
24414         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
24415         Respect text quoting style in doc string or diagnostic.
24416         * lisp/calc/calc-prog.el (calc-kbd-push, calc-kbd-pop):
24417         * lisp/vc/add-log.el (change-log-goto-source):
24418         Avoid double-formatting.
24419         * lisp/vc/ediff-init.el (format-message):
24420         New backward-compatibility alias.
24422 2015-08-28  Paul Eggert  <eggert@cs.ucla.edu>
24424         Fix minor text quoting problems in lisp top level
24425         * lisp/apropos.el (apropos-describe-plist):
24426         * lisp/cus-theme.el (customize-themes):
24427         * lisp/dired.el (dired-log):
24428         * lisp/help-fns.el (describe-variable):
24429         * lisp/hexl.el (hexl-insert-multibyte-char):
24430         * lisp/info.el (Info-finder-find-node):
24431         * lisp/json.el (json-read-string):
24432         * lisp/novice.el (disabled-command-function)
24433         (disabled-command-function):
24434         * lisp/startup.el (normal-mouse-startup-screen):
24435         * lisp/woman.el (WoMan-log, WoMan-warn):
24436         Respect text quoting style in doc string or diagnostic.
24437         * lisp/replace.el (replace-character-fold):
24438         * src/syntax.c (Fmodify_syntax_entry):
24439         Escape an apostrophe in a docstring.
24440         * lisp/tempo.el (tempo-define-template):
24441         Remove confusing apostrophe from docstring.
24442         * lisp/whitespace.el (whitespace-mark-x):
24443         Use directed quotes in docstring.
24445 2015-08-28  Simen Heggestøyl  <simenheg@gmail.com>
24447         Fix indentation rule in css-mode
24448         * lisp/textmodes/css-mode.el (css-smie-rules): Fix indentation of
24449         brackets in presence of pseudo-selectors.  (Bug#21328)
24451 2015-08-28  Eli Zaretskii  <eliz@gnu.org>
24453         Fix a bug in recording a macro while flyspell-mode is active
24454         * lisp/subr.el (sit-for): Don't call read-event when recording a
24455         macro.  (Bug#21329)
24457 2015-08-27  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
24459         Tweak startup screen quoting
24460         * lisp/startup.el (normal-splash-screen): Use standard
24461         "M-" abbrevation rather than a confusingly-different one.
24462         (normal-no-mouse-startup-screen): Follow ‘text-quoting-style’.
24464 2015-08-27  Paul Eggert  <eggert@cs.ucla.edu>
24466         Add test case for ‘format’ bug and refactor
24467         * src/editfns.c (styled_format): Refactor internally, mostly by
24468         moving declarations closer to uses.  This should not affect behavior.
24469         * test/automated/textprop-tests.el (textprop-tests-format): New test.
24471         Fix ‘format’ bug with property offsets
24472         * src/editfns.c (styled_format): Fix recently-introduced ‘format’
24473         bug in calculating string property offsets (Bug#21351).
24475         Use straight quotes in lib-src diagnostics
24476         These auxiliary programs can’t use Emacs’s text-quoting-style,
24477         and it’s too much trouble to redo that mechanism by hand.
24478         So just use straight quotes for now.
24479         * lib-src/ebrowse.c (main):
24480         * lib-src/emacsclient.c (decode_options, main):
24481         * lib-src/etags.c (Ada_help, default_C_help, Cplusplus_help)
24482         (Forth_help, HTML_help, Lisp_help, Makefile_help, Objc_help)
24483         (Perl_help, PHP_help, Python_help, Scheme_help, TeX_help, auto_help)
24484         (none_help, print_language_names, print_help, add_regex)
24485         (suggest_asking_for_help):
24486         * lib-src/make-docfile.c (write_c_args, scan_c_stream):
24487         Use straight quotes in diagnostics.
24489         ‘text-quoting-style’ fixes for admin
24490         * admin/admin.el (cusver-scan, cusver-check):
24491         * admin/authors.el (authors-canonical-file-name):
24492         * admin/bzrmerge.el (bzrmerge-missing):
24493         Respect ‘text-quoting-style’ in diagnostics.
24495 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
24497         Assume GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS
24498         This removes the need for GCPRO1 etc.  Suggested by Stefan Monnier in:
24499         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00918.html
24500         * doc/lispref/internals.texi (Writing Emacs Primitives):
24501         * etc/NEWS:
24502         Document the change.
24503         * src/alloc.c (gcprolist, dump_zombies, MAX_ZOMBIES, zombies)
24504         (nzombies, ngcs, avg_zombies, max_live, max_zombies, avg_live)
24505         (Fgc_status, check_gcpros, relocatable_string_data_p, gc-precise):
24506         * src/bytecode.c (mark_byte_stack) [BYTE_MARK_STACK]:
24507         * src/eval.c (gcpro_level) [DEBUG_GCPRO]:
24508         * src/lisp.h (struct handler.gcpro, struct gcpro, GC_MARK_STACK)
24509         (GC_USE_GCPROS_AS_BEFORE, GC_MAKE_GCPROS_NOOPS)
24510         (GC_MARK_STACK_CHECK_GCPROS, GC_USE_GCPROS_CHECK_ZOMBIES)
24511         (BYTE_MARK_STACK, GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5, GCPRO6)
24512         (GCPRO7, UNGCPRO, RETURN_UNGCPRO):
24513         Remove.  All uses removed.  The code now assumes
24514         GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS.
24515         * src/bytecode.c (relocate_byte_stack):
24516         Rename from unmark_byte_stack, since it now only relocates.
24517         All callers changed.
24518         * src/frame.c (make_frame): Add an IF_LINT to pacify GCC 5.2
24519         with GCPROs removed.
24520         * src/systime.h: Use EMACS_LISP_H as the canary instead of GCPRO1.
24521         * test/automated/finalizer-tests.el (finalizer-basic)
24522         (finalizer-circular-reference, finalizer-cross-reference)
24523         (finalizer-error):
24524         * test/automated/generator-tests.el (cps-test-iter-close-finalizer):
24525         Remove tests, as they depend on gc-precise.
24527 2015-08-26  Nicolas Petton  <nicolas@petton.fr>
24529         Improve seq-concatenate for new sequence types
24530         Use the new `seq-into-sequence' in seqs passed to `seq-concatenate' to
24531         ensure that concatenation happens on sequences only.  This makes it
24532         possible to use `seq-concatenate' for new types of seqs.
24533         * lisp/emacs-lisp/seq.el (seq-into-sequence, seq-concatenate):
24534         New function used in `seq-concatenate'.
24535         * test/automated/seq-tests.el (test-seq-into-sequence): New unit test
24536         for seq-into-sequence.
24538 2015-08-26  Stephen Leake  <stephen_leake@stephe-leake.org>
24540         Add mode local overrides to xref-find-definitions
24541         * lisp/cedet/mode-local.el (xref-mode-local--override-present)
24542         (xref-mode-local-overload): New; add mode local overrides to
24543         xref-find-definitions.
24544         * test/automated/elisp-mode-tests.el: Add mode local override tests.
24545         (xref-elisp-test-run): Handle indented defuns.
24546         (xref-elisp-generic-*): Improve doc strings.
24547         * lisp/progmodes/elisp-mode.el (elisp-xref-find-def-functions): New.
24548         (elisp--xref-find-definitions): Use it.
24550         Add mode local overrides to describe-function
24551         * lisp/cedet/mode-local.el (describe-mode-local-overload):
24552         New; add mode local overrides to describe-function.
24553         * etc/NEWS: Document change.
24555 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
24557         Prefer straight quoting in some etc text files
24558         These files are plain text and might be used by non-Emacs apps.
24559         They’re mostly ASCII, so just use straight quotes.
24561         Fix quoting in ‘message_with_string’
24562         * src/nsfont.m (nsfont_open): Use directed quotes in format; they
24563         should work now.
24564         * src/xdisp.c (message_to_stderr): New function, refactored from
24565         part of ‘message3_nolog’.
24566         (message3_nolog): Use it.
24567         (message_with_string): Use it.  Don’t mishandle NUL bytes when
24568         noninteractive.  Prefer AUTO_STRING when it’s most likely faster.
24569         Use ‘format-message’, not ‘format’, so that quotes are translated.
24571 2015-08-26  Eli Zaretskii  <eliz@gnu.org>
24573         Mention false positives of file-accessible-directory on w32
24574         * src/fileio.c (Ffile_accessible_directory_p): Doc fix.
24575         (Bug#21346)
24577 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
24579         Treat error strings as help
24580         * src/print.c (print_error_message): Translate quotes and command
24581         keys in errmsg so that users see, e.g., "Symbol’s value as
24582         variable is void: foo" when text-quoting-style is curved.
24584 2015-08-26  Michael Albinus  <michael.albinus@gmx.de>
24586         * lisp/net/tramp-cache.el (top): Use `message', not `format-message'.
24588 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
24590         Top-level elisp files respect ‘text-quoting-style’
24591         In top-level elisp files, use format-message in diagnostic formats,
24592         so that they follow user preference as per ‘text-quoting-style’
24593         rather than being hard-coded to quote `like this'.
24594         * lisp/allout.el (allout-get-configvar-values):
24595         * lisp/apropos.el (apropos-symbols-internal):
24596         * lisp/dired-aux.el (dired-do-shell-command, dired-create-files)
24597         (dired-do-create-files-regexp, dired-create-files-non-directory):
24598         * lisp/dired-x.el (dired-do-run-mail):
24599         * lisp/dired.el (dired-log, dired-dnd-handle-local-file):
24600         * lisp/disp-table.el (standard-display-european):
24601         * lisp/find-dired.el (find-dired):
24602         * lisp/forms.el (forms-mode):
24603         * lisp/ido.el (ido-buffer-internal):
24604         * lisp/info.el (Info-index-next):
24605         * lisp/outline.el (outline-invent-heading):
24606         * lisp/printing.el (pr-ps-outfile-preprint, pr-i-ps-send):
24607         * lisp/proced.el (proced-log):
24608         * lisp/ps-print.el (ps-print-preprint, ps-get-size):
24609         * lisp/recentf.el (recentf-open-files, recentf-save-list):
24610         * lisp/savehist.el (savehist-save):
24611         * lisp/server.el (server-ensure-safe-dir):
24612         * lisp/ses.el (ses-rename-cell):
24613         * lisp/simple.el (list-processes--refresh):
24614         * lisp/startup.el (command-line):
24615         * lisp/strokes.el (strokes-unset-last-stroke)
24616         (strokes-execute-stroke):
24617         Use format-message so that quotes are restyled.
24618         * lisp/cus-edit.el (custom-raised-buttons, customize-browse):
24619         Don’t quote ‘raised’.
24620         * lisp/descr-text.el (describe-char):
24621         * lisp/dirtrack.el (dirtrack-debug-message):
24622         * lisp/hexl.el (hexl-insert-multibyte-char):
24623         Apply substitute-command-keys to help string.
24624         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
24625         (wdired-do-perm-changes):
24626         Let dired-log do the formatting.
24628 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
24630         Go back to grave quoting in Tramp
24631         * lisp/net/tramp-adb.el:
24632         * lisp/net/tramp-cache.el:
24633         * lisp/net/tramp-compat.el:
24634         * lisp/net/tramp-gvfs.el:
24635         * lisp/net/tramp-gw.el:
24636         * lisp/net/tramp-sh.el:
24637         * lisp/net/tramp-smb.el:
24638         * lisp/net/tramp.el:
24639         Stick with grave quoting in diagnostics strings.  This is more
24640         portable to older Emacs, desirable for Tramp.
24641         * lisp/net/tramp-cache.el: Use ‘format-message’, not ‘format’,
24642         for diagnostic that needs requoting.
24643         * lisp/net/tramp-compat.el (format-message):
24644         Fall back on simple ‘format’, since that’s good enough now.
24646         Go back to grave quoting in Gnus
24647         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
24648         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
24649         (gnus-agent-fetch-headers):
24650         * lisp/gnus/gnus-int.el (gnus-start-news-server):
24651         * lisp/gnus/gnus-registry.el:
24652         (gnus-registry--split-fancy-with-parent-internal)
24653         (gnus-registry-post-process-groups):
24654         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
24655         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
24656         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
24657         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
24658         * lisp/gnus/spam.el (spam-check-blackholes):
24659         Stick with grave quoting in diagnostics strings.  This is more
24660         portable to older Emacs, desirable for Gnus.
24662         Fix customization of text-quoting-style
24663         * lisp/cus-edit.el (custom-guess-type, custom-variable-documentation):
24664         * lisp/wid-edit.el (widget-docstring):
24665         Get raw docstring here since it’s cooked later and should not be
24666         cooked twice.
24667         * lisp/cus-edit.el (custom-group-value-create):
24668         Cook the docstring before inserting it.
24669         * lisp/cus-start.el (text-quoting-style): Quote the customization
24670         docstrings according to the new rules.  Give curved examples.
24672         format-message now curves ` and '
24673         That way, the caller doesn’t have to use curved quotes to
24674         get diagnostics that match the text-quoting-style preferences.
24675         Suggested by Dmitry Gutov in:
24676         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00893.html
24677         This means we no longer need %qs, so remove that format.
24678         While we’re at it, fix an unlikely bug and lessen the pressure
24679         on the garbage collector by processing the string once rather
24680         than twice in the usual case.
24681         * doc/lispref/strings.texi (Formatting Strings):
24682         * etc/NEWS: Document this.
24683         * lisp/subr.el (format-message): Remove; now done in C.
24684         * src/callint.c (Fcall_interactively):
24685         * src/editfns.c (Fmessage, Fmessage_box):
24686         Use Fformat_message instead of Finternal__text_restyle
24687         followed by Fformat.
24688         * src/doc.c (LSQM, RSQM): Remove; all uses changed to use
24689         uLSQM and uRSQM.
24690         (Fsubstitute_command_keys): Prefer AUTO_STRING to build_string
24691         when pure ASCII now suffices.  Fix unlikely bug when parsing
24692         unibyte string containing non-ASCII bytes.  Use inline code
24693         rather than memcpy, as it’s a tiny number of bytes.
24694         (Finternal__text_restyle): Remove; no longer used.
24695         (syms_of_doc): Don’t declare it.
24696         * src/editfns.c (Fformat): Rewrite in terms of new function
24697         ‘styled_format’.
24698         (Fformat_message): New function, moved here from subr.el.
24699         (styled_format): New function, with the old guts of Fformat,
24700         except it now optionally transliterates quotes, and it transliterates
24701         traditional grave accent and apostrophe quoting as well.
24702         Remove recently-added q flag; no longer needed or used.
24703         (syms_of_editfns): Define format-message.
24704         * src/lisp.h (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
24705         Remove; no longer need to be global symbols.
24706         * src/xdisp.c (vadd_to_log): Use Fformat_message, not Fformat,
24707         so that callers can use `%s'.
24708         * src/image.c (image_size_error, xbm_load_image, xbm_load)
24709         (xpm_load, pbm_load, png_load_body, jpeg_load_body, tiff_load)
24710         (gif_load, imagemagick_load_image, imagemagick_load, svg_load)
24711         (svg_load_image, gs_load, x_kill_gs_process):
24712         * src/lread.c (load_warn_old_style_backquotes):
24713         * src/xfaces.c (load_pixmap):
24714         * src/xselect.c (x_clipboard_manager_error_1):
24715         Use `%s' instead of %qs in formats.
24717 2015-08-25  Eli Zaretskii  <eliz@gnu.org>
24719         Minor fixes in doc/emacs/search.texi
24720         * doc/emacs/search.texi (Basic Isearch): Fix a typo.
24721         (Special Isearch): Use @w{} to generate several consecutive spaces
24722         with Texinfo 6.  (Bug#21345)
24724 2015-08-25  Michael Albinus  <michael.albinus@gmx.de>
24726         * lisp/net/tramp-sh.el (tramp-awk-encode, tramp-awk-decode)
24727         (tramp-awk-coding-test): New defconsts.
24728         (tramp-remote-coding-commands): Use them.
24729         (tramp-find-inline-encoding): Check for Perl only if necessary.
24731 2015-08-25  Xue Fuqiao  <xfq.free@gmail.com>
24733         * doc/lispintro/emacs-lisp-intro.texi (Run a Program): Add some
24734         index entries for the special form `quote'.
24736 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
24738         Spelling fixes
24740         Gnus format-message typo fix
24741         * lisp/gnus/gnus-util.el (gnus-format-message):
24742         Fix typo when running in older Emacs.
24744         Prefer directed to neutral quotes in docstings and diagnostics.
24745         In docstrings, escape apostrophes that would otherwise be translated
24746         to curved quotes using the newer, simpler rules.
24747         * admin/unidata/unidata-gen.el (unidata-gen-table):
24748         * lisp/align.el (align-region):
24749         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet):
24750         * lisp/bookmark.el (bookmark-default-annotation-text):
24751         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
24752         * lisp/calc/calc-lang.el (math-read-giac-subscr)
24753         (math-read-math-subscr):
24754         * lisp/calc/calc-misc.el (report-calc-bug):
24755         * lisp/calc/calc-prog.el (calc-fix-token-name)
24756         (calc-read-parse-table-part):
24757         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
24758         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
24759         * lisp/dabbrev.el (dabbrev-expand):
24760         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
24761         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
24762         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
24763         * lisp/emulation/viper-cmd.el (viper-toggle-search-style):
24764         * lisp/erc/erc-button.el (erc-nick-popup):
24765         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login):
24766         * lisp/eshell/em-dirs.el (eshell/cd):
24767         * lisp/eshell/em-glob.el (eshell-glob-regexp):
24768         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
24769         * lisp/eshell/esh-arg.el (eshell-parse-arguments):
24770         * lisp/eshell/esh-opt.el (eshell-show-usage):
24771         * lisp/files-x.el (modify-file-local-variable):
24772         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer)
24773         (filesets-update-pre010505):
24774         * lisp/find-cmd.el (find-generic, find-to-string):
24775         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
24776         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
24777         (gnus-agent-fetch-headers):
24778         * lisp/gnus/gnus-int.el (gnus-start-news-server):
24779         * lisp/gnus/gnus-registry.el:
24780         (gnus-registry--split-fancy-with-parent-internal):
24781         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
24782         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
24783         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
24784         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
24785         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
24786         * lisp/gnus/spam.el (spam-check-blackholes):
24787         * lisp/mail/feedmail.el (feedmail-run-the-queue):
24788         * lisp/mpc.el (mpc-playlist-rename):
24789         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
24790         * lisp/net/mairix.el (mairix-widget-create-query):
24791         * lisp/net/tramp-cache.el:
24792         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
24793         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
24794         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
24795         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
24796         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
24797         (org-babel-goto-named-result):
24798         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
24799         * lisp/org/ob-ref.el (org-babel-ref-resolve):
24800         * lisp/org/org-agenda.el (org-agenda-prepare):
24801         * lisp/org/org-bibtex.el (org-bibtex-fields):
24802         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
24803         (org-clock-resolve):
24804         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
24805         * lisp/org/org-habit.el (org-habit-parse-todo):
24806         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
24807         (org-mouse-context-menu):
24808         * lisp/org/org-table.el (org-table-edit-formulas):
24809         * lisp/org/ox.el (org-export-async-start):
24810         * lisp/play/dunnet.el (dun-score, dun-help, dun-endgame-question)
24811         (dun-rooms, dun-endgame-questions):
24812         * lisp/progmodes/ada-mode.el (ada-goto-matching-start):
24813         * lisp/progmodes/ada-xref.el (ada-find-executable):
24814         * lisp/progmodes/antlr-mode.el (antlr-options-alists):
24815         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
24816         (flymake-start-syntax-check-process):
24817         * lisp/progmodes/python.el (python-define-auxiliary-skeleton):
24818         * lisp/progmodes/sql.el (sql-comint):
24819         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
24820         * lisp/server.el (server-get-auth-key):
24821         * lisp/subr.el (version-to-list):
24822         * lisp/textmodes/reftex-ref.el (reftex-label):
24823         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
24824         * lisp/vc/ediff-diff.el (ediff-same-contents):
24825         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
24826         * test/automated/tramp-tests.el (tramp-test33-asynchronous-requests):
24827         Use directed rather than neutral quotes in diagnostics.
24829         Treat ' like ’ even when not matching `
24830         This is simpler and easier to explain, and should encourage better
24831         typography.  Do this in Electric Quote mode and when translating
24832         quotes in docstrings.  Inspired by a suggestion by Dmitry Gutov in:
24833         https://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00806.html
24834         * doc/emacs/text.texi (Quotation Marks):
24835         * doc/lispref/help.texi (Keys in Documentation):
24836         * etc/NEWS:
24837         Document this.
24838         * lisp/electric.el (electric-quote-post-self-insert-function):
24839         * src/doc.c (Fsubstitute_command_keys):
24840         Always treat ' like ’ even when not matched by an open quote.
24842 2015-08-25  Glenn Morris  <rgm@gnu.org>
24844         * doc/emacs/cal-xtra.texi (Holiday Customizing): Fix typo in example.
24845         * lisp/calendar/holidays.el (calendar-holidays): Fix doc typo.
24847 2015-08-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
24849         * src/macfont.m (macfont_create_family_with_symbol):
24850         Accept localized names.
24852 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
24854         Tramp diagnostics as per ‘text-quoting-style’
24855         * lisp/net/tramp-adb.el (tramp-adb-handle-file-truename)
24856         (tramp-adb-get-ls-command, tramp-adb-handle-make-directory)
24857         (tramp-adb-handle-delete-directory)
24858         (tramp-adb-handle-delete-file)
24859         (tramp-adb-handle-file-local-copy)
24860         (tramp-adb-handle-write-region, tramp-adb-handle-copy-file)
24861         (tramp-adb-send-command-and-check, tramp-adb-wait-for-output)
24862         (tramp-adb-maybe-open-connection):
24863         * lisp/net/tramp-cache.el:
24864         * lisp/net/tramp-compat.el (tramp-compat-temporary-file-directory)
24865         (tramp-compat-octal-to-decimal)
24866         (tramp-compat-coding-system-change-eol-conversion):
24867         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler)
24868         (tramp-gvfs-do-copy-or-rename-file)
24869         (tramp-gvfs-handle-delete-directory)
24870         (tramp-gvfs-handle-delete-file)
24871         (tramp-gvfs-handle-expand-file-name)
24872         (tramp-gvfs-handle-file-local-copy)
24873         (tramp-gvfs-handle-file-notify-add-watch)
24874         (tramp-gvfs-handle-make-directory)
24875         (tramp-gvfs-handle-write-region, tramp-gvfs-url-file-name):
24876         * lisp/net/tramp-gw.el (tramp-gw-gw-proc-sentinel)
24877         (tramp-gw-aux-proc-sentinel, tramp-gw-open-connection):
24878         * lisp/net/tramp-sh.el (tramp-sh-handle-file-truename)
24879         (tramp-sh-handle-set-visited-file-modtime)
24880         (tramp-sh-handle-set-file-modes)
24881         (tramp-sh-handle-file-name-all-completions)
24882         (tramp-sh-handle-add-name-to-file, tramp-do-copy-or-rename-file)
24883         (tramp-do-copy-or-rename-file-directly)
24884         (tramp-do-copy-or-rename-file-out-of-band)
24885         (tramp-sh-handle-make-directory)
24886         (tramp-sh-handle-delete-directory, tramp-sh-handle-delete-file)
24887         (tramp-sh-handle-insert-directory, tramp-process-sentinel)
24888         (tramp-sh-handle-start-file-process)
24889         (tramp-sh-handle-file-local-copy)
24890         (tramp-sh-handle-write-region, tramp-sh-handle-vc-registered)
24891         (tramp-sh-handle-file-notify-add-watch, tramp-maybe-send-script)
24892         (tramp-find-file-exists-command, tramp-open-shell)
24893         (tramp-find-shell)
24894         (tramp-open-connection-setup-interactive-shell)
24895         (tramp-find-inline-encoding, tramp-find-inline-compress)
24896         (tramp-compute-multi-hops, tramp-maybe-open-connection)
24897         (tramp-wait-for-output, tramp-send-command-and-check)
24898         (tramp-send-command-and-read, tramp-get-remote-path)
24899         (tramp-get-ls-command, tramp-get-ls-command-with-dired)
24900         (tramp-get-ls-command-with-quoting-style)
24901         (tramp-get-test-command, tramp-get-remote-ln)
24902         (tramp-get-remote-perl, tramp-get-remote-stat)
24903         (tramp-get-remote-readlink, tramp-get-remote-trash)
24904         (tramp-get-remote-touch, tramp-get-remote-gvfs-monitor-dir)
24905         (tramp-get-remote-inotifywait, tramp-get-remote-id)
24906         (tramp-get-remote-python):
24907         * lisp/net/tramp-smb.el (tramp-smb-errors)
24908         (tramp-smb-handle-add-name-to-file, tramp-smb-handle-copy-file)
24909         (tramp-smb-handle-delete-directory)
24910         (tramp-smb-handle-delete-file)
24911         (tramp-smb-handle-file-local-copy)
24912         (tramp-smb-handle-make-directory)
24913         (tramp-smb-handle-make-directory-internal)
24914         (tramp-smb-handle-make-symbolic-link)
24915         (tramp-smb-handle-rename-file, tramp-smb-handle-set-file-acl)
24916         (tramp-smb-handle-set-file-modes)
24917         (tramp-smb-handle-write-region, tramp-smb-get-file-entries):
24918         * lisp/net/tramp.el (tramp-debug-message, tramp-error)
24919         (tramp-process-actions):
24920         Generate diagnostics according to ‘text-quoting-style’, by
24921         using curved quotes in format strings and ‘format-message’
24922         when appropriate.
24923         * lisp/net/tramp-compat.el (format-message):
24924         Define a replacement, if it’s an older version of Emacs
24925         that doesn’t have it already.
24927         * etc/NEWS: Clarify text-quoting-style and electric-quote-mode.
24929 2015-08-24  Xue Fuqiao  <xfq.free@gmail.com>
24931         Fix documentation for `save-excursion'
24932         * doc/lispref/positions.texi (Excursions):
24933         * doc/lispintro/emacs-lisp-intro.texi (save-excursion)
24934         (Template for save-excursion, Point and mark): `save-excursion'
24935         does not save&restore the mark any more.
24937 2015-08-24  Michael Albinus  <michael.albinus@gmx.de>
24939         * lisp/net/tramp-sh.el (tramp-stat-marker, tramp-stat-quoted-marker):
24940         New defconsts.
24941         (tramp-do-file-attributes-with-stat)
24942         (tramp-do-directory-files-and-attributes-with-stat): Use them.
24943         (tramp-convert-file-attributes): Remove double slashes in symlinks.
24944         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
24945         Handle symlinks with "//" in the file name.
24947         Revert fbb5531fa11d13854b274d28ccd329c9b6652cfc for tramp.el.
24949 2015-08-24  Nicolas Petton  <nicolas@petton.fr>
24951         Fix cl-subseq and cl-concatenate
24952         * lisp/emacs-lisp/cl-extra.el (cl-subseq, cl-concatenate): Do not use
24953         seq functions.
24954         * lisp/emacs-lisp/seq.el (seq-concatenate): Call cl-concatenate in
24955         seq-concatenate.
24957 2015-08-24  Pip Cet  <pipcet@gmail.com>  (tiny change)
24959         Fix full-screen code when there is no window manager (Bug#21317)
24960         * src/xterm.h (x_wm_supports): Declare external.
24961         * src/xterm.c (wm_suppports): Rename to `x_wm_supports', export.
24962         (do_ewmh_fullscreen, x_ewmh_activate_frame): Adjust for rename.
24963         (x_check_fullscreen): Call `x_wm_set_size_hint', restore
24964         `fullscreen' frame parameter.
24965         * src/gtkutil.c (x_wm_set_size_hint): Set size hints when running
24966         without a window manager.
24968 2015-08-24  Glenn Morris  <rgm@gnu.org>
24970         * lisp/version.el (emacs-version): No longer include build host.
24971         * doc/lispref/intro.texi (Version Info): Update example.
24973 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
24975         * doc/lispref/elisp.texi: Fix typo in previous change.
24977         More-conservative ‘format’ quote restyling
24978         Instead of restyling curved quotes for every call to ‘format’,
24979         create a new function ‘format-message’ that does the restyling,
24980         and using the new function instead of ‘format’ only in contexts
24981         where this seems appropriate.
24982         Problem reported by Dmitry Gutov and Andreas Schwab in:
24983         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00826.html
24984         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00827.html
24985         * doc/lispref/commands.texi (Using Interactive):
24986         * doc/lispref/control.texi (Signaling Errors, Signaling Errors):
24987         * doc/lispref/display.texi (Displaying Messages, Progress):
24988         * doc/lispref/elisp.texi:
24989         * doc/lispref/help.texi (Keys in Documentation):
24990         * doc/lispref/minibuf.texi (Minibuffer Misc):
24991         * doc/lispref/strings.texi (Formatting Strings):
24992         * etc/NEWS:
24993         Document the changes.
24994         * lisp/abbrev.el (expand-region-abbrevs):
24995         * lisp/apropos.el (apropos-library):
24996         * lisp/calc/calc-ext.el (calc-record-message)
24997         (calc-user-function-list):
24998         * lisp/calc/calc-help.el (calc-describe-key, calc-full-help):
24999         * lisp/calc/calc-lang.el (math-read-big-balance):
25000         * lisp/calc/calc-store.el (calc-edit-variable):
25001         * lisp/calc/calc-units.el (math-build-units-table-buffer):
25002         * lisp/calc/calc-yank.el (calc-edit-mode):
25003         * lisp/calendar/icalendar.el (icalendar-export-region)
25004         (icalendar--add-diary-entry):
25005         * lisp/cedet/mode-local.el (mode-local-print-binding)
25006         (mode-local-describe-bindings-2):
25007         * lisp/cedet/semantic/complete.el (semantic-completion-message):
25008         * lisp/cedet/semantic/edit.el (semantic-parse-changes-failed):
25009         * lisp/cedet/semantic/wisent/comp.el (wisent-log):
25010         * lisp/cedet/srecode/insert.el (srecode-insert-show-error-report):
25011         * lisp/descr-text.el (describe-text-properties-1, describe-char):
25012         * lisp/dframe.el (dframe-message):
25013         * lisp/dired-aux.el (dired-query):
25014         * lisp/emacs-lisp/byte-opt.el (byte-compile-log-lap-1):
25015         * lisp/emacs-lisp/bytecomp.el (byte-compile-log)
25016         (byte-compile-log-file, byte-compile-warn, byte-compile-form):
25017         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
25018         (cconv-analyze-form):
25019         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
25020         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
25021         * lisp/emacs-lisp/cl-macs.el (cl-symbol-macrolet):
25022         * lisp/emacs-lisp/edebug.el (edebug-format):
25023         * lisp/emacs-lisp/eieio-core.el (eieio-oref):
25024         * lisp/emacs-lisp/eldoc.el (eldoc-minibuffer-message)
25025         (eldoc-message):
25026         * lisp/emacs-lisp/elint.el (elint-file, elint-log):
25027         * lisp/emacs-lisp/find-func.el (find-function-library):
25028         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
25029         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
25030         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
25031         * lisp/emacs-lisp/package.el (package-compute-transaction)
25032         (package-install-button-action, package-delete-button-action)
25033         (package-menu--list-to-prompt):
25034         * lisp/emacs-lisp/timer.el (timer-event-handler):
25035         * lisp/emacs-lisp/warnings.el (lwarn, warn):
25036         * lisp/emulation/viper-cmd.el:
25037         (viper-toggle-parse-sexp-ignore-comments)
25038         (viper-kill-buffer, viper-brac-function):
25039         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
25040         * lisp/facemenu.el (facemenu-add-new-face):
25041         * lisp/faces.el (face-documentation, read-face-name)
25042         (face-read-string, read-face-font, describe-face):
25043         * lisp/files.el (find-alternate-file, hack-local-variables)
25044         (hack-one-local-variable--obsolete, write-file)
25045         (basic-save-buffer, delete-directory):
25046         * lisp/format.el (format-write-file, format-find-file)
25047         (format-insert-file):
25048         * lisp/help-fns.el (help-fns--key-bindings)
25049         (help-fns--compiler-macro, help-fns--obsolete)
25050         (help-fns--interactive-only, describe-function-1)
25051         (describe-variable):
25052         * lisp/help.el (describe-mode):
25053         * lisp/info-xref.el (info-xref-output):
25054         * lisp/info.el (Info-virtual-index-find-node)
25055         (Info-virtual-index, info-apropos):
25056         * lisp/international/kkc.el (kkc-error):
25057         * lisp/international/mule-cmds.el:
25058         (select-safe-coding-system-interactively)
25059         (select-safe-coding-system, describe-input-method):
25060         * lisp/international/mule-conf.el (code-offset):
25061         * lisp/international/mule-diag.el (describe-character-set)
25062         (list-input-methods-1):
25063         * lisp/international/quail.el (quail-error):
25064         * lisp/minibuffer.el (minibuffer-message):
25065         * lisp/mpc.el (mpc--debug):
25066         * lisp/msb.el (msb--choose-menu):
25067         * lisp/net/ange-ftp.el (ange-ftp-message):
25068         * lisp/net/gnutls.el (gnutls-message-maybe):
25069         * lisp/net/newst-backend.el (newsticker--sentinel-work):
25070         * lisp/net/newst-treeview.el (newsticker--treeview-load):
25071         * lisp/net/nsm.el (nsm-query-user):
25072         * lisp/net/rlogin.el (rlogin):
25073         * lisp/net/soap-client.el (soap-warning):
25074         * lisp/net/tramp.el (tramp-debug-message):
25075         * lisp/nxml/nxml-outln.el (nxml-report-outline-error):
25076         * lisp/nxml/nxml-parse.el (nxml-parse-error):
25077         * lisp/nxml/rng-cmpct.el (rng-c-error):
25078         * lisp/nxml/rng-match.el (rng-compile-error):
25079         * lisp/nxml/rng-uri.el (rng-uri-error):
25080         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
25081         * lisp/org/org-ctags.el:
25082         (org-ctags-ask-rebuild-tags-file-then-find-tag):
25083         * lisp/proced.el (proced-log):
25084         * lisp/progmodes/ebnf2ps.el (ebnf-log):
25085         * lisp/progmodes/flymake.el (flymake-log):
25086         * lisp/progmodes/vhdl-mode.el (vhdl-warning-when-idle):
25087         * lisp/replace.el (occur-1):
25088         * lisp/simple.el (execute-extended-command)
25089         (undo-outer-limit-truncate, define-alternatives):
25090         * lisp/startup.el (command-line):
25091         * lisp/subr.el (error, user-error, add-to-list):
25092         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
25093         (tutorial--find-changed-keys):
25094         * src/callint.c (Fcall_interactively):
25095         * src/editfns.c (Fmessage, Fmessage_box):
25096         Restyle the quotes of format strings intended for use as a
25097         diagnostic, when restyling seems appropriate.
25098         * lisp/subr.el (format-message): New function.
25099         * src/doc.c (Finternal__text_restyle): New function.
25100         (syms_of_doc): Define it.
25102 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
25104         * etc/NEWS: The new ‘q’ flag is not an incompatible change.
25106 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
25108         python.el: Fix python-shell-buffer-substring on indented code
25109         (Bug#21086)
25110         * lisp/progmodes/python.el (python-shell-buffer-substring):
25111         Respect current line indentation when calculating string.
25112         * test/automated/python-tests.el
25113         (python-shell-buffer-substring-10)
25114         (python-shell-buffer-substring-11)
25115         (python-shell-buffer-substring-12): New tests.
25117 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
25119         Fix minor glitches from ‘format’ reversion
25120         * doc/lispref/strings.texi (Formatting Strings):
25121         After reversion, ‘text-quoting-style’ is documented in ‘Keys in
25122         Documentation’, not below.
25123         * src/syntax.c (Finternal_describe_syntax_value):
25124         Prefer AUTO_STRING to build_string where either will do, as
25125         AUTO_STRING is a bit faster.
25127 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
25129         python.el: Defer shell setup code until first interactive prompt
25130         * lisp/progmodes/python.el
25131         (python-shell-comint-watch-for-first-prompt-output-filter):
25132         New function.
25133         (inferior-python-mode): Use it.
25134         (python-shell-first-prompt-hook): New hook.
25135         (python-shell-send-setup-code)
25136         (python-shell-completion-native-turn-on-maybe-with-msg): Attach to
25137         this hook instead of inferior-python-hook.
25139 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
25141         Remove the calls to `seq-into` from `seq-concatenate`
25142         Since most new types of seq would have to be defined as sequences (cons
25143         cells or CL structs, mostly), there is no need to convert the seqs to
25144         sequences (which can be a fairly expensive operation).
25145         * lisp/emacs-lisp/seq.el (seq-concatenate): Do not ensure that seqs are
25146         sequences.
25148 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
25150         python.el: Fix completion for pdb interactions
25151         * lisp/progmodes/python.el (python-shell-completion-setup-code):
25152         Simplify.  Toggle print_mode for native wrapped completer.
25153         (python-shell-completion-native-setup): Ensure process buffer.
25154         Add print_mode attribute to completer wrapper to toggle returning
25155         or printing candidates.
25156         (python-shell-completion-native-get-completions): Cleanup.
25157         (python-shell-completion-get-completions): Cleanup.
25158         (python-shell-completion-at-point): Perform prompt checks.
25159         Force fallback completion in pdb interactions.
25161 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
25163         Make seq.el more extensible by using cl-defmethod
25164         * lisp/emacs-lisp/seq.el: Define seq.el functions using cl-defmethod to
25165         make it easier to extend seq.el with new "seq types".
25166         * test/automated/seq-tests.el (test-setf-seq-elt): New test.
25167         * lisp/emacs-lisp/cl-extra.el (cl-subseq): Move back the definition of
25168         subseq in cl-extra.el, and use it in seq.el.
25170 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
25172         python.el: Fix prompt detection with user overridden interpreter
25173         * lisp/progmodes/python.el (python-shell-prompt-detect):
25174         Honor buffer local python-shell-interpreter and
25175         python-shell-interpreter-interactive-arg.
25177 2015-08-23  Eli Zaretskii  <eliz@gnu.org>
25179         Support exec-directory with non-ASCII characters on Windows
25180         * src/w32proc.c (sys_spawnve): Make sure exec-directory is encoded
25181         in the system's ANSI codepage, when it is used for invoking
25182         cmdproxy.
25184 2015-08-23  Andreas Schwab  <schwab@linux-m68k.org>
25186         Revert "Extend ‘format’ to translate curved quotes"
25187         This reverts commit 244c801689d2f7a80480d83cd7d092d4762ebe08.
25189         Revert "Prefer ‘format’ to ‘substitute-command-keys’"
25190         This reverts commit 6af5aad26411ffe21c3fe4bc5438347110910111.
25192 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
25194         * doc/lispintro/emacs-lisp-intro.texi (Switching Buffers):
25195         Clarify "invisible window".
25197 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
25199         * doc/emacs/modes.texi (Choosing Modes): Minor doc fix for
25200         magic-fallback-mode-alist.
25202 2015-08-22  Fabián Ezequiel Gallina  <fgallina@gnu.org>
25204         python.el: fallback completion, ffap and eldoc setup enhancements
25205         Setup codes are now sent continuously so that the current frame is
25206         always taken into account.  This allows working within debuggers
25207         and always keeping a fresh version of setup codes that will return
25208         proper results.
25209         * lisp/progmodes/python.el (python-shell-setup-codes): Cleanup.
25210         (python-shell-send-setup-code): Send code only when
25211         python-shell-setup-codes is non-nil.
25212         (python-shell-completion-string-code): Cleanup trailing newline.
25213         (python-shell-completion-get-completions): Always use
25214         python-shell-completion-setup-code.
25215         (python-ffap-setup-code): Work with any object, not only modules.
25216         (python-ffap-string-code): Cleanup trailing newline.
25217         (python-ffap-module-path): Always use python-ffap-setup-code.
25218         (python-eldoc-string-code): Cleanup trailing newline.
25219         (python-eldoc--get-doc-at-point): Always use
25220         python-eldoc-setup-code.  Return non-nil only if docstring is
25221         found.
25223         python.el: Increase native completion robustness
25224         * lisp/progmodes/python.el (python-shell-completion-native-setup):
25225         Make completer print real candidates and just return dummy ones to
25226         avoid input modification.
25227         (python-shell-completion-native-get-completions): Set
25228         comint-redirect-insert-matching-regexp to non-nil and make
25229         comint-redirect-finished-regexp match the last dummy candidate.
25230         Use python-shell-accept-process-output to wait for the full list
25231         of candidates.
25233 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
25235         Fix invocation of programs via cmdproxy.exe
25236         * src/w32proc.c (sys_spawnve): Use exec-directory, not
25237         invocation-directory, for finding cmdproxy.exe.  When Emacs is
25238         run from the source tree, look for cmdproxy.exe in the same source
25239         tree.  (Bug#21323)
25241 2015-08-22  Simen Heggestøyl  <simenheg@gmail.com>
25243         Handle comments inside unquoted URIs in css-mode
25244         * lisp/textmodes/css-mode.el (css--uri-re): New defconst.
25245         (css-syntax-propertize-function): New defconst.
25246         (css--font-lock-keywords): Handle parens around unquoted URIs.
25247         (css-mode): Set `syntax-propertize-function'.
25249 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
25251         Support invocation of Hunspell with multiple dictionaries
25252         * lisp/textmodes/ispell.el (ispell-parse-hunspell-affix-file):
25253         Support lists of dictionaries of the form "DICT1,DICT2,...".
25254         (ispell-hunspell-add-multi-dic): New command.  (Bug#20495)
25256         Minor formatting changes in ispell.el
25257         * lisp/textmodes/ispell.el (ispell-create-debug-buffer)
25258         (ispell-print-if-debug, ispell-aspell-find-dictionary)
25259         (ispell-aspell-add-aliases, ispell-hunspell-dict-paths-alist)
25260         (ispell-hunspell-dictionary-alist)
25261         (ispell-hunspell-fill-dictionary-entry)
25262         (ispell-find-hunspell-dictionaries, ispell-send-replacement)
25263         (ispell-buffer-with-debug, ispell-complete-word)
25264         (ispell-current-dictionary, ispell-current-personal-dictionary)
25265         (ispell-accept-output, ispell-minor-mode)
25266         (ispell-personal-dictionary, ispell-dictionary-alist)
25267         (ispell-really-aspell, ispell-really-hunspell)
25268         (ispell-encoding8-command, ispell-aspell-supports-utf8)
25269         (ispell-aspell-dictionary-alist, ispell-set-spellchecker-params):
25270         Fix whitespace, inconsistent capitalization, and arguments in doc
25271         strings.
25273 2015-08-22  Martin Rudalics  <rudalics@gmx.at>
25275         * lisp/window.el (adjust-window-trailing-edge): Fix bug where this
25276         function refused to resize a size-preserved window.
25278 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
25280         * doc/lispref/windows.texi (Selecting Windows): Improve
25281         documentation and indexing of 'window-use-time'.
25283 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
25285         * lisp/progmodes/cc-vars.el, lisp/progmodes/cc-styles.el:
25286         * lisp/progmodes/cc-mode.el, lisp/progmodes/cc-menus.el:
25287         * lisp/progmodes/cc-langs.el, lisp/progmodes/cc-guess.el:
25288         * lisp/progmodes/cc-fonts.el, lisp/progmodes/cc-engine.el:
25289         * lisp/progmodes/cc-defs.el, lisp/progmodes/cc-cmds.el:
25290         * lisp/progmodes/cc-bytecomp.el, lisp/progmodes/cc-awk.el:
25291         * lisp/progmodes/cc-align.el, lisp/net/soap-client.el:
25292         Fix up commenting style.
25294 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
25296         text-quoting-style in emacs-lisp diagnostics
25297         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
25298         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
25299         (ad-disable-advice, ad-remove-advice, ad-set-argument)
25300         (ad-set-arguments):
25301         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
25302         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
25303         (byte-optimize-while, byte-optimize-apply):
25304         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
25305         (byte-compile-log-file, byte-compile-format-warn)
25306         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
25307         (byte-compile-cl-warn)
25308         (byte-compile-warn-about-unresolved-functions)
25309         (byte-compile-file, byte-compile-fix-header)
25310         (byte-compile--declare-var, byte-compile-file-form-defmumble)
25311         (byte-compile-form, byte-compile-normal-call)
25312         (byte-compile-variable-ref, byte-compile-variable-set)
25313         (byte-compile-subr-wrong-args, byte-compile-setq-default)
25314         (byte-compile-negation-optimizer)
25315         (byte-compile-condition-case--old)
25316         (byte-compile-condition-case--new, byte-compile-save-excursion)
25317         (byte-compile-defvar, byte-compile-autoload)
25318         (byte-compile-lambda-form)
25319         (byte-compile-make-variable-buffer-local, display-call-tree)
25320         (batch-byte-compile):
25321         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
25322         (cconv-analyze-form):
25323         * lisp/emacs-lisp/chart.el (chart-space-usage):
25324         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
25325         (check-declare-warn, check-declare-file)
25326         (check-declare-directory):
25327         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
25328         (checkdoc-message-text-engine):
25329         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer):
25330         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
25331         (cl-symbol-macrolet):
25332         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
25333         * lisp/emacs-lisp/copyright.el (copyright)
25334         (copyright-update-directory):
25335         * lisp/emacs-lisp/edebug.el (edebug-read-list):
25336         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
25337         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
25338         (eieio-oref, eieio-oset-default):
25339         * lisp/emacs-lisp/eieio-speedbar.el:
25340         (eieio-speedbar-child-make-tag-lines)
25341         (eieio-speedbar-child-description):
25342         * lisp/emacs-lisp/eieio.el (defclass, change-class):
25343         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
25344         (elint-init-form, elint-check-defalias-form)
25345         (elint-check-let-form):
25346         * lisp/emacs-lisp/ert.el (ert-get-test):
25347         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
25348         (find-function-library):
25349         * lisp/emacs-lisp/generator.el (iter-yield):
25350         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
25351         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
25352         * lisp/emacs-lisp/package-x.el (package-upload-file):
25353         * lisp/emacs-lisp/package.el (package-version-join)
25354         (package-disabled-p, package-activate-1, package-activate)
25355         (package--download-one-archive)
25356         (package--download-and-read-archives)
25357         (package-compute-transaction, package-install-from-archive)
25358         (package-install, package-install-selected-packages)
25359         (package-delete, package-autoremove)
25360         (package-install-button-action, package-delete-button-action)
25361         (package-menu-hide-package, package-menu--list-to-prompt)
25362         (package-menu--perform-transaction)
25363         (package-menu--find-and-notify-upgrades):
25364         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
25365         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
25366         * lisp/emacs-lisp/ring.el (ring-next, ring-previous):
25367         * lisp/emacs-lisp/rx.el (rx-check, rx-anything):
25368         * lisp/emacs-lisp/smie.el (smie-config-save):
25369         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
25370         * lisp/emacs-lisp/testcover.el (testcover-1value):
25371         Use curved quotes in diagnostic format strings.
25373 2015-08-21  Fabián Ezequiel Gallina  <fgallina@gnu.org>
25375         python.el: Ensure remote process-environment on non-interactive processes
25376         * lisp/progmodes/python.el
25377         (python-shell-tramp-refresh-process-environment): New function.
25378         (python-shell-with-environment): Use it.
25379         * test/automated/python-tests.el (python-shell-with-environment-2):
25380         Update.
25382         python.el: Enhancements to process environment setup.
25383         * lisp/progmodes/python.el (python-shell-process-environment)
25384         (python-shell-extra-pythonpaths, python-shell-exec-path)
25385         (python-shell-virtualenv-root): Update docstring.  Remove :safe.
25386         (python-shell-setup-codes): Remove :safe.
25387         (python-shell-remote-exec-path): New defcustom.
25388         (python-shell--add-to-path-with-priority): New macro.
25389         (python-shell-calculate-pythonpath): Give priority to
25390         python-shell-extra-pythonpaths.  Update docstring.
25391         (python-shell-calculate-process-environment): Give priority to
25392         python-shell-process-environment.  Update docstring.
25393         (python-shell-calculate-exec-path): Give priority to
25394         python-shell-exec-path and calculated virtualenv bin directory.
25395         Update docstring.
25396         (python-shell-tramp-refresh-remote-path): New function.
25397         (python-shell-with-environment): Use it when working remotely and
25398         do not modify tramp-remote-path.  Allow nesting.
25399         (python-shell-calculate-command): Remove useless
25400         python-shell-with-environment call.
25401         * test/automated/python-tests.el (python-shell-calculate-pythonpath-1)
25402         (python-shell-calculate-pythonpath-2)
25403         (python-shell-calculate-process-environment-6)
25404         (python-shell-calculate-process-environment-7)
25405         (python-shell-calculate-process-environment-8)
25406         (python-shell-calculate-exec-path-3)
25407         (python-shell-calculate-exec-path-4)
25408         (python-shell-calculate-exec-path-5)
25409         (python-shell-calculate-exec-path-6)
25410         (python-shell-with-environment-3): New tests.
25411         (python-shell-calculate-process-environment-2)
25412         (python-shell-calculate-process-environment-3)
25413         (python-shell-calculate-process-environment-4)
25414         (python-shell-calculate-process-environment-5)
25415         (python-shell-calculate-exec-path-1)
25416         (python-shell-calculate-exec-path-2)
25417         (python-shell-with-environment-1)
25418         (python-shell-with-environment-2): Update and simplify.
25420 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
25422         Avoid hard-coding "M-x command" in docstrings
25423         * lisp/calendar/todo-mode.el (todo-mode):
25424         * lisp/desktop.el (desktop-save-mode):
25425         * lisp/edmacro.el (edit-kbd-macro):
25426         * lisp/emacs-lisp/package.el (package-menu-execute):
25427         * lisp/emulation/viper-cmd.el (viper-ask-level):
25428         * lisp/emulation/viper-init.el (viper-expert-level):
25429         * lisp/filesets.el (filesets-add-buffer):
25430         * lisp/follow.el (follow-mode):
25431         * lisp/gnus/auth-source.el (auth-sources):
25432         * lisp/international/ogonek.el (ogonek-informacja)
25433         (ogonek-information):
25434         * lisp/net/tramp.el (tramp-process-actions):
25435         * lisp/org/org-gnus.el (org-gnus-no-new-news):
25436         * lisp/org/org.el (org-ellipsis):
25437         * lisp/progmodes/python.el (python-shell-get-process-or-error):
25438         * lisp/progmodes/vhdl-mode.el (vhdl-mode):
25439         * lisp/server.el (server-start):
25440         * lisp/type-break.el (type-break-noninteractive-query):
25441         * lisp/userlock.el (ask-user-about-supersession-help):
25442         * lisp/whitespace.el (whitespace-report-region):
25443         Prefer (substitute-command-keys "`\\[foo-command]'")
25444         to "`M-x foo-command'" in docstrings and the like.
25446 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
25448         Use add-function for prettify-symbols-compose-predicate
25449         * lisp/textmodes/tex-mode.el (tex-common-initialization): Set
25450         prettify-symbols-compose-predicate in terms of add-function.
25451         * etc/NEWS: Mention prettify-symbols-compose-predicate and
25452         prettify-symbols-mode support in tex-mode.
25454 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
25456         * lisp/emacs-lisp/smie.el (smie-indent-current-column): New fun.
25457         (smie-indent-exps, smie-indent-keyword): Use it.
25458         * test/indent/css-mode.css: Test alignment with leading comment.
25460 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
25462         Respect text-quoting-style in (*Finder*) menus
25463         * lisp/info.el (info--prettify-description):
25464         Treat description as a docstring, so that it's requoted as
25465         per text-quoting-style.
25467 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
25469         Document `window-use-time' in Elisp manual
25470         * doc/lispref/windows.texi (Selecting Windows): Document
25471         `window-use-time'.
25473 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
25475         * src/w32uniscribe.c (_WIN32_WINNT): Define to 0x0600.
25476         This is a cleaner fix for Bug#21260 than the previous change.
25478 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
25480         Respect text-quoting-style in calc
25481         In calc, tespect text-quoting-style preference in diagnostic
25482         formats and fix a few similar problems in docstrings.
25483         * lisp/calc/calc-aent.el (math-read-factor):
25484         * lisp/calc/calc-embed.el (calc-do-embedded):
25485         * lisp/calc/calc-ext.el (calc-user-function-list)
25486         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
25487         * lisp/calc/calc-help.el (calc-describe-key)
25488         (calc-describe-thing):
25489         * lisp/calc/calc-lang.el (calc-c-language)
25490         (math-parse-fortran-vector-end, math-parse-tex-sum)
25491         (math-parse-eqn-matrix, math-parse-eqn-prime)
25492         (calc-yacas-language, calc-maxima-language, calc-giac-language)
25493         (math-read-big-rec, math-read-big-balance):
25494         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
25495         (calc-auto-recompute):
25496         * lisp/calc/calc-prog.el (calc-user-define-invocation)
25497         (math-do-arg-check):
25498         * lisp/calc/calc-store.el (calc-edit-variable):
25499         * lisp/calc/calc-units.el (math-build-units-table-buffer):
25500         * lisp/calc/calc-vec.el (math-read-brackets):
25501         * lisp/calc/calc-yank.el (calc-edit-mode):
25502         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
25503         Use curved quotes in diagnostic format strings.
25504         * lisp/calc/calc-help.el (calc-describe-thing):
25505         Format docstrings with substitute-command-keys.
25506         * lisp/calc/calc-help.el (calc-j-prefix-help):
25507         * lisp/calc/calc-misc.el (calc-help):
25508         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
25509         Escape a docstring "`".
25511 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
25513         Fix documentation of 'menu-set-font' and 'set-frame-font'
25514         * lisp/menu-bar.el (menu-set-font): Doc fix.  (Bug#21303)
25515         * doc/lispref/frames.texi (Frame Font): Document that
25516         set-frame-font with the last argument 't' will also make the font
25517         the default for the future GUI frames.
25519         Document '--create-frame' option to emacsclient
25520         * doc/emacs/misc.texi (emacsclient Options): Document the
25521         '--create-frame' option.  (Bug#21308)
25523 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
25525         * lisp/progmodes/js.el (js-mode): Don't eagerly syntax propertize.
25527 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
25529         Document 'get-mru-window' in the ELisp manual
25530         * doc/lispref/windows.texi (Cyclic Window Ordering): Document
25531         'get-mru-window'.  (Bug#21306)
25533         Clarify documentation of 'get-buffer-window-list'
25534         * doc/lispref/windows.texi (Buffers and Windows): Mention that the
25535         current window, if relevant, will be the first in the list
25536         returned by 'get-buffer-window-list'.
25537         * lisp/window.el (get-buffer-window-list): Doc fix.  (Bug#21305)
25539 2015-08-21  Vasilij Schneidermann  <v.schneidermann@gmail.com>
25541         In `ielm' use `pop-to-buffer-same-window' (Bug#20848)
25542         * lisp/ielm.el (ielm): Use `pop-to-buffer-same-window' instead of
25543         `switch-to-buffer'.
25545 2015-08-21  Kaushal Modi  <kaushal.modi@gmail.com>  (tiny change)
25547         In woman.el use `display-buffer' instead of `switch-to-buffer' (Bug#21047)
25548         * lisp/woman.el (woman-really-find-file, WoMan-find-buffer): Use
25549         `display-buffer' instead of `switch-to-buffer'.
25551 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
25553         Follow user preference in calendar diagnostics
25554         Respect text-quoting-style preference in diagnostic formats by
25555         using curved quotes (which are translated as per text-quoting-style)
25556         instead of grave accent and apostrophe (which are not).
25557         * lisp/calendar/appt.el (appt-display-message):
25558         * lisp/calendar/diary-lib.el (diary-check-diary-file)
25559         (diary-mail-entries, diary-from-outlook):
25560         * lisp/calendar/icalendar.el (icalendar-export-region)
25561         (icalendar--convert-float-to-ical)
25562         (icalendar--convert-date-to-ical)
25563         (icalendar--convert-ical-to-diary)
25564         (icalendar--convert-recurring-to-diary)
25565         (icalendar--add-diary-entry):
25566         * lisp/calendar/time-date.el (format-seconds):
25567         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
25568         (timeclock-make-hours-explicit):
25569         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
25570         (todo-item-mark, todo-check-format)
25571         (todo-insert-item--next-param, todo-edit-item--next-key)
25572         (todo-mode):
25573         Use curved quotes in diagnostic format strings.
25574         * lisp/calendar/icalendar.el (icalendar-import-format-sample):
25575         * test/automated/icalendar-tests.el (icalendar--import-format-sample):
25576         Just use straight quoting for simple test case.
25578 2015-08-21  Michael Albinus  <michael.albinus@gmx.de>
25580         * src/gfilenotify.c (Fgfile_add_watch):
25581         Handle errors from g_file_monitor.
25583 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
25585         In frames.texi use "minibuffer-less frame" instead of "non-minibuffer frame"
25586         * doc/lispref/frames.texi (Frame Layout): Use "minibuffer-less
25587         frame" instead of "non-minibuffer frame".
25589         Fix frame geometry related text
25590         * doc/lispref/frames.texi (Frame Layout):
25591         Rename `x-frame-geometry' to `frame-geometry'.
25592         * doc/lispref/frames.texi (Mouse Position):
25593         * doc/lispref/windows.texi (Coordinates and Windows):
25594         Use `set-mouse-absolute-pixel-position' instead of
25595         `x-set-mouse-absolute-pixel-position'.
25597         Sanitize frame geometry related functions
25598         * src/nsfns.m (Fx_frame_geometry): Rename to Fns_frame_geometry.
25599         (Fx_frame_edges): Rename to Fns_frame_edges.
25600         * src/w32fns.c (Fx_frame_geometry): Rename to Fw32_frame_geometry.
25601         (Fx_frame_edges): Rename to Fw32_frame_edges.
25602         (Fx_mouse_absolute_pixel_position): Rename to
25603         Fw32_mouse_absolute_pixel_position.
25604         (Fx_set_mouse_absolute_pixel_position): Rename to
25605         Fw32_set_mouse_absolute_pixel_position.
25606         * lisp/frame.el (x-frame-geometry, w32-frame-geometry)
25607         (ns-frame-geometry, x-frame-edges, w32-frame-edges)
25608         (ns-frame-edges, w32-mouse-absolute-pixel-position)
25609         (x-mouse-absolute-pixel-position)
25610         (w32-set-mouse-absolute-pixel-position)
25611         (x-set-mouse-absolute-pixel-position): Declare.
25612         (frame-geometry, mouse-absolute-pixel-position)
25613         (set-mouse-absolute-pixel-position): New functions.
25614         (frame-edges): Rewrite in terms of x-/w32-/ns-frame-edges.
25616 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
25618         Fix MinGW64 build broken by latest w32uniscribe.c changes
25619         * src/w32uniscribe.c (UNISCRIBE_OPENTYPE): Define to 0x0100, for
25620         MinGW64.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
25621         (Bug#21260)
25623 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
25625         Add TeX defaults for prettify-symbol-mode
25626         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
25627         Rename from tex-prettify-symbols-alist.
25628         (tex--prettify-symbols-compose-p): New function.
25629         (tex-common-initialization): Use them as prettify-symbols-alist
25630         and prettify-symbols-compose-predicate.
25632         Generalize prettify-symbols to arbitrary modes
25633         * lisp/progmodes/prog-mode.el
25634         (prettify-symbols-default-compose-p): New function.
25635         (prettify-symbols-compose-predicate): New variable.
25636         (prettify-symbols--compose-symbol): Use it.
25638 2015-08-20  Paul Eggert  <eggert@cs.ucla.edu>
25640         Don't quote symbols 'like-this' in docstrings etc.
25641         * admin/unidata/uvs.el (uvs-insert-fields-as-bytes):
25642         * lisp/allout-widgets.el (allout-widgets-count-buttons-in-region):
25643         * lisp/allout.el (allout-add-resumptions, allout-mode):
25644         * lisp/calculator.el (calculator-operators):
25645         * lisp/cedet/data-debug.el (dd-propertize):
25646         * lisp/cedet/ede/proj-prog.el (ede-proj-target-makefile-program):
25647         * lisp/cedet/semantic/analyze/debug.el:
25648         (semantic-analyzer-debug-global-miss-text):
25649         * lisp/cedet/semantic/lex-spp.el:
25650         (semantic-lex-spp-replace-or-symbol-or-keyword):
25651         * lisp/cedet/semantic/symref.el:
25652         (semantic-symref-cleanup-recent-buffers-fcn):
25653         * lisp/cedet/semantic/tag.el (semantic-tag-class):
25654         * lisp/cedet/srecode/el.el (srecode-semantic-handle-:el-custom):
25655         * lisp/gnus/nnmairix.el (nnmairix-propagate-marks-upon-close):
25656         * lisp/gnus/pop3.el (pop3-authentication-scheme):
25657         * lisp/help-fns.el (describe-function-orig-buffer):
25658         * lisp/imenu.el (imenu--history-list):
25659         * lisp/mail/feedmail.el (feedmail-confirm-outgoing)
25660         (feedmail-display-full-frame, feedmail-deduce-bcc-where)
25661         (feedmail-queue-default-file-slug)
25662         (feedmail-queue-buffer-file-name):
25663         * lisp/net/mairix.el (mairix-searches-mode-map):
25664         * lisp/net/newst-backend.el (newsticker-retrieval-method)
25665         (newsticker-auto-mark-filter-list):
25666         * lisp/obsolete/vi.el (vi-mode):
25667         * lisp/progmodes/cc-engine.el (c-literal-type):
25668         * lisp/progmodes/cpp.el (cpp-face):
25669         * lisp/progmodes/ebrowse.el (ebrowse-electric-list-looper):
25670         * lisp/progmodes/elisp-mode.el (elisp--xref-make-xref):
25671         * lisp/progmodes/pascal.el (pascal-auto-lineup):
25672         * lisp/progmodes/prog-mode.el (prog-widen):
25673         * lisp/progmodes/verilog-mode.el (verilog-regexp-words)
25674         (verilog-auto-lineup, verilog-auto-reset-widths)
25675         (verilog-auto-arg-format, verilog-auto-inst-template-numbers):
25676         * lisp/textmodes/flyspell.el (flyspell-maybe-correct-transposition)
25677         (flyspell-maybe-correct-doubling):
25678         * lisp/textmodes/table.el (table-justify, table-justify-cell)
25679         (table-justify-row, table-justify-column, table-insert-sequence)
25680         (table--justify-cell-contents):
25681         * lisp/url/url-auth.el (url-get-authentication):
25682         * lisp/window.el (display-buffer-record-window):
25683         * lisp/xml.el (xml-parse-file, xml-parse-region):
25684         * src/gfilenotify.c (Fgfile_add_watch):
25685         Don't quote symbols with apostrophes in doc strings.
25686         Use asymmetric quotes instead.
25687         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
25688         Likewise for symbol in diagnostic.
25689         * lisp/image.el (image-extension-data):
25690         * lisp/register.el (frame-configuration-to-register):
25691         * src/buffer.c (syms_of_buffer):
25692         Remove bogus apostrophes after symbols.
25693         * lisp/thumbs.el (thumbs-conversion-program):
25694         Quote Lisp string values using double-quotes, not apostrophes.
25696 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
25698         Describe frame geometry and related functions in Elisp manual
25699         * doc/lispref/display.texi (Size of Displayed Text, Line Height)
25700         (Showing Images): Update references.
25701         * doc/lispref/elisp.texi (Top): Update node listing.
25702         * doc/lispref/frames.texi (Frame Geometry): New node.
25703         Move `Size and Position' section here.
25704         (Size Parameters): Update references.
25705         (Mouse Position): Update references and nomenclature.
25706         Describe new functions `x-mouse-absolute-pixel-position' and
25707         `x-set-mouse-absolute-pixel-position'.
25708         * doc/lispref/windows.texi (Window Sizes): Update references.
25709         (Resizing Windows): Update references.  Move description of
25710         `fit-frame-to-buffer' here.
25711         (Coordinates and Windows): Update nomenclature and references.
25712         Describe new arguments of `window-edges'.  Comment out
25713         descriptions of `window-left-column', `window-top-line',
25714         `window-pixel-left' and `window-pixel-top'.  Describe
25715         `window-absolute-pixel-position'.
25717 2015-08-20  Alan Mackenzie  <acm@muc.de>
25719         Handling of `c-parse-state'.  Fix low level bug.
25720         * lisp/progmodes/cc-engine.el (c-remove-stale-state-cache-backwards):
25721         Add "CASE 3.5" to handle `cache-pos' being only slightly before `here'.
25723 2015-08-20  Andreas Politz  <politza@hochschule-trier.de>
25725         * lisp/wid-edit.el (widget-color--choose-action): Quit *Color*
25726         window instead of deleting it.
25728 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
25730         In w32fns.c's Fx_frame_geometry rewrite check whether frame has a titlebar
25731         * src/w32fns.c (Fx_frame_geometry): Use title_bar.rgstate[0] to
25732         determine whether frame has a titlebar.
25733         Suggested by Eli Zaretskii <eliz@gnu.org>
25735 2015-08-20  Tassilo Horn  <tsdh@gnu.org>
25737         Add a prettify-symbols-alist for (La)TeX
25738         * lisp/textmodes/tex-mode.el (tex-prettify-symbols-alist):
25739         New variable holding an alist suitable as prettify-symbols-alist in
25740         (La)TeX modes.
25742 2015-08-19  Alan Mackenzie  <acm@muc.de>
25744         Make electric-pair-mode, delete-selection-mode and CC Mode cooperate.
25745         Fixes debbugs#21275.
25746         In Emacs >= 25, let electric-pair-mode take precedence over
25747         delete-selection-mode.
25748         * lisp/delsel.el (delete-selection-uses-region-p): New function,
25749         previously a lambda expression in a property value for
25750         `self-insert-command'.
25751         (top-level): Set the `delete-selection' property of
25752         `self-insert-command' to `delete-selection-uses-region-p'.
25753         * lisp/progmodes/cc-cmds.el (top-level): Give the `delete-selection'
25754         property for c-electric-\(brace\|paren\) the value
25755         `delete-selection-uses-region-p' when the latter function exists.
25757 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
25759         Fix key binding quoting in tutorial *Help*
25760         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
25761         When generating help for custom key bindings, use the user-preferred
25762         quoting style rather than hardcoding the grave style.
25764 2015-08-19  Eli Zaretskii  <eliz@gnu.org>
25766         Improve and future-proof OTF fonts support in w32uniscribe.c
25767         * src/w32uniscribe.c (uniscribe_otf_capability): Add commentary
25768         about the expected results and why the new Uniscribe APIs are not
25769         used in this function.
25770         (ScriptGetFontScriptTags_Proc, ScriptGetFontLanguageTags_Proc)
25771         (ScriptGetFontFeatureTags_Proc): New function typedefs.
25772         (uniscribe_new_apis): New static variable.
25773         (uniscribe_check_features): New function, implements OTF features
25774         verification while correctly accounting for features in the list
25775         after the nil member, if any.
25776         (uniscribe_check_otf_1): New function, retrieves the features
25777         supported by the font for the requested script and language using
25778         the Uniscribe APIs available from Windows Vista onwards.
25779         (uniscribe_check_otf): If the new Uniscribe APIs are available,
25780         use them in preference to reading the font data directly.  Call
25781         uniscribe_check_features to verify that the requested features are
25782         supported, replacing the original incomplete code.
25783         (syms_of_w32uniscribe): Initialize function pointers for the new
25784         Uniscribe APIs.  (Bug#21260)
25785         (otf_features): Scan the script, langsys, and feature arrays back
25786         to front, so that the result we return has them in alphabetical
25787         order, like ftfont.c does.
25788         * src/w32fns.c (syms_of_w32fns) <w32-disable-new-uniscribe-apis>:
25789         New variable for debugging w32uniscribe.c code.
25791 2015-08-19  Artur Malabarba  <bruce.connor.am@gmail.com>
25793         * lisp/isearch.el (isearch-search-fun-default): Revert a5bdb87
25794         Remove usage of `isearch-lax-whitespace' inside the `iearch-word'
25795         clause of `isearch-search-fun-default'.  That lax variable does not
25796         refer to lax-whitespacing.  Related to (bug#21777).
25797         This reverts commit a5bdb872edb9f031fe041faf9a8c0be432e5f64c.
25798         * lisp/character-fold.el (character-fold-search): Set to nil.
25799         Default to nil for now, until someone implements proper
25800         lax-whitespacing with char-fold searching.
25802 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
25804         Fix doc-string of `help-mode-finish'.
25805         * lisp/help-mode.el (help-mode-finish): Fix doc-string.
25807         In nsimage.m include coding.h (Bug#21292)
25808         * src/nsimage.m (top-level): Include coding.h (Bug#21292).
25810         Move window edge functions to Elisp.
25811         * src/window.c (Fwindow_edges, Fwindow_pixel_edges)
25812         (Fwindow_absolute_pixel_edges, Fwindow_inside_edges)
25813         (Fwindow_inside_pixel_edges, Fwindow_inside_absolute_pixel_edges):
25814         Move to window.el.
25815         (calc_absolute_offset): Remove.
25816         * lisp/frame.el (frame-edges): New function.
25817         * lisp/window.el (window-edges, window-pixel-edges)
25818         (window-absolute-pixel-edges): Move here from window.c.
25819         (window-body-edges, window-body-pixel-edges)
25820         (window-absolute-body-pixel-edges): Move here from window.c and
25821         rename "inside" to "body".  Keep old names as aliases.
25822         (window-absolute-pixel-position): New function.
25824 2015-08-19  Katsumi Yamaoka  <yamaoka@jpl.org>
25826         [Gnus]: Use overlay functions directly
25827         * lisp/gnus/gnus-art.el (gnus-mime-inline-part, gnus-mm-display-part)
25828         (gnus-insert-mime-button, gnus-mime-buttonize-attachments-in-header)
25829         (gnus-article-highlight-signature, gnus-article-extend-url-button)
25830         (gnus-article-add-button, gnus-insert-prev-page-button)
25831         (gnus-insert-next-page-button, gnus-insert-mime-security-button):
25832         * lisp/gnus/gnus-cite.el (gnus-cite-delete-overlays)
25833         (gnus-cite-add-face):
25834         * lisp/gnus/gnus-html.el (gnus-html-wash-tags):
25835         * lisp/gnus/gnus-salt.el (gnus-tree-read-summary-keys)
25836         (gnus-tree-recenter, gnus-highlight-selected-tree):
25837         * lisp/gnus/gnus-sum.el (gnus-summary-show-all-threads)
25838         (gnus-summary-show-thread, gnus-summary-hide-thread)
25839         (gnus-highlight-selected-summary):
25840         * lisp/gnus/gnus-util.el (gnus-put-overlay-excluding-newlines):
25841         * lisp/gnus/message.el (message-fix-before-sending)
25842         (message-toggle-image-thumbnails):
25843         * lisp/gnus/mm-decode.el (mm-convert-shr-links):
25844         * lisp/gnus/sieve.el (sieve-highlight, sieve-insert-scripts):
25845         Use overlay functions directly instead of using gnus-overlay-*,
25846         message-overlay-*, and sieve-overlay-*.
25847         * lisp/gnus/gnus-sum.el (gnus-remove-overlays):
25848         * lisp/gnus/gnus.el (gnus-make-overlay, gnus-copy-overlay)
25849         (gnus-delete-overlay, gnus-overlay-get, gnus-overlay-put)
25850         (gnus-move-overlay, gnus-overlay-buffer, gnus-overlay-start)
25851         (gnus-overlay-end, gnus-overlays-at, gnus-overlays-in):
25852         * lisp/gnus/message.el (message-delete-overlay, message-make-overlay)
25853         (message-overlay-get, message-overlay-put, message-overlays-in):
25854         * lisp/gnus/sieve.el (sieve-make-overlay, sieve-overlay-put)
25855         (sieve-overlays-at): Remove.
25857 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
25859         In w32fns.c condition TITLEBAR_INFO declaration on WINDOWS version
25860         * src/w32fns.c (TITLEBAR_INFO): Make it a typedef so MinGW64
25861         builds can use the declaration from the system headers.
25862         (GetTitleBarInfo_Proc, Fx_frame_geometry): Adapt to new
25863         definition of TITLEBAR_INFO.
25864         Suggested by Eli Zaretskii  <eliz@gnu.org>
25866 2015-08-19  Glenn Morris  <rgm@gnu.org>
25868         * lisp/gnus/nnmaildir.el (nnmaildir-flag-mark-mapping): Add "P".
25870 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
25872         Use new q ‘format’ flag when fixing quotes in C
25873         * src/image.c (image_size_error): New function.  All uses of
25874         image_error with "Invalid image size ..."  changed to use it.
25875         * src/image.c (image_size_error, xbm_load_image, xbm_load)
25876         (xpm_load, xpm_load_image, xpm_load, pbm_load, png_load_body)
25877         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
25878         (imagemagick_load, svg_load, svg_load_image, gs_load)
25879         (x_kill_gs_process):
25880         * src/lread.c (load_warn_old_style_backquotes):
25881         * src/xfaces.c (load_pixmap):
25882         * src/xselect.c (x_clipboard_manager_error_1):
25883         Use %qs, not uLSQM and uRSQM.
25884         * src/syntax.c (Finternal_describe_syntax_value):
25885         Prefer Fsubstitute_command_keys to Fformat, as this lets
25886         us use AUTO_STRING.
25887         * src/xdisp.c (vadd_to_log): Use AUTO_STRING on the format argument,
25888         as it's now guaranteed to be ASCII.
25889         * src/xselect.c (x_clipboard_manager_error_2):
25890         Avoid grave accent in low-level stderr diagnostic.
25892 2015-08-19  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
25894         New q flag for ‘format’
25895         * doc/lispref/processes.texi (Sentinels):
25896         Don't hardwire grave quoting style in example.
25897         * doc/lispref/strings.texi (Formatting Strings):
25898         * etc/NEWS:
25899         Document new q flag.
25900         * src/editfns.c (Fformat): Implement it.
25902 2015-08-18  Daiki Ueno  <ueno@gnu.org>
25904         pinentry.el: Add debugging support
25905         * lisp/net/pinentry.el (pinentry-debug): New variable.
25906         (pinentry-debug-buffer): New variable.
25907         (pinentry--process-filter): Send input to the debug buffer, if
25908         `pinentry-debug' is set.
25910         pinentry.el: Improve multiline prompt
25911         * lisp/net/pinentry.el (pinentry--prompt): Simplify the interface.
25912         (pinentry--process-filter): Use `pinentry--prompt' for CONFIRM
25913         command.
25915 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
25917         Fix multibyte confusion in diagnostics
25918         * src/print.c (print_error_message):
25919         Don't assume that the caller's name is unibyte.
25920         * src/xdisp.c (vadd_to_log):
25921         Don't assume that the formatted diagnostic is unibyte.
25923         Fix file name encodings in diagnostics
25924         Also, close some minor races when opening image files, by opening
25925         them once instead of multiple times.
25926         * src/gtkutil.c (xg_get_image_for_pixmap):
25927         * src/image.c (xpm_load, tiff_load, gif_load, imagemagick_load)
25928         (svg_load):
25929         * src/nsimage.m (allocInitFromFile:):
25930         * src/xfns.c (xg_set_icon):
25931         Encode file name, since x_find_image_file no longer does that.
25932         * src/image.c (x_find_image_fd): New function.
25933         (x_find_image_file): Use it.  Do not encode resulting file name,
25934         since callers sometimes need it decoded.
25935         (slurp_file): File arg is now a fd, not a file name.
25936         All callers changed.  This saves us having to open the file twice.
25937         (xbm_load, xpm_load, pbm_load, png_load_body, jpeg_load_body)
25938         (svg_load):
25939         Use x_find_image_fd and fdopen to save a file-open.
25940         Report file name that failed.
25941         * src/lread.c (openp): If PREDICATE is t, open the file in binary mode.
25943 2015-08-18  Dmitry Gutov  <dgutov@yandex.ru>
25945         Allow blink-matching-paren to jump off screen
25946         * doc/emacs/programs.texi (Matching): Mention the
25947         `blink-matching-paren' value `jump-offscreen'.
25948         * lisp/simple.el (blink-matching-paren): New possible value.
25949         (blink-matching-paren-on-screen): Clarify the docstring.
25950         (blink-matching-open): Handle `jump-offscreen' (bug#21286).
25952         Refine the previous change
25953         * lisp/simple.el (blink-matching-open): Use minibuffer-message
25954         outside of save-excursion (bug#21286).
25956 2015-08-18  Martin Rudalics  <rudalics@gmx.at>
25958         Rewrite and add frame geometry related functions.
25959         * src/frame.c (Fframe_position): New function.
25960         (Fset_frame_position): Rename parameters and rewrite doc-string.
25961         (syms_of_frame): Remove Qframe_position, Qframe_outer_size,
25962         Qtitle_height and Qframe_inner_size.  Add Qouter_edges,
25963         Qouter_position, Qouter_size, Qnative_edges, Qinner_edges,
25964         Qtitle_bar_size.
25965         * src/nsfns.m (frame_geometry): New function.
25966         (Fx_frame_geometry): Call frame_geometry.
25967         (Fx_frame_edges): New function.
25968         * src/w32fns.c (C_CHILDREN_TITLEBAR, TITLEBAR_INFO)
25969         (GetTitleBarInfo_Proc): Define these so we can use the
25970         GetTitleBarInfo API.
25971         (Fw32_frame_menu_bar_size, Fw32_frame_rect): Remove.
25972         (Fx_frame_geometry): Rewrite.
25973         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
25974         (Fx_set_mouse_absolute_pixel_position): New functions.
25975         * src/xfns.c (frame_geometry): New function.
25976         (Fx_frame_geometry): Call frame_geometry.
25977         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
25978         (Fx_set_mouse_absolute_pixel_position): New functions.
25980 2015-08-18  Michael Albinus  <michael.albinus@gmx.de>
25982         Improve Tramp's compatibility
25983         * lisp/net/tramp.el (tramp-get-method-parameter):
25984         * lisp/net/tramp-adb.el (tramp-adb-parse-device-names)
25985         (tramp-adb-get-device):
25986         * lisp/net/trampver.el (tramp-repository-get-version):
25987         Use `tramp-compat-replace-regexp-in-string'.
25989 2015-08-18  Pierre Téchoueyres  <pierre.techoueyres@free.fr>  (tiny change)
25991         * lisp/net/tramp-cmds.el (tramp-reporter-dump-variable):
25992         Encode/decode string.
25994 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
25996         Clarify what happens to match data on failure
25997         Problem reported by Ernesto Alfonso (Bug#21279).
25998         * doc/lispref/searching.texi (Regexp Search, Simple Match Data):
25999         Document more carefully what happens to match data after a failed
26000         search.
26001         * src/search.c (Fmatch_beginning, Fmatch_end): Document that
26002         the return value is undefined if the last search failed.
26003         (Fmatch_data): Simplify doc string line 1.
26005 2015-08-18  Daiki Ueno  <ueno@gnu.org>
26007         Revert "pinentry.el: Support external passphrase cache"
26008         This reverts commit e086e55a664ec27fbca7b3231c4b32cb78a89337.
26009         pinentry.el shouldn't directly interact with the secrets service,
26010         but ask the caller to cache the passphrase.
26012 2015-08-17  Xue Fuqiao  <xfq.free@gmail.com>
26014         * doc/emacs/sending.texi (Mail Misc): Fix two index entries for
26015         Message mode hooks.
26017 2015-08-17  Daiki Ueno  <ueno@gnu.org>
26019         epg.el: Make gpgconf output parsing future proof
26020         * lisp/epg.el (epg--start): Count the number of fields in "gpgconf
26021         --list-options" output.
26023         pinentry.el: Support external passphrase cache
26024         * lisp/net/pinentry.el (pinentry-use-secrets): New user option.
26025         (pinentry--allow-external-password-cache): New local variable.
26026         (pinentry--key-info): New local variable.
26027         (secrets-enabled, secrets-search-items, secrets-get-secret):
26028         Declare.
26029         (pinentry--send-passphrase): New function, split from
26030         `pinentry--process-filter'.
26031         (pinentry--process-filter): Use secrets.el to retrieve passphrase
26032         from login keyring.
26034         pinentry.el: Popup window for multiline prompt
26035         * lisp/net/pinentry.el (pinentry): New custom group.
26036         (pinentry-popup-prompt-window): New user option.
26037         (pinentry-prompt-window-height): New user option.
26038         (pinentry--prompt-buffer): New variable.
26039         (pinentry-prompt-mode-map): New variable.
26040         (pinentry-prompt-mode): New function.
26041         (pinentry--prompt): New function.
26042         (pinentry--process-filter): Use `pinentry--prompt' instead of
26043         `read-passwd' and `y-or-n-p'.
26045 2015-08-17  Katsumi Yamaoka  <yamaoka@jpl.org>
26047         message.el: Silent the byte compiler
26048         * lisp/gnus/message.el (message-overlay-put, message-make-overlay)
26049         (message-kill-all-overlays, message-overlays-in, message-overlay-get)
26050         (message-delete-overlay, message-window-inside-pixel-edges):
26051         Declare before using.
26053         * lisp/gnus/message.el (message-overlay-get, message-overlays-in)
26054         (message-window-inside-pixel-edges): XEmacs compatible functions.
26056 2015-08-17  Lars Magne Ingebrigtsen  <larsi@gnus.org>
26058         * lisp/gnus/message.el (message-toggle-image-thumbnails): New command.
26060 2015-08-17  Noah Friedman  <friedman@splode.com>
26062         * lisp/simple.el (blink-matching-open): Restore point before
26063         calling minibuffer-message.
26065 2015-08-17  Ronnie Schnell  <ronnie@driver-aces.com>
26067         * lisp/play/dunnet.el: Update version number in header (now
26068         matches help).
26070 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
26072         Curved quotes in --batch diagnostics in non-UTF-8
26073         When run with --batch, check that curved quotes are compatible with
26074         the system locale before outputting them in diagnostics.
26075         Problem reported by Eli Zaretskii in:
26076         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00594.html
26077         * lisp/startup.el (command-line): Set internal--text-quoting-flag
26078         after the standard display table is initialized.
26079         * src/doc.c (default_to_grave_quoting_style): New function.
26080         (text_quoting_style): Use it.
26081         (text_quoting_flag): New static var, visible to Lisp as
26082         internal--text-quoting-flag.
26083         * src/emacs.c: Include <wchar.h> if available.
26084         (using_utf8): New function.
26085         (main): Use it to initialize text_quoting_flag.
26086         * src/regex.h (btowc) [WIDE_CHAR_SUPPORT && emacs]:
26087         Don't define, as it's not needed and it clashes with wchar.h.
26089 2015-08-17  Glenn Morris  <rgm@gnu.org>
26091         * doc/misc/tramp.texi (Configuration): Reword to avoid warning
26092         from makeinfo about spurious "Note:" cross-reference, and for grammar.
26094 2015-08-17  Ilya Zakharevich  <ilya@math.berkeley.edu>
26096         Minor change in variable initialization on MS-Windows
26097         * src/w32fns.c <after_dead_key>: Initialize to -1.
26098         (deliver_wm_chars): If after_deadkey is zero, don't set after_dead
26099         non-zero.
26101         Fix a bug with LWindow key remapping on MS-Windows
26102         * src/w32fns.c (deliver_wm_chars): Fix a typo.  (Bug#21276)
26104 2015-08-17  Eli Zaretskii  <eliz@gnu.org>
26106         Improve fontset support for latest OTF script tags
26107         * lisp/international/fontset.el (otf-script-alist): Add some
26108         missing script tags.
26109         (setup-default-fontset): Include settings for v2 versions of the
26110         script tags used by some modern OTF/TTF fonts.
26112 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
26114         Spelling fixes
26116 2015-08-16  Paul Eggert  <eggert@cs.ucla.edu>
26118         Use curved quotes in core elisp diagnostics
26119         In the core elisp files, use curved quotes in diagnostic formats,
26120         so that they follow user preference as per ‘text-quoting-style’
26121         rather than being hard-coded to quote `like this'.
26122         * lisp/abbrev.el (expand-region-abbrevs):
26123         * lisp/button.el (button-category-symbol, button-put)
26124         (make-text-button):
26125         * lisp/cus-start.el:
26126         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
26127         (custom--sort-vars-1, load-theme):
26128         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
26129         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
26130         (cl-generic-generalizers):
26131         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
26132         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
26133         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
26134         (advice--make, define-advice):
26135         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
26136         * lisp/emacs-lisp/timer.el (timer-event-handler):
26137         * lisp/env.el (setenv):
26138         * lisp/facemenu.el (facemenu-add-new-face)
26139         (facemenu-add-new-color):
26140         * lisp/faces.el (face-documentation, read-face-name)
26141         (face-read-string, read-face-font, face-spec-set-match-display)
26142         (read-color, x-resolve-font-name):
26143         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
26144         (set-auto-mode, hack-local-variables)
26145         (hack-one-local-variable--obsolete)
26146         (dir-locals-set-directory-class, write-file)
26147         (basic-save-buffer, delete-directory, copy-directory)
26148         (recover-session, recover-session-finish, insert-directory)
26149         (file-modes-char-to-who, file-modes-symbolic-to-number)
26150         (move-file-to-trash):
26151         * lisp/font-lock.el (font-lock-fontify-buffer):
26152         * lisp/format.el (format-write-file, format-find-file)
26153         (format-insert-file):
26154         * lisp/frame.el (get-device-terminal, select-frame-by-name):
26155         * lisp/fringe.el (fringe--check-style):
26156         * lisp/help.el (describe-minor-mode-from-indicator):
26157         * lisp/image.el (image-type):
26158         * lisp/international/fontset.el (x-must-resolve-font-name):
26159         * lisp/international/mule-cmds.el (prefer-coding-system)
26160         (select-safe-coding-system-interactively)
26161         (select-safe-coding-system, activate-input-method)
26162         (toggle-input-method, describe-current-input-method):
26163         * lisp/international/mule-conf.el (code-offset):
26164         * lisp/mouse.el (minor-mode-menu-from-indicator):
26165         * lisp/replace.el (query-replace-read-from)
26166         (occur-after-change-function, occur-1):
26167         * lisp/scroll-bar.el (scroll-bar-columns):
26168         * lisp/simple.el (execute-extended-command)
26169         (undo-outer-limit-truncate, compose-mail, set-variable)
26170         (choose-completion-string, define-alternatives):
26171         * lisp/startup.el (site-run-file, tty-handle-args)
26172         (command-line, command-line-1):
26173         * lisp/subr.el (noreturn, define-error, add-to-list)
26174         (read-char-choice):
26175         * lisp/term/common-win.el (x-handle-xrm-switch)
26176         (x-handle-name-switch, x-handle-args):
26177         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
26178         Use curved quotes in diagnostics.
26179         * lisp/international/mule.el (find-auto-coding):
26180         Use " to quote in a diagnostic, to be consistent with the rest of
26181         this file.
26183         Convert lisp/term/x-win.el to UTF-8
26184         * lisp/term/x-win.el: Convert to UTF-8.  This doesn't affect
26185         runtime behavior, and the file is multilingual so compile-time
26186         appearance shouldn't be an issue.
26187         * admin/notes/unicode: Document this.
26189 2015-08-16  Wilson Snyder  <wsnyder@wsnyder.org>
26191         Update verilog-mode.el to 2015-05-14-6232468-vpo-GNU.
26192         * lisp/progmodes/verilog-mode.el: Fix some non-automated indent
26193         issues and comments, bug#943.
26194         (verilog-type-font-keywords): Cycle delay operators like ##1 and
26195         ##[0:$] are now highlighted in their entirety similarly to the #
26196         delay-control operator.  Likewise, the followed-by operators #-#
26197         and #=# are no longer partially highlighed.
26198         (verilog-backward-syntactic-ws-quick)
26199         (verilog-skip-backward-comments): Minor performance improvements
26200         to buffer traversal functions for reduced latency.
26201         (verilog-calc-1, verilog-in-deferred-immediate-final-p): When the
26202         keyword 'final' follows 'assert/assume/cover', then it is part of
26203         a deferred immediate assertion item and should not be treated as a
26204         final construct for indentation.  Reported by Yuri Sugihara.
26205         (verilog-do-indent): Virtual task/function/class definition lines
26206         should not be considered as declarations.  Reported by Enzo Chi.
26207         (verilog-do-indent): Do not falsely indent to '=' of
26208         property/sequence operators on subsequent lines of a multi-line
26209         statement.
26210         (verilog-assignment-operator-re): Fix '!==' operator and add
26211         support for '<->', ':/', '#-#', and '#=#' operators.
26212         (verilog-calculate-indent, verilog-label-be): Enable
26213         case-sensitive regular expression parsing when looking for
26214         keywords.
26215         (verilog-calc-1): Detect 'pure virtual method' declarations which
26216         exist in abstract classes.  Reported by Enzo Chi and Kaushal Modi.
26217         (verilog-backward-ws&directives): When moving back to the start of
26218         a line and the preceeding line ended with an escaped-newline, then
26219         jump up one line.  This properly consumes a multi-line
26220         pre-processor directive.  Reported by Kaushal Modi.
26221         (verilog-dpi-import-export-re, verilog-extended-complete-re)
26222         (verilog-calc-1): Teach verilog-mode to properly indent after a
26223         DPI import/export statement that resides outside of a module.
26224         Reported by Kaushal Modi.
26225         (verilog-extended-complete-re): Update regexp to match both
26226         "DPI-C" and "DPI".  Reported by Kaushal Modi.
26228 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
26230         substitute-command-keys a few more doc strings
26231         * lisp/allout.el (outlineify-sticky):
26232         * lisp/files.el (hack-one-local-variable--obsolete):
26233         * lisp/help-fns.el (help-fns--obsolete, describe-variable):
26234         Use substitute-command-keys on some doc strings so that
26235         they don't use hard-coded key bindings or quoting styles.
26237         Fix quoting in Fformat calls
26238         * src/image.c (xbm_read_bitmap_data, xbm_load_image, xbm_load)
26239         (xpm_load, xpm_load_image, pbm_load, png_load_body)
26240         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
26241         (imagemagick_load, svg_load, svg_load_image, gs_load)
26242         (x_kill_gs_process):
26243         * src/lread.c (load_warn_old_style_backquotes):
26244         * src/xfaces.c (load_pixmap):
26245         * src/xselect.c (x_clipboard_manager_error_1):
26246         Quote diagnostics according to user preference when calling
26247         Fformat or its derivatives.
26249 2015-08-15  Glenn Morris  <rgm@gnu.org>
26251         * admin/admin.el (set-version, set-copyright): Remove deleted files.
26253 2015-08-15  Stephen Leake  <stephen_leake@stephe-leake.org>
26255         Allow describe-function helpers to access buffer-local values
26256         This will be used by cedet/mode-local.el `describe-mode-local-override'
26257         on `help-fns-describe-function-functions' in upstream CEDET.
26258         * lisp/help-fns.el (describe-function-orig-buffer): New, let-bound in
26259         `describe-function'.
26260         (describe-function): Bind it, save it on the help xref stack.
26262         Handle pulse-background being nil
26263         * lisp/cedet/pulse.el (pulse-lighten-highlight): Inherit
26264         pulse-background, handle it being nil.
26266 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
26268         Fix "\`" confusion in Lisp strings
26269         * admin/authors.el (authors-canonical-author-name):
26270         Fix typo by using "\\`" not "\`" in string RE.
26271         * lisp/obsolete/complete.el (PC-complete-as-file-name):
26272         * lisp/obsolete/vi.el (vi-backward-blank-delimited-word):
26273         * lisp/progmodes/verilog-mode.el (verilog-mode-map):
26274         Use plain "`", not the equivalent-but-confusing "\`", in strings.
26275         * lisp/textmodes/texinfmt.el: Fix comment likewise.
26277 2015-08-15  Dani Moncayo  <dmoncayo@gmail.com>
26279         * nt/zipdist.bat: Remove -- no longer used.
26281 2015-08-15  Jürgen Hötzel  <juergen@archlinux.org>
26283         * lisp/net/tramp-sh.el (tramp-remote-selinux-p): Use "selinuxenabled"
26284         rather than "getenforce".
26285         (tramp-sh-handle-set-file-selinux-context): Do not
26286         cache SELinux context if not all context components are given.
26288 2015-08-15  Eli Zaretskii  <eliz@gnu.org>
26290         Add doc strings to 2 help-mode.el functions
26291         * lisp/help-mode.el (help-mode-setup, help-mode-finish): Add doc
26292         strings.  (Bug#21263)
26294         Remove files used by the old MS-Windows specific build procedure
26295         * admin/unidata/makefile.w32-in:
26296         * doc/emacs/makefile.w32-in:
26297         * doc/lispintro/makefile.w32-in:
26298         * doc/lispref/makefile.w32-in:
26299         * doc/misc/makefile.w32-in:
26300         * leim/makefile.w32-in:
26301         * lib-src/makefile.w32-in:
26302         * lib/makefile.w32-in:
26303         * lisp/makefile.w32-in:
26304         * nt/INSTALL.OLD:
26305         * nt/config.nt:
26306         * nt/emacs-src.tags:
26307         * nt/envadd.bat:
26308         * nt/gmake.defs:
26309         * nt/makefile.w32-in:
26310         * nt/multi-install-info.bat:
26311         * nt/nmake.defs:
26312         * nt/paths.h:
26313         * src/makefile.w32-in: Files deleted.
26314         * nt/configure.bat: Remove everything except the blurb about the
26315         new build procedure.
26316         * make-dist: Remove references to makefile.w32-in in various
26317         directories, and to files in nt/ that were deleted.
26318         * etc/NEWS: Mention the fact that the files were dropped.
26320 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
26322         * doc/emacs/mule.texi (Charsets): Give fuller title for ISO-IR.
26323         (Bug#21248)
26325 2015-08-14  Paul Eggert  <eggert@cs.ucla.edu>
26327         Default to inotify instead of gfile
26328         * configure.ac (with_file_notification): Fix typo that
26329         prevented suppression of file notification if HAVE_NS.
26330         (NOTIFY_OBJ): Prefer inotify to gfile if both exist and
26331         with_file_notification is 'yes' (Bug#21241).
26332         * etc/NEWS: Mention this.
26334         Fix broken URLs for ISO-IR
26335         * doc/emacs/mule.texi (Charsets):
26336         * lisp/international/mule-conf.el:
26337         Fix broken URL (Bug#21248).
26339         Low-level diagnostics now use ‘text-quoting-style’
26340         * src/doprnt.c (doprnt):
26341         Format ` and ' as per ‘text-quoting-style’.
26342         * src/xdisp.c (vmessage, message): Mention that the format should
26343         not contain ` or '.
26345         Prefer ‘format’ to ‘substitute-command-keys’
26346         * src/character.h (uLSQM, uRSQM): Move here ...
26347         * src/doc.c (uLSQM, uRSQM): ... from here.
26348         * src/doc.c (Fsubstitute_command_keys):
26349         * src/syntax.c (Finternal_describe_syntax_value):
26350         * lisp/cedet/mode-local.el (mode-local-print-binding)
26351         (mode-local-describe-bindings-2):
26352         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
26353         * lisp/cus-theme.el (describe-theme-1):
26354         * lisp/descr-text.el (describe-text-properties-1, describe-char):
26355         * lisp/emacs-lisp/cl-extra.el (cl--describe-class):
26356         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
26357         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
26358         * lisp/emacs-lisp/package.el (describe-package-1):
26359         * lisp/faces.el (describe-face):
26360         * lisp/help-fns.el (help-fns--key-bindings)
26361         (help-fns--compiler-macro, help-fns--parent-mode)
26362         (help-fns--obsolete, help-fns--interactive-only)
26363         (describe-function-1, describe-variable):
26364         * lisp/help.el (describe-mode):
26365         Prefer ‘format’ to ‘substitute-command-keys’ when either will do
26366         to implement quoting style.  This generally makes the code simpler.
26368         Extend ‘format’ to translate curved quotes
26369         This is a followup to the recent doc string change, and deals with
26370         diagnostics and the like.  This patch is more conservative than
26371         the doc string change, in that the behavior of ‘format’ changes
26372         only if its first arg contains curved quotes and the user prefers
26373         straight or grave quotes.  (Come to think of it, perhaps we should
26374         be similarly conservative with doc strings too, but that can wait.)
26375         The upside of this conservatism is that existing usage is almost
26376         surely unaffected.  The downside is that we'll eventually have to
26377         change Emacs's format strings to use curved quotes in places where
26378         the user might want curved quotes, but that's a simple and
26379         mechanical translation that I'm willing to do later.  (Bug#21222)
26380         * doc/lispref/help.texi (Keys in Documentation):
26381         Move description of text-quoting-style from here ...
26382         * doc/lispref/strings.texi (Formatting Strings):
26383         ... to here, and describe new behavior of ‘format’.
26384         * etc/NEWS: Describe new behavior.
26385         * lisp/calc/calc-help.el (calc-describe-thing):
26386         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
26387         * lisp/info.el (Info-find-index-name):
26388         Use ‘concat’ rather than ‘format’ to avoid misinterpretation
26389         of recently-added curved quotes.
26390         * src/doc.c (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
26391         Move from here ...
26392         * src/lisp.h: ... to here.
26393         * src/doc.c (text_quoting_style): New function.
26394         (Fsubstitute_command_keys): Use it.
26395         * src/editfns.c (Fformat): Implement new behavior.
26396         * src/lisp.h (enum text_quoting_style): New enum.
26398 2015-08-14  Stefan Monnier  <monnier@iro.umontreal.ca>
26400         * src/keyboard.c: Use false/true instead of 0/1 for booleans.
26401         * src/keyboard.h (struct kboard): Mark kbd_queue_has_data as boolean.
26403 2015-08-14  Michael Albinus  <michael.albinus@gmx.de>
26405         * lisp/net/tramp-sh.el (tramp-sh-handle-file-acl): Do not redirect
26406         stderr to /dev/null, this is done in `tramp-send-command-and-check'.
26408 2015-08-14  Jürgen Hötzel  <juergen@archlinux.org>
26410         Flush file properties in Tramp
26411         * lisp/net/tramp-sh.el (tramp-sh-handle-set-file-modes)
26412         (tramp-sh-handle-set-file-times):
26413         * lisp/net/tramp-adb.el (tramp-adb-handle-set-file-modes)
26414         (tramp-adb-handle-set-file-times): Flush the file properties of
26415         the directory.
26417 2015-08-14  Ronnie Schnell  <ronnie@driver-aces.com>
26419         * doc/emacs/misc.texi (Amusements): Fixed typo.
26421 2015-08-14  Eli Zaretskii  <eliz@gnu.org>
26423         Don't miss warnings about removing string text properties while dumping
26424         * src/alloc.c (purecopy): Warn about removing a string's text
26425         properties even when the same string was already pure-copied
26426         earlier.
26427         * lisp/progmodes/elisp-mode.el (elisp--xref-format)
26428         (elisp--xref-format-extra): Fix the commentary.
26430 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
26432         * lisp/progmodes/sh-script.el (sh-mode): Handle .cshrc (bug#21049).
26434 2015-08-13  Magnus Henoch  <magnus.henoch@gmail.com>
26436         * lisp/progmodes/compile.el: Use lexical-binding.
26437         (compilation-move-to-column): Assume 8-wide TABs (bug#21038).
26439 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
26441         (uniquify-ask-about-buffer-names-p): Remove, unused (bug#21037)
26442         * lisp/uniquify.el: Remove redundant `:group's.
26444 2015-08-13  Jürgen Hötzel  <juergen@archlinux.org>
26446         * lisp/net/tramp-adb.el
26447         (tramp-adb-handle-directory-files-and-attributes): Make a copy of
26448         result to prevent modification of the tramp-cache by side effects.
26449         Use the correct cache key.
26451 2015-08-13  Paul Eggert  <eggert@cs.ucla.edu>
26453         Make add_to_log varargs
26454         * src/alloc.c (run_finalizer_handler):
26455         * src/charset.c (load_charset_map_from_vector):
26456         * src/nsimage.m (ns_load_image):
26457         * src/xfaces.c (load_pixmap, load_color2):
26458         Simplify, now that add_to_log has a variable number of args.
26459         * src/image.c (image_error): Take a variable number of args.
26460         Callers simplified.
26461         * src/lisp.h (add_to_log, vadd_to_log): Adjust to new APIs.
26462         * src/xdisp.c (format_nargs, vadd_to_log): New functions.
26463         (add_to_log): Make varargs, and reimplement in terms of vadd_to_log.
26464         * src/xfaces.c (merge_face_ref): Fix typo that omitted color name.
26466         Optional args for holiday-greek-orthodox-easter
26467         * etc/NEWS: Document this.
26468         * lisp/calendar/holidays.el (holiday-greek-orthodox-easter):
26469         Add optional args N and STRING, mimicking the API and code of
26470         ‘holiday-easter-etc’.  From suggestion by Foivos S. Zakkak (Bug#21256).
26472 2015-08-13  Stephen Leake  <stephen_leake@stephe-leake.org>
26474         xref-find-definitions: Exclude more generic function items.
26475         * lisp/emacs-lisp/cl-generic.el (cl--generic-search-method):
26476         Add doc string.
26477         (cl--generic-find-defgeneric-regexp): New.
26478         (find-function-regexp-alist): Add it.
26479         * lisp/emacs-lisp/find-func.el (find-feature-regexp): Move here from
26480         elisp-mode.el, change to search for ";;; Code:"
26481         (find-alias-regexp): Move here from elisp-mode.el, cleaned up.
26482         (find-function-regexp-alist): Add them.
26483         * lisp/progmodes/elisp-mode.el:
26484         (elisp--xref-format, elisp--xref-format-extra): Change back to
26485         defvar due to bug#21237.
26486         (elisp--xref-find-definitions): Exclude co-located default methods for
26487         generic functions.  Also exclude implicitly declared defgeneric.
26488         (elisp--xref-find-definitions): Handle C source properly.  Exclude minor
26489         mode variables defined by 'define-minor-mode'.
26490         * test/automated/elisp-mode-tests.el: Declare generic functions, add
26491         tests for them.
26492         (xref-elisp-test-run): Fix bug.
26493         (emacs-test-dir): Improve initial value.
26494         (find-defs-defun-defvar-el): Don't expect defvar.
26495         (find-defs-feature-el): Match change to find-feature-regexp.
26497 2015-08-13  Eli Zaretskii  <eliz@gnu.org>
26499         Improve warning about purecopy of strings with properties
26500         * src/alloc.c (purecopy): Show the offending string with the
26501         warning about removing its text properties.
26503 2015-08-12  Alan Mackenzie  <acm@muc.de>
26505         Introduce new macros to cover Emacs's new names in cl-lib.el
26506         This also eliminates `mapcan' warnings in XEmacs.
26507         * lisp/progmodes/cc-defs.el (c--mapcan-status): New variable to
26508         characterise [X]Emacs versions.
26509         (top-level): Require either 'cl or 'cl-lib, depending on
26510         c--mapcan-status.
26511         Change this back to cc-external-require from an eval-when-compile
26512         require.
26513         (c--mapcan, c--set-difference, c--intersection, c--macroexpand-all)
26514         (c--delete-duplicates): New macros which expand into either old or new
26515         names.
26516         (c-make-keywords-re, c-lang-defconst, c-lang-const): Use the new macros
26517         rather than the old names.
26518         * lisp/progmodes/cc-engine.el (c-declare-lang-variables): Use c--mapcan
26519         rather than mapcan.
26520         * lisp/progmodes/cc-fonts.el (c-compose-keywords-list): Use c--mapcan.
26521         * lisp/progmodes/cc-langs.el (top-level): Require either 'cl or 'cl-lib,
26522         depending on c--mapcan-status.
26523         (c-filter-ops, c-all-op-syntax-tokens, c-assignment-op-regexp)
26524         (c-type-start-kwds, c-prefix-spec-kwds, c-specifier-key)
26525         (c-not-decl-init-keywords, c-not-primitive-type-keywords)
26526         (c-paren-any-kwds, c-<>-sexp-kwds, c-block-stmt-kwds, c-expr-kwds)
26527         (c-decl-block-key, c-keywords, c-keywords-obarray)
26528         (c-regular-keywords-regexp, c-primary-expr-regexp)
26529         (c-primary-expr-regexp, c-block-prefix-disallowed-chars)
26530         (c-known-type-key, c-nonlabel-token-key)
26531         (c-make-init-lang-vars-fun): Use the new macros rather than the old
26532         names.
26534 2015-08-12  Oleh Krehel  <ohwoeowho@gmail.com>
26536         loadhist.el (read-feature): Conform to completing-read
26537         * lisp/loadhist.el (read-feature): According to `completing-read'
26538         documentation, if collection is a list, then it must be a list of
26539         strings, not a list of symbols like before.
26541 2015-08-12  David Kastrup  <dak@gnu.org>
26543         Deal gracefully with up-events (Bug#19746)
26544         * src/keyboard.c (apply_modifiers_uncached, parse_solitary_modifier)
26545         (parse_modifiers_uncached): React gracefully to "up-" modifiers:
26546         those may easily be injected by user-level Lisp code.
26547         (read_key_sequence): Discard unbound up-events like unbound
26548         down-events: they are even more likely only relevant for special
26549         purposes.
26550         While Emacs will not produce up-events on its own currently (those are
26551         converted to drag or click events before being converted to
26552         Lisp-readable structures), the input queue can be made to contain them
26553         by synthesizing events to `unread-command-events'.  Emacs should deal
26554         consistently with such events.
26556 2015-08-12  Eli Zaretskii  <eliz@gnu.org>
26558         Fix display of thin lines whose newline has line-height property of t
26559         * src/xdisp.c (append_space_for_newline): Don't try to fix ascent
26560         and descent values of non-empty glyph rows, since they could have
26561         forced low values deliberately.  (Bug#21243)
26563 2015-08-12  Richard Stallman  <rms@gnu.org>
26565         Offer to combine multiple To or CC fields.
26566         * lisp/mail/sendmail.el (mail-combine-fields): New function.
26567         (mail-send): Call 'mail-combine-fields'.
26569         Don't decrypt encrypted files.
26570         * lisp/mail/mail-utils.el (mail-file-babyl-p): Bind epa-inhibit to t.
26572         Handle encrypted mbox files.
26573         * lisp/mail/rmailout.el (rmail-output-as-mbox): Decrypt and reencrypt
26574         the mbox file if necessary.
26576         Re-enable mime processing after decryption.  Add 'decrypt' keyword.
26577         * lisp/mail/rmail.el (rmail-epa-decrypt-1): New subroutine.
26578         (rmail-epa-decrypt): rmail-epa-decrypt-1 broken out.
26579         In a mime message, reenable Mime and show the parts that
26580         were shown before.
26581         Add keyword "decrypt" if anything decrypted.
26583         epa-inhibit inhibits auto-recognition of .gpg files
26584         * lisp/epa-file.el (epa-inhibit): New variable.
26585         (epa-file-handler): Check epa-inhibit.
26587 2015-08-12  Artur Malabarba  <bruce.connor.am@gmail.com>
26589         * lisp/emacs-lisp/lisp-mnt.el (lm-header): Add save-excursion.
26591 2015-08-11  Fabián Ezequiel Gallina  <fgallina@gnu.org>
26593         Respect python.el imenu when semantic-mode is off
26594         Fixes bug#21220
26595         * lisp/cedet/semantic/wisent/python.el: Do not force
26596         wisent-python-default-setup on python-mode-hook.
26598 2015-08-11  Paul Eggert  <eggert@cs.ucla.edu>
26600         Give names to Unicode code points in C code
26601         * src/character.h (NO_BREAK_SPACE, SOFT_HYPHEN)
26602         (ZERO_WIDTH_NON_JOINER, ZERO_WIDTH_JOINER, HYPHEN)
26603         (NON_BREAKING_HYPHEN, LEFT_SINGLE_QUOTATION_MARK)
26604         (RIGHT_SINGLE_QUOTATION_MARK, PARAGRAPH_SEPARATOR)
26605         (LEFT_POINTING_ANGLE_BRACKET, RIGHT_POINTING_ANGLE_BRACKET)
26606         (LEFT_ANGLE_BRACKET, RIGHT_ANGLE_BRACKET)
26607         (OBJECT_REPLACEMENT_CHARACTER):
26608         New named constants for Unicode code points.
26609         * src/bidi.c (bidi_fetch_char, CANONICAL_EQU):
26610         * src/composite.c (char_composable_p):
26611         * src/lread.c (readevalloop, read1):
26612         * src/xdisp.c (get_next_display_element):
26613         Use them.
26614         * src/doc.c (LEFT_SINGLE_QUOTATION_POINT):
26615         Remove; now in character.h.
26617 2015-08-11  Stephen Leake  <stephen_leake@stephe-leake.org>
26619         elisp--xref-find-definitions handle cl-defstuct default constructor
26620         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Add FIXME.
26621         (elisp--xref-format-extra): Rename from elisp--xref-format-cl-defmethod.
26622         (elisp--xref-find-definitions): Handle cl-defstuct default constructor.
26623         * test/automated/elisp-mode-tests.el (xref-elisp-test-run): Split out
26624         from xref-elisp-test for ease of debugging.
26625         (xref-elisp-deftest): Rename from xref-elisp-test.
26626         (find-defs-constructor): New test.
26627         (find-defs-defgeneric-el): Match batch test config.
26628         (compile): Required for find-defs compilation-minor-mode test.
26629         (find-defs-defvar-el): Match code change.
26630         (find-defs-face-el): Match code change.
26631         * lisp/progmodes/xref.el (xref-find-function, xref-find-definitions):
26632         Improve doc string.
26634 2015-08-11  Stefan Monnier  <monnier@iro.umontreal.ca>
26636         * lisp/replace.el (perform-replace): Document `replacements'.
26637         (perform-replace): Move the description of the format of `replacements'
26638         from the body's comment to the doc string.
26640 2015-08-11  Jürgen Hötzel  <juergen@archlinux.org>
26642         * lisp/net/tramp-adb.el (tramp-adb-prompt): Match leading escape
26643         sequence.  Recent adb version send initial escape sequences, even
26644         when terminal type is set to TERM=dumb.
26646 2015-08-10  Stephen Leake  <stephen_leake@stephe-leake.org>
26648         Rewrite elisp--xref-find-definitions to handle many more cases; add tests
26649         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
26650         Function deleted.
26651         (elisp--xref-format-cl-defmethod): New defconst.
26652         (find-feature-regexp, find-alias-regexp): New defcustoms.
26653         (elisp--xref-make-xref): New function.
26654         (elisp--xref-find-definitions): Rewrite using the above, handle many
26655         more cases.  Always output all available definitions.
26656         (xref-location-marker): No need for special cases.
26657         * test/automated/elisp-mode-tests.el: Add more tests of
26658         elisp--xref-find-definitions, improve current tests.
26660 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
26662         Fix recording of events pushed onto unread-command-events
26663         * src/keyboard.c (read_char): Make sure events read from
26664         unread-command-events and unread-post-input-method-events are
26665         always recorded by record_char.  Reported by David Kastrup
26666         <dak@gnu.org>, see
26667         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00193.html.
26669 2015-08-10  Samer Masterson  <samer@samertm.com>
26671         Set file buffer as current for "--file"
26672         * lisp/startup.el (command-line-1): Set file buffer as current before
26673         it is displayed so it can be used with options like "--eval".
26674         (Bug#21095)
26676 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
26678         Avoid setting LC_NUMERIC on MS-Windows to anything but "C"
26679         * src/emacs.c (synchronize_locale) [WINDOWSNT]: Call fixup_locale
26680         after setting LC_ALL to the desired locale, to avoid affecting how
26681         numbers are read and printed.  (Bug#21223)
26683 2015-08-10  Alan Mackenzie  <acm@muc.de>
26685         Fix "Invalid search bound (wrong side of point)" in fontification
26686         * lisp/progmodes/cc-fonts.el (c-font-lock-declarators): After skipping
26687         an initialization expression, check point is not beyond the
26688         fontification limit.
26690 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
26692         Fix DPI calculation when Xft/DPI is default
26693         * src/xsettings.c (parse_settings): Don't use Xft/DPI default
26694         value of -1, which evaluates to 2**32 - 1 (Bug#21152).
26695         Remove unnecessary cast while we're in the neighborhood.
26697 2015-08-09  Dmitry Gutov  <dgutov@yandex.ru>
26699         Add project-vc-search-path and project-vc-ignores
26700         * lisp/progmodes/project.el (project-vc): New group.
26701         (project-vc-search-path, project-vc-ignores): New variables.
26702         (project--value-in-dir): Utility function.
26703         (project-search-path, project-ignores): Use them.
26704         * lisp/progmodes/xref.el (xref--rgrep-command): Only replace `./'
26705         at bos.  Don't add extra `/'.  Don't prepend with `*' if replaced.
26707 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
26709         Fix some minor quoting issues with grave accent
26710         * src/dispnew.c (add_window_display_history) [GLYPH_DEBUG]:
26711         Remove redundant quotes.
26712         * src/doc.c (uLSQM, uRSQM): New macros.
26713         * src/doc.c (Fsubstitute_command_keys):
26714         * src/syntax.c (Finternal_describe_syntax_value): Follow the user
26715         preference for quotes rather than hardcoding the ‘grave’ style.
26716         * src/regex.c (PUSH_FAILURE_POINT, POP_FAILURE_POINT)
26717         (re_match_2_internal) [DEBUG]: In debugging output, quote C
26718         strings with "...", not `...'.
26720         ChangeLog.2 ignores remote-tracking merges
26721         * build-aux/gitlog-to-emacslog: Ignore commit logs matching
26722         "Merge remote-tracking branch '.*'" too.  See Eli Zaretskii in:
26723         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00384.html
26725 2015-08-09  Nicolas Richard  <youngfrog@members.fsf.org>
26727         Use kpsewhich in ffap-latex-mode, if available
26728         * lisp/ffap.el (ffap-latex-guess-rules): New variable.
26729         (ffap-latex-mode): Use kpsewhich if available.
26731         ffap: disallow braces in filenames for tex modes
26732         * lisp/ffap.el (ffap-string-at-point-mode-alist): Don't allow
26733         braces in tex-related modes.
26735         Remove useless backslashes from ffap-string-at-point-mode-alist
26736         * lisp/ffap.el (ffap-string-at-point-mode-alist): Remove useless and
26737         misleading backslashes from default value.
26739         Augment docstring of ffap-string-at-point-mode-alist
26740         * lisp/ffap.el (ffap-string-at-point-mode-alist): Describe how BEG
26741         and END are handled.
26743 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
26745         * lisp/org/org-src.el (org-edit-src-code)
26746         (org-edit-fixed-width-region):
26747         * lisp/simple.el (completion-setup-function):
26748         Remove calls to substitute-command-keys that always just return
26749         their argument.
26751 2015-08-09  Daiki Ueno  <ueno@gnu.org>
26753         * lisp/epa.el (epa-exit-buffer-function): Set to `quit-window'.
26754         (Bug#21210)
26756 2015-08-09  Ivan Kanis  <ivan@kanis.fr>
26758         Fix link to source code in help window
26759         * lisp/help-fns.el (find-lisp-object-file-name): Remove code that
26760         will never work due to Glenn Morris change a6d63d9 on Apr 20 2013
26761         'No longer include timestamp in header of .elc files'.  Add code
26762         that will return .el source file in load-path.
26764 2015-08-09  Artur Malabarba  <bruce.connor.am@gmail.com>
26766         * lisp/isearch.el (isearch-search-fun-default): (Bug#21164)
26767         Respect `isearch-lax-whitespace' when searching through
26768         `isearch-word'.
26770 2015-08-08  Stefan Monnier  <monnier@iro.umontreal.ca>
26772         * test/automated/ert-tests.el (ert-test-deftest): Add FIXME.
26774         * lisp/org/org.el: Fix up some lexical scoping warnings, and use dolist
26775         * lisp/org/org.el (org-set-regexps-and-options-for-tags, org-goto-map)
26776         (org-set-regexps-and-options, org-assign-fast-keys)
26777         (org-contextualize-keys, org-contextualize-validate-key)
26778         (org-notes-order-reversed-p, org-local-logging, org-map-entries)
26779         (org-find-olp, org-find-exact-heading-in-directory)
26780         (org-cycle-agenda-files, org-release-buffers, org-fill-template)
26781         (org-agenda-prepare-buffers, org-occur-in-agenda-files)
26782         (org-replace-escapes): Use dolist.
26783         (org-mode): Optimize away XEmacs-only code.
26784         (org-refile-get-targets): Remove unused var `f'.
26785         (org-fast-todo-selection): Remove unused var `e'.
26786         (org-make-tags-matcher): Use dolist.  Remove unused var `term'.
26787         (org-fast-tag-selection): Use dolist.  Remove unused var `e'.
26788         (org-format-latex): Use dolist.  Remove unused var `e'.
26789         (org-toggle-heading): Access vars lexically rather than dynamically.
26790         (org-backward-sentence, org-forward-sentence, org-meta-return)
26791         (org-kill-line): Mark arg as unused.
26792         (org-submit-bug-report): Silence compiler warning.
26793         (org-occur-in-agenda-files): Don't use add-to-list on local vars.
26794         (org-get-cursor-date): Remove unused var `tm'.
26795         (org-comment-or-uncomment-region): Use standard name `_'.
26796         (reftex-docstruct-symbol, reftex-cite-format): Declare to
26797         silence byte-compiler.
26798         (org-reftex-citation): Add `org--' prefix to dynamically scoped
26799         `rds' var.
26801 2015-08-08  Paul Eggert  <eggert@cs.ucla.edu>
26803         Electric quote if coding is undecided or no conv
26804         * lisp/electric.el (electric--insertable-p): Also say that a
26805         string is insertable if the buffer file coding system is undecided
26806         or uses no conversion, as curved quotes will work in either case.
26808         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Simplify configuration.
26810 2015-08-08  Eli Zaretskii  <eliz@gnu.org>
26812         Fix overlay string display regressions introduced in Emacs 24.5
26813         * src/xdisp.c (pop_it): Reset the flag to ignore overlays at this
26814         buffer position, if we move the iterator to a new position as
26815         result of jumping over text covered by a "replacing" display
26816         property.
26817         * test/redisplay-testsuite.el (test-redisplay-4): Add 2 new tests.
26819         Support recovery from C stack overflow on MS-Windows
26820         * src/w32fns.c (w32_reset_stack_overflow_guard)
26821         (stack_overflow_handler): New functions for handling C stack
26822         overflow exceptions.
26823         (my_exception_handler): Handle EXCEPTION_STACK_OVERFLOW exceptions
26824         specially, and zero out except_addr if we do.
26825         (globals_of_w32fns): Initialize dwMainThreadId in non-interactive
26826         mode.
26827         * src/sysdep.c [HAVE_STACK_OVERFLOW_HANDLING]: Add !WINDOWSNT to
26828         the condition, as HAVE_STACK_OVERFLOW_HANDLING is now defined for
26829         the MinGW build, but the code guarded by that is for Posix hosts.
26830         * src/keyboard.c (command_loop) [WINDOWSNT]:
26831         Call w32_reset_stack_overflow_guard.
26832         * nt/inc/ms-w32.h (sigjmp_buf): New typedef.
26833         (sigsetjmp): New macro.
26834         (w32_reset_stack_overflow_guard): Declare the prototype.
26835         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Set to 1 for MinGW.
26837 2015-08-07  Phillip Lord  <phillip.lord@newcastle.ac.uk>
26839         Improve error signalling for seq-subseq
26840         * lisp/emacs-lisp/seq.el (seq-subseq): The existing behavior is to error
26841         when indexes are too large, but to silently ignore numbers which
26842         are too negative for lists.  String and vector handling errors in
26843         both cases.  This has been regularized.  Error signaling behavior
26844         has been explicitly added to the doc string.
26846         * lisp/cl-extra.el (cl-subseq): Defers to (seq-subseq) and is
26847         therefore also impacted by this change.  Update the doc string
26848         to reflect this.
26850         * test/automated/seq-tests.el (test-seq-subseq): Tests have been
26851         added for these exceptional cases, as well as one non exceptional
26852         base case.
26854 2015-08-07  Jürgen Hötzel  <juergen@archlinux.org>
26856         Improve error checking in tramp-adb.el
26857         * lisp/net/tramp-adb.el (tramp-adb-ls-output-name-less-p):
26858         Improve error checking.  "ls -l" on Android in Enforcing mode can
26859         print "lstat './FILENAME failed: Permission denied".
26861 2015-08-07  Stefan Monnier  <monnier@iro.umontreal.ca>
26863         * lisp/emacs-lisp/cl-generic.el (cl--generic-struct-tag): Don't burp on
26864         non-struct vectors.
26866 2015-08-07  Stephen Leake  <stephen_leake@stephe-leake.org>
26868         Fix typo in lisp/window.el, more `display-buffer-use-some-frame'
26869         * lisp/window.el: Fix typo that broke build.
26870         (display-buffer--action-function-custom-type):
26871         Add `display-buffer-use-some-frame'.
26872         (display-buffer): Add `display-buffer-use-some-frame' to doc string.
26874         Add support for 'inhibit-same-window in 'display-buffer-use-some-frame'
26875         * lisp/window.el (display-buffer-use-some-frame): Add support for
26876         'inhibit-same-window in alist.
26877         * doc/lispref/windows.texi (display-buffer-use-some-frame):
26878         Doc support for 'inhibit-same-window in alist.
26880 2015-08-07  Eli Zaretskii  <eliz@gnu.org>
26882         Avoid infinite loop in display of invisible text in strings
26883         * src/xdisp.c (handle_invisible_prop): If the next change of
26884         invisibility spec does not mean the beginning of a visible text,
26885         update the string position from which to start the search for the
26886         next invisibility change.  This avoids an infinite loop when we
26887         have more than one invisibility spec that are made inactive by
26888         buffer-invisibility-spec.  Simplify code.  (Bug#21200)
26889         * test/redisplay-testsuite.el (test-redisplay-4): Add a test case
26890         for the situation that caused bug #21200.
26892 2015-08-06  Artur Malabarba  <bruce.connor.am@gmail.com>
26894         * lisp/emacs-lisp/package.el: Simplify describe-package-1
26895         (package-help-section-name-face): New face.
26896         (package--print-help-section): New function.
26897         (describe-package-1): Refactor section printing.
26898         (package-make-button): Use face instead of font-lock-face, which
26899         doesn't work on buttons.
26901         * lisp/emacs-lisp/package.el: Define custom faces
26902         (package-name-face, package-description-face)
26903         (package-status-built-in-face, package-status-external-face)
26904         (package-status-available-face, package-status-new-face)
26905         (package-status-held-face, package-status-disabled-face)
26906         (package-status-installed-face, package-status-dependency-face)
26907         (package-status-unsigned-face, package-status-incompat-face)
26908         (package-status-avail-obso-face): New faces.
26909         (package-menu--print-info-simple): Use them.
26911 2015-08-05  Paul Eggert  <eggert@cs.ucla.edu>
26913         Fix some confusion with ‘format’
26914         * lisp/allout-widgets.el (allout-widgets-before-change-handler)
26915         (allout-graphics-modification-handler):
26916         Protect arbitrary string in a format context with "%s" format.
26917         * lisp/avoid.el:
26918         * lisp/cedet/semantic/bovine/scm.el: Fix comment.
26919         * lisp/calendar/icalendar.el (icalendar--convert-sexp-to-ical):
26920         * lisp/erc/erc-button.el (erc-button-beats-to-time):
26921         * lisp/gnus/message.el (message-send-form-letter):
26922         * lisp/org/ob-core.el (org-babel-check-evaluate)
26923         (org-babel-confirm-evaluate):
26924         * lisp/org/ob-fortran.el (org-babel-fortran-var-to-fortran):
26925         * lisp/org/ox-latex.el (org-latex-compile):
26926         * lisp/org/ox-man.el (org-man-compile):
26927         * lisp/org/ox-odt.el (org-odt-template):
26928         * lisp/org/ox-texinfo.el (org-texinfo-compile):
26929         * lisp/progmodes/prolog.el (prolog-help-info)
26930         (prolog-view-predspec):
26931         * lisp/progmodes/ruby-mode.el (ruby-parse-partial):
26932         * lisp/progmodes/verilog-mode.el (verilog-showscopes):
26933         * lisp/textmodes/rst.el (rst-replace-lines):
26934         Change (message (format ...)) to (message ...), and likewise
26935         for ‘error’.  This lessens the probability of confusion when the
26936         output of ‘format’ contains ‘%’.
26938 2015-08-05  Artur Malabarba  <bruce.connor.am@gmail.com>
26940         * lisp/replace.el (replace-character-fold): Default to nil.
26942         * lisp/character-fold.el: Fix lax whitespace.
26943         (character-fold-table): Don't make space match other whitespace chars.
26944         (character-fold-to-regexp): Simplify lax behavior.
26946 2015-08-05  Dmitry Gutov  <dgutov@yandex.ru>
26948         Preserve window point in xref-find-definitions-other-window
26949         Fix the problem reported by Ingo Logmar in
26950         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00152.html
26951         * lisp/progmodes/xref.el (xref--goto-char): Extract from
26952         xref--goto-location.
26953         (xref--pop-to-location): Use it.  Replace xref--goto-location with
26954         a direct xref-location-marker call.
26955         (xref--show-location): Likewise.
26956         (xref--display-position): Use xref--goto-char.
26958         * lisp/progmodes/project.el: Add a paragraph to the front matter.
26960 2015-08-04  David Kastrup  <dak@gnu.org>
26962         * lisp/vc/emerge.el (emerge-show-file-name):
26963         * lisp/progmodes/vhdl-mode.el (vhdl-electric-dash)
26964         (vhdl-comment-insert, vhdl-hooked-abbrev):
26965         * lisp/progmodes/octave.el (inferior-octave-dynamic-list-input-ring):
26966         * lisp/progmodes/fortran.el (fortran-window-create-momentarily):
26967         * lisp/progmodes/ebrowse.el (ebrowse-hack-electric-buffer-menu):
26968         * lisp/progmodes/cperl-mode.el (cperl-putback-char):
26969         * lisp/obsolete/vip.el (vip-escape-to-emacs)
26970         (vip-prefix-arg-value, vip-prefix-arg-com):
26971         * lisp/obsolete/terminal.el (te-escape-extended-command-unread):
26972         * lisp/leim/quail/tibetan.el (quail-tibetan-update-translation)
26973         (quail-tibkey-update-translation):
26974         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
26975         * lisp/leim/quail/lao.el (quail-lao-update-translation):
26976         * lisp/leim/quail/japanese.el (quail-japanese-update-translation)
26977         (quail-japanese-self-insert-and-switch-to-alpha):
26978         * lisp/leim/quail/hangul.el (hangul2-input-method)
26979         (hangul3-input-method, hangul390-input-method):
26980         * lisp/language/hanja-util.el (hangul-to-hanja-char):
26981         * lisp/international/robin.el (robin-input-method):
26982         * lisp/international/quail.el (quail-start-translation)
26983         (quail-start-conversion):
26984         * lisp/gnus/gnus-art.el (gnus-article-describe-key)
26985         (gnus-article-describe-key-briefly):
26986         * lisp/eshell/em-hist.el (eshell-list-history):
26987         * lisp/term.el (term-dynamic-list-input-ring)
26988         (term-dynamic-list-completions):
26989         * lisp/subr.el (momentary-string-display):
26990         * lisp/simple.el (read-quoted-char):
26991         * lisp/pcomplete.el (pcomplete-show-completions):
26992         * lisp/kmacro.el (kmacro-repeat-on-last-key):
26993         * lisp/info.el (Info-summary):
26994         * lisp/ehelp.el (electric-help-command-loop):
26995         * lisp/ebuff-menu.el (electric-buffer-list)
26996         (Electric-buffer-menu-exit):
26997         * lisp/double.el (double-translate-key):
26998         * lisp/comint.el (comint-dynamic-list-input-ring)
26999         (comint-dynamic-list-completions): Do not overwrite preexisting
27000         contents of `unread-command-events' when putting new events into it.
27002 2015-08-04  Daniel Colascione  <dancol@dancol.org>
27004         Improve ansi-color filtering of unrecognized escape sequences
27005         * lisp/ansi-color.el (ansi-color-drop-regexp): Recognize mode-setting
27006         escape sequences.
27007         (ansi-color-filter-apply, ansi-color-apply): Filter out
27008         unrecognized escape sequences.
27010 2015-08-04  Artur Malabarba  <bruce.connor.am@gmail.com>
27012         * lisp/emacs-lisp/package.el (package-menu-mode-map): Convert menu
27013         definitions to `easy-menu-define', improve a couple to account for
27014         async, and add a couple of new commands.
27016 2015-08-03  Jürgen Hötzel  <juergen@archlinux.org>
27018         * lisp/net/tramp-cache.el (tramp-set-file-property): Fix code typo.
27020 2015-08-03  Ingo Lohmar  <i.lohmar@gmail.com>
27022         Add new 'calendar-weekend-days' option
27023         Make the days receiving the 'calendar-weekend-header' face freely
27024         customizable, as they differ by region/culture.
27025         * doc/emacs/calendar.texi (Move to Beginning or End): Document the
27026         new variable.
27027         * lisp/calendar/calendar.el (calendar-generate-month): New variable
27028         calendar-weekend-days to customize day header fontification.
27030 2015-08-03  Paul Eggert  <eggert@cs.ucla.edu>
27032         Redo text-quoting-style variable
27033         Rename help-quote-translation to text-quoting-style,
27034         and use symbols rather than characters as values.
27035         This follows suggestions along these lines by Alan Mackenzie in:
27036         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00343.html
27037         and by Drew Adams in:
27038         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00048.html
27039         * doc/lispref/help.texi (Keys in Documentation)
27040         * etc/NEWS:
27041         * lisp/cus-start.el (standard):
27042         * src/doc.c (Fsubstitute_command_keys, syms_of_doc):
27043         Document and/or implement the new behavior instead of the old.
27044         (syms_of_doc): New symbols 'grave' and 'straight'.
27046 2015-08-03  Nikolaus Rath  <Nikolaus@rath.org>
27048         nnimap.el: Use IMAP MOVE extension if available
27049         * lisp/gnus/nnimap.el (nnimap-request-move-article)
27050         (nnimap-process-expiry-targets, nnimap-split-incoming-mail):
27051         Use MOVE extension if available.
27053         nnimap.el: Explicitly ask for server capabilities
27054         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Don't assume full
27055         capabilities will be returned in the login-result.
27057 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
27059         Treat help strings like other doc strings
27060         * doc/lispref/text.texi (Special Properties), etc/NEWS: Document this.
27061         * lisp/epa.el (epa--select-keys): Remove no-longer-needed calls to
27062         substitute-command-keys.
27063         * src/keyboard.c (show_help_echo, parse_menu_item): Call
27064         substitute-command-keys on the help string before displaying it.
27066         Also mention "curly quotes"
27067         See Drew Adams's email in:
27068         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00040.html
27069         * doc/lispref/help.texi (Keys in Documentation):
27070         Add index entry "curly quotes".
27071         * etc/NEWS: Use the phrase "curly quotes" too.
27073         ede-proj-target-makefile docstring tweaks
27074         * lisp/cedet/ede/proj.el (ede-proj-target-makefile):
27075         Consistently use "all:" to describe the all: target,
27076         replacing three different and confusingly-quoted usages.
27078 2015-08-02  Evgeny Fraimovitch  <johnlen7@gmail.com>  (tiny change)
27080         Don't abort emacsclientw when -a was specified
27081         * lib-src/emacsclient.c (set_tcp_socket) [WINDOWSNT]: Don't error
27082         out if we are in emacsclientw and -a was specified.
27084 2015-08-02  Eli Zaretskii  <eliz@gnu.org>
27086         Fix handling of 1st keystroke on MS-Windows
27087         * src/w32fns.c (globals_of_w32fns): Initialize after_deadkey to -1.
27088         This is needed to correctly handle the session's first keystroke,
27089         if it has any modifiers.  (Bug#19994)
27091 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
27093         Substitute some customization etc. doc strings
27094         These changes apply substitute-command-keys to some
27095         doc strings that were going through untranslated
27096         when creating customization or other widgets.
27097         * lisp/cus-edit.el (custom-group-value-create):
27098         * lisp/wid-edit.el (widget-default-create):
27099         (widget-push-button-value-create):
27100         Treat the widget tag as a doc string.
27101         * lisp/emacs-lisp/cl-extra.el (cl--describe-class-slot):
27102         Treat the :documentation value as a doc string.
27103         * lisp/wid-edit.el (widget-choose):
27104         Treat the choice names as doc strings.
27105         (widget-default-create): Treat the :doc value as a doc string.
27106         (widget-toggle-value-create): Treat the :on and :off values
27107         as doc strings.
27108         (widget-documentation-string-value-create):
27109         Substitute the doc string.
27111 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
27113         Add a second argument to project-ignores
27114         * lisp/progmodes/project.el (project-ignores): Add a second
27115         argument DIR.
27116         * lisp/progmodes/project.el (project-ignores): Only include the VC
27117         ignores if DIR is the VC root.
27118         * lisp/progmodes/xref.el (xref-find-regexp): Update accordingly.
27120 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
27122         Prevent incorrect display when 'line-spacing' variable is set
27123         * src/xdisp.c (try_window_id): Give up this optimization if the
27124         buffer has its 'line-spacing' variable set non-nil.
27126 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
27128         Don't pass NOVISIT to find-file
27129         * lisp/progmodes/etags.el (next-file):
27130         Don't pass NOVISIT to find-file (bug#21175).
27132         Ignore buffer restriction for tags-loop-eval
27133         * lisp/progmodes/etags.el (tags-loop-continue): Ignore buffer
27134         restriction (bug#21167).
27136 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
27138         Fix a thinko in 'ffap-gopher-at-point'
27139         * lisp/ffap.el (ffap-gopher-at-point): Fix last change.  (Bug#21168)
27141         Honor 'line-spacing' for empty lines
27142         * src/xdisp.c (append_space_for_newline): Honor 'line-height'
27143         property and 'line-spacing' frame parameter or variable or
27144         property for empty lines, by doing the same processing as in
27145         x_produce_glyph for newline characters.  (Bug#21165)
27147 2015-08-01  Paul Eggert  <eggert@cs.ucla.edu>
27149         Simplify by assuming C99 integer division
27150         * src/floatfns.c (ceiling2, floor2, truncate2):
27151         Assume C99 (i.e., Fortran) semantics for integer division.
27152         This simplifies the code.
27154 2015-07-31  Paul Eggert  <eggert@cs.ucla.edu>
27156         Don't overflow if computing approximate percentage
27157         * lisp/align.el (align-region):
27158         * lisp/cedet/semantic.el (semantic-repeat-parse-whole-stream):
27159         * lisp/cedet/semantic/wisent.el (wisent-parse-region):
27160         * lisp/cus-edit.el (custom-buffer-create-internal):
27161         * lisp/emacs-lisp/checkdoc.el (checkdoc-interactive-ispell-loop)
27162         (checkdoc-message-interactive-ispell-loop, checkdoc-next-error)
27163         (checkdoc-next-message-error):
27164         * lisp/emacs-lisp/eieio-opt.el (eieio-display-method-list):
27165         * lisp/epa.el (epa-progress-callback-function):
27166         * lisp/erc/erc-dcc.el (erc-dcc-do-LIST-command):
27167         * lisp/ffap.el (ffap-menu-rescan):
27168         * lisp/gnus/nnbabyl.el (nnbabyl-retrieve-headers):
27169         * lisp/gnus/nndiary.el (nndiary-retrieve-headers):
27170         * lisp/gnus/nneething.el (nneething-retrieve-headers):
27171         * lisp/gnus/nnmbox.el (nnmbox-retrieve-headers):
27172         * lisp/gnus/nnmh.el (nnmh-retrieve-headers):
27173         * lisp/gnus/nnml.el (nnml-retrieve-headers):
27174         * lisp/gnus/nnspool.el (nnspool-retrieve-headers):
27175         * lisp/gnus/nntp.el (nntp-retrieve-headers)
27176         (nntp-retrieve-articles):
27177         * lisp/imenu.el (imenu--relative-position):
27178         * lisp/international/ja-dic-cnv.el (skkdic-collect-okuri-nasi)
27179         (skkdic-convert-okuri-nasi):
27180         * lisp/net/ange-ftp.el (ange-ftp-process-handle-hash):
27181         * lisp/nxml/rng-valid.el (rng-compute-mode-line-string):
27182         * lisp/org/org-list.el (org-update-checkbox-count):
27183         * lisp/org/org.el (org-table-map-tables)
27184         (org-update-parent-todo-statistics):
27185         * lisp/play/decipher.el (decipher-insert-frequency-counts)
27186         (decipher-analyze-buffer):
27187         * lisp/profiler.el (profiler-format-percent):
27188         * lisp/progmodes/cc-cmds.el (c-progress-update):
27189         * lisp/progmodes/cpp.el (cpp-highlight-buffer):
27190         * lisp/progmodes/idlwave.el (idlwave-convert-xml-system-routine-info)
27191         (idlwave-list-load-path-shadows):
27192         * lisp/progmodes/opascal.el (opascal-step-progress):
27193         * lisp/progmodes/vhdl-mode.el (vhdl-update-progress-info)
27194         (vhdl-scan-directory-contents):
27195         * lisp/textmodes/bibtex.el (bibtex-progress-message):
27196         * lisp/textmodes/flyspell.el (flyspell-small-region)
27197         (flyspell-external-point-words):
27198         * lisp/textmodes/table.el (table-recognize):
27199         Prefer (floor (* 100.0 NUMERATOR) DENOMINATOR) when calculating
27200         progress-report percentages and the like.  This avoids problems
27201         if (* 100 NUMERATOR) would overflow.
27202         * lisp/gnus/gnus-registry.el (gnus-registry-import-eld):
27203         * lisp/gnus/registry.el (registry-reindex):
27204         Use (* 100.0 ...) rather than (* 100 ...) to avoid int overflow issues.
27205         * lisp/descr-text.el (describe-char):
27206         * lisp/org/org-colview.el (org-nofm-to-completion):
27207         * lisp/ps-print.el (ps-plot):
27208         * lisp/simple.el (what-cursor-position):
27209         Prefer (round (* 100.0 NUMERATOR) DENOMINATOR) to a
27210         more-complicated and less-accurate approximation.
27212         Fix some int overflows in profiler.c
27213         * src/profiler.c (make_log): Make args EMACS_INT, not int,
27214         to avoid unwanted behavior on 'int' overflow.
27215         (make_log, evict_lower_half, record_backtrace):
27216         Use ptrdiff_t, not int, for object indexes.
27218         Port to pedantic memcpy
27219         * src/keyboard.c (menu_bar_items, tool_bar_items):
27220         * src/xrdb.c (magic_db):
27221         Port to pedantic memcpy implementations that reject memcpy (0, 0, 0).
27223         Merge from gnulib
27224         This incorporates:
27225         2015-07-29 time_rz: port to pedantic memcpy
27226         * lib/time_rz.c: Copy from gnulib.
27228 2015-07-31  Artur Malabarba  <bruce.connor.am@gmail.com>
27230         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
27231         When updating the very last entry, tabulated-list-print would
27232         erase it and then try to look at the next one (which obviously
27233         isn't there).
27235 2015-07-31  Eli Zaretskii  <eliz@gnu.org>
27237         Allow to use the old key processing code on MS-Windows
27238         * src/w32fns.c (syms_of_w32fns) <w32-use-fallback-wm-chars-method>:
27239         New variable.
27240         (w32_wnd_proc): Use it to invoke the old code that processed
27241         character keys, as fallback, when this variable is non-nil.
27242         Fix typos in comments.  (Bug#19994)
27244 2015-07-31  Ilya Zakharevich  <ilya@math.berkeley.edu>
27246         Improve handling of Unicode keyboard input on MS-Windows
27247         * src/w32fns.c (get_wm_chars, deliver_wm_chars): New functions.
27248         (FPRINTF_WM_CHARS) [DEBUG_WM_CHARS]: New macro for debugging.
27249         (w32_wnd_proc): Call deliver_wm_chars to process non-special keys
27250         upon receiving WM_KEYDOWN or WM_SYSKEYDOWN messages.  If that is
27251         successful, don't call TranslateMessage.  (Bug#19994)
27253 2015-07-30  Dmitry Gutov  <dgutov@yandex.ru>
27255         Fix default-directory in changeset diffs after vc-print-log
27256         * lisp/vc/log-view.el (log-view-diff-common): Move the
27257         revision-granularity check back into log-view-diff-changeset.
27258         (log-view-diff-changeset): Bind default-directory to the current
27259         VC root.
27261         Rename project-directories to project-roots
27262         * lisp/progmodes/project.el (project-search-path-function)
27263         (project-search-path): Update the docstring.
27264         (project-directories): Rename to `project-roots', update all
27265         callers and implementations accordingly.
27266         (project-root): Remove.
27267         * lisp/progmodes/xref.el (xref-find-regexp): Use * instead of *.*
27268         as the default file mask.
27270 2015-07-30  Eli Zaretskii  <eliz@gnu.org>
27272         Support long URLs in w32-shell-execute
27273         * src/w32fns.c (Fw32_shell_execute): Don't use filename_to_utf16
27274         and filename_to_ansi to convert the DOCUMENT argument, as it could
27275         be a URL that is not limited to MAX_PATH characters.  Instead, use
27276         MultiByteToWideChar directly, and allocate heap storage as
27277         required to accommodate the converted string.  Likewise with
27278         non-Unicode operation.  Ensure OPERATION is null-terminated, even
27279         if it is longer than 32K bytes.  (Bug#21158)
27281 2015-07-30  Stephen Leake  <stephen_leake@stephe-leake.org>
27283         * lisp/vc/vc-mtn.el (vc-mtn-find-revision): Handle null rev.
27285 2015-07-29  Stephen Leake  <stephen_leake@stephe-leake.org>
27287         Add docs for display-buffer action display-buffer-use-some-frame
27288         * lisp/window.el (display-buffer-use-some-frame): Improve doc string.
27289         * doc/lispref/windows.texi (Display Action Functions):
27290         Add display-buffer-use-some-frame.
27291         * etc/NEWS: Mention display-buffer-use-some-frame.
27293         Add display-buffer action display-buffer-use-some-frame
27294         * lisp/window.el (display-buffer-use-some-frame): New.
27296         Handle vc-mtn error more gently
27297         * lisp/vc/vc-mtn.el (vc-mtn-mode-line-string): Return "" when
27298         branch is nil.
27300 2015-07-29  Michael Albinus  <michael.albinus@gmx.de>
27302         Fix Tramp problems with multihops, and nc
27303         * lisp/net/tramp-cache.el (tramp-get-file-property)
27304         (tramp-set-file-property, tramp-flush-file-property)
27305         (tramp-get-connection-property, tramp-set-connection-property)
27306         (tramp-flush-connection-property): Remove hop from vector.
27307         * lisp/net/tramp-gw.el (tramp-gw-process-filter): Ignore errors.
27308         * lisp/net/tramp-sh.el (tramp-methods) <nc>: Separate STDERR.
27309         (tramp-do-copy-or-rename-file-out-of-band): Increase timeout of
27310         netstat to 60".
27311         (tramp-sh-handle-start-file-process): Do not show hops in prompt.
27312         * lisp/net/tramp.el (tramp-handle-file-name-as-directory)
27313         (tramp-handle-file-name-directory, tramp-handle-file-remote-p):
27314         Keep hop in result.
27315         * test/automated/tramp-tests.el (tramp-test02-file-name-dissect):
27316         Add hop tests.
27318 2015-07-29  Eli Zaretskii  <eliz@gnu.org>
27320         Resurrect highlighting of repeated words by Flyspell Mode
27321         * lisp/textmodes/flyspell.el (flyspell-word): Leave some non-word
27322         characters between point and the doublon candidate, so that
27323         flyspell-word-search-backward finds it.  (Bug#21157)
27325         Fix redisplay of large images on expose events
27326         * src/xdisp.c (expose_window, expose_area): Avoid comparisons
27327         between signed negative values and unsigned values.  This
27328         prevented redisplay on expose events when the window showed a very
27329         large image.
27331 2015-07-29  Paul Eggert  <eggert@cs.ucla.edu>
27333         Remove unnecessary stack overflow dependency
27334         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING):
27335         Don't worry about $ac_cv_header_sys_resource_h and
27336         $ac_cv_func_getrlimit, as they're no longer needed for this.
27337         Problem reported by Eli Zaretskii in:
27338         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00443.html
27340 2015-07-28  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
27342         Pacify compilation -Wincompatible-pointer-types warnings
27343         * src/w32proc.c (Fw32_get_codepage_charset): Avoid compilation
27344         warning.
27345         (CompareStringW_Proc): New typedef.
27346         (w32_compare_strings): Use it, to pacify compiler warnings under
27347         "-Wincompatible-pointer-types".
27348         * src/w32fns.c (GetDiskFreeSpaceExW_Proc)
27349         (GetDiskFreeSpaceExA_Proc): New typedefs.
27350         (Ffile_system_info): Use them, to pacify compiler warnings under
27351         "-Wincompatible-pointer-types".
27353 2015-07-28  Paul Eggert  <eggert@cs.ucla.edu>
27355         Fix subscript error in calculate_direct_scrolling
27356         Use slightly-longer cost vectors.  Without this change,
27357         calculate_direct_scrolling can have a subscript violation when
27358         FRAME_LINES (frame) <= delta.
27359         * src/scroll.c (calculate_scrolling, calculate_direct_scrolling)
27360         (line_ins_del, do_line_insertion_deletion_costs):
27361         Allocate and use slightly-larger cost vectors, ones based on
27362         FRAME_TOTAL_LINES instead of FRAME_LINES.
27364         Fix uninitalized value in encode_coding_object
27365         * src/coding.c (encode_coding_object): Also initialize
27366         coding->src_pos and coding->src_pos_byte when NILP (src_object).
27367         This avoids later use of uninitialized storage.
27369 2015-07-27  Xue Fuqiao  <xfq.free@gmail.com>
27371         * doc/lispref/variables.texi (Variable Aliases): Typo fix.
27372         (Bug#21141)
27374 2015-07-27  Paul Eggert  <eggert@cs.ucla.edu>
27376         Merge from gnulib
27377         This incorporates:
27378         2015-07-27 time_rz: port better to MinGW
27379         2015-07-27 time: port __need_time_t to MinGW
27380         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
27381         * lib/strftime.c, lib/time.in.h, lib/time_rz.c: Copy from gnulib.
27382         * lib/time-internal.h: New file, from gnulib.
27384 2015-07-27  Eli Zaretskii  <eliz@gnu.org>
27386         Handle NULL pointers in w32heap.c allocation routines
27387         * src/w32heap.c (FREEABLE_P): Consider a NULL pointer "not
27388         freeable".
27389         (realloc_after_dump, realloc_before_dump, free_before_dump):
27390         Handle NULL pointers gracefully, as Emacs now seems to expect that.
27392         Fix Cairo build without PNG
27393         * src/image.c: Define PNG function when USE_CAIRO is defined, even
27394         if HAVE_PNG is not.  (Bug#21133)
27396         MS-Windows follow-up for recent TZ-related changes
27397         * nt/mingw-cfg.site (ac_cv_header_pthread_h)
27398         (gl_cv_sys_struct_timespec_in_pthread_h): Force to "no", to avoid
27399         picking up 'struct timespec' from pthread.h, if it is installed on
27400         the user's system.  We want either the definitions from MinGW
27401         system headers, if available, or the Gnulib replacements if not.
27402         * nt/inc/ms-w32.h <struct timespec>: Don't define, as we now use
27403         lib/time.h.
27404         * lib/time.in.h: Don't let __need_* symbols affect what happens on
27405         MinGW.  These symbols are defined by MinGW system headers, but we
27406         don't want that to affect whether Gnulib portions of the header
27407         are or aren't used.
27409 2015-07-26  Paul Eggert  <eggert@cs.ucla.edu>
27411         * src/ftfont.c (ftfont_close): Add comment re Bug#20890.
27413         New optional ZONE arg for format-time-string etc.
27414         This simplifies time conversions in other time zones.
27415         It also prevents display-time-world tampering with TZ (Bug#21020).
27416         * admin/admin.el (add-release-logs):
27417         Use improved add-log-time-format API.
27418         * admin/merge-gnulib (GNULIB_MODULES): Add time_rz, timegm.
27419         (GNULIB_TOOL_FLAGS): Avoid flexmember, setenv, unsetenv.
27420         * configure.ac (tzalloc): Remove test for this, since
27421         Emacs no longer uses HAVE_TZALLOC directly.
27422         * doc/lispref/os.texi (Time of Day, Time Conversion)
27423         (Time Parsing):
27424         * etc/NEWS: Document the new behavior.
27425         Merge from gnulib, incorporating:
27426         2015-07-25 strftime: fix newly-introduced bug on Solaris
27427         2015-07-23 fprintftime, strftime: use timezone_t args
27428         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
27429         * lib/strftime.c, lib/strftime.h, lib/time.in.h, m4/sys_time_h.m4:
27430         * m4/time_h.m4:
27431         Update from gnulib.
27432         * lib/time_rz.c, lib/timegm.c, m4/time_rz.m4, m4/timegm.m4:
27433         New files from gnulib.
27434         * lisp/time-stamp.el (time-stamp-string):
27435         * lisp/time.el (display-time-world-list)
27436         (display-time-world-display):
27437         Use new API, with time zone arg.
27438         * lisp/time.el (display-time-world-display):
27439         Fix race when current-time advances while we're running.
27440         * lisp/vc/add-log.el (add-log-iso8601-time-zone)
27441         (add-log-iso8601-time-string): Accept optional time zone arg.
27442         * lisp/vc/add-log.el (add-change-log-entry):
27443         * lisp/vc/log-edit.el (log-edit-changelog-ours-p): Use new arg.
27444         * nt/gnulib.mk: Propagate lib/gnulib.mk changes here.
27445         Add rules for the time module, since they're now needed
27446         for tzalloc etc.
27447         * src/conf_post.h (getenv_TZ, setenv_TZ): New macros.
27448         (emacs_getenv_TZ, emacs_setenv_TZ): New decls.
27449         * src/editfns.c: Include errno.h.
27450         (set_time_zone_rule): Omit unnecessary forward decl.
27451         (initial_tz): Remove, replacing with ...
27452         (local_tz, wall_clock_tz, utc_tz): New static vars and constants.
27453         (tzeqlen): New constant; prefer it to (sizeof "TZ=" - 1).
27454         (emacs_localtime_rz, emacs_mktime_z, xtzalloc, xtzfree)
27455         (tzlookup): New static functions.
27456         (init_editfns): New arg DUMPING.  All uses changed.
27457         (init_editfns): Omit most initialization if dumping, not if
27458         !initialized.  Initialize wall_clock_tz and local_tz.
27459         (emacs_nmemftime, format_time_string): Time zone argument can now
27460         be any time zone, not just a boolean for UTC or local time.  All
27461         callers changed.
27462         (Fformat_time_string, Fencode_time, Fcurrent_time_string)
27463         (Fcurrent_time_zone): New optional arg ZONE.
27464         (Fdecode_time, Fset_time_zone_rule): ZONE arg can now also take
27465         the same form as with the other new additions.
27466         (decode_time_zone): Remove; no longer needed.
27467         (tzvalbuf): Now file-scope.
27468         (emacs_getenv_TZ, emacs_setenv_TZ): New functions.
27469         (syms_of_editfns): Define Qwall.
27470         * src/editfns.c (mktime_z) [!HAVE_TZALLOC]:
27471         * src/systime.h (mktime_z, timezone_t, tzalloc, tzfree)
27472         [!HAVE_TZALLOC]:
27473         Remove; now supplied by gnulib.
27474         * src/emacs.c (main):
27475         * src/lisp.h (init_editfns): Adjust to init_editfns API change.
27477 2015-07-26  Shigeru Fukaya  <shigeru.fukaya@gmail.com>
27479         Fix infinite loop in delete-consecutive-dups
27480         * lisp/subr.el (delete-consecutive-dups): Work even if the last
27481         element is nil (Bug#20588).  Avoid rescan of a circular list in
27482         deletion of last element.
27484 2015-07-26  Martin Rudalics  <rudalics@gmx.at>
27486         Have `x-frame-geometry' return nil for terminal and initial
27487         frames (Bug#21132)
27488         * src/nsfns.m (Fx_frame_geometry):
27489         * src/xfns.c (Fx_frame_geometry): Return nil for initial and
27490         terminal frames.
27491         * src/w32fns.c (Fw32_frame_menu_bar_size, Fw32_frame_rect)
27492         (Fx_frame_geometry): Return nil for terminal frames
27494 2015-07-26  HOSOYA Kei  <hosoyakei.free@gmail.com>  (tiny change)
27496         * etc/tutorials/TUTORIAL.ja: Improve translation.
27498 2015-07-25  Eli Zaretskii  <eliz@gnu.org>
27500         Avoid crashes when w32 GUI functions are called in -batch
27501         * src/w32fns.c (Fx_frame_geometry, Fw32_frame_rect)
27502         (Fw32_frame_menu_bar_size, Fw32_send_sys_command): Don't call
27503         FRAME_W32_WINDOW for initial frame.  (Bug#21132)
27505         Fix flyspell-check-previous-highlighted-word
27506         * lisp/textmodes/flyspell.el
27507         (flyspell-check-previous-highlighted-word): Really accept a
27508         numeric argument, as the doc string describes.  Fix an off-by-one
27509         error in looking up overlays, so invocation with point immediately
27510         after a word would check that word.  Clarify the doc string as
27511         Suggested by N. Jackson <nljlistbox2@gmail.com>.  (Bug#21129)
27513 2015-07-24  Michael Albinus  <michael.albinus@gmx.de>
27515         Minor cleanup in tramp-tests.el
27516         * test/automated/tramp-tests.el (tramp-test31-*, tramp-test32-*):
27517         Implement using the documented interface
27518         `tramp-connection-properties', rather than with internal functions.
27520 2015-07-24  Harald Hanche-Olsen  <hanche@math.ntnu.no>  (tiny change)
27522         Pass lambdas to `skeleton-read'
27523         * lisp/skeleton.el (skeleton-read): Allow PROMPT to be a function.
27524         * lisp/textmodes/sgml-mode.el (sgml-attributes, sgml-value): Pass
27525         lambdas to `skeleton-read' (bug#20386).
27527 2015-07-24  Eli Zaretskii  <eliz@gnu.org>
27529         * INSTALL (DETAILED BUILDING AND INSTALLATION):
27530         Mention --without-imagemagick.
27532         Don't require GUI frames and mouse for Flyspell menus
27533         * lisp/textmodes/flyspell.el (flyspell-correct-word-before-point)
27534         (flyspell-emacs-popup): Require neither a GUI frame nor mouse
27535         support, since pop-up menus work with text terminals and can be
27536         controlled via the keyboard.
27538         Improve documentation of Flyspell commands
27539         * doc/emacs/fixit.texi (Spelling): Mention Flyspell commands that
27540         can be invoked via the keyboard.  Mention those commands by name
27541         and add them to the fn index.  (Bug#21125)
27543 2015-07-23  Michael Albinus  <michael.albinus@gmx.de>
27545         Fix some Tramp problems with HP-UX
27546         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
27547         Add "tab0" to stty call.
27548         * test/automated/tramp-tests.el (tramp-persistency-file-name):
27549         Set to nil.
27550         (tramp--test-hpux-p): New defun.
27551         (tramp--test-utf8): Use it.
27553 2015-07-22  Glenn Morris  <rgm@gnu.org>
27555         * build-aux/update-subdirs: Put "no-update-autoloads: t" in output.
27557 2015-07-22  Eli Zaretskii  <eliz@gnu.org>
27559         Fix point positioning in ffap-next-guess
27560         * lisp/ffap.el (ffap-url-at-point): Set ffap-string-at-point-region,
27561         as our callers expect.  This was clobbered as part of fixing
27562         bug#5673.  (Bug#21107)
27563         (ffap-gopher-at-point): Set ffap-string-at-point-region.
27565 2015-07-22  Martin Rudalics  <rudalics@gmx.at>
27567         * lisp/window.el (even-window-sizes): Fix customization type.
27569         Optionally even widths of `display-buffer' windows.  (Bug#21100)
27570         * lisp/window.el (quit-restore-window): Restore width if
27571         requested.
27572         (display-buffer-record-window): Record width when window is
27573         reused and horizontally combined.
27574         (even-window-sizes): New option to allow evening window widths.
27575         (even-window-heights): Defalias to `even-window-sizes'.
27576         (window--even-window-heights): Rename to
27577         `window--even-window-sizes'.  Handle side-by-side windows.
27578         (display-buffer-use-some-window): Call `window--even-window-sizes'
27579         instead of `window--even-window-heights'.
27580         * lisp/help.el (resize-temp-buffer-window): Fix indentation.
27581         * doc/lispref/windows.texi (Choosing Window Options): Describe
27582         `even-window-sizes'.
27583         (Coordinates and Windows): Fix typo.
27585 2015-07-22  Stephen Leake  <stephen_leake@stephe-leake.org>
27587         Add file name to autoload error messages
27588         * lisp/emacs-lisp/autoload.el (autoload-save-buffers):
27589         Add condition-case to add file name to error message.
27591 2015-07-22  Michael Albinus  <michael.albinus@gmx.de>
27593         * lisp/net/tramp-sh.el (tramp-ssh-controlmaster-options):
27594         Use 0.0.0.1 as test host.
27596 2015-07-21  Stefan Monnier  <monnier@iro.umontreal.ca>
27598         (advice--called-interactively-skip): Fix inf-loop (bug#21083)
27599         * lisp/emacs-lisp/nadvice.el (advice--called-interactively-skip):
27600         Fix inf-loop (bug#21083).
27602 2015-07-21  Glenn Morris  <rgm@gnu.org>
27604         * test/automated/package-test.el (package-test-signed):
27605         Update for recent changes.
27607         * test/automated/elisp-mode-tests.el
27608         (elisp-xref-finds-both-function-and-variable)
27609         (elisp-xref-finds-only-function-for-minor-mode):
27610         Update for recent xref name changes.
27612 2015-07-21  Dmitry Gutov  <dgutov@yandex.ru>
27614         Make eldoc timer non-repeatable
27615         * lisp/emacs-lisp/eldoc.el (eldoc-schedule-timer): Make the timer
27616         non-repeatable.  Since it's on post-command hook, that just wasted
27617         CPU cycles.
27619 2015-07-21  Michael Albinus  <michael.albinus@gmx.de>
27621         Mention `tramp-connection-properties' in NEWS
27623         Sync with Tramp repository
27624         * doc/misc/tramp.texi (Configuration): Note, that Tramp must be
27625         required prior changing its configuration.
27626         (Connection caching, Predefined connection information)
27627         (Remote shell setup): Fix typos.
27628         (Predefined connection information): Describe, how to overwrite
27629         parameters of `tramp-methods'.
27630         (Remote programs, Remote processes, Traces and Profiles):
27631         Simplify example.
27632         (Remote programs): Remove superfluous comment.
27633         * doc/misc/trampver.texi: Update release number.
27634         * lisp/net/tramp-cache.el (tramp-connection-properties):
27635         Adapt docstring.
27636         * lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file): New defun.
27637         (tramp-gvfs-handle-copy-file, tramp-gvfs-handle-rename-file): Use it.
27638         (tramp-gvfs-handle-make-directory): Reimplement PARENTS handling,
27639         "gvfs-mkdir -p ..." does not work robust.
27640         (tramp-gvfs-maybe-open-connection):
27641         Adapt `tramp-get-method-parameter' call.
27642         * lisp/net/tramp-sh.el (tramp-methods):
27643         Add `tramp-remote-shell-login' parameter where it fits.
27644         (tramp-get-remote-path): Use it.
27645         (tramp-make-copy-program-file-name): Fix quoting for "psftp" method.
27646         (all): Adapt `tramp-get-method-parameter' calls.
27647         * lisp/net/tramp.el (tramp-methods): Adapt docstring.
27648         (tramp-get-method-parameter): Replace argument METHOD by VEC.
27649         Check also for hits in `tramp-connection-properties'.  Adapt docstring.
27650         (tramp-get-remote-tmpdir): Cache only the local name of tmpdir.
27651         (all): Adapt `tramp-get-method-parameter' calls.
27652         * lisp/net/trampver.el: Update release number.
27653         * test/automated/tramp-tests.el (tramp--instrument-test-case):
27654         Add "^make-symbolic-link not supported$" to `debug-ignored-errors'.
27655         (tramp-test13-make-directory, tramp--test-adb-p)
27656         (tramp--test-smb-or-windows-nt-p): Simplify.
27657         (tramp--test-ftp-p, tramp--test-gvfs-p): New defuns.
27658         (tramp--test-special-characters): Fix docstring.  Add gvfs and
27659         ftp tests.
27660         (tramp--test-utf8): Fix docstring.
27662 2015-07-20  Dmitry Gutov  <dgutov@yandex.ru>
27664         Add new xref-query-replace command
27665         * lisp/progmodes/xref.el (xref--match-buffer-bounds):
27666         New function, extracted from xref-pulse-momentarily.
27667         (xref-query-replace): New command.
27668         (xref--query-replace-1): New helper function.
27669         (xref--xref-buffer-mode-map): Add `r' binding.
27671 2015-07-20  Paul Eggert  <eggert@cs.ucla.edu>
27673         Simplify icalendar decoding of Z dates
27674         * lisp/calendar/icalendar.el (icalendar--decode-isodatetime):
27675         Simplify calculation of time strings with trailing "Z".
27677 2015-07-19  Dmitry Gutov  <dgutov@yandex.ru>
27679         Do not corrupt grep-find-ignored-files
27680         * lisp/progmodes/project.el (project-ignores): Change the order of
27681         the arguments to nconc, in order not to corrupt grep-find-ignored-files.
27683         Add xref-match-item, and use it
27684         * lisp/progmodes/xref.el (xref-match-bounds): New generic function.
27685         (xref-file-location): Add reader for the column slot.
27686         (xref-match-item): New class.
27687         (xref-match-bounds): A method implementation for it.
27688         (xref-make-match): New constructor function.
27689         (xref--current-item): New private variable.
27690         (xref-pulse-momentarily): Use it.
27691         (xref--pop-to-location): Change the first argument to an xref
27692         item, instead of location, bind xref--current-item.
27693         Update all callers.
27694         (xref-next-line, xref-prev-line, xref--next-error-function)
27695         (xref--mouse-2): Look for the property `xref-item',
27696         instead of `xref-location'.
27697         (xref--item-at-point): Likewise.  This function replaces
27698         `xref-location-at-point'.  Update all callers.
27699         (xref--insert-xrefs): Add the `xref-item' text property, instead
27700         of `xref-location'.
27701         (xref--collect-match): Use xref-make-match.
27703         * lisp/progmodes/xref.el (xref-item): Rename from `xref--xref'.
27704         Update all references.
27706         * lisp/progmodes/xref.el (xref--xref): Rename the `description'
27707         slot to `summary'.
27709         vc-hg: Perform the print-log call asynchronously
27710         * lisp/vc/vc-hg.el (vc-hg-print-log): Perform the call
27711         asynchronously (bug#21067).
27713         Add xref-after-jump-hook and xref-after-return-hook
27714         * lisp/progmodes/xref.el (xref-after-jump-hook)
27715         (xref-after-return-hook): New hooks.
27716         (xref-pulse-on-jump): Remove, in favor of the above.
27717         (xref-pulse-momentarily): Rename from xref--maybe-pulse.
27718         (xref--pop-to-location, xref--display-position)
27719         (xref-pop-marker-stack): Use the new hooks, as requested in
27720         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00213.html
27722 2015-07-19  Bozhidar Batsov  <bozhidar@batsov.com>
27724         * lisp/progmodes/js.el (js-mode): Correct the lighter.
27726 2015-07-19  Leo Liu  <sdl.web@gmail.com>
27728         Fix a bug in cfengine3-mode
27729         * lisp/progmodes/cfengine.el (cfengine3-mode): Handle nil
27730         eldoc-documentation-function.
27732 2015-07-18  Julien Danjou  <julien@danjou.info>
27734         sieve-mode: support "body" test command
27735         * lisp/gnus/sieve-mode.el (sieve-font-lock-keywords):
27736         Add missing "body" test command.
27738 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
27740         Fix info-apropos when the default encoding is Latin-N
27741         * lisp/info.el (Info-find-node-2): Reset the buffer's encoding to
27742         'undecided', so that it is set to the encoding of the Info file we
27743         are about to insert.  Otherwise, 'info-apropos' will fail to find
27744         some index nodes in some UTF-8 encoded files, if the buffer's
27745         previous encoding is Latin-N or some such.
27747 2015-07-18  Ivan Andrus  <darthandrus@gmail.com>
27749         * lisp/epg.el (epg--start): Check that gpgconf can be found
27750         before calling it.
27752         Expose more file types to OS X that Emacs understands
27753         * nextstep/Cocoa/Emacs.base/Contents/Info.plist: Add editor role for
27754         sty, dtx, json, and org files.  Export UTIs for el, elc, and org files.
27756 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
27758         Fix visual-order cursor movement when lines are truncated
27759         * src/xdisp.c (Fmove_point_visually): When lines are truncated,
27760         simulate display in a window of infinite width, to allow move_it_*
27761         functions reach positions outside of normal window dimensions.
27762         Remove code that tried to handle a subset of these situations by
27763         manual iteration of buffer text.  (Bug#17777)
27765         Fix following Info cross-references to anchors
27766         * lisp/info.el (Info-read-subfile): Add to the returned value the
27767         length of subfile preamble, after converting it to file's byte
27768         offset, as expected by the caller.  Use bufferpos-to-filepos.
27769         (Info-find-node-2): If searching for a node with a
27770         1000-character slop fails, try again with a 10000-character slop,
27771         to account for known bugs in Texinfo 5.0 and 5.1.  (Bug#21055)
27772         * lisp/international/mule-util.el (bufferpos-to-filepos): New
27773         function.
27774         * etc/NEWS: Mention bufferpos-to-filepos.
27776         Fix scrolling backwards on TTY frames under scroll-conservatively
27777         * src/xdisp.c (move_it_vertically_backward): Fix off-by-one error
27778         in moving backwards on TTY frames.  (Bug#21080)
27780 2015-07-17  Dmitry Gutov  <dgutov@yandex.ru>
27782         Consider a jsdoc tag to be a beginning of a paragraph as well
27783         * lisp/progmodes/js.el (js-mode): Change c-paragraph-start to
27784         consider a jsdoc tag to be a beginning of a paragraph as well.
27786 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
27788         * lisp/emacs-lisp/package.el: Fix warnings.
27790         * lisp/emacs-lisp/package.el (package-buffer-info):
27791         Add author and maintainers to `package-buffer-info'.
27793         * lisp/emacs-lisp/package.el: Many small changes.
27794         Replace all instances of 'face with 'font-lock-face.
27795         (describe-package-1): Improve some strings and move the summary
27796         up the list.
27797         (package-install-file): Update docstring.
27798         (package-menu-hide-package): Bind to `H'.
27800         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
27801         Fix error handling.
27803 2015-07-17  Paul Eggert  <eggert@cs.ucla.edu>
27805         Fix hang with large yanks This should fix the bug fixed by Mike
27806         Crowe's patch in:
27807         https://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00106.html
27808         A problem in this area has been reported by several users; see
27809         Bug#16737, Bug#17101, Bug#17026, Bug#17172, Bug#19320, Bug#20283.
27810         This fix differs from Mike Crowe's patch in that it should avoid a
27811         race condition that could lose SIGIO signals.  ignore_sigio dates
27812         back to the 1980s when some platforms couldn't block signals, and
27813         could only ignore them, which led to races when signals arrived
27814         while being ignored.  We shouldn't have to worry about those old
27815         platforms now.
27816         * src/dispextern.h, src/sysdep.c (ignore_sigio): Remove.
27817         * src/emacs.c (shut_down_emacs):
27818         Don't call ignore_sigio; unrequest_sigio should suffice.
27819         * src/keyboard.c (kbd_buffer_store_buffered_event):
27820         Use unrequest_sigio, not ignore_sigio.
27821         (kbd_buffer_get_event):
27822         Call request_sigio when getting the ball rolling again.
27824 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
27826         * lisp/obsolete/longlines.el (longlines-search-function):
27827         Fallback on `isearch-search-fun-default'.
27829 2015-07-17  Tassilo Horn  <tsdh@gnu.org>
27831         Support @-mentions
27832         * lisp/net/rcirc.el (rcirc-completion-at-point): Support completion
27833         of mentions/messages with @nick instead of just nick.
27835 2015-07-16  Michael Albinus  <michael.albinus@gmx.de>
27837         Fix bug#20943
27838         * lisp/autorevert.el (auto-revert-handler): Do not check for
27839         `buffer-modified-p'.
27840         * lisp/files.el (buffer-stale--default-function): Check for
27841         `buffer-modified-p'.
27842         * test/automated/auto-revert-tests.el
27843         (auto-revert-test02-auto-revert-mode-dired): Adapt test.
27845 2015-07-16  Ari Roponen  <ari.roponen@gmail.com>
27847         Fix delete-dups bug on long lists
27848         * lisp/subr.el (delete-dups):
27849         Don't mistakenly keep some dups when applied to long lists.
27851 2015-07-16  Paul Eggert  <eggert@cs.ucla.edu>
27853         Better heuristic for C stack overflow
27854         Improve the heuristic for distinguishing stack overflows from
27855         other SIGSEGV causes (Bug#21004).  Corinna Vinschen explained that
27856         the getrlimit method wasn't portable to Cygwin; see:
27857         https://www.cygwin.com/ml/cygwin/2015-07/msg00092.html
27858         Corinna suggested pthread_getattr_np but this also has problems.
27859         Instead, replace the low-level system stuff with a simple
27860         heuristic based on known good stack addresses.
27861         * src/eval.c, src/lisp.h (near_C_stack_top): New function.
27862         * src/sysdep.c: Don't include <sys/resource.h>.
27863         (stack_direction): Remove.  All uses removed.
27864         (stack_overflow): New function.
27865         (handle_sigsegv): Use it instead of incorrect getrlimit heuristic.
27866         Make SEGV fatal in non-main threads.
27868 2015-07-16  Daiki Ueno  <ueno@gnu.org>
27870         epg: Automatically start pinentry server
27871         * lisp/epg-config.el (epg-gpgconf-program): New variable.
27872         * lisp/epg.el (epg--start): Call `pinentry-start' if
27873         allow-emacs-pinentry is set in ~/.gnupg/gpg-agent.conf.
27875 2015-07-15  Katsumi Yamaoka  <yamaoka@jpl.org>
27877         * lisp/gnus/nnimap.el: Fix my last bogus change.
27878         Reinstall Stefan Monnier's change that was made in
27879         <83d824bc4041332f338ad7e5e830f443535aa300>.
27881 2015-07-15  Paul Eggert  <eggert@cs.ucla.edu>
27883         Merge from gnulib
27884         This incorporates:
27885         2015-07-05 acl-permissions: Document FreeBSD ACL_TYPE_NFS4 acls
27886         2015-07-05 acl-permissions: Fix on FreeBSD
27887         2015-07-05 file-has-acl, acl-permissions: fix some more HP-UX typos
27888         * lib/acl-internal.c, lib/acl-internal.h, lib/get-permissions.c:
27889         * lib/set-permissions.c: Copy from gnulib.
27891         Port to stricter C99
27892         * src/keyboard.h (kbd_buffer_store_event_hold):
27893         Don't return a void expression.
27895 2015-07-15  Xue Fuqiao  <xfq.free@gmail.com>
27897         * doc/emacs/frames.texi (Creating Frames):
27898         Fix the command `C-x 5 m' runs.
27900 2015-07-14  Michael Albinus  <michael.albinus@gmx.de>
27902         New autorevert tests
27903         * test/automated/auto-revert-tests.el: New file.
27905 2015-07-14  Paul Eggert  <eggert@cs.ucla.edu>
27907         Clear gcprolist etc. after stack overflow
27908         After stack overflow, command_loop calls init_eval, and this needs to
27909         clear gcprolist and byte_stack_list (Bug#20996).
27910         * src/alloc.c (init_alloc):
27911         Move gcprolist and byte_stack_list initialization from here ...
27912         * src/eval.c (init_eval): ... to here.
27914 2015-07-13  Xue Fuqiao  <xfq.free@gmail.com>
27916         * doc/emacs/windows.texi (Pop Up Window): Fix the description
27917         of `C-x 4 m'.
27919 2015-07-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
27921         Avoid deprecated enums in mac-ct font backend driver
27922         * src/macfont.m (mac_font_copy_default_descriptors_for_language)
27923         (mac_ctfont_get_advance_width_for_glyph)
27924         (mac_ctfont_get_bounding_rect_for_glyph): Avoid deprecated enums.
27926         Cache font family in mac-ct font backend driver
27927         * src/macfont.m (macfont_family_cache): New variable.
27928         (syms_of_macfont): Initialize it.
27929         (macfont_available_families_cache): New variable.
27930         (macfont_invalidate_family_cache, macfont_get_family_cache_if_present)
27931         (macfont_set_family_cache, macfont_invalidate_available_families_cache)
27932         (macfont_handle_font_change_notification)
27933         (macfont_init_font_change_handler)
27934         (macfont_copy_available_families_cache): New functions.
27935         (macfont_create_family_with_symbol): Use font family caches.
27936         (macfont_list, macfont_list_family):
27937         Use macfont_copy_available_families_cache instead of
27938         mac_font_create_available_families.
27940 2015-07-12  Dmitry Gutov  <dgutov@yandex.ru>
27942         Show the default value in the prompt
27943         * lisp/progmodes/xref.el: Add `M-?' binding for
27944         xref-find-references.  Declare functions `grep-read-files' and
27945         `grep-expand-template'.
27946         (xref--read-identifier): Show the default value in the prompt.
27948         * lisp/progmodes/xref.el (xref-find-regexp): When called with
27949         prefix argument, ask for file patterns to search as well.  When
27950         prompting for the directory, require an existing one.
27951         (xref-collect-matches): Add a new argument, FILES.  Use it in the
27952         above function.
27954         Add `project-ignores'
27955         * lisp/progmodes/project.el (project-ignores): New generic
27956         function, and an implementation for the VC project type.
27957         * lisp/progmodes/xref.el (xref--rgrep-command): Split, as a
27958         variant of rgrep-default-command that handles a generic list of
27959         ignores.
27960         (xref-collect-matches): Use it, and pass through to it the value
27961         of the newly added argument.
27962         (xref-find-regexp): Handle ignored paths within the project.
27963         Remove outdated comment.
27964         * lisp/vc/vc.el (vc-default-ignore-completion-table):
27965         Skip the comments and the empty lines.
27967 2015-07-12  Xue Fuqiao  <xfq.free@gmail.com>
27969         * doc/emacs/buffers.texi (Misc Buffer): Add a cross reference.
27971 2015-07-11  Eric Abrahamsen  <eric@ericabrahamsen.net>
27973         gnus-registry.el: Correct function argument order
27974         * lisp/gnus/gnus-registry.el (gnus-registry--set/remove-mark):
27975         Reverse the order of function arguments.
27977 2015-07-11  Dmitry Gutov  <dgutov@yandex.ru>
27979         Bind grep-highlight-matches to nil
27980         * lisp/progmodes/xref.el (xref-collect-matches):
27981         Bind grep-highlight-matches to nil (bug#20728).
27983 2015-07-11  Nikolaus Rath  <Nikolaus@rath.org>
27985         nnimap.el: Fix IMAP message size parsing
27986         * lisp/gnus/nnimap.el (nnimap-transform-headers):
27987         Don't assume that UID comes before RFC822.SIZE.
27989 2015-07-10  Stefan Monnier  <monnier@iro.umontreal.ca>
27991         * lisp/gnus/nnimap.el: Clean up "unused var" warnings
27992         (auth-source-creation-prompts): Declare.
27993         (nnimap-retrieve-headers, nnimap-status-message)
27994         (nnimap-request-create-group, nnimap-request-delete-group)
27995         (nnimap-close-group, nnimap-request-move-article)
27996         (nnimap-request-accept-article, nnimap-request-newgroups)
27997         (nnimap-request-post, nnimap-dummy-active-number)
27998         (nnimap-save-mail-spec, nnimap-get-groups): Add _ to unused vars.
27999         (nnimap-parse-flags): Remove unused var `p'.
28000         (nnimap-retrieve-group-data-early): Remove unused var `groups'.
28001         (nnimap-flags-to-marks): Remove unused var `totalp'.
28003 2015-07-10  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
28005         * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 20MB.
28007 2015-07-10  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
28009         * src/macfont.m (macfont_list): Ignore font families lacking
28010         font descriptors.
28012 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
28014         Don't check the exit status, it can be misleading
28015         * lisp/progmodes/xref.el (xref-collect-matches): Don't check the
28016         exit status, it can be misleading.
28018         Introduce a Project API
28019         * lisp/progmodes/project.el: New file.
28020         * lisp/cedet/ede.el (project-try-ede): New function.
28021         (project-root): New implementation.
28022         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
28023         Set project-search-path-function.
28024         (elisp--xref-find-references): Delegate some logic to
28025         project-search-path.
28026         (elisp-search-path): New function.
28027         (elisp-xref-find): Don't implement `matches' anymore.
28028         * lisp/progmodes/etags.el: Don't implement `matches'.
28029         Delegate some logic to project-search-path.
28030         (etags-search-path): New function.
28031         * lisp/progmodes/xref.el (xref-find-function):
28032         Remove `matches' from the API.
28033         (xref-find-regexp): Move whatever common logic was in elisp and
28034         etags implementations, and search the directories returned by
28035         project-directories and project-search-path.
28037 2015-07-09  Nicolas Petton  <nicolas@petton.fr>
28039         * test/automated/map-tests.el (test-map-delete-return-value):
28040         Uncomment test.
28042         Add support for gv.el in map.el
28043         * lisp/emacs-lisp/map.el (map-elt, map-delete): Declare a gv-expander.
28044         * lisp/emacs-lisp/map.el (map-put): Refactor using `setf' and `map-elt'.
28045         * test/automated/map-tests.el: Update tests to work with the new
28046         implementations of map-elt and map-put.
28048 2015-07-09  Glenn Morris  <rgm@gnu.org>
28050         * lisp/emacs-lisp/debug.el (debug-help-follow): Use describe-symbol.
28052 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
28054         Syntax-propertize until the end of the line first
28055         * lisp/progmodes/xref.el (xref--collect-match): Syntax-propertize
28056         until the end of the line first.
28058 2015-07-09  Xue Fuqiao  <xfq.free@gmail.com>
28060         * doc/emacs/files.texi (File Archives): Add a cross reference.
28062 2015-07-08  Nikolaus Rath  <Nikolaus@rath.org>
28064         nnimap.el: Handle plain value for nnimap-stream
28065         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Always query
28066         capabilities, so that a 'plain value for the `nnimap-stream' server
28067         variable is handled correctly.
28068         * doc/misc/gnus.texi (Customizing the IMAP Connection):
28069         Document the 'plain option.
28071 2015-07-08  Leo Liu  <sdl.web@gmail.com>
28073         Fix bug in thing-at-point--bounds-of-well-formed-url
28074         * lisp/thingatpt.el (thing-at-point--bounds-of-well-formed-url): Make
28075         sure boundary contains current point.
28077 2015-07-08  Dmitry Gutov  <dgutov@yandex.ru>
28079         * lisp/progmodes/xref.el (xref-collect-matches): Use `nreverse'
28080         in the end.
28082         Declare whitespace-line-column a safe file-local
28083         * lisp/whitespace.el (whitespace-line-column): Declare to be a
28084         safe file-local when the value is an integer.
28086 2015-07-08  Eric Abrahamsen  <eric@ericabrahamsen.net>
28088         gnus-group.el: Check if group names are already strings
28089         * lisp/gnus/gnus-group.el (gnus-group-group-name):
28090         The group name may already be a string.
28091         Specifically, in the group list reached from the *Server* buffer,
28092         the 'gnus-group text property returns a string.  Everywhere else
28093         it returns a symbol.
28095         nnimap.el: Remove unused let variables
28096         * lisp/gnus/nnimap.el (nnimap-request-group): Variables are not used.
28098 2015-07-08  Eli Zaretskii  <eliz@gnu.org>
28100         Support "maximized" property of runemacs's shortcut
28101         * nt/runemacs.c (WinMain): If runemacs is invoked "maximized", pass
28102         the '--maximized' switch to Emacs.
28104         Support "minimized" property of runemacs's shortcut
28105         * nt/runemacs.c (WinMain): If runemacs is invoked "minimized",
28106         pass the '--iconic' switch to Emacs.  (Bug#20991)
28108 2015-07-08  Xue Fuqiao  <xfq.free@gmail.com>
28110         Doc fixes
28111         * doc/emacs/files.texi (Diff Mode): Fix the description of `C-c
28112         C-w' in Diff mode.
28113         * doc/emacs/arevert-xtra.texi (Auto Reverting the Buffer Menu):
28114         Add a cross reference.
28116 2015-07-08  Nicolas Richard  <youngfrog@members.fsf.org>
28118         * lisp/obsolete/landmark.el: Add Obsolete-since header.
28120 2015-07-07  Glenn Morris  <rgm@gnu.org>
28122         * test/automated/ert-tests.el (ert-test-deftest):
28123         Update for recent changes.
28125 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
28127         (gv-setter, gv-synthetic-place, gv-delay-error): New funs/macros
28128         * lisp/emacs-lisp/gv.el (gv-setter): New function.
28129         (gv-invalid-place): New error.
28130         (gv-get): Use them.
28131         (gv-synthetic-place, gv-delay-error): New places.
28132         * lisp/emacs-lisp/cl-generic.el (cl--generic-setf-rewrite): Remove.
28133         (cl-defgeneric, cl-defmethod): Use gv-setter.
28135 2015-07-07  Fabrice Popineau  <fabrice.popineau@gmail.com>
28137         Make vc-tests work with MSYS svn program
28138         * lisp/vc/vc-svn.el (vc-svn-create-repo): Fix the file:// URL when
28139         svn is an MSYS program.
28141 2015-07-07  Ken Brown  <kbrown@cornell.edu>
28143         Improve recent change to emacsclient on Cygwin
28144         * lisp/server.el (server-process-filter): Remove redundant check
28145         that 'cygwin-convert-file-name-from-windows' is defined as a
28146         function on Cygwin.  Don't call that function unless its argument
28147         starts with a drive letter.
28149 2015-07-07  Artur Malabarba  <bruce.connor.am@gmail.com>
28151         * lisp/emacs-lisp/package.el (package-compute-transaction):
28152         Fix void variable due to `found-something' being in the wrong `let'.
28154 2015-07-07  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
28156         * lisp/play/landmark.el: Move to lisp/obsolete/.
28158 2015-07-07  Martin Rudalics  <rudalics@gmx.at>
28160         Have `x-show-tip' handle `right' and `bottom' frame parameters
28161         * src/nsfns.m (compute_tip_xy, Fx_show_tip)
28162         * src/w32fns.c (compute_tip_xy, Fx_show_tip)
28163         * src/xfns.c (compute_tip_xy, Fx_show_tip): Allow aligning
28164         tooltips also via `right' and `bottom' frame parameters.
28166 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
28168         Add online-help support to describe types
28169         * lisp/help-fns.el (describe-symbol-backends): Move to help-mode.el.
28170         (describe-symbol): Improve the selection of default.
28171         * lisp/help-mode.el: Require cl-lib.
28172         (describe-symbol-backends): Move from help-fns.el.
28173         (help-make-xrefs): Use it.
28174         * lisp/emacs-lisp/cl-extra.el (describe-symbol-backends): Add entry
28175         for types.
28176         (cl--typedef-regexp): New const.
28177         (find-function-regexp-alist): Add entry for types.
28178         (cl-help-type, cl-type-definition): New buttons.
28179         (cl-find-class): New function.
28180         (cl-describe-type): New command.
28181         (cl--describe-class, cl--describe-class-slot)
28182         (cl--describe-class-slots): New functions, moved from eieio-opt.el.
28183         * lisp/emacs-lisp/cl-generic.el (cl--generic-method-documentation)
28184         (cl--generic-all-functions, cl--generic-specializers-apply-to-type-p):
28185         New functions.  Moved from eieio-opt.el.
28186         (cl--generic-class-parents): New function, extracted from
28187         cl--generic-struct-specializers.
28188         (cl--generic-struct-specializers): Use it.
28189         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Use pcase-dolist.
28190         Improve constructor's docstrings.
28191         (cl-struct-unknown-slot): New error.
28192         (cl-struct-slot-offset): Use it.
28193         * lisp/emacs-lisp/cl-preloaded.el (cl-struct-define): Record the type
28194         definition in current-load-list.
28195         * lisp/emacs-lisp/eieio-core.el (eieio--known-slot-names): New var.
28196         (eieio--add-new-slot): Set it.
28197         (eieio-defclass-internal): Use new name for current-load-list.
28198         (eieio-oref): Add compiler-macro to warn about unknown slots.
28199         * lisp/emacs-lisp/eieio.el (defclass): Update eieio--known-slot-names
28200         as compile-time as well.  Improve constructor docstrings.
28201         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
28202         (eieio--help-print-slot, eieio-help-class-slots): Move to cl-extra.el.
28203         (eieio-class-def): Remove button.
28204         (eieio-help-constructor): Use new name for load-history element.
28205         (eieio--specializers-apply-to-class-p, eieio-all-generic-functions)
28206         (eieio-method-documentation): Move to cl-generic.el.
28207         (eieio-display-method-list): Use new names.
28208         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression):
28209         Add "define-linline".
28210         (lisp-fdefs): Remove "defsubst".
28211         (el-fdefs): Add "defsubst", "cl-defsubst", and "define-linline".
28212         * lisp/emacs-lisp/macroexp.el (macroexp--warned): New var.
28213         (macroexp--warn-and-return): Use it to avoid inf-loops.
28214         Add `compile-only' argument.
28216 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
28218         python.el: Fix local/remote shell environment setup
28219         * lisp/progmodes/python.el (python-shell-with-environment):
28220         Fix remote/local environment setup.
28221         * test/automated/python-tests.el (python-shell-with-environment-1)
28222         (python-shell-with-environment-2): New tests.
28224 2015-07-06  Glenn Morris  <rgm@gnu.org>
28226         * lisp/simple.el (set-variable): Tweak recent doc fix.
28228 2015-07-06  Ken Brown  <kbrown@cornell.edu>
28230         * src/sysdep.c (handle_sigsegv) [CYGWIN]: Increase STACK_DANGER_ZONE.
28232 2015-07-06  Glenn Morris  <rgm@gnu.org>
28234         * lisp/simple.el (set-variable): Use user-error for type mismatch.
28236 2015-07-06  Ken Brown  <kbrown@cornell.edu>
28238         * src/emacs.c (main): Don't increase the stack size on Cygwin.
28240 2015-07-06  Stefan Monnier  <monnier@iro.umontreal.ca>
28242         (describe-symbol): Rewrite describe-function-or-variable
28243         * lisp/help-fns.el (describe-symbol-backends): New var.
28244         (help-xref-stack-item): Declare.
28245         (describe-symbol): Rename from describe-function-or-variable.
28246         Rewrite using describe-symbol-backends instead of help-xref-interned.
28247         * lisp/help.el (help-map): Use it.
28248         * lisp/help-mode.el (help-symbol, help-follow-symbol): Use it.
28249         (help-xref-interned): Make it into an obsolete alias.
28251         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-save): Don't ignore
28252         `file' arg (bug#20972).  Always use utf-8-emacs.  Use with-temp-buffer
28253         and cl-letf.
28255 2015-07-06  Wolfgang Jenkner  <wjenkner@inode.at>
28257         Fix parsing glitches in dired-mark-sexp (bug#13575)
28258         * lisp/dired-x.el (dired-x--string-to-number): New function.
28259         (dired-mark-sexp): Use it.  Tweak dired-re-inode-size.  Fix usage
28260         of directory-listing-before-filename-regexp.  Consider
28261         forward-word harmful and replace it.  Add more verbiage in
28262         comments and doc string.
28264 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
28266         python.el: Respect process environment for remote shells
28267         * lisp/progmodes/python.el
28268         (python-shell-calculate-process-environment): Calculate
28269         process-environment or tramp-remote-process-environment depending
28270         whether current file is remote.
28271         (python-shell-calculate-exec-path): Calculate exec-path or
28272         tramp-remote-path depending whether current file is remote.
28273         (python-shell-with-environment): New macro.
28274         (python-shell-prompt-detect, python-shell-calculate-command)
28275         (python-shell-make-comint, python-check): Use it.
28277         python.el: Avoid making let-bound defvars buffer local  (Bug#18244)
28278         * lisp/progmodes/python.el (python-shell--interpreter)
28279         (python-shell--interpreter-args): New vars.
28280         (inferior-python-mode, python-shell-make-comint): Use them.
28282         python.el: Fixes for IPython 3.x  (Bug#20580)
28283         * lisp/progmodes/python.el:
28284         (python-shell-completion-native-setup): Fix IPython 3.x setup.
28285         (python-shell-completion-native-get-completions): Fix timeout
28286         logic.
28288         python.el: Fix mark-defun behavior  (Bug#19665)
28289         * lisp/progmodes/python.el (python-mark-defun): New function.
28290         * test/automated/python-tests.el (python-mark-defun-1)
28291         (python-mark-defun-2, python-mark-defun-3): New tests.
28293 2015-07-05  Glenn Morris  <rgm@gnu.org>
28295         * lisp/progmodes/f90.el (f90-type-def-re): Handle attribute lists
28296         such as "extends(parent), private".  (Bug#20969)
28297         * test/automated/f90.el (f90-test-bug20969, f90-test-bug20969b):
28298         New tests.
28300 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
28302         Avoid duplicate calls to current_timespec
28303         * src/process.c (wait_reading_process_output):
28304         Cache current_timespec results as long as we're not waiting.
28306 2015-07-05  Ian Kelling  <ian@iankelling.org>
28308         Avoid returning early reading process output due to SIGIO
28309         * src/process.c (wait_reading_process_output): Extend the behavior of
28310         not breaking due to not finding output when a timer has lowered the
28311         timeout to include when SIGIO lowers the timeout.
28313         Don't return as fast reading any process output
28314         * src/process.c (wait_reading_process_output):
28315         The patch for Bug#17647 returns too fast sometimes when reading
28316         from any processes.  Revert part of it, and limit the timeout more
28317         sensibly (Bug#20978).
28319         Refactor timeouts in wait_reading_process_output
28320         * src/process.c (wait_reading_process_output):
28321         Simplify timeouts with an enum.  Remove a redundant condition.
28322         (Bug#20978)
28324         Remove ADAPTIVE_READ_BUFFERING ifdef
28325         * src/process.c (make-process, make-pipe-process, deactivate_process)
28326         (wait_reading_process_output, read_process_output, send_process)
28327         (init_process_emacs): ifdef ADAPTIVE_READ_BUFFERING was originally
28328         added in case there was an operating system in which it was not
28329         useful.  That was 11 years ago and it hasn't happened.  Make
28330         development easier by not considering the effect of changes on a
28331         theoretical OS where this is disabled (Bug#20978).
28333 2015-07-05  Glenn Morris  <rgm@gnu.org>
28335         * lisp/simple.el (set-variable): Doc fix.
28337         * lisp/progmodes/fortran.el (fortran-line-length): Doc fix.
28339 2015-07-05  Ian Kelling  <ian@iankelling.org>
28341         accept-process-output fix
28342         This is a followon to the fix for bug#17647 (Bug#20976).
28343         * src/process.c (status_notify): Fix too high return in some cases.
28345 2015-07-05  Artur Malabarba  <bruce.connor.am@gmail.com>
28347         * lisp/character-fold.el (character-fold-table):
28348         Only fold decompositions if at least one character is non-spacing.
28349         (Bug#20975)
28351 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
28353         Merge from gnulib
28354         This incorporates:
28355         2015-07-04 file-has-acl, acl-permissions: fix HP-UX typos
28356         2015-07-03 set-permissions.c: adjust acl_from_mode's cpp guard
28357         2015-07-02 update-copyright: fix test failure with perl >= 5.22
28358         2015-07-01 gnulib-common.m4: change the ARFLAGS default to 'cr'
28359         2015-07-01 acl: fix definition of acl_from_mode on FreeBSD
28360         * build-aux/update-copyright, doc/misc/texinfo.tex, lib/acl-internal.h:
28361         * lib/set-permissions.c, m4/gnulib-common.m4: Copy from gnulib.
28363 2015-07-05  Christoph Wedler  <christoph.wedler@sap.com>
28365         Respect `prog-indentation-context' in python.el
28366         * lisp/progmodes/python.el (python-indent-guess-indent-offset)
28367         (python-indent-context, python-indent--calculate-indentation)
28368         (python-info-current-defun)
28369         (python-info-dedenter-opening-block-message)
28370         (python-info-line-ends-backslash-p)
28371         (python-info-beginning-of-backslash)
28372         (python-info-continuation-line-p): Use `prog-widen'.
28373         (python-indent--calculate-indentation)
28374         (python-indent--calculate-levels)
28375         (python-indent-calculate-indentation): Use `prog-first-column'.
28376         (python-indent--calculate-levels): Simplify.
28377         Ignore also initial empty lines for syntax calculation.
28378         * lisp/progmodes/python.el (python-indent-context): Return
28379         :no-indent for first non-empty line, not just in line 1.
28380         * test/automated/python-tests.el (python-indent-base-case)
28381         (python-indent-inside-paren-1, python-indent-inside-paren-2)
28382         (python-indent-inside-paren-3, python-indent-inside-paren-4)
28383         (python-indent-inside-paren-5, python-indent-inside-paren-6)
28384         (python-indent-after-backslash-1)
28385         (python-indent-after-backslash-2)
28386         (python-indent-after-backslash-3)
28387         (python-indent-after-backslash-4, python-indent-inside-string-1):
28388         Expect :no-indent for first non-empty line.
28390 2015-07-04  Daniel Colascione  <dancol@dancol.org>
28392         Factor isearch word description into new function
28393         * lisp/isearch.el (isearch--describe-word-mode): New function.
28394         (isearch-message-prefix, isearch-query-replace): Use it.
28396 2015-07-04  Eli Zaretskii  <eliz@gnu.org>
28398         Fix mouse pointer on w32 when a menu is active
28399         * src/w32fns.c (w32_wnd_proc): Don't change the mouse pointer
28400         shape while a menu is in use.  This started happening since we now
28401         send WM_EMACS_SHOWCURSOR messages when the mouse moves.
28403 2015-07-04  Martin Rudalics  <rudalics@gmx.at>
28405         Fix processing of alpha parameter for Windows tip frames  (Bug#17344)
28406         * src/w32fns.c (x_create_tip_frame): Fix processing alpha
28407         parameter.  (Bug#17344)
28409         Have `compilation-set-window' use right window for getting fringes
28410         (Bug#20829)
28411         * lisp/progmodes/compile.el (compilation-set-window):
28412         Take `window-fringes' from argument window.
28414 2015-07-03  Glenn Morris  <rgm@gnu.org>
28416         Update eieio tests for recent eieio-core change.
28417         * test/automated/eieio-test-persist.el (persist-test-save-and-compare):
28418         * test/automated/eieio-tests.el
28419         (eieio-test-32-slot-attribute-override-2):
28420         Replace the deleted eieio--class-v with cl--find-class.
28422 2015-07-03  Martin Rudalics  <rudalics@gmx.at>
28424         Fix some issues with `window-divider-mode'
28425         * lisp/frame.el (window-divider-default-places): New option.
28426         (window-divider-mode): Remove option.
28427         (window-divider-mode): Make it a "regular" minor mode.
28428         (window-divider-width-valid-p): Drop frame- prefix.
28429         (window-divider-mode-apply): New argument ENABLE.  Drop frame-
28430         prefix.  Handle `window-divider-default-places'.
28431         (frame--window-divider-mode-set-and-apply): Remove.
28432         (window-divider-default-bottom-width)
28433         (window-divider-default-right-width): Drop :group entries.
28434         * lisp/menu-bar.el (menu-bar-bottom-and-right-window-divider)
28435         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
28436         (menu-bar-no-window-divider): Set `window-divider-default-places'
28437         and call `window-divider-mode'.
28438         * doc/emacs/frames.texi (Window Dividers): Document
28439         `window-divider-default-places'.
28441 2015-07-02  Xue Fuqiao  <xfq.free@gmail.com>
28443         * doc/emacs/display.texi (Displaying Boundaries):
28444         * doc/emacs/search.texi (Word Search): Add cross references.
28446 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
28448         -batch should not affect ‘’ -> `' display
28449         * lisp/startup.el (command-line): Do the ‘’ -> `' check even if
28450         -batch (Bug#20926).
28452 2015-07-02  Stefan Monnier  <monnier@iro.umontreal.ca>
28454         * lisp/emacs-lisp/eieio-core.el (eieio--class-v): Remove
28455         * lisp/emacs-lisp/eieio-core.el, lisp/emacs-lisp/eieio.el:
28456         * lisp/emacs-lisp/eieio-opt.el, lisp/emacs-lisp/eieio-compat.el:
28457         Use cl--find-class instead.
28459         * lisp/term/xterm.el (xterm--query): Fix paren typo (bug#20951).
28461 2015-07-02  Martin Rudalics  <rudalics@gmx.at>
28463         Some further fixes in Change Window node (Bug#20183)
28464         * doc/emacs/windows.texi (Change Window): Replace "rearranging"
28465         by "resizing" in section title.  Add some concept indices.
28466         Suggested by N. Jackson (Bug#20183).
28468         * doc/emacs/windows.texi (Change Window): Reference window
28469         dividers.
28471         Document new `window-divider-mode'.
28472         * lisp/frame.el (window-divider-mode): Fix doc-string.
28473         * doc/emacs/frames.texi (Window Dividers): New section.
28475         Improve accessibility of window dividers (Bug#20183)
28476         * lisp/faces.el (window-divider)
28477         (window-divider-first-pixel, window-divider-last-pixel): Change
28478         membership from `frames' to `window-divider' customization group.
28479         * lisp/frame.el (window-divider): New customization group.
28480         (window-divider-mode): New minor mode.
28481         (window-divider-default-bottom-width)
28482         (window-divider-default-right-width): New options.
28483         (frame--window-divider-previous-mode): New variable.
28484         (frame-window-divider-width-valid-p)
28485         (frame--window-divider-mode-apply)
28486         (frame--window-divider-mode-set-and-apply): New functions.
28487         * lisp/menu-bar.el (menu-bar-options-save): Save
28488         window-divider-mode settings.
28489         (menu-bar-window-divider-customize)
28490         (menu-bar-bottom-and-right-window-divider)
28491         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
28492         (menu-bar-no-window-divider): New functions.
28493         (menu-bar-showhide-window-divider-menu): New variable.
28494         (menu-bar-showhide-menu): Show/hide window divider menu.
28495         * lisp/mouse.el (mouse-split-window-vertically)
28496         (mouse-split-window-horizontally): Replace `error' by
28497         `user-error'.  Bind `window-combination-resize' to nil.
28498         (top-level): Add/reorder mouse key bindings on mode- and
28499         vertical-line.
28501 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
28503         Don't display ‘’ as `' under X in en_GB
28504         The curved quote setup code invokes (char-displayable-p ?‘),
28505         but this isn’t reliable until after the X frame replaces the
28506         terminal frame (Bug#20926).
28507         * lisp/international/mule-cmds.el (set-locale-environment):
28508         Move curved quote setup code from here ...
28509         * lisp/startup.el (command-line): ... to here, after creating
28510         the X frame.
28512 2015-07-01  Nicolas Richard  <youngfrog@members.fsf.org>
28514         * lisp/emacs-lisp/seq.el (seq-difference): Fix typo in docstring.
28516         * lisp/ido.el (ido-restrict-to-matches): Add an optional argument
28517         to reverse the meaning (Bug#15631).
28519 2015-07-01  Eli Zaretskii  <eliz@gnu.org>
28521         Be more tolerant to fonts named "Foobar-12"
28522         * src/frame.c (x_set_font): If font_spec_from_name returns nil,
28523         don't barf; instead, request a new fontset to be generated.  This
28524         avoids unnecessarily rejecting fonts named against XLFD rules.  See
28525         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html,
28526         for the description of the original problem.
28527         * lisp/faces.el (set-face-attribute): Don't be fooled too easily
28528         by a hyphen in a font's name.
28530         Fix value of posn-at-pont in R2L lines
28531         * src/keyboard.c (Fposn_at_x_y, Fposn_at_point): Allow X pixel
28532         coordinate of -1, for a newline in a right-to-left line that
28533         overflowed into the left fringe.
28535 2015-07-01  Stefan Monnier  <monnier@iro.umontreal.ca>
28537         (cl--copy-slot-descriptor): Copy the `props' alist as well
28538         * lisp/emacs-lisp/cl-preloaded.el (cl--copy-slot-descriptor-1):
28539         Rename from cl--copy-slot-descriptor.
28540         (cl--copy-slot-descriptor): New function.  Copy the alist (bug#20914).
28542 2015-06-30  Stefan Monnier  <monnier@iro.umontreal.ca>
28544         * lisp/term/xterm.el (xterm--query): Avoid generating garbage
28545         (xterm-query-timeout): New var.
28546         (xterm--query): Use it.  Fallback on async method if we timeout before
28547         getting the first byte of the reply (bug#12354).
28549 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
28551         Spelling fixes
28552         * lisp/character-fold.el (character-fold-search):
28553         * lisp/emacs-lisp/package.el (package-hidden-regexps):
28554         Fix typos.
28556 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
28558         * doc/emacs/frames.texi (Frame Commands): Typo fix.  (Bug#20946)
28560 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
28562         In strings, prefer plain ` and ' to \` and \'
28563         * lisp/allout.el (allout-insert-listified):
28564         * lisp/emacs-lisp/easy-mmode.el (define-globalized-minor-mode):
28565         * lisp/ls-lisp.el (ls-lisp-UCA-like-collation)
28566         (ls-lisp-string-lessp):
28567         * lisp/menu-bar.el (menu-bar-open):
28568         * lisp/obsolete/otodo-mode.el (todo-top-priorities):
28569         * lisp/progmodes/compile.el (compile):
28570         * lisp/progmodes/etags.el (tags-loop-scan):
28571         * lisp/progmodes/make-mode.el (makefile-browser-insert-continuation):
28572         * lisp/subr.el (posn-actual-col-row):
28573         * lisp/term/pc-win.el (x-list-fonts):
28574         * lisp/textmodes/texinfmt.el (texinfmt-version):
28575         * lisp/textmodes/texnfo-upd.el (texinfo-master-menu):
28576         * lisp/time.el (display-time-world-list):
28577         * lisp/tmm.el (tmm-menubar):
28578         * src/buffer.c (syms_of_buffer):
28579         * src/fileio.c (syms_of_fileio):
28580         Omit unnecessary and confusing backslash before quote.
28581         * lisp/erc/erc.el (erc-cmd-LASTLOG):
28582         * lisp/progmodes/flymake.el (flymake-fix-file-name):
28583         * lisp/progmodes/vhdl-mode.el (vhdl-in-extended-identifier-p):
28584         Fix string that was intended to escape a backslash and not a quote.
28586 2015-06-30  Glenn Morris  <rgm@gnu.org>
28588         * leim/Makefile.in, lisp/Makefile.in: Add missing EXEEXT definition.
28590         * lisp/Makefile.in (MH_E_SRC, TRAMP_SRC, CAL_SRC):
28591         Replace hard-coded lists with wildcard + filter-out.
28593         * configure.ac (system-configuration-features): Add X11, NS.
28595         Improve reproducibility of generated loaddefs file
28596         * lisp/emacs-lisp/autoload.el (autoload-generate-file-autoloads):
28597         Make the return value the modtime of the input file (if no autoloads).
28598         (update-directory-autoloads): In the "no autoloads" section,
28599         use "most recent modtime" rather than "current time".
28601 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
28603         * lisp/emacs-lisp/package.el (package--remove-hidden): Fix logic.
28604         (Bug#20930)
28606 2015-06-30  Nicolas Petton  <nicolas@petton.fr>
28608         * doc/lispref/sequences.texi: Add documentation for seq-min and seq-max.
28610         Add seq-min and seq-max
28611         Bump version number.
28612         * lisp/emacs-lisp/seq.el (seq-min, seq-max): New functions.
28613         * test/automated/seq-tests.el: Add tests for seq-min and seq-max.
28615 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
28617         Make sure sleep-for always delays for as long as it's told
28618         * src/dispnew.c (Fsleep_for): Call wait_reading_process_output in
28619         a loop, to ensure we always wait exactly the required amount of
28620         time.  (Bug#15990)
28622 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
28624         Fix pointer signedness glitch
28625         * src/font.c (font_load_for_lface): Use SSDATA, not SDATA.
28627 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
28629         Don't block changes in mouse pointer inside 'track-mouse'
28630         * etc/NEWS:
28631         * doc/lispref/frames.texi (Mouse Tracking): Document the special
28632         effect of setting 'track-mouse' to 'dragging'.
28633         * lisp/textmodes/artist.el (artist-mouse-draw-continously):
28634         * lisp/ruler-mode.el (ruler-mode-mouse-drag-any-column-iteration):
28635         * lisp/mouse-drag.el (mouse-drag-throw):
28636         * lisp/mouse.el (mouse-drag-line): Set 'track-mouse' to 'dragging'
28637         to avoid changes in the shape of the mouse pointer.
28638         * src/xdisp.c (define_frame_cursor1): Don't change the mouse
28639         pointer shape when do_mouse_tracking has the value of 'dragging',
28640         not just any non-nil value.  (Bug#20934)
28641         (syms_of_xdisp): DEFSYM 'dragging'.
28643 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
28645         * lisp/isearch.el (isearch-toggle-word): Fix toggle.
28647         * lisp/emacs-lisp/package.el (package-compute-transaction):
28648         Don't assume version sorting.
28650         * lisp/emacs-lisp/package.el (package--save-selected-packages):
28651         Don't save before init time, to avoid overwriting configurations.
28652         (Bug#20855)
28654 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
28656         * doc/emacs/display.texi (Standard Faces, Fringes): Add cross
28657         references.
28659 2015-06-29  Ted Zlatanov  <tzz@lifelogs.com>
28661         Update for the upcoming CFEngine 3.7 release: support macros and
28662         quoted context strings; reformat JSON; indent promise attributes 2
28663         units by default; give function parameter descriptions in the eldoc
28664         glue.
28665         * lisp/progmodes/cfengine.el: Update version and docs and fix name.
28666         Autoload `json-pretty-print'.  Support new features in 3.7.
28667         (cfengine-parameters-indent): Set default promise attribute indent to
28668         2 more than the promise itself.
28669         (cfengine3-macro-regex): New variable to match the new macro syntax.
28670         (cfengine3-font-lock-keywords): Use it to highlight macros.
28671         (cfengine3-indent-line): Use it to indent macros to column 0.
28672         (cfengine3-class-selector-regex): Update for the new quoted strings
28673         format.
28674         (cfengine3-reformat-json-string): New function to reformat a JSON
28675         string using `json-pretty-print'.
28676         (cfengine3-format-function-docstring): Use function parameter
28677         description if it's provided by the cf-promises syntax dump.
28679 2015-06-29  Michael R. Mauger  <michael@mauger.com>
28681         Cygwin emacsclient handles w32 file names
28682         * lisp/server.el (server-process-filter): Allow Cygwin's
28683         emacsclient to be used as a file handler on MS-Windows.
28685 2015-06-29  Katsumi Yamaoka  <yamaoka@jpl.org>
28687         * lisp/isearch.el (isearch-exit): Don't call isearch-done twice
28688         (bug#20925).
28690 2015-06-29  Eli Zaretskii  <eliz@gnu.org>
28692         * doc/lispref/text.texi (Sticky Properties): Improve wording.
28693         (Bug#20924)
28695         Allow font names that end in "-NN", where NN is a number
28696         * src/font.c (font_load_for_lface): If the font-spec didn't match
28697         any available fonts, try again without interpreting trailing "-NN"
28698         as the font size.  For the description of the original problem, see
28699         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html
28701         .gdbinit followup to changes in !USE_LSB_TAG
28702         * src/.gdbinit (xgetsym): Don't left-shift $ptr even under
28703         !USE_LSB_TAG, as Emacs no longer does.
28705 2015-06-29  Wolfgang Jenkner  <wjenkner@inode.at>
28707         * lisp/calc-store.el (calc-insert-permanent-variable): Heed case.
28708         Otherwise `s p' of f and F will stomp on each other's value.
28709         (Bug#20916)
28711 2015-06-29  Artur Malabarba  <bruce.connor.am@gmail.com>
28713         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
28714         Don't block remember-pos if buffer isn't displayed.  (Bug#20921)
28716 2015-06-29  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
28718         * lisp/emacs-lisp/package.el (describe-package): Use symbol-at-point
28719         as additional guess.
28721         * lisp/emacs-lisp/package.el (describe-package): Convert the guess
28722         to a string.
28724 2015-06-28  Paul Eggert  <eggert@cs.ucla.edu>
28726         apropos-library quoting fix
28727         * lisp/apropos.el (apropos-library): Quote library consistently
28728         with the rest of the quoting used by apropos.
28730         Clarify interpreter-mode-alist doc
28731         * lisp/files.el (interpreter-mode-alist):
28732         Reword to avoid confusing quoting that wasn't working anyway.
28734 2015-06-28  Michael Albinus  <michael.albinus@gmx.de>
28736         Sync with Tramp 2.2.12
28737         * doc/misc/trampver.texi:
28738         * lisp/net/trampver.el: Update release number.
28739         * test/automated/tramp-tests.el (tramp-test13-make-directory):
28740         Fix cleanup.
28742 2015-06-28  Artur Malabarba  <bruce.connor.am@gmail.com>
28744         * lisp/isearch.el (isearch-mode): Don't char-fold regexps (bug#20913).
28746 2015-06-27  Dmitry Gutov  <dgutov@yandex.ru>
28748         Bind grep-highlight-matches around the rgrep call
28749         * lisp/progmodes/grep.el (zrgrep): Bind grep-highlight-matches
28750         around the rgrep call (bug#20728).
28752         Put "--color" before the other options in grep-command
28753         * lisp/progmodes/grep.el (grep-compute-defaults): Put "--color"
28754         before the other options in grep-command (bug#20912).
28756         Add --color Grep option to the command dynamically
28757         * lisp/progmodes/grep.el (grep-template, grep-find-template):
28758         Update the description for <C>.  (Bug#20728)
28759         (grep-compute-defaults): Don't add the --color option to
28760         grep-options.  Only add it to grep-command.
28761         (grep-expand-keywords): Expand the env value opts into <C>.
28762         (grep-expand-template): Replace cf in the env with the opts list,
28763         that can include -i and --color.
28764         * lisp/progmodes/xref.el (xref-collect-matches): Do not remove
28765         "--color=always" from the template, because we don't have to.
28767 2015-06-27  Paul Eggert  <eggert@cs.ucla.edu>
28769         cl-extra fixes for most-negative-fixnum
28770         * lisp/emacs-lisp/cl-extra.el (cl-gcd, cl-lcm, cl-random):
28771         Don't mishandle an argument equal to most-negative-fixnum,
28772         whose absolute value equals itself.
28773         (cl-gcd, cl-lcm): Use dolist rather than doing it by hand.
28775         Initialize cl--gensym-counter to 0
28776         Previously it was initialized to a random value, which made it
28777         harder to reproduce earlier Emacs runs.  The need for a random
28778         value went away when Emacs introduced and used the #: syntax for
28779         uninterned symbols (Bug#20862).
28780         * doc/misc/cl.texi (Creating Symbols, Common Lisp Compatibility):
28781         Document that cl--gensym-counter now starts with 0.
28782         * lisp/emacs-lisp/cl-lib.el (cl--gensym-counter): Remove.
28783         (cl--random-time): Move to near only remaining use.
28784         * lisp/emacs-lisp/cl-macs.el (cl--gensym-counter): Initialize to 0.
28786         Improve docstring for macroexp-let2
28787         * lisp/emacs-lisp/macroexp.el (macroexp-let2):
28788         Improve as per suggestion by RMS in:
28789         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00621.html
28790         Also, rename args to match new doc string.
28792 2015-06-27  Eli Zaretskii  <eliz@gnu.org>
28794         Fix VC test suite on MS-Windows
28795         * lisp/vc/vc-svn.el (vc-svn-create-repo): Make sure the file: URL
28796         always starts with 3 slashes after the colon.
28797         * test/automated/vc-tests.el (vc-test--create-repo-function): Use
28798         'w32-application-type' to invoke CVS on MS-Windows with properly
28799         formatted CVSROOT directory name.
28801         Add a new function w32-application-type
28802         * src/w32proc.c (Fw32_application_type): New function.
28804         Avoid error in TLS connections due to incorrect format
28805         * src/gnutls.c (Fgnutls_boot): Use the %x conversion specifier in
28806         the call to 'error', instead of the unsupported %u.  Reported by
28807         lo2net <fangtao0901@gmail.com>.  (Bug#20908)
28809 2015-06-26  Artur Malabarba  <bruce.connor.am@gmail.com>
28811         * lisp/replace.el (replace-search): Fix regexp case (bug#20901).
28813 2015-06-26  Leo Liu  <sdl.web@gmail.com>
28815         * lisp/emacs-lisp/cl-indent.el: Fix indentation for
28816         `with-output-to-string' in elisp.
28818         Revert "lisp/emacs-lisp/cl-indent.el: Fix indent of
28819         with-output-to-string".
28820         This reverts commit 659199f2ca5f283fb246faa78a244e5ca25f53dd.
28822 2015-06-26  Eli Zaretskii  <eliz@gnu.org>
28824         Minor corrections in ELisp manual
28825         * doc/lispref/nonascii.texi (Character Properties): Correct
28826         inaccuracies in description of values of the Unicode properties.
28828         Fix invisible mouse pointers on Windows.
28829         * src/w32fns.c: Include windowsx.h.
28830         (w32_wnd_proc): If the mouse moved and the mouse pointer is
28831         invisible, make it visible again even when the main (Lisp)
28832         thread is busy.
28833         * src/w32term.c (w32_toggle_invisible_pointer): Rather then
28834         garbaging the frame have the input thread call SetCursor.
28836 2015-06-26  Martin Rudalics  <rudalics@gmx.at>
28838         Provide invisible mouse pointers on Windows (Bug#6105) (Bug#12922)
28839         * src/w32fns.c (w32_wnd_proc): Handle f->pointer_invisible
28840         for WM_SETCURSOR and WM_EMACS_SETCURSOR cases.
28841         * src/w32term.c (w32_hide_hourglass): Handle f->pointer_invisible.
28842         (w32_toggle_invisible_pointer): New function.
28843         (w32_create_terminal): Add w32_toggle_invisible_pointer as
28844         toggle_invisible_pointer_hook for this terminal.
28846 2015-06-25  Xue Fuqiao  <xfq.free@gmail.com>
28848         Doc fix for deletion commands
28849         'delete-char' does not respect the value of 'delete-active-region'.
28850         * doc/emacs/killing.texi (Deletion):
28851         Fix documentation for some single-char deletion commands.
28853         * doc/emacs/help.texi (Apropos):
28854         Improve documentation of 'apropos-do-all'.
28856         * doc/emacs/help.texi (Help Summary):
28857         Improve documentation of 'describe-mode'.
28859 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
28861         Fix submake dependency bug with .h files
28862         * src/Makefile.in ($(libsrc)/make-docfile$(EXEEXT)):
28863         Depend on $(lib)/libgnu.a, so that we build $(lib)/*/*.h
28864         before the submake in $(libsrc) would spin off a subsubmake
28865         for $(lib) in parallel with our submake for $(lib) (Bug#20894).
28867 2015-06-25  Artur Malabarba  <bruce.connor.am@gmail.com>
28869         * lisp/character-fold.el (character-fold-table): Reuse `table'.
28871 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
28873         Translate undisplayable ‘ to `
28874         * doc/lispref/help.texi (Keys in Documentation):
28875         * lisp/international/mule-cmds.el (set-locale-environment):
28876         * lisp/term/w32console.el (terminal-init-w32console):
28877         * src/doc.c (Fsubstitute_command_keys, Vhelp_quote_translation):
28878         If ‘ is not displayable, transliterate it to `, not to '.  See:
28879         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00542.html
28881         Fix C99 incompatibilities in Cairo code
28882         * src/image.c (xpm_load) [USE_CAIRO]:
28883         * src/xterm.c (x_cr_accumulate_data) [USE_CAIRO]:
28884         Fix pointer signedness problem.
28886 2015-06-25  Oleh Krehel  <ohwoeowho@gmail.com>
28888         lisp/emacs-lisp/cl-indent.el: Fix indent of with-output-to-string
28889         * lisp/emacs-lisp/cl-indent.el (common-lisp-indent-function):
28890         `with-output-to-string' should have the same indent as `progn'.
28891         This is in line with the declaration of `with-output-to-string'.
28893 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
28895         Get ‘./configure; make -C src emacs’ to work
28896         Without this fix, lib/fcntl.h isn't built in time (Bug#20894).
28897         * lib-src/Makefile.in (../lib/libgnu.a):
28898         * src/Makefile.in ($(lib)/libgnu.a): Build all, not libgnu.a.
28900 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
28902         Fix GC bugs --with-wide-int and Qnil == 0
28903         Use the same alignment for the !USE_LSB_TAG case as for the
28904         more-typical USE_LSB_TAG case.  The attempt to support arbitrary
28905         alignments with !USE_LSB_TAG had subtle bugs in garbage collection
28906         once we changed the representation of symbols so that Qnil == 0.
28907         Problem reported by Eli Zaretskii (Bug#20862).
28908         * src/alloc.c (XMALLOC_HEADER_ALIGNMENT) [XMALLOC_OVERRUN_CHECK]:
28909         * src/alloc.c (vector_alignment, union aligned_Lisp_Symbol)
28910         (union aligned_Lisp_Misc, maybe_lisp_pointer, pure_alloc):
28911         Use same alignment for !USE_LSB_TAG as for USE_LSB_TAG.
28912         * src/alloc.c (POINTERS_MIGHT_HIDE_IN_OBJECTS): Remove.
28913         This optimization in the !USE_LSB_TAG case is no longer valid when
28914         symbols are represented via offsets.  Change the only use to
28915         assume that pointers might hide in objects.
28916         * src/lisp.h (alignas) [!USE_LSB_TAG]:
28917         Require support in this case, too.
28918         (TAG_SYMOFFSET, XSYMBOL) [!USE_LSB_TAG]: Do not shift the offset.
28919         This is OK, because the !USE_LSB_TAG case now applies only when
28920         Lisp_Object is wider than void *, so there's no longer any need
28921         to shift the offset.  Not shifting the offset means that
28922         symbol representations have the same alignment as pointers,
28923         which the GC assumes.
28925 2015-06-24  Xue Fuqiao  <xfq.free@gmail.com>
28927         * doc/lispintro/emacs-lisp-intro.texi (Data types):
28928         Improve documentation of 'substring'.
28930 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
28932         * lisp/character-fold.el (character-fold-table): Fix table generation.
28934 2015-06-24  Glenn Morris  <rgm@gnu.org>
28936         * nextstep/Makefile.in (all): Make it the first target.
28937         (../src/emacs${EXEEXT}): Add rule for making it.
28939 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
28941         * etc/NEWS: Fix mention to old function name.
28943         * lisp/character-fold.el: New file (Bug#20887)
28944         (character-fold-to-regexp): New function.
28945         * lisp/replace.el (replace-search): Check value of
28946         `character-fold-search'.
28947         * lisp/isearch.el: Move character-folding code to
28948         character-fold.el
28949         (isearch-toggle-character-fold): New command.
28950         (isearch-mode-map): Bind it to "\M-sf".
28951         (isearch-mode): Check value of `character-fold-search'.
28953 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
28955         lisp/subr.el (remove-from-invisibility-spec): Handle the t case
28956         * lisp/subr.el (remove-from-invisibility-spec): Make sure `element'
28957         is visible even if it's not yet in buffer-invisibility-spec (bug#20468).
28959         * lisp/progmodes/xref.el (xref-location-group, xref-location-marker)
28960         (xref--insert-xrefs, xref-collect-references): Avoid init-args in oref.
28962 2015-06-24  Glenn Morris  <rgm@gnu.org>
28964         * Makefile.in (install-arch-dep): Don't set sticky bit on the binary.
28966 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
28968         lisp/gnus/nnmaildir.el: Silence lexical warnings
28969         * lisp/gnus/nnmaildir.el (nnmaildir--prepare): Use a more
28970         functional style.
28971         (nnmaildir--update-nov): Remove unused var `numdir'.
28972         (nnmaildir-request-type, nnmaildir--scan, nnmaildir-request-newgroups)
28973         (nnmaildir-request-group, nnmaildir-request-create-group)
28974         (nnmaildir-request-post, nnmaildir-request-move-article)
28975         (nnmaildir-request-accept-article, nnmaildir-active-number):
28976         Mark unused args.
28977         (nnmaildir-get-new-mail, nnmaildir-group-alist)
28978         (nnmaildir-active-file): Declare.
28979         (nnmaildir-request-scan): Remove unused vars `group' and `grp-dir'.
28980         (nnmaildir-request-update-info): Remove unused vars `dotfile', `num',
28981         `mark', `end', `new-mark', and `mark-sym'.
28982         (nnmaildir-retrieve-headers): Remove unused args `srv-dir', `dir',
28983         `nlist2'.
28984         (nnmaildir-request-expire-articles):
28985         Remove unused vars `article', `stop' and `nlist2'.
28986         (nnmaildir-request-set-mark): Remove unused vars `begin', `article' and
28987         `end'.  Use nnmaildir--article when dyn-binding is needed.
28988         Give the value directly in the `let' for `del-mark', `del-action',
28989         `add-action', and `set-action'.  Don't use `add-to-list' on a local var.
28990         (nnmaildir-close-server): Declare those local vars that need to be
28991         dyn-bound.
28993 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
28995         * src/keyboard.h (kbd_buffer_store_event_hold): Remove unused local.
28997         Port selection info fix to clang
28998         * src/keyboard.h (kbd_buffer_store_event_hold):
28999         Don't assume C11 semantics for alignof (Bug#20756).
29001         Fix bug that munged selection info
29002         On some optimizing C compilers, copying a structure did not
29003         copy the padding bytes between elements, and the type punning
29004         between struct input_data and struct selection_input_data did
29005         not work.  Change the C code to use a proper union type instead.
29006         Problem reported by YAMAMOTO Mitsuharu (Bug#20756).
29007         * src/keyboard.c (kbd_buffer, kbd_fetch_ptr, kbd_store_ptr)
29008         (readable_events, discard_mouse_events, kbd_buffer_events_waiting)
29009         (kbd_buffer_get_event, process_special_events, stuff_buffered_input)
29010         (mark_kboards):
29011         Use union buffered_input_event, not struct input_event.
29012         (clear_event, deliver_input_available_signal, process_special_events):
29013         Remove unnecessary forward decls.
29014         (kbd_buffer_store_buffered_event): New function, mostly just the
29015         old kbd_buffer_store_event_hold, except its argument is of type
29016         union buffered_input_event, not struct input_event.
29017         (kbd_buffer_unget_event): Define only if HAVE_X11, since it's
29018         not needed otherwise.  Argument is now of type
29019         struct selection_input_event *, not struct input_event *.
29020         All callers changed.
29021         (clear_event): Arg is now of type union buffered_input_event *,
29022         not struct input_event *.  All callers changed.
29023         * src/keyboard.h [HAVE_X11]: Include "xterm.h".
29024         (union buffered_input_event): New type.
29025         (kbd_buffer_store_event_hold): Now an inline function,
29026         defined here.
29027         * src/termhooks.h (EVENT_KIND_WIDTH): New constant.
29028         (struct input_event): Use it.
29029         * src/xselect.c (struct selection_event_queue):
29030         Make elements be of type struct selection_input_event,
29031         not struct input_event.
29032         (selection_input_event_equal): New static function.
29033         (x_queue_event): Use it.
29034         (x_queue_event, x_decline_selection_request)
29035         (x_selection_current_request, x_reply_selection_request)
29036         (x_handle_selection_request, x_handle_selection_clear)
29037         (x_handle_selection_event): Use struct selection_input_event,
29038         not struct input_event.  All callers changed.
29039         (x_convert_selection): Omit unused first arg.  All callers changed.
29040         (Fx_disown_selection_internal): Omit unnecessary union.
29041         * src/xterm.c (handle_one_xevent): Use new union buffered_input_event
29042         rather than rolling our own equivalent.  Prefer sie.kind when
29043         setting up that kind of structure.
29044         Call kbd_buffer_store_buffered_event, not kbd_buffer_store_event_hold.
29045         * src/xterm.h (struct selection_input_event: Use EVENT_KIND_WIDTH.
29046         (SELECTION_EVENT_DISPLAY, SELECTION_EVENT_DPYINFO)
29047         (SELECTION_EVENT_REQUESTOR, SELECTION_EVENT_SELECTION)
29048         (SELECTION_EVENT_TARGET, SELECTION_EVENT_PROPERTY)
29049         (SELECTION_EVENT_TIME, x_handle_selection_event):
29050         Arg is now of type struct selection_input_event *)
29051         not struct input_event *.  All callers changed.
29053 2015-06-23  Glenn Morris  <rgm@gnu.org>
29055         * Makefile.in (install-arch-dep): Simplify with Make conditionals.
29057 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
29059         * lisp/isearch.el: Fold many unicode characters to ASCII.
29060         (isearch-character-fold-search, isearch--character-fold-extras)
29061         (isearch--character-fold-table): New variable.
29062         (isearch--character-folded-regexp): New function.
29063         (isearch-search-fun-default): Use them.
29064         * lisp/replace.el (replace-character-fold): New variable.
29065         (replace-search): Use it.
29066         * etc/NEWS: Document it.
29068 2015-06-23  Glenn Morris  <rgm@gnu.org>
29070         Check for an input event before showing a dialog box.  (Bug#20813)
29071         * lisp/subr.el (y-or-n-p):
29072         * src/fns.c (Fyes_or_no_p): Check last-input-event as well
29073         as last-nonmenu-event.
29075 2015-06-23  Jürgen Hartmann  <juergen_hartman_@hotmail.com>  (tiny change)
29077         Respect ‘switch-to-visible-buffer’ more rigidly.  (Bug#20861)
29078         * lisp/window.el (switch-to-visible-buffer): Doc adjustment.
29079         (switch-to-prev-buffer, switch-to-next-buffer): Respect
29080         switch-to-visible-buffer independent of the windows history.
29082 2015-06-23  Paul Eggert  <eggert@cs.ucla.edu>
29084         * src/keyboard.c (last_timer_event): Remove unused var.
29086 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
29088         * test/automated/package-test.el (package-test-update-listing):
29089         Fix test.
29091 2015-06-23  Glenn Morris  <rgm@gnu.org>
29093         Revert 2014-06-25 nextstep/Makefile change.
29094         * nextstep/Makefile.in (${ns_appbindir}): Remove rule.
29095         (${ns_appbindir}/Emacs, links): Create ns_appbindir in the rule,
29096         not as an order-only prerequisite.
29098         * configure.ac (--with-ns): Enable by default on OS X.
29100 2015-06-23  Leo Liu  <sdl.web@gmail.com>
29102         Fix shell-for/backward-command to exclude spaces
29103         * lisp/shell.el (shell-forward-command, shell-backward-command):
29104           Handle the 'move case from re-search-forward/backward.
29105           fixes debbugs:20873
29107 2015-06-22  Juri Linkov  <juri@linkov.net>
29109         * lisp/replace.el (query-replace-read-from): Add separator to
29110         the local binding of text-property-default-nonsticky.  (Bug#20690)
29112         * lisp/simple.el (shell-command-on-region): Replace 'error' with 'user-error'.
29113         (Bug#20785)
29115 2015-06-22  Ken Brown  <kbrown@cornell.edu>
29117         Enable CPU profiling on Cygwin
29118         * src/syssignal.h [CYGWIN] (PROFILER_CPU_SUPPORT): Revert previous
29119         change that undefined this.
29120         (SIGEV_SIGNAL): Ensure that this is defined as a macro.
29121         * src/profiler.c [CYGWIN] (timer_getoverrun): Define as a macro on
29122           Cygwin.
29124         Improve diagnostics of profiler-cpu-start
29125         * src/profiler.c (setup_cpu_timer): Change return type to 'int';
29126         return -1 if the sampling interval is invalid.
29127         (Fprofiler_cpu_start): Improve error message if 'setup_cpu_timer'
29128         fails.  (Bug#20843)
29130 2015-06-22  Artur Malabarba  <bruce.connor.am@gmail.com>
29132         * lisp/emacs-lisp/package.el: Exclude packages by name.
29133         (package-hidden-regexps): New variable.
29134         (package-menu--refresh): Use it.
29135         (package-menu-hide-package): New command.
29137         * lisp/emacs-lisp/package.el: Rename hide-obsolete to toggle-hiding.
29139 2015-06-22  Eli Zaretskii  <eliz@gnu.org>
29141         Fix debug-timer-check on systems without HAVE_TIMERFD
29142         * src/atimer.c (Fdebug_timer_check) [!HAVE_TIMERFD]: Actively run
29143         the expired timers, since wait_reading_process_output doesn't.
29144         (debug_timer_callback): Enlarge the tolerance to 20 msec.
29146         Fix RCS crashes in vc-test
29147         * lisp/vc/vc-rcs.el (vc-rcs-register): Avoid crashes with some old
29148         ports of 'ci' on MS-Windows by always passing the -t- switch.
29150 2015-06-22  Glenn Morris  <rgm@gnu.org>
29152         * doc/emacs/package.texi (Packages):
29153         * doc/emacs/trouble.texi (Known Problems): Remove faq cross-references.
29155         * doc/misc/efaq-w32.texi (Downloading): Copyedits.  (Bug#20851)
29157 2015-06-22  Paul Eggert  <eggert@cs.ucla.edu>
29159         Port tests to help-quote-translation
29160         * test/automated/ert-x-tests.el (ert-test-describe-test):
29161         * test/automated/package-test.el (package-test-describe-package)
29162         (package-test-signed): Allow straight quotes, too.
29164 2015-06-22  Dmitry Gutov  <dgutov@yandex.ru>
29166         Make find-function-on-key use the current window
29167         * lisp/emacs-lisp/find-func.el (find-function-on-key-do-it):
29168         Extract from `find-function-on-key', add a second argument.
29169         (find-function-on-key): Use it (bug#19679).
29170         (find-function-on-key-other-window)
29171         (find-function-on-key-other-frame): New commands.
29173 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
29175         Revert "Define `map-elt' as a generalized variable"
29176         This reverts commit 8b6d82d3ca86f76ed964063b3941a7c6ab0bf1c6.
29178 2015-06-21  Ken Brown  <kbrown@cornell.edu>
29180         Drop support for CPU profiling on Cygwin
29181         * src/syssignal.h (PROFILER_CPU_SUPPORT): Don't define on Cygwin.
29182         (Bug#20843)
29184 2015-06-21  Paul Eggert  <eggert@cs.ucla.edu>
29186         Fix some “nested” quoting confusion in doc strings
29187         * lisp/emacs-lisp/advice.el (ad-map-arglists):
29188         * lisp/kermit.el (kermit-clean-on):
29189         * lisp/mh-e/mh-comp.el (mh-repl-group-formfile):
29190         * src/keyboard.c (Frecursive_edit):
29191         Use curved quotes when quoting text containing apostrophe,
29192         so that the apostrophe isn't curved in the output.
29194 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
29196         Define `map-elt' as a generalized variable
29197         * lisp/emacs-lisp/map.el (map-elt): Define a gv-expander.
29198         * lisp/emacs-lisp/map.el (map--dispatch): Tighten the code.
29199         * lisp/emacs-lisp/map.el (map-put): Redefine it as a function using a
29200         `setf' with `map-elt'.
29201         * test/automated/map-tests.el: Comment out `test-map-put-literal'.
29203 2015-06-21  Michael Albinus  <michael.albinus@gmx.de>
29205         Improve error handling in tramp-adb.el
29206         * lisp/net/tramp-adb.el (tramp-adb-handle-file-local-copy):
29207         Improve error handling.
29209 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
29211         Reuse `alist-get' in map.el
29212         * lisp/emacs-lisp/map.el (map-elt): Use `alist-get' to retrieve alist
29213         elements.
29215 2015-06-21  Eli Zaretskii  <eliz@gnu.org>
29217         Fix bytecomp-tests--warnings when $TMPDIR has a long name
29218         * test/automated/bytecomp-tests.el (bytecomp-tests--warnings):
29219         Allow the warning to begin on the 3rd, not only 2nd line, which
29220         happens if temporary-file-directory has a very long name.
29222         Expect 2 icalendar tests to fail on MS-Windows
29223         * test/automated/icalendar-tests.el (icalendar-import-with-timezone)
29224         (icalendar-real-world): Make them expected failures on MS-Windows.
29226 2015-06-20  Paul Eggert  <eggert@cs.ucla.edu>
29228         Improve port of settings UI to older displays
29229         * lisp/cus-start.el (standard): Don't assume curved quotes are
29230         easily distinguishable when users are tinkering with a setting
29231         that affects how curved quotes are generated.
29233         Fix quoting in electric-quote-mode doc string
29234         * lisp/electric.el (electric-quote-mode): Fix quoting.
29235         This is a fallout from the recent change introducing
29236         ‘help-quote-translation’.
29238         Spelling fix
29240         * doc/misc/texinfo.tex, lib/set-permissions.c: Merge from gnulib.
29242         * src/doc.c (syms_of_doc): Remove unused symbols.
29244 2015-06-20  Martin Rudalics  <rudalics@gmx.at>
29246         * lisp/window.el (window-state-put): Undedicate target window
29247         before putting STATE into it.  (Bug#20848)
29249 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
29251         Merge from origin/emacs-24
29252         a5e6f33 Fixes: debbugs:20832
29253         b9f02cf Fixes: debbugs:20832
29255 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
29257         Fix file-in-directory-p when the directory is UNC
29258         * lisp/files.el (file-in-directory-p): Support files and
29259         directories that begin with "//".  (Bug#20844)
29261 2015-06-19  Stephen Berman  <stephen.berman@gmx.net>
29263         * lisp/calendar/todo-mode.el (todo-show): Don't visit todo file
29264         in the minibuffer.  (Bug#20832)
29266 2015-06-19  Nicolas Richard  <youngfrog@members.fsf.org>
29268         * lisp/calendar/todo-mode.el (todo-show): Signal an error if buffer
29269         for adding new todo file is empty but modified.  (Bug#20832)
29271 2015-06-19  Stefan Monnier  <monnier@iro.umontreal.ca>
29273         (filepos-to-bufferpos): Further tweaks to the utf-16 code
29274         * lisp/international/mule-util.el (filepos-to-bufferpos):
29275         Fix typo.  Move non-exact check to the utf-16 branch (the only one
29276         affected).  Don't use byte-to-position for the utf-16 case.
29278 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
29280         Minor fixes in filepos-to-bufferpos
29281         * lisp/international/mule-util.el (filepos-to-bufferpos): Remove
29282         test for utf-8-emacs.  Exempt single-byte encodings from the
29283         'use-exact' path when QUALITY is 'exact'.  Test UTF-16 encodings
29284         for BOM before subtracting 2 bytes.  Use 'identity' when adjusting
29285         UTF-16 encoded files for CR-LF EOLs.
29287 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
29289         Improve the optional translation of quotes
29290         Fix several problems with the recently-added custom variable
29291         help-quote-translation where the code would quote inconsistently
29292         in help buffers.  Add support for quoting 'like this', which
29293         is common in other GNU programs in ASCII environments.  Change
29294         help-quote-translation to use more mnemonic values: values are now the
29295         initial quoting char, e.g., (setq help-quote-translation ?`) gets the
29296         traditional Emacs help-buffer quoting style `like this'.  Change the
29297         default behavior of substitute-command-keys to match what's done in
29298         set-locale-environment, i.e., quote ‘like this’ if displayable,
29299         'like this' otherwise.
29300         * doc/lispref/help.texi (Keys in Documentation): Document
29301         new behavior of substitute-command-keys, and document
29302         help-quote-translation.
29303         * doc/lispref/tips.texi (Documentation Tips):
29304         Mention the effect of help-quote-translation.
29305         * etc/NEWS: Mention new behavior of substitute-command-keys,
29306         and merge help-quote-translation news into it.
29307         When talking about doc strings, mention new ways to type quotes.
29308         * lisp/cedet/mode-local.el (overload-docstring-extension):
29309         Revert my recent change to this function, which shouldn't be
29310         needed as the result is a doc string.
29311         * lisp/cedet/mode-local.el (mode-local-print-binding)
29312         (mode-local-describe-bindings-2):
29313         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
29314         * lisp/cus-theme.el (describe-theme-1):
29315         * lisp/descr-text.el (describe-text-properties-1, describe-char):
29316         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
29317         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
29318         (eieio-help-constructor):
29319         * lisp/emacs-lisp/package.el (describe-package-1):
29320         * lisp/faces.el (describe-face):
29321         * lisp/help-fns.el (help-fns--key-bindings)
29322         (help-fns--compiler-macro, help-fns--parent-mode)
29323         (help-fns--obsolete, help-fns--interactive-only)
29324         (describe-function-1, describe-variable):
29325         * lisp/help.el (describe-mode):
29326         Use substitute-command-keys to ensure a more-consistent quoting
29327         style in help buffers.
29328         * lisp/cus-start.el (standard):
29329         Document new help-quote-translation behavior.
29330         * lisp/emacs-lisp/lisp-mode.el (lisp-fdefs):
29331         * lisp/help-mode.el (help-xref-symbol-regexp, help-xref-info-regexp)
29332         (help-xref-url-regexp):
29333         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
29334         * lisp/wid-edit.el (widget-documentation-link-regexp):
29335         Also match 'foo', in case we're in a help buffer generated when
29336         help-quote-translation is ?'.
29337         * src/doc.c: Include disptab.h, for DISP_CHAR_VECTOR.
29338         (LEFT_SINGLE_QUOTATION_MARK, uLSQM0, uLSQM1, uLSQM2, uRSQM0)
29339         (uRSQM1, uRSQM2, LSQM, RSQM): New constants.
29340         (Fsubstitute_command_keys): Document and implement new behavior.
29341         (Vhelp_quote_translation): Document new behavior.
29343 2015-06-18  Glenn Morris  <rgm@gnu.org>
29345         * lisp/cus-start.el (help-quote-translation): Add :version.
29347         * src/doc.c (Fsubstitute_command_keys): Make previous change compile.
29349 2015-06-18  Alan Mackenzie  <acm@muc.de>
29351         Make translation of quotes to curly in doc strings optional.
29352         * src/doc.c (traditional, prefer-unicode): New symbols.
29353         (help-quote-translation): New variable.
29354         (Fsubstitute_command_keys): Make translation of quotes dependent on
29355         `help-quote-translation'; also translate curly quotes back to ASCII
29356         ones.
29357         * lisp/cus-start.el (top-level): Add a customization entry for
29358         `help-quote-translation'.
29360 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
29362         * lisp/emacs-lisp/package.el: Don't always propagate async errors
29363         (package--with-work-buffer-async): Only propagate the error if the
29364         callback returns non-nil.
29365         (package--download-one-archive): Return nil on the signature
29366         checking callback if we accept unsigned.
29367         (package--download-and-read-archives): Return non-nil on the
29368         archive download callback.
29370 2015-06-18  Martin Rudalics  <rudalics@gmx.at>
29372         Set image_cache_refcount before x_default_parameter calls.  (Bug#20802)
29373         * src/nsfns.m (Fx_create_frame):
29374         * src/xfns.c (Fx_create_frame, x_create_tip_frame): Move setting
29375         image_cache_refcount before first x_default_parameter call.
29377 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
29379         Improve and extend filepos-to-bufferpos
29380         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
29381         Don't barf if F returns nil for some argument.
29382         (filepos-to-bufferpos): Expand to support UTF-16 and not assume
29383         that every encoding of type 'charset' is single-byte.
29385 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
29387         * lisp/emacs-lisp/package.el (package-menu--perform-transaction):
29388         Properly delete packages.  (Bug#20836)
29390 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
29392         Update data files from just-released Unicode 8.0
29393         * etc/NEWS: Update wording since Unicode 8.0 is no longer in draft
29394         status.
29395         * test/BidiCharacterTest.txt: Update from Unicode 8.0.
29396         * admin/unidata/BidiMirroring.txt:
29397         * admin/unidata/BidiBrackets.txt:
29398         * admin/unidata/UnicodeData.txt: Update from Unicode 8.0.
29400 2015-06-18  Paul Eggert  <eggert@cs.ucla.edu>
29402         Document curved quotes a bit better
29403         * doc/emacs/basic.texi (Inserting Text):
29404         Mention C-x 8.  Change example to use curved quote rather
29405         than infinity, as this lets us give more ways to do it.
29406         * doc/emacs/mule.texi (International Chars): Mention C-x 8 shortcuts
29407         and quotation marks.
29408         * doc/emacs/text.texi (Quotation Marks):
29409         * doc/lispref/tips.texi (Documentation Tips):
29410         Add "curly quotes" and "curved quotes" to the index.
29411         * doc/emacs/text.texi (Quotation Marks):
29412         Give the C-x 8 shorthands for curved quotes.
29413         Cross-reference to "Quotation Marks".
29415 2015-06-17  Daiki Ueno  <ueno@gnu.org>
29417         Add pinentry.el for better GnuPG integration
29418         * lisp/pinentry.el: New file.
29419         * etc/NEWS: Add entry about pinentry.el.
29420         * lisp/epg.el (epg--start): Set INSIDE_EMACS envvar.
29421         (Bug#20550)
29423 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
29425         * lisp/emacs-lisp/package.el: Slightly better error reporting.
29427 2015-06-17  Stefan Monnier  <monnier@iro.umontreal.ca>
29429         (define-minor-mode): Use setq-default for :global minor modes
29430         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
29431         Use setq-default for :global minor modes (bug#20712).
29433 2015-06-17  Eli Zaretskii  <eliz@gnu.org>
29435         Avoid infloop in redisplay with tall images
29436         * src/xdisp.c (try_scrolling): Prevent an infloop when scrolling
29437         down near ZV.  (Bug#20808)
29438         Call bidi_unshelve_cache to avoid memory leaks.  Use IT_CHARPOS
29439         instead of CHARPOS.
29441 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
29443         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
29444         Fix error reporting.
29446         * lisp/emacs-lisp/let-alist.el: Move to lisp/emacs-lisp/let-alist.el
29448         * lisp/emacs-lisp/package.el: Revert buffer after any operation
29449         Call `package-menu--post-refresh' after any operation that changes
29450         the package database (`package-install' and `package-delete').  To
29451         avoid performance issues in large transactions, these functions
29452         add `post-refresh' to `post-command-hook' instead of calling it
29453         immediately.
29454         (package-menu--mark-or-notify-upgrades): New function.
29455         (list-packages): Add it to `package--post-download-archives-hook'.
29456         (package-menu--post-refresh): Lose the upgrade-checking code, add
29457         code to remove itself from `post-command-hook'.
29458         (package-install, package-delete): Add it to `post-command-hook'.
29459         (package-menu-execute): Don't call `package-menu--post-refresh'.
29461 2015-06-17  Stephen Leake  <stephen_leake@stephe-leake.org>
29463         Add missing function xref-location-group for elisp-mode.
29464         * lisp/progmodes/elisp-mode.el: Add missing function xref-location-group.
29466 2015-06-17  Wolfgang Jenkner  <wjenkner@inode.at>
29468         * src/editfns.c (Fbyte_to_position): Fix bytepos not at char boundary.
29469         The behavior now matches the description in the manual.  (Bug#20783)
29471 2015-06-17  Xue Fuqiao  <xfq.free@gmail.com>
29473         * etc/tutorials/TUTORIAL.cn: Update; synchronize with TUTORIAL.
29475 2015-06-17  Glenn Morris  <rgm@gnu.org>
29477         Generate char-script-table from Unicode source.  (Bug#20789)
29478         * admin/unidata/Makefile.in (AWK): New, set by configure.
29479         (all): Add charscript.el.
29480         (blocks): New variable.
29481         (charscript.el, ${unidir}/charscript.el): New targets.
29482         (extraclean): Also remove generated charscript.el.
29483         * admin/unidata/blocks.awk: New script.
29484         * admin/unidata/Blocks.txt: New data file, from unicode.org.
29485         * lisp/international/characters.el: Load charscript.
29486         * src/Makefile.in (charscript): New variable.
29487         (${charscript}): New target.
29488         (${lispintdir}/characters.elc): Depend on charscript.elc.
29489         (temacs$(EXEEXT)): Depend on charscript.
29491         * lisp/international/characters.el (char-script-table): Tweak
29492         some ranges to better match the source.  (Bug#20789#17)
29494         Remove "no-byte-compile: t" from a few files.
29495         * lisp/obsolete/bruce.el, lisp/obsolete/keyswap.el:
29496         * lisp/obsolete/patcomp.el: No reason not to compile these.
29498 2015-06-16  Glenn Morris  <rgm@gnu.org>
29500         Fix some typos in copied Unicode data.  (Bug#20789)
29501         * lisp/international/characters.el (char-script-table):
29502         * lisp/international/fontset.el (script-representative-chars)
29503         (setup-default-fontset): Fix typos.
29505         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
29506         Don't print filename twice (it's in the prefix now).
29508         * lisp/emacs-lisp/pcase.el (pcase--u1): Revert earlier workaround.
29509         No longer needed.
29511         Address a compilation warning.
29512         * lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-defalias):
29513         Replace 't' with '_' in pcase.
29515         Address some check-declare warnings.
29516         * lisp/simple.el (tabulated-list-print):
29517         * lisp/progmodes/elisp-mode.el (xref-collect-matches):
29518         * lisp/term/ns-win.el (ns-selection-owner-p, ns-selection-exists-p)
29519         (ns-get-selection): Update declarations.
29521         Address some compilation warnings.
29522         * lisp/elec-pair.el (electric-pair-post-self-insert-function):
29523         * lisp/vc/vc-git.el (vc-git-file-type-as-string):
29524         Replace 't' with '_' in pcase.
29526         Address some compilation warnings.
29527         * lisp/face-remap.el (text-scale-adjust):
29528         * lisp/menu-bar.el (popup-menu-normalize-position):
29529         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand):
29530         * lisp/emacs-lisp/bytecomp.el (byte-compile-arglist-warn):
29531         * lisp/emacs-lisp/generator.el (cps--transform-1):
29532         * lisp/emacs-lisp/macroexp.el (macroexp--expand-all):
29533         * lisp/obsolete/vc-arch.el (vc-arch-mode-line-string):
29534         * lisp/progmodes/octave.el (octave-goto-function-definition)
29535         (octave-find-definition-default-filename):
29536         Replace 't' with '_' in pcase.
29538         * lisp/emacs-lisp/pcase.el (pcase--u1):
29539         Paper-over today's bootstrap failure.
29541 2015-06-16  Nicolas Petton  <nicolas@petton.fr>
29543         * lisp/emacs-lisp/seq.el: Fix a byte-compiler warnings related to pcase.
29545         * lisp/emacs-lisp/map.el (map-into): Fix a byte-compiler warning.
29547         Better confirmation message in `find-alternate-file' (Bug#20830)
29548         * lisp/files.el (find-alternate-file'): Improve the confirmation
29549         message to show the buffer name.
29551         Better docstring for null.  (Bug#20815)
29552         * src/data.c (null): Improves the docstring, saying what null returns
29553         when OBJECT is non-nil.
29555 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
29557         * lisp/net/newst-treeview.el: Use lexical-binding.
29559         (filepos-to-bufferpos): Add missing cases.  Make sure it terminates.
29560         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
29561         New auxiliary function, extracted from filepos-to-bufferpos.
29562         Make sure it terminates.
29563         (filepos-to-bufferpos): Use it to fix the latin-1-dos case.
29564         Add support for the `exact' quality.
29566 2015-06-16  Cédric Chépied  <cedric.chepied@gmail.com>
29568         Identify feeds in newsticker treeview with :nt-feed property
29569         * lisp/net/newst-treeview.el:
29570         (newsticker--treeview-nodes-eq): Use property :nt-feed instead of :tag.
29572 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
29574         * lisp/emacs-lisp/pcase.el: Improve docs and error handling.
29575         (pcase--self-quoting-p): Floats aren't self-quoting.
29576         (pcase): Tweak docstring.
29577         (pcase--u1): Deprecate the t pattern.  Improve error detection for
29578         the nil pattern.
29579         (\`): Tweak docstring.  Signal an error for unrecognized cases.
29580         (bug#20784)
29582 2015-06-16  Eli Zaretskii  <eliz@gnu.org>
29584         Fix infloop in filepos-to-bufferpos
29585         * lisp/international/mule-util.el (filepos-to-bufferpos): Fix EOL
29586         offset calculation, and make it conditional on the eol-type of the
29587         file's encoding.  (Bug#20825)
29589 2015-06-16  Martin Rudalics  <rudalics@gmx.at>
29591         Fix handling of image cache refcounts.  (Bug#20802)
29592         This backports Eli Zaretskii's solution of this problem for W32
29593         to X and NS.
29594         * src/nsfns.m (image_cache_refcount): Define unconditionally.
29595         (unwind_create_frame): If the image cache's reference count
29596         hasn't been updated yet, do that now.
29597         (Fx_create_frame): Set image_cache_refcount unconditionally.
29598         * src/xfns.c (image_cache_refcount): Define unconditionally.
29599         (unwind_create_frame): If the image cache's reference count
29600         hasn't been updated yet, do that now.
29601         (Fx_create_frame, x_create_tip_frame): Set image_cache_refcount
29602         unconditionally.
29603         * src/w32fns.c (image_cache_refcount): Make it a ptrdiff_t as on
29604         X and NS.
29606 2015-06-16  Nils Ackermann  <nils@ackermath.info>
29608         Improve reftex-label-regexps default value
29609         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Make
29610         keyvals label regexp more strict to better cope with unbalanced
29611         brackets common in math documents.
29613 2015-06-16  Glenn Morris  <rgm@gnu.org>
29615         * doc/emacs/calendar.texi (Format of Diary File):
29616         Move "nonmarking" from here...
29617         (Displaying the Diary): ... to here.
29619         * doc/emacs/calendar.texi (Format of Diary File, Displaying the Diary):
29620         Swap the order of these nodes.
29621         * doc/emacs/emacs.texi: Update detailed menu for the above change.
29623         * doc/emacs/calendar.texi (Specified Dates, Special Diary Entries):
29624         Update date of examples.
29625         (Diary, Format of Diary File): Move example from former to latter.
29626         Reduce duplication.
29628         No need for cp51932.el, eucjp-ms.el to not be compiled any more.
29629         * admin/charsets/cp51932.awk, admin/charsets/eucjp-ms.awk:
29630         Don't set no-byte-compile in the outputs.
29631         * lisp/loadup.el: Don't specify uncompiled cp51932, eucjp-ms.
29633 2015-06-15  Glenn Morris  <rgm@gnu.org>
29635         * lisp/calendar/calendar.el (diary-file): Use locate-user-emacs-file.
29636         * doc/emacs/calendar.texi (Diary, Format of Diary File):
29637         Update for above diary-file change.
29639         * lisp/macros.el (name-last-kbd-macro, kbd-macro-query)
29640         (apply-macro-to-region-lines): Use user-error.
29642         * lisp/textmodes/page-ext.el (add-new-page, pages-directory)
29643         (pages-directory-for-addresses): Doc fixes.
29645 2015-06-15  Stefan Monnier  <monnier@iro.umontreal.ca>
29647         * lisp/info.el: Cleanup bytepos/charpos issues
29648         * lisp/international/mule-util.el: Use lexical-binding.
29649         (filepos-to-bufferpos): New function.
29650         * lisp/info.el (Info-find-in-tag-table-1): Use 0-based file positions.
29651         (Info-find-node-2): Use filepos-to-bufferpos (bug#20704).
29652         (Info-read-subfile, Info-search): Use 0-based file positions.
29654         * lisp/progmodes/perl-mode.el: Refine handling of /re/ and y/abc/def/
29655         (perl--syntax-exp-intro-keywords): New var.
29656         (perl--syntax-exp-intro-regexp, perl-syntax-propertize-function): Use it.
29657         (bug#20800).
29659 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
29661         Fix quoting when making derived mode docstring
29662         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
29663         Nest regexp-quote inside format, not the reverse.
29664         Problem reported by Artur Malabarba in:
29665         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00206.html
29667 2015-06-15  Eli Zaretskii  <eliz@gnu.org>
29669         Fix current-iso639-language on MS-Windows
29670         * lisp/international/mule-cmds.el (set-locale-environment):
29671         Downcase the locale name before interning it.  This is so the
29672         'current-iso639-language' on MS-Windows matches the ':lang'
29673         property of font-spec objects.
29675         Limit Symbola usage some more
29676         * lisp/international/fontset.el (setup-default-fontset): Limit
29677         Symbol coverage of Currency Symbols to u+20B6..u+20CF.
29678         (Bug#20727)
29680 2015-06-15  Nicolas Petton  <nicolas@petton.fr>
29682         * lisp/emacs-lisp/map.el (map-let): Better docstring.
29684 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
29686         * test/automated/help-fns.el (abc\\\[universal-argument\]b\`c\'d\\e\"f):
29687         (help-fns-test-funny-names): Spelling fixes.
29689 2015-06-14  Glenn Morris  <rgm@gnu.org>
29691         * lisp/version.el (emacs-repository-version-git): Demote errors.
29692         Check result is a hash.
29694 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
29696         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
29697         Catch errors that happen before going async.  (Bug#20809)
29699 2015-06-14  Eli Zaretskii  <eliz@gnu.org>
29701         Another improvement of documentation of set-fontset-font
29702         * doc/lispref/display.texi (Fontsets): Say explicitly that
29703         CHARACTER can be a single codepoint.
29704         * src/fontset.c (Fset_fontset_font): Doc fix.
29706         Another improvement for symbol and punctuation characters
29707         * lisp/international/fontset.el (setup-default-fontset): Exclude
29708         from Symbola character ranges for symbols and punctuation covered
29709         well by popular Unicode fonts.  Prefer fixed-misc Unicode font, if
29710         installed and where its coverage of symbols and punctuation is
29711         known to be good.  (Bug#20727)
29713 2015-06-14  Christoph Wedler  <christoph.wedler@sap.com>
29715         Some generic support for multi-mode indentation.
29716         * lisp/progmodes/prog-mode.el (prog-indentation-context):
29717         New variable.
29718         (prog-first-column, prog-widen): New convenience functions.
29720 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
29722         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
29723         Don't assume that `tabulated-list-printer' will leave point at the
29724         end of the buffer.  (Bug#20810)
29726 2015-06-13  Glenn Morris  <rgm@gnu.org>
29728         Tweaks for getting repository version; a bit more like it was for bzr
29729         * lisp/version.el (emacs-repository-version-git)
29730         (emacs-repository--version-git-1): New functions,
29731         split from emacs-repository-get-version.
29732         (emacs-repository-get-version): Make the second argument meaningful.
29734         * lisp/startup.el (command-line-1): Inform if skipping relative
29735         file names due to deleted PWD.
29737         * src/xsmfns.c (x_session_initialize): Avoid libSM crash
29738         when starup directory is missing.  (Bug#18851)
29739         (errno.h): Include it.
29741 2015-06-13  Paul Eggert  <eggert@cs.ucla.edu>
29743         Better fix for documenting `X as "`X"
29744         Fix suggested by Stefan Monnier.
29745         * lisp/help-fns.el (help-fns--signature):
29746         Insert "`X", not "(\` X)", when documenting `X (Bug#20759).
29747         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
29748         Don't treat `X specially, as help-fns--signature now handles this.
29750 2015-06-13  Eli Zaretskii  <eliz@gnu.org>
29752         Improve the default fontset when Symbola is not installed
29753         * lisp/international/fontset.el (setup-default-fontset): Only
29754         prepend Symbola and FreeMono font specs for symbols and
29755         punctuation; do not replace the default spec for them.  This
29756         should have better results when Symbola/FreeMono are not
29757         installed.  (Bug#20727)
29759         Improve documentation of ':lang' in font specs
29760         * src/font.c (Ffont_spec): Doc fix: elaborate on the values and
29761         use of the ':lang' property of the font spec.
29762         * doc/emacs/frames.texi (Fonts): Document the language names that
29763         can be in the STYLE part of XLFD.
29764         * doc/lispref/display.texi (Low-Level Font): Document the ':lang'
29765         property.
29767         * nt/README: Don't advertise the (obsolescent) w32 FAQ.
29769         * nt/README.W32: Don't advertise the (obsolescent) w32 FAQ.
29771         Revert last change in fontset.el
29772         * lisp/international/fontset.el (setup-default-fontset): Revert
29773         the change "Configure Symbola font only if installed", since font
29774         search is evidently not yet set up when this function is called.
29775         (Bug#20727)
29777 2015-06-12  Glenn Morris  <rgm@gnu.org>
29779         Ensure early startup warnings are visible at the end.  (Bug#20792)
29780         * lisp/emacs-lisp/warnings.el (display-warning):
29781         If startup isn't complete, delay the warning.
29782         * lisp/startup.el (normal-top-level, command-line):
29783         Let display-warning automatically handle the needed delays.
29784         Run delayed-warnings-hook.
29786         * lisp/version.el (emacs-repository-get-version):
29787         Avoid calling external executable if possible.  (Bug#20799)
29789 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
29791         Document `X as "`X", not as "(` X)"
29792         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
29793         Document (backquote FOO) as "`FOO", not as "(` FOO)" (Bug#20759).
29795         * src/print.c (print_object): Minor simplification.
29797 2015-06-12  Glenn Morris  <rgm@gnu.org>
29799         * src/buffer.c (init_buffer): Add final newline to message.
29801 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
29803         Configure Symbola font only if installed
29804         * lisp/international/fontset.el (setup-default-fontset):
29805         Don't specify the Symbola font if it's not installed.
29806         Likewise for FreeMono.  (Bug#20727)
29808 2015-06-12  Eli Zaretskii  <eliz@gnu.org>
29810         Configure Symbola font only for symbols and punctuation
29811         * lisp/international/fontset.el (setup-default-fontset): Leave
29812         only symbols and punctuation in the fontset setup for Symbola
29813         font; remove "Greek and Coptic" and "Cyrillic Supplement".
29814         (Bug#20798)
29816 2015-06-12  Andreas Schwab  <schwab@linux-m68k.org>
29818         Fix crash in fontset-info
29819         * src/fontset.c (Ffontset_info): Check that the RFONT-DEF elt is
29820         non-nil.
29822 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
29824         Port to Solaris 10 sparc + Sun C 5.13
29825         * configure.ac (SETUP_SLAVE_PTY) [sol2* | unixware]:
29826         Adjust to process.c change.
29827         * src/process.c (create_process): Declare volatile variables at
29828         top level of this function, so that they're less likely to be
29829         reused later in the function in the code executed by the vforked
29830         child.  Do not declare locals used only in the vforked child, as
29831         they might share memory with locals still live in the parent.
29832         Instead, use the same variables in the child as in the parent.
29833         This works around a subtle bug that causes a garbage collector
29834         crash when Emacs is built with Sun C 5.13 sparc on Solaris 10.
29836 2015-06-12  Glenn Morris  <rgm@gnu.org>
29838         * lisp/startup.el (normal-top-level): Don't let *Messages* get
29839         a nil default-directory.
29841 2015-06-11  Glenn Morris  <rgm@gnu.org>
29843         * lisp/startup.el (normal-top-level): Use delay-warning.  (Bug#20792)
29845         Some progress towards starting with PWD deleted.  (Bug#18851)
29846         * src/buffer.c (init_buffer): Handle get_current_dir_name failures.
29847         * lisp/startup.el (normal-top-level, command-line-1):
29848         * lisp/minibuffer.el (read-file-name-default):
29849         Handle default-directory being nil.
29851 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
29853         Fix "not a tty" bug on Solaris 10
29854         * configure.ac (PTY_OPEN): Define to plain 'open'
29855         on SVR4-derived hosts, so that the O_CLOEXEC flag isn't set.
29856         * src/process.c (allocate_pty): Set the O_CLOEXEC flag after
29857         calling PTY_TTY_NAME_SPRINTF, for the benefit of SVR4-derived
29858         hosts that call grantpt which does its work via a setuid subcommand
29859         (Bug#19191, Bug#19927, Bug#20555, Bug#20686).
29860         Also, set O_CLOEXEC even if PTY_OPEN is not defined, since it
29861         seems relevant in that case too.
29863 2015-06-11  Juri Linkov  <juri@linkov.net>
29865         * lisp/bindings.el (debug-ignored-errors): Add mark-inactive.
29866         * lisp/simple.el (kill-region): Replace 'error' with 'user-error'.
29867         (Bug#20785)
29869 2015-06-11  Glenn Morris  <rgm@gnu.org>
29871         * lisp/international/characters.el (char-script-table): Fix typo.
29873 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
29875         Fix quoting of help for functions with odd names
29876         While investigating Bug#20759, I discovered other quoting problems:
29877         C-h f mishandled characters like backslash and quote in function names.
29878         This fix changes the behavior so that 'C-h f pcase RET' now
29879         generates "... (\` QPAT) ..." instead of "... (` QPAT) ...",
29880         because '(format "%S" '(` FOO))' returns "(\\` FOO)".  A comment
29881         in src/lread.c's read1 function says that the backslash will be
29882         needed starting in Emacs 25, which implies that 'format' is
29883         correct and the old pcase documention was wrong to omit the backslash.
29884         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
29885         * lisp/help-fns.el (help-fns--signature):
29886         * lisp/help.el (help-add-fundoc-usage):
29887         * lisp/progmodes/elisp-mode.el (elisp-function-argstring):
29888         Use help--make-usage-docstring rather than formatting
29889         help-make-usage.
29890         * lisp/emacs-lisp/pcase.el (pcase--make-docstring):
29891         Return raw docstring.
29892         * lisp/help-fns.el (help-fns--signature): New arg RAW, to return
29893         raw docstring.  Take more care to distinguish raw from cooked dstrings.
29894         (describe-function-1): Let help-fns--signature substitute
29895         command keys.
29896         * lisp/help.el (help--docstring-quote): New function.
29897         (help-split-fundoc): Use it, to quote funny characters more
29898         systematically.
29899         (help--make-usage): Rename from help-make-usage, since this
29900         should be private.  Leave an obsolete alias for the old name.
29901         (help--make-usage-docstring): New function.
29902         * test/automated/help-fns.el (help-fns-test-funny-names): New test.
29904 2015-06-11  Stefan Monnier  <monnier@iro.umontreal.ca>
29906         * lisp/thingatpt.el (in-string-p): Revert last change,
29907         since in-string-p is not used in thingatpt.el but only from outside.
29908         Also, use lexical binding.
29910 2015-06-11  Artur Malabarba  <bruce.connor.am@gmail.com>
29912         * lisp/emacs-lisp/let-alist.el (let-alist--deep-dot-search): Fix cons.
29913         * test/automated/let-alist.el (let-alist-cons): Test it.
29915 2015-06-11  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
29917         * src/syntax.c (Fbackward_prefix_chars): Reword docstring.
29919 2015-06-10  Glenn Morris  <rgm@gnu.org>
29921         * build-aux/gitlog-to-emacslog: Also ignore pointless merge commits.
29923         Improve generated ChangeLog for gitmerge.el commits.  (Bug#20717)
29924         * build-aux/gitlog-to-changelog: Handle gitmerge.el skipped commits.
29925         * admin/gitmerge.el (gitmerge-commit-message):
29926         Exclude "skipped" messages from ChangeLog once again.
29928         Slight namespace cleanup for thingatpt.el.
29929         * lisp/thingatpt.el (thing-at-point--in-string-p)
29930         (thing-at-point--end-of-sexp, thing-at-point--beginning-of-sexp)
29931         (thing-at-point--read-from-whole-string): Rename from
29932         old versions without "thing-at-point--" prefix.
29933         Keep old versions as obsolete aliases.  Update all uses.
29935         * lisp/emacs-lisp/checkdoc.el (checkdoc-get-keywords):
29936         Move requiring of finder from here...
29937         (checkdoc-package-keywords): ... to here.
29939         Use 'user-error' in a few calendar files.
29940         * lisp/calendar/appt.el (appt-add):
29941         * lisp/calendar/calendar.el (calendar-absolute-from-gregorian)
29942         (calendar-generate):
29943         * lisp/calendar/diary-lib.el (diary-mail-entries, diary-cyclic):
29944         Replace 'error' with 'user-error'.
29946         * lisp/progmodes/f90.el (f90-backslash-not-special): Use user-error.
29948         * lisp/files-x.el (add-file-local-variable):
29949         Special-case 'lexical-binding'.  (Bug#20641)
29951         * lisp/progmodes/executable.el (executable-self-display): Obsolete.
29952         No longer autoload.
29953         * doc/misc/autotype.texi (Executables):
29954         Undocument executable-self-display.
29956         * lisp/progmodes/executable.el (executable-self-display):
29957         Use non-obsolete tail syntax.  (Bug#20779)
29958         (executable-self-display): Doc update.
29960 2015-06-10  Stefan Monnier  <monnier@iro.umontreal.ca>
29962         * lisp/emacs-lisp/checkdoc.el: Use lexical-binding
29963         (finder-known-keywords): Silence byte-compiler.
29965 2015-06-09  Stefan Monnier  <monnier@iro.umontreal.ca>
29967         * lisp/simple.el (eval-expression): Macroexpand before evaluating
29968         (bug#20730).
29970         * lisp/progmodes/sh-script.el: Better handle nested quotes.
29971         (sh-here-doc-open-re): Don't mis-match the <<< operator (bug#20683).
29972         (sh-font-lock-quoted-subshell): Make sure double quotes within single
29973         quotes don't mistakenly end prematurely the surrounding string.
29975         * lisp/progmodes/elisp-mode.el: Require cl-lib for cl-defstruct.
29977 2015-06-09  Glenn Morris  <rgm@gnu.org>
29979         * test/automated/Makefile.in (ELFILES): Sort.
29981         * Makefile.in (SUBDIR_MAKEFILES):
29982         * lwlib/Makefile.in (WARN_CFLAGS):
29983         Use built-in Make functions rather than echo+sed.
29985 2015-06-09  Eli Zaretskii  <eliz@gnu.org>
29987         Update char-script-table
29988         * lisp/international/characters.el (char-script-table): Update
29989         from Unicode 8.0 Draft.
29991         Improve font selection for punctuation and other symbols
29992         * src/fontset.c (face_for_char): If the character's script is
29993         'symbol', and the font used for ASCII face has a glyph for it, use
29994         the font for the ASCII face instead of searching the fontsets.
29995         This comes instead of NS-specific code that used the current
29996         face's font instead, which is now disabled due to undesirable
29997         consequences.  (Bug#20727)
29999 2015-06-08  Dmitry Gutov  <dgutov@yandex.ru>
30001         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
30002         Skip past `#' to find BEG (bug#20771).
30003         * test/automated/elisp-mode-tests.el
30004         (elisp-completes-functions-after-hash-quote): New test.
30006 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
30008         Fix compilation warning/error in --without-x builds
30009         * src/xdisp.c (append_space_for_newline): Condition GUI-specific
30010         code on HAVE_WINDOW_SYSTEM.
30012         Improve the default fontset wrt symbols
30013         * lisp/international/fontset.el (setup-default-fontset): Better
30014         setup of fontset-default for symbols: use Symbola and FreeMono.
30015         (Bug#20727)
30017 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
30019         Add new command checkdoc-package-keywords
30020         * lisp/emacs-lisp/checkdoc.el (checkdoc-package-keywords-flag):
30021         New defcustom.
30022         (checkdoc-list-of-strings-p): Add doc.
30023         (checkdoc-current-buffer): When `checkdoc-package-keywords-flag' is
30024         non-nil, call `checkdoc-package-keywords'.
30025         (checkdoc-get-keywords): New defun.
30026         (checkdoc-package-keywords): New command.  Warns if the current file
30027         has package.el-style keywords that aren't in `finder-known-keywords'.
30028         * etc/NEWS: Add entry.
30030 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
30032         Avoid crashes when key-binding is called from a timer
30033         * src/keymap.c (Fkey_binding): Don't segfault if called with an
30034         empty vector as KEY.  (Bug#20705)
30036         Fix a thinko in arc-mode.el
30037         * lisp/arc-mode.el (archive-zip-summarize): Fix last change in the
30038         non-Zip64 case.  (Bug#20769)
30040 2015-06-08  Artur Malabarba  <bruce.connor.am@gmail.com>
30042         * lisp/emacs-lisp/package.el (package-delete): Make interactive.
30044 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
30046         * lisp/emacs-lisp/checkdoc.el (checkdoc-file): New function.
30047         (checkdoc-error): When `checkdoc-diagnostic-buffer' is set to
30048         "*warn*", print the warning to the standard output.  (bug#20754)
30050 2015-06-07  Glenn Morris  <rgm@gnu.org>
30052         * admin/update_autogen (changelog_files): Remove gitlog-to-emacslog.
30054         * src/font.c (syms_of_font) <font-log>: Doc fix.
30056         Remove the obsolete leading "*" from some C doc strings.
30057         * src/coding.c (syms_of_coding):
30058         * src/font.c (syms_of_font): Remove leading "*" from docs.
30059         * lisp/cus-start.el (enable-character-translation): Add it.
30061 2015-06-07  Paul Eggert  <eggert@cs.ucla.edu>
30063         Move gen_origin from program to data
30064         That way, 'make change-history' needs to change only ChangeLog.2,
30065         instead of having to change two files.
30066         * ChangeLog.2: Add commit info for range that this file covers.
30067         * Makefile.in (new_commit_regexp): New macro.
30068         (change-history-nocommit): Simplify, by putting what used to be
30069         the gen_origin value into the data (ChangeLog.2) rather than
30070         into the program (gitlog-to-emacslog).
30071         * build-aux/gitlog-to-emacslog (gen_origin): Calculate from
30072         the input file (e.g., ChangeLog.2) rather than by having a
30073         constant in the program.  Substitute it into the output.
30075 2015-06-07  Dmitry Gutov  <dgutov@yandex.ru>
30077         * lisp/help-fns.el (help-fns--signature): Quote any quotes in the
30078         function name (bug#20759).
30080 2015-06-07  Eli Zaretskii  <eliz@gnu.org>
30082         Adapt 'struct timespec' to next release of MinGW runtime
30083         * nt/inc/ms-w32.h (struct timespec): Don't declare if
30084         __struct_timespec_defined is defined.
30086 2015-06-06  Paul Eggert  <eggert@cs.ucla.edu>
30088         Merge from gnulib
30089         This incorporates:
30090         2015-06-06 acl-permissions: pacify -Wsuggest-attribute=const
30091         2015-06-05 stdio: Don't redefine gets when using C++
30092         2015-06-05 acl-permissions: port to AIX, C89 HP-UX
30093         2015-06-02 file-has-acl: fix build on Mac OS X 10
30094         2015-06-01 gnulib-tool: concatenate lib_SOURCES to a single line
30095         2015-06-01 pthread_sigmask: discount system version if a simple macro
30096         2015-05-31 readlinkat: avoid OS X 10.10 trailing slash bug
30097         * doc/misc/texinfo.tex, lib/acl-internal.h, lib/get-permissions.c:
30098         * lib/readlinkat.c, lib/set-permissions.c, lib/stdio.in.h:
30099         * m4/acl.m4, m4/pthread_sigmask.m4, m4/readlinkat.m4: Copy from gnulib.
30100         * lib/gnulib.mk: Regenerate.
30102 2015-06-06  Juri Linkov  <juri@linkov.net>
30104         * lisp/progmodes/grep.el (zrgrep): Let-bind grep-highlight-matches
30105         before calling grep-compute-defaults because now it affects the
30106         command lines computed in grep-compute-defaults.  (Bug#20728)
30108 2015-06-06  Glenn Morris  <rgm@gnu.org>
30110         Address some compilation warnings.
30111         * lisp/international/mule-cmds.el (w32-get-console-codepage)
30112         (w32-get-console-output-codepage):
30113         * lisp/progmodes/elisp-mode.el (xref-collect-references):
30114         * lisp/version.el (cairo-version-string): Declare.
30115         * lisp/erc/erc.el (erc-nickname-in-use): Fix typo.
30117 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
30119         Fix display when a font claims large values of ascent and descent
30120         This fixes bug#20628.
30121         * src/xdisp.c (get_phys_cursor_geometry): Correct the Y
30122         coordinate of a hollow cursor glyph when the original glyph's
30123         ascent is too small.
30124         (get_font_ascent_descent, normal_char_ascent_descent)
30125         (normal_char_height): New functions.
30126         (handle_single_display_spec, append_space_for_newline)
30127         (calc_pixel_width_or_height, produce_stretch_glyph)
30128         (calc_line_height_property): Use normal_char_ascent_descent and
30129         normal_char_height.
30130         (x_produce_glyphs): When font-global values of ascent and descent
30131         are too large, use per-character glyph metrics instead, if
30132         possible.  But don't allow the glyph row's ascent and descent
30133         values become smaller than the values from the metrics of the
30134         font's "normal" character.
30135         * src/xftfont.c (xftfont_draw):
30136         * src/w32font.c (w32font_draw): Correct the values of ascent and
30137         descent used to draw glyphless characters' hex code in a box.
30138         * src/xterm.c (x_draw_glyph_string_background):
30139         * src/xdisp.c (x_produce_glyphs):
30140         * src/w32term.c (x_draw_glyph_string_background):
30141         * src/nsterm.m (ns_maybe_dumpglyphs_background): Use FONT_TOO_HIGH
30142         to detect fonts whose global ascent and descent values are too
30143         large to be used in layout decision, and redraw the background
30144         when that happens.
30145         * src/dispextern.h (FONT_TOO_HIGH): New macro.
30146         (get_font_ascent_descent): Add prototype.
30147         * src/xterm.c (x_new_font):
30148         * src/w32term.c (x_new_font):
30149         * src/nsterm.m (x_new_font):
30150         * src/font.c (font_open_entity):
30151         * src/composite.c (composition_gstring_width):
30152         Use get_font_ascent_descent to obtain reasonable values for ascent
30153         and descent of a font.
30155 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
30157         Add assertion in adjust_point_for_property
30158         * src/keyboard.c (adjust_point_for_property): Add eassert for
30159         current buffer being shown in selected window.
30161 2015-06-06  Dmitry Gutov  <dgutov@yandex.ru>
30163         Replace uses of in-string-p; make it obsolete
30164         * lisp/thingatpt.el (in-string-p): Declare obsolete (bug#20732).
30165         (end-of-sexp, beginning-of-sexp): Use syntax-ppss instead.
30167 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
30169         Fix Dired display of an explicit list of files by ls-lisp.el
30170         * lisp/ls-lisp.el (ls-lisp-uid-d-fmt, ls-lisp-uid-s-fmt)
30171         (ls-lisp-gid-d-fmt, ls-lisp-gid-s-fmt): Make the initial values be
30172         correct for when displaying individual files separately, not as
30173         part of listing a directory, in which case these values are not
30174         recomputed by 'ls-lisp-insert-directory', but used verbatim.
30176         * lisp/dired.el (dired): Doc fix.  (Bug#20739)
30178 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
30180         Do not adjust point in a non-selected window
30181         * src/keyboard.c (command_loop_1): Do not adjust point when
30182         current buffer is not shown in selected window (Bug#20590).
30184         * etc/DEBUG: Mention 'maybe_call_debugger'
30186 2015-06-05  Nicolas Petton  <nicolas@petton.fr>
30188         Fix a unit test for map.el
30189         * test/automated/map-tests.el (test-map-let): Fix the test to work
30190         with the new syntax of `map-let'.
30192         * lisp/emacs-lisp/map.el (map-let): Better docstring.
30194         Better syntax for the map pcase pattern
30195         * lisp/emacs-lisp/map.el: Improves the map pcase pattern to take
30196         bindings of the form (KEY PAT) or SYMBOL.  KEY is not quoted.
30198         * lisp/emacs-lisp/map.el (map--dispatch): Better docstring.
30200         Fix a byte-compiler error in map-put and map-delete
30201         * lisp/emacs-lisp/map.el (map-put, map-delete): Ensure that `setq' is
30202         called with a symbol.
30204 2015-06-05  Glenn Morris  <rgm@gnu.org>
30206         * admin/gitmerge.el (gitmerge-commit-message):
30207         Revert to including "skipped" messages in ChangeLog once again.
30209 2015-06-05  Tassilo Horn  <tsdh@gnu.org>
30211         Use string> instead of equiv lambda with string<
30212         * lisp/help.el (view-emacs-news): Use string> instead of equivalent
30213         lambda with string<.
30215 2015-06-05  Glenn Morris  <rgm@gnu.org>
30217         * lisp/emacs-lisp/map.el (map--dispatch): Move before use.
30218         (map--delete-array): Fix typo.
30220         * test/automated/map-tests.el: Replace "assert" with "should".
30222         * lisp/Makefile.in (SUBDIRS): Rename from SUBDIRS_ABS.
30223         (SUBDIRS_REL): Derive from SUBDIRS.
30225         Tweak some build messages.
30226         * lisp/Makefile.in ($(lisp)/loaddefs.el):
30227         * lisp/cus-dep.el (custom-make-dependencies):
30228         * lisp/finder.el (finder-compile-keywords): Say what we are doing.
30229         * lisp/international/titdic-cnv.el (batch-titdic-convert):
30230         Don't say how to compile.
30232 2015-06-05  Paul Eggert  <eggert@cs.ucla.edu>
30234         Omit U+0332 COMBINING LOW LINE in previous change
30235         It turns out that it does not work on Ubuntu 15.04.
30237         Fix transliteration of Bahá'í months
30238         * lisp/calendar/cal-bahai.el (calendar-bahai-month-name-array):
30239         Improve quality of Latin transliteration of Bahá'í month names.
30241         Fix curved quotes in a few places
30242         * lisp/calc/calc-misc.el (calc-help): Fix quoting.
30243         The strings in question are not doc strings, so this partially
30244         undoes the recent change that assumed they were doc strings.
30245         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
30246         * lisp/info.el (Info-finder-find-node):
30247         Use curved quotes.
30248         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
30249         Also allow curved quotes in doc strings.
30251 2015-06-04  Glenn Morris  <rgm@gnu.org>
30253         * lisp/Makefile.in (AM_V_at): Add missing definition.
30255         * lisp/Makefile.in: Quieten output a bit.
30256         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el):
30257         Don't echo directories, since the commands we invoke print them.
30259         * lisp/Makefile.in: Replace shell fragments in variables with $(shell).
30260         (SUBDIRS_REL, SUBDIRS_ABS, SUBDIRS_ALMOST, SUBDIRS_FINDER)
30261         (SUBDIRS_SUBDIRS): New variables.
30262         (setwins, setwins_almost, setwins_finder, setwins_for_subdirs):
30263         Remove.
30264         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el, $(lisp)/loaddefs.el)
30265         (update-subdirs, compile-main, compile-clean):
30266         Replace "setwins" usage with new "SUBDIRS" variables.
30268         * lisp/vc/compare-w.el (compare-windows-get-window-function):
30269         Fix :version tag.
30271 2015-06-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
30273         * src/ftfont.c (ftfont_open2): Round divisions by upEM.
30275         Undo removal of x_clear_area call on expose for GTK3 or cairo
30276         * src/xterm.c (handle_one_xevent) [HAVE_GTK3 || USE_CAIRO]:
30277         Clear exposed area.  (Bug#20677)
30279 2015-06-04  Glenn Morris  <rgm@gnu.org>
30281         * doc/lispref/hash.texi (Creating Hash): Remove obsolete makehash.
30283         * lisp/Makefile.in (check-defun-dups): Also skip ldefs-boot.
30285         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
30286         Rename from quail-lao-update-translation, since lao.el defines that.
30288 2015-06-04  Dmitry Gutov  <dgutov@yandex.ru>
30290         Handle new-style advice in find-funct
30291         * lisp/emacs-lisp/find-func.el (find-function-advised-original):
30292         Handle new-style advice.  Return the symbol's function definition.
30293         (Bug#20718)
30294         (find-function-library): Update accordingly.
30296 2015-06-04  Nicolas Petton  <nicolas@petton.fr>
30298         Merge branch 'map'
30300         * lisp/emacs-lisp/map.el: Better docstring for the map pcase macro.
30302         Add new function string-greaterp
30303         * lisp/subr.el (string-greaterp): New function.  Also aliased to
30304         `string>'.
30305         * test/automated/subr-tests.el (string-comparison-test): Add unit
30306         tests for `string>'and `string<'.
30307         * src/fns.c (string-lessp): Better docstring.
30309 2015-06-04  Eli Zaretskii  <eliz@gnu.org>
30311         Fix timezone-related functions on MS-Windows
30312         * src/editfns.c (set_time_zone_rule) [WINDOWSNT]: Always call
30313         'xputenv', even if no reallocation of tzvalbuf was necessary.
30314         This fixes a bug in timezone-related functions on MS-Windows.
30315         Reported by Fabrice Popineau <fabrice.popineau@gmail.com>.
30317 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
30319         Don't pass raw directory name to 'error'
30320         * lisp/files.el (basic-save-buffer-2): Avoid format error if
30321         a directory name contains a string like "%s".
30323 2015-06-03  Dmitry Gutov  <dgutov@yandex.ru>
30325         Override 'grep --color=always'
30326         * lisp/progmodes/xref.el (xref-collect-matches):
30327         Override --color=always in grep-find-template.
30329 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
30331         Fix error introduced recently in file-notify-tests.el
30332         * test/automated/file-notify-tests.el
30333         (file-notify--test-remote-enabled): Do not use `file-notify--test-desc'.
30334         (file-notify--deftest-remote): Revert previous patch, not
30335         necessary anymore.
30337 2015-06-03  Wolfgang Jenkner  <wjenkner@inode.at>
30339         * src/indent.c (Fvertical_motion): Amend motion by 0 lines.
30340         Starting from a display string after a newline, point went to the
30341         previous line.  Also, fix an inadvertent use of a buffer position
30342         with FETCH_BYTE.  (Bug#20701)
30344 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
30346         Instrument file-notify-test.el in order to catch hydra error
30347         * test/automated/file-notify-tests.el (file-notify--deftest-remote):
30348         Wrap body by `ignore-case', in order to trap non-local errors.
30350 2015-06-03  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
30352         Undo previous changes in non-toolkit scroll bar drawing
30353         * src/xterm.c (x_scroll_bar_set_handle, x_scroll_bar_expose)
30354         [!USE_TOOLKIT_SCROLL_BARS]: Draw into scroll bar window.  (Bug#20668)
30356 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
30358         * .gitignore: Also ignore doc/*/*/*.html and .ps.
30360         Support quotes 'like this' in info files
30361         This is possible when 'makeinfo --disable-encoding' is used
30362         in Texinfo 5.
30363         * lisp/calc/calc-help.el (calc-describe-thing):
30364         * lisp/gnus/gnus-art.el (gnus-button-alist):
30365         * lisp/info.el (Info-find-index-name):
30366         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
30367         Also support quotes 'like this'.
30368         * lisp/calc/calc-help.el (calc-describe-thing): Simplify.
30369         * lisp/finder.el (finder-font-lock-keywords): Remove var that
30370         hasn't been used in years, instead of bothering to fix its quoting.
30372 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
30374         * .gitignore: Remove !test/etags/html-src/*.html.
30375         It's no longer needed, since *.html was removed.  Sort.
30377 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
30379         Restore <D> instead of '.' in grep-find-template
30380         * lisp/cedet/semantic/symref/grep.el
30381         (semantic-symref-grep-use-template): Update a comment.
30382         * lisp/progmodes/grep.el (grep-compute-defaults): Restore <D>
30383         instead of '.' in grep-find-template (bug#20719).
30384         (rgrep): Pass nil as the directory to rgrep-default-command.
30385         * lisp/progmodes/grep.el (grep-expand-keywords): Use '.' as the
30386         default value for DIR.
30387         * lisp/progmodes/xref.el (xref-collect-matches): Drop the
30388         workaround.
30390 2015-06-02  Glenn Morris  <rgm@gnu.org>
30392         * configure.ac (emacs_config_features): Add X toolkit and scroll-bars.
30394         * configure.ac (emacs_config_features): Add Cairo.
30396         * configure.ac [HAVE_GTK3]: Remove USE_CAIRO that gets reset later.
30398 2015-06-02  Michael Albinus  <michael.albinus@gmx.de>
30400         Ensure that autorevert works for remote files in file-notify-tests.el
30401         * test/automated/file-notify-tests.el (file-notify--test-desc):
30402         New defvar.
30403         (file-notify--test-remote-enabled)
30404         (file-notify-test00-availability, file-notify-test01-add-watch)
30405         (file-notify-test02-events): Use it.
30406         (file-notify--test-event-test): Check proper descriptor.
30407         (file-notify-test03-autorevert): Ensure that
30408         `visited-file-modtime' has changed.  (Bug#20392)
30410 2015-06-02  Nicolas Petton  <nicolas@petton.fr>
30412         Add a pcase pattern for maps and `map-let' based on it
30413         * lisp/emacs-lisp/map.el (map-let): New macro.
30414         (map--make-pcase-bindings, map--make-pcase-patterns): New functions.
30415         * test/automated/map-tests.el: New test for `map-let'.
30417 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
30419         Reuse rgrep mechanics in xref-find-regexp
30420         * lisp/progmodes/grep.el (rgrep-default-command):
30421         Extract from `rgrep'.
30422         * lisp/progmodes/xref.el (xref-collect-references): Split from
30423         `xref-collect-matches'.  Only handle the case of symbol search.
30424         (xref-collect-matches): Instead of Semantic Symref, use
30425         `rgrep-default-command', to take advantage of its directory and
30426         file ignore settings.
30427         (xref--collect-match): Remove the last argument, leaving the
30428         regexp construction up to the caller.
30429         * lisp/progmodes/elisp-mode.el (elisp--xref-find-matches):
30430         Change to take the xref-collect- function to use as an argument.
30431         (elisp-xref-find): Update accordingly.
30432         * lisp/progmodes/etags.el (etags--xref-find-matches)
30433         (etags-xref-find): Same.
30435         Move xref-elisp-location to elisp-mode.el
30436         * lisp/progmodes/xref.el (xref-elisp-location)
30437         (xref-make-elisp-location, xref-location-marker): Remove here.
30438         (xref--xref): Don't limit the type of the location slot.
30439         * lisp/progmodes/elisp-mode.el (xref-elisp-location):
30440         Define as a cl-struct here.
30441         (xref-location-marker): Move here.
30443 2015-06-02  Eli Zaretskii  <eliz@gnu.org>
30445         Minor tweaks for .gitignore
30446         * .gitignore: Don't ignore versioned *.html and *.ps files.
30447         Don't ignore admin/notes/tags that might be ignored as TAGS
30448         on case-insensitive filesystems.  (Bug#20710)
30450 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
30452         Generate curved quotes in ert doc
30453         * lisp/emacs-lisp/ert.el (ert--print-test-for-ewoc)
30454         (ert-results-mode-menu)
30455         (ert-results-pop-to-backtrace-for-test-at-point)
30456         (ert-results-pop-to-messages-for-test-at-point)
30457         (ert-results-pop-to-should-forms-for-test-at-point)
30458         (ert-describe-test):
30459         Quote ‘like this’, not `like this', when generating doc strings
30460         and the like.
30461         * test/automated/ert-x-tests.el (ert-test-describe-test):
30462         Allow quoting ‘like this’.
30464 2015-06-02  Nicolas Richard  <youngfrog@members.fsf.org>
30466         Add test for previous commit
30467         * test/automated/replace-tests.el: New file.
30468         (query-replace--split-string-tests): Add test for previous commit.
30470         Avoid confusion in query-replace history when replacing NUL chars
30471         * lisp/replace.el (query-replace--split-string): New function.
30472         (query-replace-read-from): Rely on the 'separator' property
30473         instead of searching for the NUL character (Bug#20690).
30475 2015-06-02  Glenn Morris  <rgm@gnu.org>
30477         Merge from origin/emacs-24
30478         8b5f2f4 * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
30480         * admin/gitmerge.el (gitmerge-commit-message):
30481         Exclude "skipped" messages from ChangeLog.
30483 2015-06-01  Michael Albinus  <michael.albinus@gmx.de>
30485         Sync with Tramp repository
30486         * lisp/net/tramp.el (tramp-message): Dump connection buffer error
30487         messages.
30488         (tramp-handle-make-auto-save-file-name): When calling
30489         `make-auto-save-file-name' internally, make sure it uses Unix-like
30490         behavior, not Windows-like behavior.
30491         * lisp/net/tramp-sh.el (tramp-set-file-uid-gid): Add a timeout for
30492         the local case, because "chown" might fail on w32.
30493         * lisp/net/trampver.el (tramp-repository-get-version): Don't run
30494         for XEmacs.
30496 2015-06-01  Eli Zaretskii  <eliz@gnu.org>
30498         MS-Windows followup for batch stdout/stderr output changes
30499         * lisp/international/mule-cmds.el (set-locale-environment):
30500         In batch mode, use console codepages for keyboard and terminal
30501         encoding.  (Bug#20545)
30503         Update .gitattributes for DOS EOL files
30504         * .gitattributes: Use "whitespace=cr-at-eol" for files with DOS
30505         CRLF end-of-line format.
30507         NS equivalents of xterm.c and w32term.c changes
30508         * src/nsterm.m (ns_maybe_dumpglyphs_background): Force redraw of
30509         glyph string background also when the font in use claims
30510         preposterously large global height value.  Helps to remove
30511         artifacts left from previous displays when glyphless characters
30512         are displayed as hex code in a box.
30513         (x_new_font): Call get_font_ascent_descent to obtain a reasonable
30514         value for FRAME_LINE_HEIGHT, even when a font claims very large
30515         value for its height.
30517 2015-06-01  Paul Eggert  <eggert@cs.ucla.edu>
30519         Avoid grave accent quoting in stderr diagnostics
30520         A few Emacs diagnostics go directly to stderr, and so can't easily
30521         contain curved quotes (as non-UTF-8 locales might mishandle them).
30522         Instead of bothering to add support for this rarity, reword the
30523         diagnostics so that they don't use grave accent to quote.
30524         * src/alloc.c (mark_memory): Fix comment.
30525         * src/buffer.c (init_buffer):
30526         * src/dispnew.c (init_display):
30527         * src/emacs.c (main, sort_args):
30528         * src/lread.c (dir_warning):
30529         * src/term.c (init_tty):
30530         * src/unexmacosx.c (unexec):
30531         * src/xfns.c (select_visual):
30532         * src/xterm.c (cvt_string_to_pixel, x_io_error_quitter):
30533         Reword stderr diagnostics to avoid quoting `like this'.
30534         * src/unexmacosx.c: Include errno.h.
30535         * src/xfns.c (select_visual): Encode value for locale.
30537 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
30539         Treat batch stdout/stderr like standard display
30540         Calls like (print FOO) could generate improperly encoded or
30541         hard-to-read output if FOO contains characters outside the system
30542         locale.  Fix this by treating batch stdout and stderr like
30543         interactive standard display, when it comes to transliterating and
30544         encoding characters (Bug#20545).
30545         * doc/emacs/mule.texi (Communication Coding):
30546         * doc/lispref/display.texi (Active Display Table):
30547         * doc/lispref/nonascii.texi (Locales):
30548         * etc/NEWS:
30549         * src/coding.c (syms_of_coding):
30550         * src/dispnew.c (syms_of_display):
30551         Document this.
30552         * src/print.c: Include disptab.h.
30553         (printchar_to_stream): New function, with much of the guts of the
30554         old Fexternal_debugging_output, except this one also uses the
30555         standard display table.
30556         (printchar, strout, Fexternal_debugging_output): Use it.
30558 2015-05-31  Glenn Morris  <rgm@gnu.org>
30560         * src/emacs.c (syms_of_emacs) <system-configuration-features>: Doc fix.
30562 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
30564         Remove DEFSYMs that aren't used at the C level.  Also:
30565         * src/decompress.c (Qzlib_dll):
30566         * src/font.c (Qunicode_sip):
30567         * src/frame.c (Qtip_frame):
30568         * src/ftfont.c (Qserif):
30569         * src/gnutls.c (Qgnutls_dll):
30570         * src/xml.c (Qlibxml2_dll):
30571         Move from here ...
30572         * src/w32fns.c (syms_of_w32fns): ... to here,
30573         as these are used only on MS-Windows.
30575 2015-05-31  Michael Albinus  <michael.albinus@gmx.de>
30577         Use another default value for tramp-histfile-override
30578         * lisp/net/tramp-sh.el (tramp-histfile-override):
30579         Use ".tramp_history" as default.
30580         Fixes bug#20446
30582 2015-05-29  Nicolas Petton  <nicolas@petton.fr>
30584         * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
30586 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
30588         * etc/NEWS: Add an entry about map.el.
30590         Improve the docstring of functions in map.el
30591         Since a map is not a data structure but a concept, adding information
30592         about the possible types of maps can be useful information.
30593         * lisp/emacs-lisp/map.el: Add documentation about the type of MAP to
30594         each public function.
30596 2015-04-29  Nicolas Petton  <nicolas@petton.fr>
30598         * lisp/emacs-lisp/map.el (map-empty-p): Faster implementation using
30599         specific tests depending on the type of the map.
30601         * lisp/emacs-lisp/map.el: Better docstrings.
30603 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
30605         * lisp/emacs-lisp/map.el (map-pairs): Dump redundant lambda.
30607 2015-04-25  Nicolas Petton  <nicolas@petton.fr>
30609         * lisp/emacs-lisp/map.el (map--elt-list): Better docstring.
30611         * lisp/emacs-lisp/map.el (map--elt-list): Minor refactoring.
30613         Fix a false negative in `map-elt' with alists and values being nil
30614         * lisp/emacs-lisp/map.el (map-elt): If map is an alist and key is
30615         found but its associated value is nil, do not return the default
30616         value.
30617         * test/automated/map-tests.el: Add a regression test.
30619 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
30621         * lisp/emacs-lisp/map.el (map--dispatch): Improve the docstring.
30623         Do not signal an error when trying to delete a key from an array
30624         * lisp/emacs-lisp/map.el (map-delete): When map is an array, check if
30625         the key is present to avoid signaling an error.
30626         * test/automated/map-tests.el: Add a test for deleting non-existing
30627         keys from maps.
30629         * lisp/emacs-lisp/map.el: Better docstring.
30631         Minor improvement in map-elt
30632         * lisp/emacs-lisp/map.el (map-elt): Do not use `ignore-errors' when
30633         doing a lookup in arrays, but check the boundaries of the array
30634         instead.
30635         * test/automated/map-tests.el: Adds a test for `map-elt' with arrays
30636         and a negative integer as key.
30638 2015-04-21  Nicolas Petton  <nicolas@petton.fr>
30640         * test/automated/map-tests.el: Refactoring of test methods.
30642         * test/automated/map-tests.el: Renamed from map-test.el.
30644 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
30646         * lisp/emacs-lisp/map.el (map-into): Better error message.
30648         * lisp/emacs-lisp/map.el: Remove byte-compilation warnings.
30650         Throw an error when converting a map into an unknown map type
30651         * lisp/emacs-lisp/map.el (map-into): Throw an error if type is
30652         not valid.
30653         * test/automated/map-tests.el: Add a regression test.
30655         New library map.el similar to seq.el but for mapping data structures.
30656         * test/automated/map-tests.el: New file.
30657         * lisp/emacs-lisp/map.el: New file.
30659 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
30661         * lisp/progmodes/etags.el (tag-implicit-name-match-p): Make sure
30662         there's no explicit tag name (bug#20629).
30664 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
30666         Remove format2
30667         * src/editfns.c, src/lisp.h (format2): Remove.
30668         It is more trouble than it's worth, now that we have CALLN.
30669         This is just a minor refactoring.
30670         * src/buffer.c (Fkill_buffer):
30671         * src/dbusbind.c (XD_OBJECT_TO_STRING):
30672         * src/fileio.c (barf_or_query_if_file_exists):
30673         Adjust to format2 going away.
30675         Don't misencode C-generated messages
30676         Also, be more consistent about calls to 'Fmessage' vs 'message'.
30677         * src/alloc.c (Fgc_status):
30678         Prefer AUTO_STRING to build_string for Fmessage call.
30679         * src/data.c (Fmake_variable_buffer_local)
30680         (Fmake_local_variable, Fmake_variable_frame_local):
30681         * src/doc.c (store_function_docstring):
30682         Use Fmessage, not message, since the argument can contain
30683         non-ASCII characters, and this can cause the resulting message
30684         to be incorrectly encoded for the current environment.
30685         * src/fns.c (maybe_resize_hash_table):
30686         * src/xselect.c (x_clipboard_manager_save_all):
30687         Use message, not Fmessage, since Fmessage's power isn't needed here.
30688         * src/process.c (Fmake_network_process): Reword message to avoid %s.
30689         * src/xdisp.c (vmessage): Document restrictions on message contents.
30690         (message_nolog) [false]: Remove unused code.
30692         Use \r rather than ^M in string literals
30693         This is less likely to cause problems on platforms that
30694         use CRLF (or CR!) termination for lines.
30696         Update .gitattributes to match current sources
30697         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00879.html
30698         * .gitattributes: Accommodate tests that insist on DOS format.
30699         Remove test/automated/data/decompress/foo-gzipped.
30700         Add etc/e/eterm-color.
30702 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
30704         * doc/emacs/mule.texi (Modifying Fontsets):
30705         Document face-ignored-fonts.  (Bug#20628)
30707         Add etags test for the new -Q option
30708         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
30709         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
30710         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
30711         test-case changes below.
30712         * test/etags/ETAGS.good_6: New file.
30713         * test/etags/cp-src/x.cc: New file.
30714         * test/etags/Makefile (CPSRC): Add x.cc.
30715         (check): Add one more test, for -Q.
30717 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
30719         Use list for the tags completion table, not obarray
30720         * lisp/progmodes/etags.el (etags-tags-completion-table): Return a
30721         list instead of an obarray
30722         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00876.html).
30723         (tags-completion-table): Combine those lists.
30724         (tags-completion-table): Update the docstring.
30726 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
30728         Restore EOL format testing in etags
30729         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
30730         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
30731         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
30732         test-case changes below.
30733         * test/etags/html-src/algrthms.html: Convert back to DOS EOL format.
30734         * test/etags/cp-src/c.C (B): Add back stray CR character.
30735         * test/etags/c-src/dostorture.c: Add back.
30736         * test/etags/Makefile (CSRC): Add back c-src/dostorture.c.
30738 2015-05-30  Vitaly Takmazov  <vitalyster@gmail.com>  (tiny change)
30740         Declare Emacs on MS-Windows to be DPI-aware
30741         * nt/emacs-x86.manifest (asmv3:windowsSettings): Add dpiAware.
30742         * nt/emacs-x64.manifest (asmv3:windowsSettings): Add dpiAware.
30743         This avoids Windows entering compatibility mode for Emacs,
30744         which causes fonts to look less nice.
30746 2015-05-30  Michael Albinus  <michael.albinus@gmx.de>
30748         Improve Tramp traces
30749         * lisp/net/trampver.el (tramp-repository-get-version): New defun.
30750         * lisp/net/tramp.el (tramp-debug-message): Use it.
30752 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
30754         backup-buffer minor reworking of internals
30755         * lisp/files.el (backup-buffer): Rework to avoid a couple of
30756         unused locals inadvertently introduced in the previous change.
30758         backup-buffer now reports .emacs.d/%backup% ills
30759         * lisp/files.el (backup-buffer): If the write to .emacs.d/%backup%
30760         fails due to disk space exhaustion or whatever, do not pretend
30761         that it succeeded.  More generally, do a better job of checking
30762         for I/O failures, and limit the scope of the condition-case to
30763         just the operations where file errors should be caught and ignored
30764         (Bug#20595).  Also, don't bother trying to delete later backups if
30765         an earlier deletion fails, as this is a sign of trouble and it's
30766         better to stop when there's trouble.
30768         copy-file now truncates output after writing
30769         * src/fileio.c (Fcopy_file): Truncate output after writing rather
30770         than before.  This is more likely to work than truncation before
30771         writing, if the file system is out of space or the user is over
30772         disk quota (Bug#20595).  Also, check for read errors.
30774 2015-05-29  Artur Malabarba  <bruce.connor.am@gmail.com>
30776         * lisp/emacs-lisp/package.el (package-load-all-descriptors):
30777         Don't load descriptors from directories above the package directories.
30779 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
30781         Merge from gnulib
30782         This incorporates the following (Bug#20681):
30783         2015-05-29 acl-permissions: Fix build on Mac OS X and older AIX
30784         2015-05-29 acl-permissions: Fix build on Solaris and Cygwin
30785         * lib/set-permissions.c: Copy from gnulib.
30787 2015-05-29  Michael Albinus  <michael.albinus@gmx.de>
30789         Improve Tramp traces
30790         * lisp/net/tramp.el (tramp-call-process-region): New defun.
30791         * lisp/net/tramp-sh.el (tramp-get-inline-coding): Use it.
30793 2015-05-29  Glenn Morris  <rgm@gnu.org>
30795         * test/automated/vc-tests.el: Try enabling tests on hydra.nixos.org.
30797 2015-05-29  Wolfgang Jenkner  <wjenkner@inode.at>
30799         * src/xfns.c (x_set_menu_bar_lines): Fix calls to x_clear_area.
30800         The signature was changed in the cairo branch, merged on 2015-05-23.
30801         This oversight broke compiling only the non-toolkit X version.
30803 2015-05-29  Samer Masterson  <samer@samertm.com>
30805         * doc/lispref/os.texi: Update initial-buffer-choice docs.
30807 2015-05-29  Glenn Morris  <rgm@gnu.org>
30809         * test/automated/vc-tests.el (vc-test-rcs04-checkout-model):
30810         Mark as an expected failure.
30812 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
30814         Change package test to look for curved quotes
30815         * test/automated/package-test.el (package-test-describe-package)
30816         (package-test-signed): Search for curved single quotes as well as
30817         for grave accent and apostrophe.
30819 2015-05-28  Katsumi Yamaoka  <yamaoka@jpl.org>
30821         * lisp/gnus/gnus-art.el (gnus-button-alist): Re-revert last change.
30822         cf. <http://news.gmane.org/group/gmane.emacs.devel/thread=186896>
30824 2015-05-28  Samer Masterson  <samer@samertm.com>
30826         Show files when `initial-buffer-choice' is non-nil
30827         * lisp/startup.el (command-line-1): When Emacs is given a file as an
30828         argument and `initial-buffer-choice' is non-nil, display both the file
30829         and `initial-buffer-choice'.  For more than one file, show
30830         `initial-buffer-choice' and *Buffer List*.  Refactor display-changing
30831         commands out of the command line arg parser.
30832         (initial-buffer-choice): Clarify docstring.
30834 2015-05-28  Eli Zaretskii  <eliz@gnu.org>
30836         Fix last commit
30837         * nt/gnulib.mk (libgnu_a_SOURCES): Add get-permissions.c back.
30838         (gnulib module qcopy-acl): Add back, as it is harmless.  This
30839         minimizes differences wrt lib/gnulib.mk.
30841         Fix the MS-Windows build as followup to gnulib update
30842         * nt/gnulib.mk (libgnu_a_SOURCES): Remove get-permissions.c and
30843         set-permissions.c, as they don't compile on MinGW.
30844         (gnulib module qcopy-acl): Remove, as it needs set-permissions.c.
30846 2015-05-28  Paul Eggert  <eggert@cs.ucla.edu>
30848         Revert my change to gnus-art.el
30849         * lisp/gnus/gnus-art.el (gnus-button-alist): Revert last change.
30850         It wasn't that important, and it caused a Gnus build to fail.  See:
30851         http://www.randomsample.de:4456/builders/emacs-devel/builds/734
30853         New minor mode Electric Quote
30854         This lets you easily insert quotes ‘like this’ by typing
30855         quotes `like this', and similarly you can easily insert
30856         quotes “like this” by typing quotes ``like this'' (Bug#20545).
30857         * doc/emacs/basic.texi (Inserting Text):
30858         * doc/emacs/modes.texi (Minor Modes):
30859         * etc/NEWS: Document it.
30860         * doc/emacs/text.texi (Quotation Marks): New section.
30861         * lisp/electric.el (electric-quote-comment)
30862         (electric-quote-string, electric-quote-paragraph):
30863         New custom vars.
30864         (electric--insertable-p)
30865         (electric-quote-post-self-insert-function): New functions.
30866         (electric-quote-mode, electric-quote-local-mode): New minor modes.
30867         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
30868         Add curved single quotes to electric-pair-text-pairs.
30869         Set electric-quote-string in this buffer.
30871         A few more doc string fixes (Bug#20385)
30873         Accept curved quotes in doc strings
30874         * lisp/info-look.el (info-lookup-guess-custom-symbol):
30875         (info-lookup-alist): Treat ‘’ like `' when parsing help buffers etc.
30877         Generate curved quotes in pseudo-info nodes
30878         * lisp/info.el (Info-virtual-index-find-node)
30879         (Info-virtual-index, Info-apropos-find-node, info-apropos):
30880         Quote ‘like this’, not `like this', when generating pseudo-info nodes.
30882         Fix minor quoting problems in doc strings
30883         Most of these fixes involve escaping grave accents that are
30884         actually intended to be grave accents, not left quotes.
30885         (Bug#20385)
30887         Support curved quotes in doc strings
30888         Emacs's traditional doc string style has been to quote symbols
30889         `like this'.  This worked well on now-obsolete terminals where
30890         ` and ' were symmetric quotes, but nowadays curved quotes
30891         ‘like this’ look better.  Support quoting the new way too.
30892         (Bug#20385)
30893         * doc/lispref/tips.texi (Documentation Tips): Symbols can be quoted
30894         ‘like-this’ as well as `like-this'.
30895         * etc/NEWS: Mention this.
30896         * lisp/cedet/mode-local.el (overload-docstring-extension)
30897         (mode-local-print-binding, mode-local-describe-bindings-2):
30898         * lisp/cus-theme.el (describe-theme-1):
30899         * lisp/descr-text.el (describe-text-properties-1, describe-char):
30900         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
30901         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
30902         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
30903         (eieio-help-constructor):
30904         * lisp/emacs-lisp/package.el (describe-package-1):
30905         * lisp/faces.el (describe-face):
30906         * lisp/help-fns.el (help-fns--key-bindings)
30907         (help-fns--compiler-macro, help-fns--parent-mode, help-fns--obsolete):
30908         (help-fns--interactive-only, describe-function-1):
30909         (describe-variable):
30910         * lisp/help.el (describe-mode):
30911         * lisp/international/mule-cmds.el (describe-input-method)
30912         (describe-language-environment):
30913         * lisp/international/mule-diag.el (describe-character-set)
30914         (print-coding-system-briefly, list-input-methods)
30915         (list-input-methods-1):
30916         Insert curved quotes rather than grave accent and apostrophe.
30917         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
30918         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
30919         (checkdoc-proper-noun-region-engine):
30920         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2)
30921         (lisp-cl-font-lock-keywords-2):
30922         * lisp/finder.el (finder-font-lock-keywords):
30923         * lisp/gnus/gnus-art.el (gnus-button-alist):
30924         * lisp/help-fns.el (help-do-arg-highlight)
30925         (describe-function-1, describe-variable):
30926         * lisp/help-mode.el (help-xref-symbol-regexp)
30927         (help-xref-info-regexp, help-xref-url-regexp):
30928         * lisp/help.el (describe-mode):
30929         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
30930         * lisp/wid-edit.el (widget-documentation-link-regexp):
30931         Parse symbols quoted ‘like-this’ as well as `like-this'.
30932         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
30933         Add "‘" and "’" to electric-pair-text-pairs.
30934         (elisp--form-quoted-p): Also allow "‘" as a quoting char.
30935         (elisp-completion-at-point, elisp--preceding-sexp):
30936         Also treat "‘" and "’" as quoting chars.
30938         substitute-command-keys now curves quotes
30939         So, for example, it turns "`abc'" into "‘abc’" (Bug#20385).
30940         * doc/lispref/help.texi (Keys in Documentation):
30941         * etc/NEWS: Document this.
30942         * src/doc.c (Fsubstitute_command_keys): Implement it.
30944 2015-05-28  Glenn Morris  <rgm@gnu.org>
30946         * lisp/mail/rmailsum.el (rmail-summary-by-recipients)
30947         (rmail-summary-by-topic, rmail-summary-by-senders):
30948         No longer strip leading/trailing whitespace.
30950         * lisp/progmodes/f90.el (f90-type-def-re): Add "type, extends".
30951         (f90-no-block-limit): Add "enum".  (Bug#20680)
30952         * test/automated/f90.el (f90-test-bug20680, f90-test-bug20680b):
30953         New tests.
30955 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
30957         * lisp/isearch.el (isearch--current-buffer): Give a default value.
30958         Un-revert changes mistakenly dropped by f9fabb2b.
30960 2015-05-27  Paul Eggert  <eggert@cs.ucla.edu>
30962         Merge from gnulib
30963         This incorporates:
30964         2015-05-27 qacl: Reimplement qset_acl and qcopy_acl (Bug#20666)
30965         2015-05-27 file-has-acl: Split feature tests again (Bug#20667)
30966         2015-05-27 string: fix build failure on BSD/OSX with FORTIFY_SOURCE
30967         2015-05-26 stdio: limit __gnu_printf__ witness to gcc 4.4+
30968         2015-05-26 inttypes: force correct mingw PRIdMAX even without <stdio.h>
30969         2015-05-26 stdio: fix probe on mingw under gcc 5.1
30970         * admin/merge-gnulib (GNULIB_MODULES):
30971         Replace qacl with qcopy-acl, since we don't need the rest of qacl.
30972         * doc/misc/texinfo.tex, lib/acl-internal.c, lib/acl-internal.h:
30973         * lib/inttypes.in.h, lib/qcopy-acl.c, lib/qset-acl.c:
30974         * lib/string.in.h, m4/acl.m4, m4/stdio_h.m4:
30975         Get latest versions from gnulib.
30976         * lib/get-permissions.c, lib/set-permissions.c: New files.
30977         * lib/gnulib.mk, m4/gnulib-comp.m4:
30978         Regenerate.
30979         * nt/gnulib.mk: Merge lib/gnulib.mk changes by hand.
30981 2015-05-27  Dmitry Gutov  <dgutov@yandex.ru>
30983         * lisp/vc/vc-dispatcher.el (vc-setup-buffer): Delete the old
30984         process here.
30985         (vc-do-command): Rather than here (bug#20608).
30987 2015-05-27  Ivan Shmakov  <ivan@siamics.net>
30989         Avoid gratuitous delete-dups in face-at-point
30990         * lisp/faces.el (face-at-point): Do not compute the properly
30991         ordered, duplicate-free list if only a single value is
30992         requested anyway.  (Bug#20519)
30994         Show the exact C-x 8 RET invocation in describe-char
30995         * lisp/descr-text.el (describe-char): Show the exact C-x 8 RET
30996         invocation instead of a template.  (Bug#20522)
30998 2015-05-27  Artur Malabarba  <bruce.connor.am@gmail.com>
31000         * lisp/emacs-lisp/package.el: Don't erase tags on refresh.
31001         (package-menu--post-refresh): Call `tabulated-list-print' with the
31002         UPDATE argument.  This only affects the refresh action, the revert
31003         action still erases tags.
31004         (package-menu-get-status): Change `assq' to `assoc'.
31005         (package-menu--mark-upgrades-1): New function.
31006         (package-menu--mark-upgrades-pending): New variable.
31007         (package-menu-mark-upgrades): Use them to delay marking until
31008         after refresh is done.
31009         (package-menu--post-refresh): Call mark-upgrades-1 if
31010         mark-upgrades-pending is non-nil.
31012 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
31014         * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
31015         Fix typo in "Improve tramp-handle-make-auto-save-file-name"
31016         (commit 3953c4be2816537be95520605d45b866dc731f4b).
31018 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
31020         * lisp/isearch.el (isearch--current-buffer): New var.
31021         (isearch-update): Set cursor-sensor-inhibit here.
31022         (isearch-done): Unset cursor-sensor-inhibit in the right buffer
31023         (bug#20532).
31025         Change inhibit-point-motion-hooks to t
31026         * src/textprop.c (syms_of_textprop): Default Vinhibit_point_motion_hooks
31027         to t and document it as obsolete.
31029 2015-05-27  Eli Zaretskii  <eliz@gnu.org>
31031         Support ZIP files that use Zip64 extensions
31032         * lisp/arc-mode.el (archive-zip-summarize): Handle the new ZIP
31033         format of central directory offsets used by Zip64 extensions.
31034         (Bug#20665)
31036 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
31038         New test tramp-test30-make-auto-save-file-name
31039         * test/automated/tramp-tests.el
31040         (tramp-test30-make-auto-save-file-name): New test.
31041         (tramp-test31-special-characters)
31042         (tramp-test31-special-characters-with-stat)
31043         (tramp-test31-special-characters-with-perl)
31044         (tramp-test31-special-characters-with-ls, tramp-test32-utf8)
31045         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
31046         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
31047         (tramp-test34-recursive-load, tramp-test35-unload): Rename.
31049         Improve tramp-handle-make-auto-save-file-name
31050         * lisp/net/tramp.el (tramp-auto-save-directory): Add :tags.
31051         (tramp-handle-make-auto-save-file-name): Let native
31052         `make-auto-save-file-name' use `auto-save-file-name-transforms',
31053         if `tramp-auto-save-directory' is not set.
31055 2015-05-27  Glenn Morris  <rgm@gnu.org>
31057         No longer set dired-directory in eshell.  (Bug#16477)
31058         * lisp/eshell/esh-mode.el (eshell-mode):
31059         * lisp/eshell/em-dirs.el (eshell/cd): No longer set dired-directory.
31061         * lisp/mail/sendmail.el (mail-position-on-field): Doc fix.
31063         Make c-submit-bug-report file reports at debbugs.gnu.org.  (Bug#15784)
31064         * lisp/progmodes/cc-mode.el (c-mode-help-address):
31065         Change to submit@debbugs.
31066         (c-mode-bug-package): New constant.
31067         (mail-position-on-field): Declare.
31068         (c-submit-bug-report): Insert X-Debbugs-Package header.
31069         * doc/misc/cc-mode.texi (Mailing Lists and Bug Reports):
31070         Mention debbugs.gnu.org.
31072 2015-05-26  Glenn Morris  <rgm@gnu.org>
31074         * lisp/mail/rmailsum.el: Commas no longer separate regexps.  (Bug#19026)
31075         (rmail-summary-by-recipients, rmail-summary-by-topic)
31076         (rmail-summary-by-senders): No longer use mail-comma-list-regexp.
31077         * doc/emacs/rmail.texi (Rmail Make Summary): Update for this change.
31079 2015-05-26  Paul Eggert  <eggert@cs.ucla.edu>
31081         Handle curved quotes in info files
31082         * lisp/calc/calc-help.el (calc-describe-thing):
31083         * lisp/info.el (Info-find-index-name)
31084         (Info-try-follow-nearest-node, Info-fontify-node):
31085         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
31086         In info files, process quotes ‘like this’ the same way we process
31087         quotes `like this'.  This catches a few places we missed earlier.
31089 2015-05-26  Dmitry Gutov  <dgutov@yandex.ru>
31091         xref-prompt-for-identifier: Use a list value
31092         * lisp/progmodes/xref.el (xref-prompt-for-identifier): Allow list
31093         value, to be interpreted as a list of commands.
31094         (xref--prompt-p): New function.
31095         (xref--read-identifier): Use it.
31097 2015-05-26  Eli Zaretskii  <eliz@gnu.org>
31099         Teach MS-Windows font back-end return per-glyph ascent/descent
31100         * src/w32font.h (struct w32_metric_cache): Add ascent and descent
31101         values.
31102         * src/w32font.c (w32font_text_extents): Compute, cache, and
31103         accumulate per-glyph ascent and descent values, instead of copying
31104         global values from the font.  If the values are not available from
31105         the font data, i.e., non-TTF fonts, fall back on font-global values.
31106         (compute_metrics): Compute and return per-glyph ascent and descent
31107         values, if returned by GetGlyphOutlineW, falling back on
31108         font-global values.  (Bug#20628)
31109         * src/w32term.c (w32_draw_rectangle): Add 1 pixel to width and
31110         height of rectangle to be drawn, to be compatible with
31111         XDrawRectangle.  Fixes glyphless-char display as hex codes in a
31112         box, when per-glyph ascent/descent values are used.
31114 2015-05-26  Artur Malabarba  <bruce.connor.am@gmail.com>
31116         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
31117         Don't sort if sorter is nil.
31119 2015-05-26  Michael Albinus  <michael.albinus@gmx.de>
31121         Fix Bug#20621
31122         * lisp/net/tramp-sh.el (tramp-set-auto-save): Remove it.  There
31123         are major modes which set `auto-save-mode' on their own rules;
31124         Tramp shall not overwrite such settings.
31126 2015-05-26  Glenn Morris  <rgm@gnu.org>
31128         * lisp/desktop.el: If modes aren't autoloaded, try simple guesswork.
31129         (desktop-load-file): Guess that "foobar" defines "foobar-mode".
31130         (desktop-buffer-mode-handlers, desktop-minor-mode-handlers):
31131         Doc updates.
31132         (vc-dir-mode): Remove unnecessary autoload.
31134 2015-05-25  Philipp Stephani  <phst@google.com>
31136         * lisp/term/xterm.el: Add gui-get-selection support via OSC-52.
31137         (xterm--extra-capabilities-type): Add `getSelection'.
31138         (xterm--query): Add `no-async' argument.
31139         (xterm--init-activate-get-selection): New function.
31140         (terminal-init-xterm): Use it.
31141         (xterm--init-modify-other-keys): Rename from
31142         terminal-init-xterm-modify-other-keys.
31143         (xterm--init-bracketed-paste-mode): Rename from
31144         terminal-init-xterm-bracketed-paste-mode.
31145         (xterm--init-activate-set-selection): Rename from
31146         terminal-init-xterm-activate-set-selection.
31147         (xterm--selection-char): New function.
31148         (gui-backend-set-selection): Use it.  Use the &context to only apply
31149         this method in terminals where we enabled the feature.
31150         (gui-backend-get-selection): New method.
31152 2015-05-25  Daniel Colascione  <dancol@dancol.org>
31154         * lisp/progmodes/cc-langs.el (c-constant-kwds): Add C-language
31155         keyword constants to C++.
31157 2015-05-25  Paul Eggert  <eggert@cs.ucla.edu>
31159         Make TAGS files more portable to MS-Windows
31160         * etc/NEWS: Document this.
31161         * lib-src/etags.c (readline_internal) [DOS_NT]:
31162         Don't treat CRs differently from GNUish hosts.
31163         * lisp/progmodes/etags.el (etags-goto-tag-location):
31164         Adjust STARTPOS to account for the skipped CRs in dos-style files.
31166 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
31168         Improve fix of bug#20634 in tramp-sh.el
31170 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
31172         Fix a typo in last commit
31173         * lib-src/etags.c (C_entries): Fix a typo.
31174         * test/etags/ETAGS.good_1:
31175         * test/etags/ETAGS.good_2:
31176         * test/etags/ETAGS.good_3:
31177         * test/etags/ETAGS.good_4:
31178         * test/etags/ETAGS.good_5:
31179         * test/etags/CTAGS.good: Update due to the change in etags.c.
31181         Fix tagging of class members in C-like OO languages
31182         * lib-src/etags.c (longopts): Add new option --class-qualify and
31183         its shorthand -Q.
31184         (print_help): Add help text for --class-qualify.
31185         (main): Add handling of -Q.
31186         (consider_token, C_entries) <omethodparm>: Append argument types
31187         to Objective C methods only if --class-qualify was specified.
31188         Qualify C++, Objective C, and Java class members with their class
31189         names only if --class-qualify was specified.
31190         (C_entries): If --class-qualify was not specified, remove the
31191         namespace and class qualifiers from tag names of C++ methods.
31192         This allows to use etags.el as xref back-end without the
31193         tag-symbol-match-p method, which greatly increases the number of
31194         potentially false positives.  (Bug#20629)
31195         * doc/man/etags.1: Update to document the new --class-qualify
31196         option.
31197         * test/etags/ETAGS.good_1:
31198         * test/etags/ETAGS.good_2:
31199         * test/etags/ETAGS.good_3:
31200         * test/etags/ETAGS.good_4:
31201         * test/etags/ETAGS.good_5:
31202         * test/etags/CTAGS.good: Update due to changes in etags.c.
31204 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
31206         (cl-generic-define-method): Side effects are evil (bug#20644)
31207         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method): Don't reuse
31208         cons-cells that might be used as keys in an `equal' hash-table.
31210 2015-05-25  Lars Magne Ingebrigtsen  <larsi@gnus.org>
31212         Make erc timestamps visible again
31213         * lisp/erc/erc-stamp.el (erc-munge-invisibility-spec):
31214         Make timestamps visible again (if requested).
31216 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
31218         Fix last change in etags.c that broke tagging compresed files
31219         * lib-src/etags.c (process_file_name) [MSDOS || DOS_NT]: Fix
31220         quoting of decompression shell command for MS-Windows/MS-DOS.
31222 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
31224         * lisp/emacs-lisp/cl-macs.el (cl-tagbody): Scope cl--tagbody-alist.
31225         (Bug#20639)
31227 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
31229         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer):
31230         Fix typo in "Inhibit `epa-file-handler' in Tramp"
31231         (commit 89035e247591c8d688fce922b7079881aa110f33).
31233 2015-05-25  Orivej Desh  <orivej@gmx.fr>  (tiny change)
31235         Fix IPv6 addresses in Tramp
31236         * lisp/net/tramp-sh.el (tramp-make-copy-program-file-name):
31237         Add square brackets around host name.
31239 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
31241         Inhibit `epa-file-handler' in Tramp (Bug#20634)
31242         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer)
31243         (tramp-sh-handle-insert-file-contents-literally): Inhibit also
31244         `epa-file-handler'.
31246 2015-05-24  Stefan Monnier  <monnier@iro.umontreal.ca>
31248         * lisp/emacs-lisp/pcase.el: Use PAT rather than UPAT in docstring.
31249         (pcase-let): Document the behavior in case the pattern doesn't match.
31251 2015-05-24  Artur Malabarba  <bruce.connor.am@gmail.com>
31253         * lisp/emacs-lisp/tabulated-list.el: New optional print method.
31254         (tabulated-list-print): New optional argument, UPDATE.  If
31255         non-nil, the list is printed by only adding and deleting the
31256         changed entries, instead of erasing the whole buffer.  This method
31257         is much faster when few or no entries have changed.
31258         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
31259         * etc/NEWS: Document it.
31261         * lisp/emacs-lisp/tabulated-list.el: Improve printing.
31262         (tabulated-list--get-sorter): New function.
31263         (tabulated-list-print): Restore window-line when remember-pos is
31264         passed and optimize away the `nreverse'.
31266 2015-05-24  Paul Eggert  <eggert@cs.ucla.edu>
31268         Simpilify etags TEX mode scanning
31269         * lib-src/etags.c (TEX_mode, TEX_esc, TEX_opgrp, TEX_clgrp):
31270         Remove static vars.
31271         (TeX_commands): Deduce escapes here instead.
31272         (TEX_LESC, TEX_SESC, TEX_mode): Remove; all uses removed.
31273         This removes the need for a reset_input call.
31275         Improve etags I/O error reporting
31276         * lib-src/etags.c:
31277         Don't include sys/types.h and sys/stat.h; no longer needed.
31278         (infilename): New static var.
31279         (process_file_name): Don't call 'stat'.  Instead, just open the
31280         file for reading and report any errors.  Don't bother making
31281         a copy of the file argument; it's not needed.  Be more careful to
31282         use the failing errno when reporting an error.
31283         Quote the real name better (though no perfectly)
31284         when passing it to the shell.
31285         (reset_input): New function, which reports I/O errors.
31286         All uses of 'rewind' changed to use this function.
31287         (perhaps_more_input): New function, which also checks for
31288         I/O errors.  All uses of 'feof' changed to use this function.
31289         (analyze_regex): Report an error if fclose fails.
31290         (readline_internal): Report an error if getc fails.
31291         (etags_mktmp): Return an error if close fails.
31293         etags.c: avoid side effects in 'if'
31294         * lib-src/etags.c (process_file_name, Perl_functions)
31295         (TEX_decode_env): Hoist side effects into previous statement.
31297         .gitignore tweaks
31298         * .gitignore: Ignore all *.stamp files.  Sort.
31299         Ignore [0-9]*.txt (commonly used name for git patches)
31300         and /vc-dwim-log-* (vc-dwim temporary).
31302 2015-05-24  Eli Zaretskii  <eliz@gnu.org>
31304         Fix last change in etags.c, which failed the test suite
31305         * lib-src/etags.c (intoken): Add '$' to the set, as it was there
31306         before the last change.
31308 2015-05-23  Glenn Morris  <rgm@gnu.org>
31310         Remove charset map files from repository, generate in first bootstrap
31311         * admin/charsets/Makefile.in (${srcdir}/charsets.stamp): New.
31312         (all): Create the stamp file.
31313         (extraclean): Delete the stamp file.
31314         * src/Makefile.in (lispintdir, charsets): New variables.
31315         (${lispintdir}/cp51932.el, ${lispintdir}/eucjp-ms.el, ${charsets}):
31316         New rules.
31317         (emacs$(EXEEXT), temacs$(EXEEXT)): Depend on $charsets.
31318         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
31319         * etc/charsets/*.map: Remove from repository.
31321 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
31323         Cleanup etags.c to use locale-independent code
31324         Although this doesn't alter behavior (as etags doesn't use
31325         setlocale), the new version is more clearly locale-independent and
31326         the executable is a bit smaller on my platform.
31327         * lib-src/etags.c: Include <limits.h>, for UCHAR_MAX.
31328         Include <c-ctype.h> instead of <ctype.h>.
31329         (CHARS, CHAR, init, _wht, _nin, _itk, _btk, _etk, white, nonam, endtk)
31330         (begtk, midtk):
31331         Remove; no longer needed.
31332         (iswhite, ISALNUM, ISALPHA, ISDIGIT, ISLOWER, lowcase): Remove.
31333         All callers changed to use c_isspace, c_isalnum, c_isalpha, c_isdigit,
31334         c_islower, c_tolower, respectively.
31335         (notinname, begtoken, intoken, endtoken): Rewrite as functions
31336         instead of macros, and initialize the tables at compile-time
31337         rather than at run-time.
31339         Put default action first in src/Makefile
31340         * src/Makefile.in (all): Put this rule before lisp.mk.
31341         That way, plain 'make' works in the src directory again.
31343 2015-05-23  Glenn Morris  <rgm@gnu.org>
31345         * Makefile.in: Fix extraclean rule.
31346         (extraclean_dirs): New.
31347         (extraclean): Use it.
31349 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
31351         Avoid compiler warning in image.c on MS-Windows
31352         * src/w32term.h (x_query_color): Add prototype, to avoid compiler
31353         warning in image.c.
31355 2015-05-23  Glenn Morris  <rgm@gnu.org>
31357         Fix --without-toolkit-scroll-bars builds.
31358         * src/xterm.c (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]:
31359         Add new argument to x_clear_area1.
31360         (XTset_horizontal_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
31361         Update x_clear_area arguments.
31363         * admin/charsets/glibc/: New directory, imported from glibc 2.21.
31364         * admin/charsets/Makefile.in (GLIBC_CHARMAPS):
31365         Change to included version.
31366         (LOCAL, local, totalclean): Remove.
31367         (extraclean): Delete all generated files.
31369 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
31371         * lisp/pcmpl-cvs.el (pcmpl-cvs-entries): Don't assume
31372         CVS/Entries exists.
31374         * lisp/progmodes/xref.el (xref-find-apropos): Use read-string.
31376         * lisp/progmodes/etags.el (tags-completion-at-point-function):
31377         Don't trust the find-tag function.
31379 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
31381         Pacify --enable-gcc-warnings
31382         * src/frame.h (x_query_color): Remove redundant extern decl.
31383         * src/ftcrfont.c (ftcrfont_glyph_extents, ftcrfont_list)
31384         (ftcrfont_match, ftcrfont_open, ftcrfont_close)
31385         (ftcrfont_text_extents, ftcrfont_draw):
31386         * src/xterm.c (x_set_window_size_1, *x_color_cells, x_update_end)
31387         (XTframe_up_to_date, x_clear_area1, x_clear_frame)
31388         (x_ins_del_lines, frame_highlight, frame_unhighlight)
31389         (x_new_focus_frame, x_focus_changed, XTframe_rehighlight)
31390         (x_draw_hollow_cursor, x_draw_bar_cursor, x_flush, x_update_begin)
31391         (x_update_window_begin, x_connection_closed)
31392         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
31393         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
31394         (*x_gc_get_ext_data, x_extension_initialize)
31395         (x_cr_accumulate_data):
31396         Remove redundant static decl.  Many of these GCC doesn't complain
31397         about, but we might as well clean out the duplication while we're
31398         in the neighborhood.
31399         * src/xterm.c (x_fill_trapezoid_for_relief):
31400         Remove decl of nonexistent function.
31402 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
31404         Replace gui-method macros with cl-generic with &context
31405         * lisp/frame.el (gui-method--name, gui-method, gui-method-define)
31406         (gui-method-declare, gui-call): Remove.
31407         (frame-creation-function): Use cl-defgeneric.
31408         (make-frame): Adjust callers.
31409         * lisp/menu-bar.el (menu-bar-edit-menu):
31410         Use gui-backend-selection-exists-p.
31411         * lisp/select.el (x-get-clipboard): Use gui-backend-get-selection.
31412         (gui-backend-get-selection): New cl-generic to replace
31413         gui-get-selection method.
31414         (gui-backend-set-selection): New cl-generic to replace
31415         gui-set-selection method.
31416         (gui-selection-owner-p): New cl-generic to replace
31417         gui-selection-owner-p method.
31418         (gui-backend-selection-exists-p): New cl-generic to replace
31419         gui-selection-exists-p method.  Adjust all callers.
31420         * lisp/server.el (server-create-window-system-frame): Don't ignore
31421         window-system spec even when unsupported.
31422         * lisp/simple.el (deactivate-mark): Use new gui-backend-* functions.
31423         * lisp/startup.el (handle-args-function, window-system-initialization):
31424         Use cl-defgeneric.
31425         (command-line): Adjust calls accordingly.
31426         * lisp/term/ns-win.el (ns-window-system-initialization): Turn into
31427         a window-system-initialization method.
31428         (handle-args-function, frame-creation-function): Use cl-defmethod.
31429         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
31430         (gui-get-selection): Use cl-defmethod on the new functions instead.
31431         * lisp/term/pc-win.el (w16-get-selection-value): Turn into
31432         a gui-backend-get-selection method.
31433         (gui-selection-exists-p, gui-selection-owner-p, gui-set-selection):
31434         Use cl-defmethod on the new functions instead.
31435         (msdos-window-system-initialization): Turn into
31436         a window-system-initialization method.
31437         (frame-creation-function, handle-args-function): Use cl-defmethod.
31438         * lisp/term/w32-win.el (w32-window-system-initialization): Turn into
31439         a window-system-initialization method.
31440         (handle-args-function, frame-creation-function): Use cl-defmethod.
31441         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
31442         (gui-get-selection): Use cl-defmethod on the new functions instead.
31443         * lisp/term/x-win.el (x-window-system-initialization): Turn into
31444         a window-system-initialization method.
31445         (handle-args-function, frame-creation-function): Use cl-defmethod.
31446         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
31447         (gui-get-selection): Use cl-defmethod on the new functions instead.
31448         * lisp/term/xterm.el (xterm--set-selection): Turn into
31449         a gui-backend-set-selection method.
31450         * src/nsselect.m (Fns_selection_exists_p): Remove unused arg `terminal'.
31451         (Fns_selection_owner_p): Remove unused arg `terminal'.
31452         (Fns_get_selection): Remove unused args `time_stamp' and `terminal'.
31454 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
31456         Revert "Fix etags Bug#20629 that broke C++ support"
31457         This reverts commit 13dd9d4f7e75d2c78aa5537cef09de03663e9748.
31459 2015-05-23  Jan D  <jan.h.d@swipnet.se>
31461         Fix etags Bug#20629 that broke C++ support
31462         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
31463         Revert commit from Sun May 10 (Bug#20629).
31465         Merge branch 'cairo'.
31466         Main work done by YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>.
31467         Small fixes and image work by Jan D. <jan.h.d@swipnet.se>.
31469         Merge branch 'master' into cairo
31471         Fixes to compile cairo branch without cairo
31472         * src/gtkutil.c (xg_update_scrollbar_pos): x_clear_area takes frame as
31473         first argument.
31474         * src/xterm.c (handle_one_xevent): Surround x_cr_destroy_surface with
31475         USE_CAIRO.
31477 2015-05-23  Artur Malabarba  <bruce.connor.am@gmail.com>
31479         * lisp/emacs-lisp/package.el: Always update selected-packages.
31480         (package--update-selected-packages): New function.
31481         (package-menu-execute): Use it before starting the transaction,
31482         this way the list of selected packages is updated even when the
31483         transaction fails.
31484         (package-menu--perform-transaction): Don't edit selected-packages.
31486 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
31488         Fix etags reading of compressed files
31489         * lib-src/etags.c (O_CLOEXEC) [WINDOWSNT]: Define.
31490         Include fcntl.h, for O_CLOEXEC.
31491         (process_file_name): Don't use 'popen', whose streams cannot be
31492         rewound.  Instead, uncompress the file to a temporary file,
31493         created by 'etags_mktmp', and read from that as usual.
31494         (etags_mktmp): New function.
31495         * test/etags/ETAGS.good_1:
31496         * test/etags/ETAGS.good_2:
31497         * test/etags/ETAGS.good_3:
31498         * test/etags/ETAGS.good_4:
31499         * test/etags/ETAGS.good_5: Update to be consistent with latest
31500         changes in etags.c regarding reading compressed files.
31502         Improve documentation of 'set-fontset-font'
31503         * doc/lispref/display.texi (Fontsets): Document the value of nil
31504         for the 3rd argument of 'set-fontset-font'.
31506         Fix documentation of forward-line
31507         * src/cmds.c (Fforward_line): Clarify the return value if the line
31508         at end of accessible portion of the buffer has no newline.
31509         * doc/lispref/positions.texi (Text Lines): Document what happens
31510         if the line at end of accessible portion of buffer has no newline.
31511         (Bug#20587)
31513 2015-05-22  Glenn Morris  <rgm@gnu.org>
31515         * admin/charsets/Makefile.in (TRANS_TABLE): Add short aliases.
31517         * admin/charsets/mapconv (LC_ALL): Set to C.
31519         * Makefile.in: Add admin/charsets into top-level clean rules.
31520         (clean): Add admin/charsets.
31521         (maybeclean_dirs): New variable.
31522         (distclean, bootstrap-clean, maintainer-clean): Use $maybeclean_dirs.
31524         * admin/charsets/Makefile.in (LOCAL, local): Fix members.
31526 2015-05-22  Artur Malabarba  <bruce.connor.am@gmail.com>
31528         * lisp/emacs-lisp/package.el (package-selected-packages): Fix doc.
31530 2015-05-22  Glenn Morris  <rgm@gnu.org>
31532         Generate admin/charsets Makefile via configure, and make more portable
31533         * configure.ac (SUBDIR_MAKEFILES): Add admin/charsets/Makefile.
31534         (admin/charsets/Makefile): Generate it.
31535         * admin/charsets/Makefile.in: Rename from Makefile.
31536         (AWK, srcdir, top_srcdir, AM_DEFAULT_VERBOSITY):
31537         New variables, set by configure.
31538         (charsetdir, lispintdir, mapfiledir, AM_V_GEN, am__v_GEN_)
31539         (am__v_GEN_0, am__v_GEN_1, AM_V_at, am__v_at_, am__v_at_0)
31540         (am__v_at_1, LOCAL, mapconv, run_mapconv, big5, compact, cp51932)
31541         (cp932, eucjp_ms, gb180302, gb180304, kuten): New variables.
31542         (TRANS_TABLE, CHARSETS): Add directory prefix to value.
31543         (all): Declare PHONY.
31544         (local): New PHONY target.
31545         (map_template): New template.  Use to define short PHONY aliases.
31546         (*.map): Add directory prefixes to targets and prerequisites.
31547         Respect make verbosity.
31548         (JISC6226.map): Replace non-portable sed append without newline.
31549         (install): Remove rule.
31550         (clean): Only delete temporary sedscript.
31551         (bootstrap-clean, distclean, maintainer-clean, extraclean)
31552         (totalclean): New PHONY rules.
31553         * admin/charsets/mapconv (BASE): Replace basename with expr.
31554         (FILE): Add "mapfiles" subdirectory.
31555         (AWK): New variable.  Use throughout in place of "awk".
31556         (main): Use "gunzip -c" in place of "zcat".
31557         Don't leave whitespace before "p", for older sed.
31558         * admin/charsets/mapfiles/PTCP154: Add final newline,
31559         to make older sed versions happy.
31561 2015-05-22  Stefan Monnier  <monnier@iro.umontreal.ca>
31563         * lisp/autorevert.el: Use lexical-binding.  Fix hook usage.
31564         (global-auto-revert-ignore-buffer, auto-revert-notify-modified-p)
31565         (auto-revert-notify-watch-descriptor): Use defvar-local.
31566         (find-file-hook, auto-revert-tail-mode)
31567         (auto-revert-notify-add-watch): Use setq-local.
31568         (auto-revert-notify-add-watch): Don't call make-local-variable on
31569         kill-buffer-hook (bug#20601).
31571 2015-05-21  Stefan Monnier  <monnier@iro.umontreal.ca>
31573         Change defgeneric so it doesn't completely redefine the function
31574         * lisp/emacs-lisp/cl-generic.el (cl-generic-define): Don't throw away
31575         previously defined methods.
31576         (cl-generic-define-method): Let-bind purify-flag instead of
31577         using `fset'.
31578         (cl--generic-prefill-dispatchers): Only define during compilation.
31579         (cl-method-qualifiers): Remove redundant alias.
31580         (help-fns-short-filename): Silence byte-compiler.
31581         * test/automated/cl-generic-tests.el:
31582         Adjust to new defgeneric semantics.
31584 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
31586         * lisp/emacs-lisp/package.el (package-menu-execute):
31587         Remove reference to remove-dups.
31589 2015-05-21  kwhite  <kwhite@gnu.org>
31591         * lisp/erc/erc.el: Hide network/channel messages.
31592         (erc-network-hide-list, erc-channel-hide-list): New lists to define
31593         message types per network/channel.
31594         (erc-add-targets): New function to parse list of targets.
31595         (erc-hide-current-message-p): Modify to check for new targets.
31597 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
31599         Don't quote nil and t in doc strings
31600         This is as per "Tips for Documentation Strings" in the elisp manual.
31601         For consistency, do the same in diagnostics and comments.
31603 2015-05-21  Eli Zaretskii  <eliz@gnu.org>
31605         Fix a minor problem with mouse-face on mode line
31606         * src/xdisp.c (note_mode_line_or_margin_highlight): Reset the
31607         mouse face also if the mouse pointer hovers above mode-line glyphs
31608         that don't come from any Lisp string.  (Bug#20620)
31610 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
31612         * lisp/emacs-lisp/package.el: Fix selected-package logic.
31613         (package-menu-execute): Mark as selected all non-upgrade packages
31614         being installed.
31615         (package-menu--perform-transaction): Don't mark anything.
31617         * lisp/emacs-lisp/package.el: Mode-line progress report.
31618         (package-menu--transaction-status): New variable.
31619         (package-menu-mode, package-menu--perform-transaction): Use it.
31621         * lisp/emacs-lisp/package.el: Better transaction messages.
31622         (package-menu--partition-transaction): New function.
31623         (package-menu--prompt-transaction-p, package-menu-execute):
31624         Use it.
31625         (package-menu--perform-transaction): Don't do any messaging.
31627         * lisp/emacs-lisp/package.el: Revert async package transactions.
31628         (package-menu-async): Update doc.
31629         (package-install-from-archive, package-download-transaction)
31630         (package-install, package-menu--perform-transaction)
31631         (package-menu-execute): Remove asynchronous functionality.
31633 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
31635         Revert doc string changes to f90.el
31636         Problem reported by Glenn Morris in:
31637         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00596.html
31638         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
31639         Revert recent changes to doc strings, as it's intended that they
31640         use grave accent, not quote.
31642 2015-05-20  Bozhidar Batsov  <bozhidar@batsov.com>
31644         * lisp/emacs-lisp/subr-x.el (hash-table-empty-p):
31645         Improve parameter name.
31647         * lisp/emacs-lisp/subr-x.el (hash-table-empty-p): New inline function.
31649 2015-05-20  Paul Eggert  <eggert@cs.ucla.edu>
31651         Don't require help-fns when not needed
31652         * lisp/emacs-lisp/autoload.el, lisp/emacs-lisp/advice.el:
31653         * lisp/emacs-lisp/elint.el:
31654         Don't require help-fns at the top level
31655         * lisp/emacs-lisp/advice.el (ad-arglist):
31656         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
31657         Don't require help-fns.  (Bug#17001)
31659 2015-05-20  Eli Zaretskii  <eliz@gnu.org>
31661         Fix slash collapsing in etags on MS-Windows
31662         * lib-src/etags.c (canonicalize_filename) [DOS_NT]: Separate the
31663         MS-Windows code from the Posix code, and support collapsing both
31664         forward- and back-slashes on MS-Windows.  Fixes a regression found
31665         by the test suite.
31667         Improve documentation of glyphless-char-display
31668         * doc/lispref/display.texi (Glyphless Chars): Improve
31669         documentation of glyphless character display.
31671         Fix "acronym" display of glyphless characters on w32
31672         * src/w32term.c (x_draw_glyphless_glyph_string_foreground): Don't
31673         ignore "acronym" substitutes of 1 character for glyphless characters.
31675 2015-05-20  Oleh Krehel  <ohwoeowho@gmail.com>
31677         Add an automated test for let-when-compile
31678         * test/automated/subr-tests.el (let-when-compile): New test.
31680         Add let-when-compile macro instead of using pcase-let
31681         * lisp/subr.el (let-when-compile): New let-like macro that makes its
31682         bindings known to macros like `eval-when-compile' in the body.
31683         * lisp/emacs-lisp/lisp-mode.el: Change the top-level `pcase-let' to
31684         a `let-when-compile'.  Also comment out the unused lexical var
31685         `el-kws-re'.
31686         The change greatly improves readability, while providing almost the
31687         same (even shorter) byte code: instead of pre-evaluating 10 variables,
31688         tossing them into a list, and destructuring that list a full screen
31689         page later, the variables are simply bound as they are evaluated,
31690         wrapped individually in `eval-when-compile'.
31692 2015-05-20  Artur Malabarba  <bruce.connor.am@gmail.com>
31694         * lisp/emacs-lisp/package.el: "Delete" button in Help buffer.
31695         (package-delete-button-action): New function.
31696         (describe-package-1): Add Delete button.
31698         * lisp/emacs-lisp/package.el: Better dependency description.
31699         (package--used-elsewhere-p): New optional arg, ALL, and return
31700         package-desc objects instead of names.
31701         (package-delete): Update accordingly.
31702         (describe-package-1): Describe which packages require the package.
31704 2015-05-20  Martin Rudalics  <rudalics@gmx.at>
31706         Fix handling and doc-string of FRAME arg of `other-buffer' (Bug#20533)
31707         * src/buffer.c (Fother_buffer): Argument FRAME must denote a live frame.
31708         Fix doc-string.
31710         Improve `switch-to-buffer' in strongly dedicated windows (Bug#20472)
31711         * lisp/window.el (switch-to-buffer-in-dedicated-window): New option.
31712         (switch-to-buffer): If the selected window is strongly dedicated
31713         to its buffer, signal error before prompting for buffer name.
31714         Handle `switch-to-buffer-in-dedicated-window'.
31715         * doc/lispref/windows.texi (Switching Buffers):
31716         Document `switch-to-buffer-in-dedicated-window'.
31718 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
31720         Prefer "this" to “this” in doc strings
31721         This mostly just straightens quotes introduced in my previous patch.
31722         Suggested by Dmitry Gutov in:
31723         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00565.html
31724         * lisp/faces.el, lisp/gnus/gnus-group.el, lisp/ldefs-boot.el:
31725         * lisp/mail/supercite.el, lisp/net/tramp.el, lisp/recentf.el:
31726         * lisp/textmodes/artist.el, lisp/textmodes/rst.el:
31727         * lisp/textmodes/tildify.el, lisp/vc/ediff-util.el:
31728         * lisp/vc/log-edit.el, lisp/xt-mouse.el:
31729         Prefer straight double quotes to curved double quotes in doc strings.
31731         Fix minor quoting problems in doc strings
31732         These were glitches regardless of how or whether we tackle the
31733         problem of grave accent in doc strings.
31734         * lisp/calc/calc-aent.el (math-restore-placeholders):
31735         * lisp/ido.el (ido-ignore-buffers, ido-ignore-files):
31736         * lisp/leim/quail/cyrillic.el ("bulgarian-alt-phonetic"):
31737         * lisp/leim/quail/hebrew.el ("hebrew-new")
31738         ("hebrew-biblical-sil"):
31739         * lisp/leim/quail/thai.el ("thai-kesmanee"):
31740         * lisp/progmodes/idlw-shell.el (idlwave-shell-file-name-chars):
31741         Used curved quotes to avoid ambiguities like ‘`''’ in doc strings.
31742         * lisp/calendar/calendar.el (calendar-month-abbrev-array):
31743         * lisp/cedet/semantic/mru-bookmark.el (semantic-mrub-cache-flush-fcn):
31744         * lisp/cedet/semantic/symref.el (semantic-symref-tool-baseclass):
31745         * lisp/cedet/semantic/tag.el (semantic-tag-copy)
31746         (semantic-tag-components):
31747         * lisp/cedet/srecode/cpp.el (srecode-semantic-handle-:cpp):
31748         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
31749         * lisp/emacs-lisp/byte-opt.el (byte-optimize-all-constp):
31750         * lisp/emacs-lisp/checkdoc.el (checkdoc-message-text-engine):
31751         * lisp/emacs-lisp/generator.el (iter-next):
31752         * lisp/gnus/gnus-art.el (gnus-treat-strip-list-identifiers)
31753         (gnus-article-mode-syntax-table):
31754         * lisp/net/rlogin.el (rlogin-directory-tracking-mode):
31755         * lisp/net/soap-client.el (soap-wsdl-get):
31756         * lisp/net/telnet.el (telnet-mode):
31757         * lisp/org/org-compat.el (org-number-sequence):
31758         * lisp/org/org.el (org-remove-highlights-with-change)
31759         (org-structure-template-alist):
31760         * lisp/org/ox-html.el (org-html-link-org-files-as-html):
31761         * lisp/play/handwrite.el (handwrite-10pt, handwrite-11pt)
31762         (handwrite-12pt, handwrite-13pt):
31763         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
31764         * lisp/progmodes/idlwave.el (idlwave-mode, idlwave-check-abbrev):
31765         * lisp/progmodes/verilog-mode.el (verilog-tool)
31766         (verilog-string-replace-matches, verilog-preprocess)
31767         (verilog-auto-insert-lisp, verilog-auto-insert-last):
31768         * lisp/textmodes/makeinfo.el (makeinfo-options):
31769         * src/font.c (Ffont_spec):
31770         Fix minor quoting problems in doc strings, e.g., missing quote,
31771         ``x'' where `x' was meant, etc.
31772         * lisp/erc/erc-backend.el (erc-process-sentinel-2):
31773         Fix minor quoting problem in other string.
31774         * lisp/leim/quail/ethiopic.el ("ethiopic"):
31775         * lisp/term/tvi970.el (tvi970-set-keypad-mode):
31776         Omit unnecessary quotes.
31777         * lisp/faces.el (set-face-attribute, set-face-underline)
31778         (set-face-inverse-video, x-create-frame-with-faces):
31779         * lisp/gnus/gnus-group.el (gnus-group-nnimap-edit-acl):
31780         * lisp/mail/supercite.el (sc-attribs-%@-addresses)
31781         (sc-attribs-!-addresses, sc-attribs-<>-addresses):
31782         * lisp/net/tramp.el (tramp-methods):
31783         * lisp/recentf.el (recentf-show-file-shortcuts-flag):
31784         * lisp/textmodes/artist.el (artist-ellipse-right-char)
31785         (artist-ellipse-left-char, artist-vaporize-fuzziness)
31786         (artist-spray-chars, artist-mode, artist-replace-string)
31787         (artist-put-pixel, artist-text-see-thru):
31788         * lisp/vc/ediff-util.el (ediff-submit-report):
31789         * lisp/vc/log-edit.el (log-edit-changelog-full-paragraphs):
31790         Use double-quotes rather than TeX markup in doc strings.
31791         * lisp/skeleton.el (skeleton-pair-insert-maybe):
31792         Reword to avoid the need for grave accent and apostrophe.
31793         * lisp/xt-mouse.el (xterm-mouse-tracking-enable-sequence):
31794         Don't use grave and acute accents to quote.
31796 2015-05-19  Stefan Monnier  <monnier@iro.umontreal.ca>
31798         * lisp/emacs-lisp/generator.el (cps--gensym, cps--transform-1):
31799         Silence compiler.
31801 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
31803         Try to port new etags tests to MS-Windows
31804         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
31805         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
31806         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
31807         Adjust to test-case changes below.
31808         * test/etags/Makefile (CSRC): Remove dostorture.c.
31809         Whatever it was trying to test, wasn't working portably.
31810         (LC_ALL): Remove.  Apparently there wasn't an encoding problem,
31811         just a line-ending problem.
31812         * test/etags/c-src/dostorture.c: Remove.
31813         * test/etags/cp-src/c.C: Remove stray CR.
31814         * test/etags/html-src/algrthms.html: Remove trailing CRs.
31815         State UTF-8 as the encoding.  The file is ASCII so it doesn't matter,
31816         but if someone edits it later it should stay UTF-8-compatible.
31818 2015-05-19  Eli Zaretskii  <eliz@gnu.org>
31820         Fix display of overlapping window-specific overlays
31821         * src/keyboard.c (adjust_point_for_property): When adjusting point
31822         due to display strings, ignore overlays that are specific to
31823         windows other than the currently selected one.
31824         * src/xdisp.c (handle_single_display_spec): If the display
31825         property comes from an overlay, arrange for buffer iteration to
31826         resume only after the end of that overlay.  (Bug#20607)
31828 2015-05-19  Dmitry Gutov  <dgutov@yandex.ru>
31830         New command icomplete-force-complete-and-exit
31831         * lisp/icomplete.el (icomplete-force-complete-and-exit):
31832         New command
31833         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00461.html)
31834         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00516.html).
31835         (icomplete-minibuffer-map): Bind C-j to it.
31836         (icomplete-forward-completions, icomplete-backward-completions):
31837         Mention the new command in the docstring.
31838         * lisp/minibuffer.el (minibuffer-force-complete-and-exit):
31839         Revert the previous fix for bug#17545.
31841 2015-05-19  Martin Rudalics  <rudalics@gmx.at>
31843         Fix last commit
31845         In Elisp manual explain how to override window manager positioning
31846         (Bug#20552)
31847         * doc/lispref/frames.texi (Position Parameters): Give example of
31848         how to override a window manager positioning decision.
31850         Clarify concept of "surrogate minibuffer frames" (Bug#20538)
31851         * src/frame.c (Fdelete_frame): In doc-string mention that frame
31852         can't be deleted if it has a surrogate minibuffer.
31853         * doc/lispref/frames.texi (Minibuffers and Frames)
31854         (Deleting Frames): Explain "surrogate minibuffer frames".
31856         * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 19/12 MB.
31858 2015-05-18  Glenn Morris  <rgm@gnu.org>
31860         Add option to ignore commit lines matching a pattern in ChangeLog
31861         * build-aux/gitlog-to-changelog: Add --ignore-line option.
31862         * build-aux/gitlog-to-emacslog: Ignore lines matching '^; '.
31864 2015-05-18  Paul Eggert  <eggert@cs.ucla.edu>
31866         Don't skip new etags tests on non-UTF-8 hosts
31867         Problem reported by Eli Zaretskii for MS-Windows.
31868         * test/etags/Makefile (UTF8_LOCALE, UTF8_ENCODING): Remove.
31869         (LC_ALL): Set to C if the current locale isn't UTF-8.
31870         (.PHONY): Remove ediff_1 thru ediff_5.
31871         (check): Always run.
31873 2015-05-18  Glenn Morris  <rgm@gnu.org>
31875         * lisp/calculator.el (calculator-funcall):
31876         * lisp/textmodes/artist.el (artist-spray-random-points):
31877         Use standard degree/radian conversion utilities.
31879         Further lisp-complete-symbol related cleanup.
31880         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol):
31881         Unadvertise non-functional argument.  Replace obsolete alias.
31883 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
31885         Add a test case for Maven warning ouput
31886         * test/automated/compile-tests.el
31887         (compile-tests--test-regexps-data): Add a case for Maven warning
31888         ouput.
31889         (compile--test-error-line): Check the compilation message type, if
31890         it's specified in the test data.
31892 2015-05-18  Paul Pogonyshev  <pogonyshev@gmail.com>
31894         Update Maven compilation-mode entry to distinguish warnings
31895         * lisp/progmodes/compile.el
31896         (compilation-error-regexp-alist-alist): Update Maven entry to
31897         distinguish warnings (bug#20556).
31899 2015-05-18  Przemysław Wojnowski  <esperanto@cumego.com>
31901         * test/automated/sgml-mode-tests.el: New file.
31903 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
31905         Improve handling of the first Git revision
31906         * lisp/vc/log-view.el (log-view-toggle-entry-display): When
31907         there's no next entry, delete until the end of the buffer.
31908         (log-view-end-of-defun-1): Stop at eob.
31909         * lisp/vc/vc-annotate.el
31910         (vc-annotate-show-diff-revision-at-line-internal): Don't give up
31911         when previous-revision is nil.
31912         * lisp/vc/vc-git.el (vc-git-expanded-log-entry): End the arguments
31913         with `--' to avoid ambiguity.
31914         (vc-git-annotate-extract-revision-at-line): Exclude `^' from the
31915         returned revision string.
31916         (vc-git-annotate-time): Expect `^' before the first revision.
31917         * lisp/vc/vc-git.el (vc-git-diff): Diff against an empty tree if
31918         REV1 is nil, and REV2 is not.
31919         * lisp/vc/vc.el: Update the description of the `diff' function.
31921 2015-05-18  Oleh Krehel  <ohwoeowho@gmail.com>
31923         Allow checkdoc to be called in batch
31924         * lisp/emacs-lisp/checkdoc.el (checkdoc-error): When `noninteractive'
31925         is non-nil, echo the error with `warn'.
31926         How it can be used in -batch:
31927         (with-current-buffer (find-file "checkdoc.el")
31928           (checkdoc-current-buffer t))
31930 2015-05-18  Glenn Morris  <rgm@gnu.org>
31932         * lisp/calendar/solar.el (solar-ecliptic-coordinates): Use float-pi.
31934 2015-05-17  Paul Eggert  <eggert@cs.ucla.edu>
31936         * admin/notes/unicode: New section "binary files".
31938         Change new etags test to use UTF-8 encoding
31939         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
31940         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
31941         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
31942         * test/etags/html-src/index.shtml, test/etags/html-src/software.html:
31943         * test/etags/html-src/softwarelibero.html:
31944         Switch to UTF-8 encoding.
31945         * test/etags/Makefile (SRCS): Adjust to switch to UTF-8.
31946         Remove Makefile, as it's too incestuous to have the test input
31947         include the build procedure.
31948         (UTF8_LOCALE, UTF_ENCODING): New macros.
31949         (LC_ALL): If possible, set to a UTF-8 encoding if not already UTF-8.
31950         (check): Skip if not UTF-8.
31951         (.PHONY): New rule.
31952         (FRC): Remove, as superseded by .PHONY.  All uses removed.
31953         (regexfile): Prefer printf to echo when outputting oddball chars.
31954         (.PRECIOUS): Remove, as these files are not built.
31956         Rename 'foo-gzipped' to 'foo.gz'
31957         * test/automated/data/decompress/foo.gz:
31958         Rename from test/automated/data/decompress/foo-gzipped,
31959         to make it easier for other tools to tell that it's compressed.
31960         * test/automated/zlib-tests.el (zlib--decompress):
31961         Adjust to renamed file.
31963 2015-05-17  Dmitry Gutov  <dgutov@yandex.ru>
31965         Set up default-directory
31966         * lisp/vc/vc-annotate.el (vc-annotate-mode-map): Remove duplicate
31967         binding for `v'.
31968         (vc-annotate-show-changeset-diff-revision-at-line): Set up an
31969         appropriate value for default-directory.
31971 2015-05-17  Samer Masterson  <samer@samertm.com>
31973         * lisp/eshell/em-term.el (eshell-term-sentinel):
31974         No-op by default, only kills term buffer if
31975         `eshell-destroy-buffer-when-process-dies' is non-nil.  (Bug#18108)
31976         (eshell-destroy-buffer-when-process-dies): New custom to preserve
31977         previous behavior.
31979         eshell: Introduce new buffer syntax
31980         The new buffer syntax '#<buffer-name>' is equivalent to '#<buffer
31981         buffer-name>'.  Remove `eshell-buffer-shorthand', as it is no longer
31982         needed (Bug#19319).
31983         * lisp/eshell/esh-io.el (eshell-buffer-shorthand): Remove.
31984         (eshell-get-target): Remove shorthand-specific code.
31985         * lisp/eshell/esh-arg.el (eshell-parse-special-reference): Parse
31986         '#<buffer-name>'.
31988 2015-05-17  Jan D  <jan.h.d@swipnet.se>
31990         Merge branch 'master' into cairo
31992 2015-04-26  Jan D  <jan.h.d@swipnet.se>
31994         Merge branch 'master' into cairo
31996         Add PBM support for cairo
31997         * src/image.c (xcolor_to_argb32): New function.
31998         (get_spec_bg_or_alpha_as_argb): Call xcolor_to_argb32.
31999         (pbm_load, png_load_body, jpeg_load_body, gif_load): Only use
32000         XImagePtr if ! USE_CAIRO.
32001         (pbm_load): Add cairo support.
32003 2015-04-12  Jan D  <jan.h.d@swipnet.se>
32005         * src/xterm.c (x_free_cr_resources): Rename from x_prepare_for_xlibdraw.
32006         (x_cr_draw_frame, x_cr_export_frames, x_shift_glyphs_for_insert)
32007         (x_free_frame_resources): Rename x_prepare_for_xlibdraw to
32008         x_free_cr_resources.
32010         Handle specified bg in images.  Use generic libpng code for PNGs.
32011         * src/image.c (get_spec_bg_or_alpha_as_argb)
32012         (create_cairo_image_surface): New functions when USE_CAIRO.
32013         (xpm_load): Call the above functions.  Handle XPM without mask
32014         when USE_CAIRO.
32015         (png_load_body): Handle USE_CAIRO case.
32016         (png_load): Remove USE_CAIRO specific fuction, modify png_load_body
32017         instead.
32018         (jpeg_load_body): Call create_cairo_image_surface.
32019         (gif_load, svg_load_image): Handle specified background, call
32020         create_cairo_image_surface.
32021         * src/xterm.c (x_draw_image_glyph_string): Add missing USE_CAIRO.
32023 2015-04-11  Jan D  <jan.h.d@swipnet.se>
32025         Support GIF and TIFF with cairo
32026         * configure.ac: Allow jpeg with cairo.
32027         Allow tiff and gif with cairo.
32028         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
32029         (tiff_load): Create cairo image surface if USE_CAIRO.
32030         (gif_load): Ditto.
32032         Support JPEG with USE_CAIRO
32033         * configure.ac: Allow jpeg with cairo.
32034         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
32036 2015-04-05  Jan D  <jan.h.d@swipnet.se>
32038         Support RSVG and cairo
32039         * configure.ac: Allow rsvg with cairo.  Move back HAVE_RSVG.
32040         * src/dispextern.h (struct image): Add cr_data2 if cairo.
32041         * src/image.c: #undef COLOR_TABLE_SUPPORT when USE_CAIRO.
32042         (x_clear_image): Free cr_data and cr_data2 if set.
32043         (xpm_load): Assign data to cr_data2.
32044         (svg_load_image): Convert from GdkPixbuf to CAIRO_FORMAT_ARGB32.
32046 2015-04-03  Jan D  <jan.h.d@swipnet.se>
32048         Introduce limited Xpm support (32 bit ZPixmap) for Cairo
32049         * configure.ac (HAVE_RSVG): Move after cairo.
32050         (USE_CAIRO): Disable rsvg, don't disable Xpm.
32051         * src/image.c (prepare_image_for_display): Don't load if USE_CAIRO.
32052         (x_clear_image): If USE_CAIRO, also free possible img->ximg->obdata and
32053         don't return early.
32054         (ALLOC_XPM_COLORS): Don't define when USE_CAIRO.
32055         (xpm_load): Convert simple Xpms (32 bit ZPixmap) to CAIRO_FORMAT_ARGB32
32056         and create a surface.
32058         Tool tips for menus did not show any text.
32059         * src/xterm.c (x_update_begin): Don't create any surface for non-visible
32060         tip frames, the geometry may be wrong.
32062         Merge branch 'master' into cairo, fixes tooltips not shown.
32064         Merge branch 'master' into cairo
32066         Add CAIRO_CFLAGS to lwlib/Makefile.in
32067         * Makefile.in (CAIRO_CFLAGS): Add.
32069 2015-02-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
32071         * src/ftcrfont.c (ftcrfont_draw): Don't flush when drawing to screen.
32073 2015-02-16  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
32075         Draw outermost line using black relief and erase corners also for cairo.
32076         * src/xterm.c [USE_CAIRO]: Include math.h.
32077         (enum corners) [USE_CAIRO]: New enum.
32078         (x_erase_corners_for_relief) [USE_CAIRO]: New function.
32079         (x_draw_relief_rect) [USE_CAIRO]: Use it.  If box width is larger
32080         than 1, draw the outermost line using the black relief.
32082         * src/xterm.c (x_fill_trapezoid_for_relief):
32083         Remove unnecessary cairo_close_path.
32085 2015-02-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
32087         * src/xterm.c (x_draw_relief_rect) [USE_CAIRO]: Reset clipping.
32089         * src/xterm.c (x_draw_stretch_glyph_string):
32090         Call x_reset_clip_rectangles instead of XSetClipMask.
32092         Use int instead of unsigned int for width and height args.
32093         * src/xterm.c (x_cr_draw_image, x_fill_rectangle, x_draw_rectangle)
32094         (x_fill_trapezoid_for_relief): Use int instead of unsigned int for
32095         width and height args.
32097         Modernize k&r cairo-related function declarations.
32098         * src/gtkutil.c (xg_page_setup_dialog, xg_get_page_setup, draw_page)
32099         (xg_print_frames_dialog): Modernize k&r declarations.
32100         * src/xfns.c (Fx_export_frames, Fx_page_setup_dialog, Fx_get_page_setup)
32101         (Fx_print_frames_dialog): Modernize k&r declarations.
32102         * src/xterm.c (x_gc_get_ext_data, x_extension_initialize)
32103         (x_begin_cr_clip, x_end_cr_clip, x_set_cr_source_with_gc_foreground)
32104         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
32105         (x_cr_destroy_fringe_bitmap, x_cr_draw_frame, x_cr_accumulate_data)
32106         (x_cr_destroy, x_cr_export_frames, x_prepare_for_xlibdraw)
32107         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
32108         (x_draw_rectangle, x_clear_window, x_fill_trapezoid_for_relief)
32109         (x_clear_area): Modernize k&r declarations.
32111         Implement wave-style variant of underlining for cairo.
32112         * src/xterm.c (x_draw_horizontal_wave) [USE_CAIRO]: New function.
32113         (x_draw_underwave) [USE_CAIRO]: Use it.
32115         * src/xterm.c (x_draw_window_divider): Use x_fill_rectangle
32116         instead of XFillRectangle.
32118 2015-02-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
32120         Fix fringe bitmap initialization for cairo
32121         * src/fringe.c (init_fringe_bitmap) [USE_CAIRO]: Adjust bitmap
32122         data for cairo image surface.
32123         * src/xterm.c (x_cr_define_fringe_bitmap):
32124         Call cairo_surface_mark_dirty.
32126 2015-02-11  Jan D  <jan.h.d@swipnet.se>
32128         Add cairo drawing
32129         * configure.ac (with-cairo): New option.
32130         (USE_CAIRO): Default to yes for Gtk+ 3.  Add code to test for cairo,
32131         set CAIRO_CFLAGS, CAIRO_LIBS.  Add ftcrfonto to FONT_OBJ if cairo.
32132         Output "Does Emacs use cairo?".
32133         * lisp/version.el (emacs-version): Add cairo version.
32134         * src/Makefile.in (CAIRO_CFLAGS, CAIRO_LIBS): New variables.
32135         (FONT_OBJ): Add comment about ftcrfont.
32136         (ALL_CFLAGS): Add CAIRO_CFLAGS.
32137         (LIBES): Add CAIRO_LIBS.
32138         * src/dispextern.h (struct image): Add cr_data for cairo.
32139         (x_cr_init_fringe): Declare.
32140         * src/font.c (syms_of_font): Call syms_of_ftcrfont for cairo.
32141         * src/font.h (ftcrfont_driver, syms_of_ftcrfont): Declare
32142         * src/fringe.c (x_cr_init_fringe): New function name that shares code
32143         with w32_init_fringe.
32144         * src/ftcrfont.c: New font driver for cairo, based on the ftfont driver.
32145         * src/ftfont.c (ftfont_info_size); New global variable.
32146         (ftfont_open2): New extern function almost the same as old ftfont_open,
32147         but takes the font_object as argument.
32148         (ftfont_open): Build font object and call ftfont_open2.
32149         * src/ftfont.h (ftfont_open2, ftfont_info_size): Declare.
32150         * src/gtkutil.c (xg_clear_under_internal_border)
32151         (xg_update_scrollbar_pos, xg_update_horizontal_scrollbar_pos):
32152         Only queue_draw if not cairo.  Change args to x_clear_area.
32153         (xg_get_font): Use Qftcr when using cairo, Qxft otherwise.
32154         (xg_page_setup_dialog, xg_get_page_setup, draw_page)
32155         (xg_print_frames_dialog): New functions for printing.
32156         * src/gtkutil.h (xg_page_setup_dialog, xg_get_page_setup)
32157         (xg_print_frames_dialog): Declare.
32158         * src/image.c: Add defined (USE_CAIRO) for PNG.
32159         Add !defined USE_CAIRO for W32 PNG code.
32160         (x_clear_image): If cairo, destroy the surface in cr_data.
32161         (png_load): Add new cairo compatible implementation.
32162         (lookup_image_type): Add defined (USE_CAIRO) for define png_type.
32163         * src/xfns.c: New section Printing.
32164         (x-export-frames, x-page-setup-dialog, x-get-page-setup)
32165         (x-print-frames-dialog): New printing functions.
32166         (Fx_create_frame, x_create_tip_frame): Register ftcrfont if cairo.
32167         (syms_of_xfns): Defsym Qorientation, Qtop_margin, Qbottom_margin,
32168         Qportrait, Qlandscape, Qreverse_portrait, Qreverse_landscape).
32169         (syms_of_xfns): Provide cairo and defvar cairo-version-string.
32170         defsubr Sx_page_setup_dialog, Sx_get_page_setup, Sx_print_frames_dialog.
32171         * src/xterm.c (x_clear_area1, x_prepare_for_xlibdraw)
32172         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
32173         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
32174         (x_gc_get_ext_data, x_extension_initialize, x_cr_accumulate_data):
32175         Declare.
32176         (FRAME_CR_CONTEXT, FRAME_CR_SURFACE): New macros.
32177         (max_fringe_bmp, fringe_bmp): New variables.
32178         (x_gc_get_ext_data, x_extension_initialize)
32179         (x_cr_destroy_surface, x_begin_cr_clip, x_end_cr_clip)
32180         (x_set_cr_source_with_gc_foreground)
32181         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
32182         (x_cr_destroy_fringe_bitmap, x_cr_draw_image, x_cr_draw_frame)
32183         (x_cr_accumulate_data, x_cr_destroy, x_cr_export_frames)
32184         (x_prepare_for_xlibdraw, x_set_clip_rectangles)
32185         (x_reset_clip_rectangles, x_fill_rectangle, x_draw_rectangle)
32186         (x_clear_window, x_fill_trapezoid_for_relief): New functions.
32187         (x_update_begin): Create cairo surface if needed.
32188         (x_draw_vertical_window_border): Call x_fill_rectangle for cairo.
32189         (x_update_end): Paint cairo drawing surface to xlib surface.
32190         (x_clear_under_internal_border, x_after_update_window_line): Adjust
32191         arguments to x_clear_area.
32192         (x_draw_fringe_bitmap): Call x_fill_rectangle.  Get GC values and
32193         call x_cr_draw_image for cairo.  Call x_reset_clip_rectangles instead
32194         of XSetClipMask.
32195         (x_set_glyph_string_clipping)
32196         (x_set_glyph_string_clipping_exactly): Use x_set_clip_rectangles
32197         instead of XSetClipRectangles.
32198         (x_clear_glyph_string_rect, x_draw_glyph_string_background):
32199         Use x_fill_rectangle instead of XFillRectangle.
32200         (x_draw_glyph_string_foreground)
32201         (x_draw_composite_glyph_string_foreground)
32202         (x_draw_glyphless_glyph_string_foreground): Use x_draw_rectangle
32203         instead of XDrawRectangle.
32204         (x_draw_relief_rect): Add code for USE_CAIRO.
32205         Call x_reset_clip_rectangles instead of XSetClipMask.
32206         (x_draw_box_rect): x_set_clip_rectangles instead of XSetClipRectangles,
32207         x_fill_rectangle instead of XFillRectangle, x_reset_clip_rectangles
32208         instead of XSetClipMask.
32209         (x_draw_image_foreground, x_draw_image_foreground_1):
32210         x_draw_rectangle instead of XDrawRectangle.
32211         (x_draw_glyph_string_bg_rect): x_fill_rectangle instead of
32212         XFillRectangle.
32213         (x_draw_image_glyph_string): If img has cr_data, use it as
32214         a cairo surface.
32215         (x_draw_stretch_glyph_string): x_set_clip_rectangles instead of
32216         XSetClipRectangles, x_fill_rectangle instead of XFillRectangle.
32217         (x_draw_glyph_string): x_fill_rectangle instead of XFillRectangle.,
32218         x_reset_clip_rectangles instead of XSetClipMask.
32219         (x_shift_glyphs_for_insert): Call x_prepare_for_xlibdraw.
32220         (x_clear_area1): New function that calls XClearArea.
32221         (x_clear_area): Takes frame as parameter, calls x_clear_area1 for
32222         non-cairo.
32223         (x_clear_frame): x_clear_window instead of XClearWindow.
32224         (x_scroll_run): Set frame garbaged if cairo.
32225         (XTmouse_position): Initialize *part to 0.
32226         (x_scroll_bar_create): Adjust arguments to x_clear_area.
32227         (x_scroll_bar_set_handle): x_clear_area1 instead of x_clear_area,
32228         x_fill_rectangle instead of XFillRectangle.
32229         (XTset_vertical_scroll_bar, XTset_horizontal_scroll_bar): Adjust
32230         arguments to x_clear_area.
32231         (x_scroll_bar_expose): x_draw_rectangle instead of XDrawRectangle.
32232         (handle_one_xevent): Adjust arguments to x_clear_area.
32233         Destroy cairo surface for frame if ConfigureNotify.
32234         (x_clip_to_row): x_set_clip_rectangles instead of XSetClipRectangles.
32235         (x_draw_hollow_cursor): x_draw_rectangle instead of XDrawRectangle,
32236         x_reset_clip_rectangles instead of XSetClipMask.
32237         (x_draw_bar_cursor): x_fill_rectangle instead of XFillRectangle,
32238         x_reset_clip_rectangles instead of XSetClipMask.
32239         (x_clear_frame_area): Adjust arguments to x_clear_area.
32240         (x_free_frame_resources): Call x_prepare_for_xlibdraw.
32241         (x_term_init): Call x_extension_initialize if cairo.
32242         (x_redisplay_interface): Add x_cr_define_fringe_bitmap,
32243         x_cr_destroy_fringe_bitmap for cairo.
32244         (x_initialize): Call x_cr_init_fringe for cairo.
32245         * src/xterm.h: Add include of cairo header files.
32246         (x_bitmap_record): Add img if cairo.
32247         (x_gc_ext_data): New struct for cairo.
32248         (x_display_info): Add ext_codes for cairo.
32249         (x_output): Add cr_context and cr_surface for cairo.
32250         (x_clear_area): Change arguments from Display*/Window to frame pointer.
32251         (x_query_color, x_begin_cr_clip, x_end_cr_clip)
32252         (x_set_cr_source_with_gc_foreground, x_set_cr_source_with_gc_background)
32253         (x_cr_draw_frame, x_cr_export_frames): Declare.
32255 2015-05-17  Johan Bockgård  <bojohan@gnu.org>
32257         Fix integer-valued `mouse-highlight' (Bug#20590)
32258         * src/xterm.c (handle_one_xevent) [USE_GTK]: Fix ifdef scope.
32260 2015-05-17  Eli Zaretskii  <eliz@gnu.org>
32262         MS-Windows followup for ASCIIfication of curved quotes
32263         * lisp/term/w32console.el (terminal-init-w32console): Repeat the
32264         test for curved quotes being displayable, after switching the
32265         terminal encoding.  (Bug#20545)
32267 2015-05-17  Jan D  <jan.h.d@swipnet.se>
32269         Add comment that x_shift_glyphs_for_insert is never called
32270         * src/xterm.c (x_shift_glyphs_for_insert, x_redisplay_interface):
32271         Add comment that this function is never called.
32273 2015-05-16  Glenn Morris  <rgm@gnu.org>
32275         * src/lisp.mk: Remove from repository and generate at build-time.
32276         * src/Makefile.in (lisp.mk): New rule to generate from loadup.el.
32277         (shortlisp_filter): New variable.
32278         (emacs$(EXEEXT), $(etc)/DOC): Depend on lisp.mk.
32279         (distclean): Remove lisp.mk.
32280         * Makefile.in ($(MAKEFILE_NAME)): No longer depend on src/lisp.mk.
32281         * lisp/loadup.el: Tweak layout to make it easier to parse.
32282         * make-dist: Do not distribute src/lisp.mk.
32284 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
32286         Display shorter dates in Git annotate output
32287         * lisp/vc/vc-git.el (vc-git-annotate-command): Use the short date
32288         format (when not overridden with vc-git-annotate-switches).
32289         (vc-git-annotate-time): Support the short format, as well as ISO
32290         8601 that has been used until now (bug#5428).
32292 2015-05-16  Paul Eggert  <eggert@cs.ucla.edu>
32294         ASCIIfy curved quotes on displays lacking them
32295         * lisp/international/mule-cmds.el (set-locale-environment):
32296         If curved quotes don't work, display straight ASCII approximations
32297         (Bug#20545).
32299 2015-05-16  Glenn Morris  <rgm@gnu.org>
32301         Small src/Makefile simplification
32302         * src/lisp.mk (shortlisp): Rename from lisp, remove $lispsource prefix.
32303         * src/Makefile.in (lisp): Derive from shortlisp.
32304         ($(etc)/DOC): Use $shortlisp rather than parsing lisp.mk.
32306 2015-05-16  Eli Zaretskii  <eliz@gnu.org>
32308         * lisp/help-mode.el (help-go-forward): Doc fix.
32309         (Bug#20577)
32311         * doc/lispref/debugging.texi (Profiling): Improve indexing.
32312         (Bug#20576)
32314 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
32316         * lisp/vc/vc-git.el (vc-git-resolve-when-done): Use `unless' to
32317         have one fewer `not'.
32319         * lisp/vc/vc-git.el (vc-git-diff-switches)
32320         (vc-git-annotate-switches, vc-git-resolve-conflicts)
32321         (vc-git-program, vc-git-root-log-format): Remove the redundant
32322         :group declarations.
32324 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
32326         Removes the predicate from lisp-complete-symbol (Bug#20456)
32327         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol): Do not use predicate
32328         and remove it from the docstring.
32330 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
32332         Add new option vc-git-resolve-conflicts
32333         * lisp/vc/vc-git.el (vc-git-resolve-conflicts): New variable.
32334         (vc-git-find-file-hook): Add to after-save-hook only when the
32335         above is non-nil.
32336         (vc-git-resolve-when-done): Update to honor the new variable.
32337         (Bug#20292)
32339 2015-05-16  Artur Malabarba  <bruce.connor.am@gmail.com>
32341         * lisp/emacs-lisp/tabulated-list.el: Don't error on null header-string.
32342         (tabulated-list-init-header): Document new behavior.
32343         (tabulated-list-print-fake-header): Do nothing if
32344         `tabulated-list--header-string' is nil.
32345         (tabulated-list--header-string): Add a docstring.
32346         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
32347         * etc/NEWS: Document it.
32349 2015-05-15  Leo Liu  <sdl.web@gmail.com>
32351         Revert "Fix cps--gensym"
32352         * lisp/emacs-lisp/generator.el (cps--gensym): Revert commit
32353         fbda511ab8069d0115eafca411a43353b85431b1 on 2015-05-14.
32355 2015-05-15  Glenn Morris  <rgm@gnu.org>
32357         Replace AC_SUBST_FILE in configure with include in Makefiles
32358         * configure.ac (DEPDIR, MKDEPDIR, deps_frag, lwlib_deps_frag)
32359         (oldxmenu_deps_frag, lisp_frag): Remove output variables/files.
32360         (AUTO_DEPEND): New output variable.
32361         * lwlib/Makefile.in (AUTO_DEPEND): New, set by configure.
32362         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
32363         (lwlib_deps_frag): Replace by conditional include.
32364         * lwlib/autodeps.mk: Remove file.
32365         * oldXMenu/Makefile.in (AUTO_DEPEND): New, set by configure.
32366         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
32367         (oldxmenu_deps_frag): Replace by conditional include.
32368         * oldXMenu/autodeps.mk: Remove file.
32369         * src/Makefile.in (AUTO_DEPEND): New, set by configure.
32370         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
32371         (lisp_frag): Replace by an include.
32372         (deps_frag): Replace by conditional include.
32373         * src/autodeps.mk: Remove file.
32375         Tweak japanese.el's loading of dependencies
32376         * lisp/loadup.el: Explicitly load cp51932 and eucjp-ms.
32377         * lisp/language/japanese.el: Use require rather than load.
32378         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
32379         Provide a feature.
32380         * admin/charsets/eucjp-ms.awk, admin/charsets/cp51932.awk:
32381         Provide a feature in the generated file.
32383 2015-05-15  Jan D  <jan.h.d@swipnet.se>
32385         Fix NS warnings
32386         * src/nsmenu.m (ns_popup_dialog)
32387         * src/nsimage.m (initFromXBM:width:height:fg:bg:)
32388         * src/nsfns.m (Fx_create_frame): Remove unused variables.
32389         (Fns_read_file_name): Initialize fname, remove ret.
32390         * src/nsterm.m (ns_draw_window_cursor): Handle DEFAULT_CURSOR in switch.
32391         (ns_get_color, ns_set_horizontal_scroll_bar, keyDown):
32392         Remove unused variable.
32393         (init): Add parantesis in if.
32394         (ns_create_terminal): Assign set_horizontal_scroll_bar_hook.
32396 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
32398         Fix a enum conversion warning in macfont.m
32399         * src/macfont.h (CharacterCollection): Typedef to NSCharacterCollection.
32400         (MAC_CHARACTER_COLLECTION_*): Use the NS variants.
32402 2015-05-15  Eli Zaretskii  <eliz@gnu.org>
32404         * lisp/textmodes/ispell.el (ispell-aspell-find-dictionary):
32405         Support Aspell dictionaries with names like "de-alt".  (Bug#20581)
32407 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
32409         * lisp/cus-start.el: Add ns-confirm-quit.
32411         Fix warnings on OSX 10.10
32412         * src/nsfns.m (MODAL_OK_RESPONSE): New define for different
32413         OSX versions.
32414         (Fns_read_file_name): Check against MODAL_OK_RESPONSE.
32415         (compute_tip_xy): Use convertRectToScreen for OSX >= 10.7
32416         * src/nsmenu.m (initWithContentRect:styleMask:backing:defer:)
32417         * src/nsimage.m (allocInitFromFile, setPixmapData): Only call
32418         setScalesWhenResized for OSX < 10.6.
32419         * src/nsterm.h (EmacsScroller): Declare scrollerWidth.
32420         * src/nsterm.m (ns_copy_bits): New function that does not use
32421         deprecated NSCopyBits.
32422         (ns_scroll_run, ns_shift_glyphs_for_insert): Call ns_copy_bits.
32423         (runAlertPanel): New function.
32424         (applicationShouldTerminate:): Call runAlertPanel.
32425         (initFrameFromEmacs, toggleFullScreen:): Only call
32426         useOptimizedDrawing for OSX < 10.10.
32427         (initFrameFromEmacs:): Only call allocateGState for OSX < 10.10.
32428         (windowWillUseStandardFrame:defaultFrame:): Cast arg to abs to int.
32429         (draggingEntered:): Returns NSDragOperation.
32430         (scrollerWidth): Use scrollerWidthForControlSize for OSX >= 10.7.
32432 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
32434         * lisp/emacs-lisp/package.el: Don't ensure-init during startup.
32435         (package--init-file-ensured): New variable.
32436         (package-initialize, package--ensure-init-file): Use it.
32438 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
32440         Honor :fore/background for XBM on NS (Bug#14969)
32441         * src/nsterm.h (EmacsImage): Add xbm_fg, remove initFromSkipXBM,
32442         initFromXBM takes bg, fg args, remove flip arg.
32443         (ns_image_from_XBM): Add bg, fg args.
32444         * src/image.c (x_create_bitmap_from_data)
32445         (Create_Pixmap_From_Bitmap_Data): ns_image_from_XBM takes bg, fg args.
32446         * src/nsimage.m (ns_image_from_XBM): Add fg, bg args, pass to
32447         initFromXBM.  Remove flip arg.
32448         (initFromSkipXBM): Move code to initFromXBM.
32449         (initFromXBM): Actually set fg and bg, instead of playing alpha games.
32450         Use fg, bg from args (Bug#14969).  Remove if (length) section, was
32451         always false.
32452         Remove bit flipping (bitPat, swt), generated incorrect images when
32453         width/height wasn't a multiple of 8.
32454         (setXBMColor:): Modify planes by comparing to saved xbm_fg.
32455         * src/nsterm.m (ns_draw_fringe_bitmap): initFromXBM takes fg, bg args,
32456         remove flip arg.
32458 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
32460         * lisp/emacs-lisp/package.el: Be more careful with the init file.
32461         (package--ensure-init-file): Check that user-init-file is set,
32462         exists, is readable, and is writable.  (Bug#20584)
32463         Also expand the docstring.
32465 2015-05-14  Wilson Snyder  <wsnyder@wsnyder.org>
32467         Sync with upstream verilog-mode revision 6232468
32468         * lisp/progmodes/verilog-mode.el
32469         (verilog-font-lock-grouping-keywords-face)
32470         (verilog-highlight-grouping-keywords): Fix use of face when
32471         `verilog-highlight-grouping-keywords' set.  Reported by Jeff Pompa.
32472         (verilog-auto-reset): Fix AUTORESET to ignore member resets if
32473         parent is reset, bug906.  Reported by Ken Schmidt.
32474         (verilog-auto-inout-module): Add fourth regexp argument to
32475         AUTOINOUTMODULE and AUTOINOUTCOMP for signals to not match, bug856.
32476         Reported by John Tillema.
32477         (verilog-auto-inst-port): Fix AUTOINST interfaces to not show
32478         modport if signal attachment is itself a modport.  Reported by
32479         Matthew Lovell.
32480         (verilog-auto-reset, verilog-auto-sense-sigs): Fix AUTORESET with
32481         always_comb and always_latch, bug844.  Reported by Greg Hilton.
32482         (verilog-at-constraint-p, verilog-beg-of-statement-1): Fix hanging
32483         with many curly-bracket pairs, bug663.
32484         (verilog-set-auto-endcomments): Fix end comments for functions of
32485         type void, etc.  Reported by Alex Reed.
32486         (verilog-do-indent): Fix electric tab deleting form-feeds.  Note
32487         caused by indent-line-to deleting tabls pre 24.5.
32488         (verilog-nameable-item-re): Fix nameable items that can have an
32489         end-identifier to include endchecker, endgroup, endprogram,
32490         endproperty, and endsequence.  Reported by Alex Reed.
32491         (verilog-label-be): When auto-commenting a buffer, consider
32492         auto-comments on all known keywords (not just a subset thereof).
32493         Reported by Alex Reed.
32494         (verilog-auto-end-comment-lines-re)
32495         (verilog-end-block-ordered-re, verilog-set-auto-endcomments):
32496         Automatically comment property/endproperty blocks to match other
32497         similar blocks like sequence/endsequence, function/endfunction, etc.
32498         Reported by Alex Reed.
32499         (verilog-set-auto-endcomments): Detect the function- or task-name
32500         when auto-commenting blocks that lack an explicit portlist.
32501         Reported by Alex Reed.
32502         (verilog-auto, verilog-auto-insert-last): Add AUTOINSERTLAST to
32503         allow post-AUTO user fixups, bug826.  Reported by Dennis Muhlestein.
32504         (verilog-no-indent-begin-re): When `verilog-indent-begin-after-if'
32505         is nil, fix indenting initial/final to match always statements,
32506         bug825.  Reported by Tim Clapp.
32507         (verilog-extended-complete-re): Fix indentation of DPI-C imports
32508         with c_identifiers, and DPI-C imports, bug557.  Reported by ZeDong
32509         Mao and Jason Forkey.
32510         (verilog-read-decls): Fix parsing typed interfaces.  Fix
32511         AUTOINOUTMODPORT missing types.  Reported by Stephan Bourduas.
32512         Fix localparam not being ignored in AUTOINSTPARAM,
32513         bug889.  Reported by Shannon Hill.
32514         (verilog-auto-output-every): Add regexp to AUTOOUTPUTEVERY,
32515         bug793.  Reported by Pierre-David Pfister.
32516         (verilog-auto-arg-format, verilog-auto-arg-ports):
32517         Add verilog-auto-arg-format to support newlines in AUTOARG.
32518         Reported by Jie Xiao.
32519         (verilog-batch-execute-func): Do not batch re-auto files loaded by
32520         Local Variables.  Fix printing "no changes to be saved" with
32521         verilog-batch.  Reported by Dan Dever.
32522         (verilog-auto-inout-module): Fix AUTOINOUTMODULE not inserting
32523         interface-only modules, bug721.  Reported by Dean Hoyt.
32524         Author: Alex Reed <acreed4@gmail.com>
32525         * lisp/progmodes/verilog-mode.el (verilog-beg-of-statement):
32526         Don't treat '<keyword>:<identifier>' as the start of a labeled
32527         statement, bug905.  Reported by Enzo Chi.
32528         (verilog-directive-re, verilog-compiler-directives)
32529         (verilog-keywords): Match full set of IEEE 2012-1800 compiler
32530         directives (plus some extras) when determining indentation, bug
32531         901.  Reported by Bernd Beuster.
32532         (verilog-at-constraint-p): Fix indentation of coverpoint bins if
32533         iff expression doesn't start with word-character, bug900.
32534         (verilog-optional-signed-range-re, verilog-optional-signed-re):
32535         Fix incorrect indentation/alignment of unsigned declarations,
32536         bug897.
32537         (verilog-looking-back, verilog-in-attribute-p): Fix labeling of
32538         always constructs, bug895.
32539         (verilog-calc-1): Fix verilog-mode constraint indentation, bug324.
32540         Reported by Eric Mastromarchi.
32541         (verilog-beg-of-statement): Fix indenting for some forms of
32542         constraintsm bug433.  Reported by Brad Parker.  Fix indentation of
32543         continued assignment incorrect if first line ends with ']', bug437.
32544         Reported by Dan Dever.  Fix indention of cover inside an
32545         ifdef, bug 862.  Reported by Bernd Beuster.  Fix labeling do-while
32546         blocks, bug842.
32547         (verilog-preprocessor-re): Fix fork/end UNMATCHED warning, bug859.
32548         Reported by Kaushal Modi.
32549         (verilog-set-auto-endcomments): Fix endlabel end comments, bug888.
32550         (verilog-backward-token): Fix indenting sensitivity lists with
32551         named events, bug840.  Reed.
32552         (verilog-no-indent-begin-re): Fix `verilog-indent-begin-after-if'
32553         nil not honoring 'forever', 'foreach', and 'do' keywords.
32555 2015-05-14  Paul Eggert  <eggert@cs.ucla.edu>
32557         Check for invalid GTK+ monitor scales
32558         * src/gtkutil.c (xg_get_gdk_scale): Return 1 for invalid scales,
32559         INT_MAX for too-large scales.  All callers changed to assume the
32560         result is valid (Bug#20432).
32561         (xg_frame_set_char_size, xg_update_scrollbar_pos):
32562         Calculate scale only if needed.
32563         Show ASCII approximations instead.
32565 2015-05-14  Eli Zaretskii  <eliz@gnu.org>
32567         Fix daemon crashes when linum-mode is turned on early on
32568         * src/window.c (Fwindow_end): Don't try calling display engine
32569         functions on initial-frame frame.  (Bug#20565)
32571         Fix selective diff browsing in Ediff
32572         * lisp/vc/ediff-util.el (ediff-focus-on-regexp-matches):
32573         Go to the beginning of the region before searching for the
32574         ediff-regexp-focus-* regexps.  (Bug#20568)
32576 2015-05-14  Jan D  <jan.h.d@swipnet.se>
32578         Fixes bug#20142
32579         * src/gtkutil.c (delete_cb): Don't send delete event here, it does
32580         arrive in the main loop, even for Gtk 3 (Bug#20142).
32582         Don't access display after i/o error (Bug#19147).
32583         * src/xterm.c (x_connection_closed): Add third arg ioerror.
32584         If ioerror, set display to 0 (Bug#19147).
32585         (x_error_quitter): Call x_connection_closed with third arg false.
32586         (x_io_error_quitter): Call x_connection_closed with third arg true.
32588         Handle GTK_SCALE, fixes Bug#20432.
32589         * src/gtkutil.c (xg_get_gdk_scale): New function.
32590         (xg_frame_set_char_size)
32591         (x_wm_set_size_hint, xg_get_default_scrollbar_width)
32592         (xg_get_default_scrollbar_height)
32593         (xg_update_horizontal_scrollbar_pos): Take GTK_SCALE in to account
32594         when setting sizes (Bug#20432).
32596 2015-05-13  Leo Liu  <sdl.web@gmail.com>
32598         * lisp/emacs-lisp/generator.el (cps--gensym): Fix.
32600 2015-05-13  Glenn Morris  <rgm@gnu.org>
32602         Fix bootstrap (void function cl-member).
32603         * lisp/emacs-lisp/cl-lib.el: Load cl-seq if no cl-loaddefs file.
32604         * lisp/emacs-lisp/cl-seq.el: Provide a feature.
32606 2015-05-13  Stefan Monnier  <monnier@iro.umontreal.ca>
32608         * lisp/loadup.el ("emacs-lisp/cl-generic"): Preload
32609         * src/lisp.mk (lisp): Add emacs-lisp/cl-generic.elc.
32610         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method):
32611         Avoid defalias for closures which are not immutable.
32612         (cl--generic-prefill-dispatchers): New macro.  Use it to prefill
32613         the dispatchers table with various entries.
32614         * lisp/emacs-lisp/ert.el (emacs-lisp-mode-hook):
32615         * lisp/emacs-lisp/seq.el (emacs-lisp-mode-hook): Use add-hook.
32617 2015-05-13  Eli Zaretskii  <eliz@gnu.org>
32619         Improve tagging of C bindings in DEFVAR_*
32620         * src/Makefile.in (TAGS): Add --regex options to tag the C binding
32621         from DEFVAR_*.
32623 2015-05-13  Paul Eggert  <eggert@cs.ucla.edu>
32625         * src/editfns.c (Fformat): Fix use-after-free bug (Bug#20548).
32627 2015-05-12  Glenn Morris  <rgm@gnu.org>
32629         * lisp/progmodes/tcl.el (tcl-filter):
32630         Handle comint-prompt-read-only like gud.el does.  (Bug#20549)
32632         Add basic VC push support
32633         * lisp/vc/vc.el (vc-push): New autoloaded command.
32634         * lisp/vc/vc-hooks.el (vc-prefix-map, vc-menu-map): Add vc-push.
32635         * lisp/vc/vc-bzr.el (vc-bzr--pushpull): New, factored from vc-bzr-pull.
32636         (vc-bzr-pull): Reimplement using vc-bzr--pushpull.
32637         (vc-bzr-push): New.
32638         * lisp/vc/vc-git.el (vc-git--pushpull): New, factored from vc-git-pull.
32639         (vc-git-pull): Reimplement using vc-git--pushpull.
32640         (vc-git-push): New.
32641         * lisp/vc/vc-hg.el (vc-hg--pushpull): New, factored from vc-hg-pull.
32642         (vc-hg-pull, vc-hg-push): Reimplement using vc-hg--pushpull.
32643         * doc/emacs/maintaining.texi (Pulling / Pushing):
32644         Rename from "VC Pull".  Mention pushing.
32645         (VC With A Merging VCS, VC Change Log): Update xrefs.
32646         (Branches): Update menu.
32647         * doc/emacs/emacs.texi: Update menu.
32648         * etc/NEWS: Mention this.
32650 2015-05-12  Nicolas Petton  <nicolas@petton.fr>
32652         Improve the seq pcase pattern and the `seq-let' macro
32653         * lisp/emacs-lisp/seq.el: The pcase pattern now matches only if the
32654         object is a sequence, and binds each element of ARGS to the
32655         corresponding element of the sequence.
32657 2015-05-12  Eli Zaretskii  <eliz@gnu.org>
32659         Fix tags created from DEFVAR_* declarations in C
32660         * src/Makefile.in (TAGS): Improve the --regex argument to etags,
32661         to make tags extracted from DEFVAR_* declarations more accurate.
32663         Add a test suite for etags
32664         * test/etags/: New test suite, adapted from
32665         http://fly.isti.cnr.it/pub/software/unix/etags-regression-test.tar.bz2,
32666         whose original author is Francesco Potortì <pot@gnu.org>.
32668         Fix tagging of symbols in C enumerations
32669         * lib-src/etags.c (consider_token): Don't tag symbols in
32670         expressions that assign values to enum constants.  See
32671         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00291.html
32672         for details.
32673         (C_entries): Reset fvdef to fvnone after processing a preprocessor
32674         conditional and after a comma outside of parentheses.
32676 2015-05-12  Glenn Morris  <rgm@gnu.org>
32678         * lisp/url/url-handlers.el (url-file-name-completion)
32679         (url-file-name-all-completions): Silence compiler.
32681         * lisp/emacs-lisp/chart.el (chart-axis-draw): Replace obsolete alias.
32683         * lisp/play/dunnet.el (dun-dos-boot-msg): Fix time.  (Bug#20554)
32685 2015-05-12  Stefan Monnier  <monnier@iro.umontreal.ca>
32687         * lisp/emacs-lisp/cl-generic.el: Add dispatch on &context arguments
32688         (cl--generic-mandatory-args): Remove.
32689         (cl--generic-split-args): New function.
32690         (cl-generic-define, cl--generic-lambda): Use it.
32691         (cl-generic-define-method): Use it as well, and add support for
32692         context args.
32693         (cl--generic-get-dispatcher): Handle &context dispatch.
32694         (cl--generic-cache-miss): `dispatch-arg' can now be a
32695         context expression.
32696         (cl--generic-dispatchers): Pre-fill.
32697         * test/automated/cl-generic-tests.el (sm-generic-test-12-context):
32698         New test.
32700 2015-05-11  Glenn Morris  <rgm@gnu.org>
32702         * make-dist: Abort if "make ChangeLog" fails.  Add "--no-changelog".
32704 2015-05-11  Stefan Monnier  <monnier@iro.umontreal.ca>
32706         * lisp/term/xterm.el: Fix xterm-paste handling for rxvt
32707         * lisp/term/rxvt.el: Require term/xterm.
32708         (rxvt-function-map): Use xterm-rxvt-function-map.
32709         (rxvt-standard-colors): Move before first use.
32710         (terminal-init-rxvt): Use xterm--push-map and
32711         xterm-register-default-colors.
32712         (rxvt-rgb-convert-to-16bit, rxvt-register-default-colors): Remove.
32713         * lisp/term/xterm.el (xterm-rxvt-function-map): New var.
32714         Move shared bindings between rxvt and xterm to it.
32715         (xterm-function-map): Use it.  Move the xterm-paste binding to
32716         xterm-rxvt-function-map (bug#20444).
32717         (xterm-standard-colors): Move before first use.
32718         (xterm--push-map): New function.
32719         (xterm-register-default-colors): Take standard colors as argument.
32720         (terminal-init-xterm): Use it.  Adjust call to
32721         xterm-register-default-colors.
32723 2015-05-11  Glenn Morris  <rgm@gnu.org>
32725         * lisp/term/x-win.el: Quieten --without-x compilation.
32726         (x-own-selection-internal, x-disown-selection-internal)
32727         (x-selection-owner-p, x-selection-exists-p, x-get-selection-internal):
32728         Declare.
32730         * Makefile.in (emacslog): Remove srcdir.
32731         (ChangeLog): Update for the above.
32733 2015-05-10  Fabián Ezequiel Gallina  <fgallina@gnu.org>
32735         python.el: better limit for looking-back calls
32736         * lisp/progmodes/python.el (python-shell-accept-process-output):
32737         Use last comint prompt start as limit for looking-back.
32739 2015-05-10  Stefan Monnier  <monnier@iro.umontreal.ca>
32741         CEDET (srecode-insert-fcn): Fix use of oref on a class
32742         * lisp/cedet/srecode/insert.el (srecode-insert-fcn): Fix use of oref
32743         on a class.  Reported by Pierre Lorenzon.
32744         (srecode-template-inserter-point): Remove declaration.
32746         CEDET (srecode-create-dictionary): Avoid obsolete object name
32747         * lisp/cedet/srecode/dictionary.el (srecode-create-dictionary):
32748         Don't use a symbol as an object name.  Reported by Pierre Lorenzon.
32750 2015-05-10  Paul Eggert  <eggert@cs.ucla.edu>
32752         C-x 8 shorthands for curved quotes, Euro, etc.
32753         Although C-x 8 lets you insert arbitrary Unicode characters,
32754         it's awkward to use this to insert commonly used symbols such as curved
32755         quotes, the Euro symbol, etc.  This patch adds simpler sequences for
32756         characters commonly found in English text and in basic math.
32757         For example, assuming the Alt key works on your keyboard and iso-transl
32758         is loaded, one can now type "A-[" instead of "A-RET LEFT SIN TAB RET"
32759         to get the character "‘" (U+2018 LEFT SINGLE QUOTATION MARK).
32760         (Bug#20499)
32761         * doc/emacs/mule.texi (Unibyte Mode):
32762         A few other printing characters now work too.
32763         * etc/NEWS: Document this.
32764         * lisp/international/iso-transl.el (iso-transl-char-map):
32765         Also support the following characters:
32766         ‐ ‑ ‒ – — ― ‘ ’ “ ” † ‡ • ′ ″ € № ← → ↔ − ≈ ≠ ≤ ≥
32768 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
32770         Add xref-find-regexp
32771         * lisp/progmodes/xref.el (xref-find-function): Describe the
32772         `matches' action.
32773         (xref-find-regexp): New command, using it.
32774         (xref-collect-references): Rename to xref-collect-matches.
32775         (xref--collect-reference): Rename to xref--collect-match.
32776         (xref-collect-matches, xref--collect-match): Accept new argument,
32777         KIND.  Update accordingly.
32778         (xref--regexp-to-extended): New function.
32779         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Support the
32780         `matches' action.
32781         (elisp--xref-find-matches): Accept new argument.  Resolve a FIXME.
32782         * lisp/progmodes/etags.el (etags-xref-find):
32783         Support the `matches' action.
32784         (etags--xref-find-matches): New function.
32786 2015-05-10  Glenn Morris  <rgm@gnu.org>
32788         * Makefile.in: Fixes for recent change-history changes.
32789         (change-history-nocommit): Update footer regexp.
32790         Ensure output script stays executable.
32792 2015-05-10  Nicolas Petton  <nicolas@petton.fr>
32794         New version of `seq-let' based on a pcase pattern
32795         * lisp/emacs-lisp/seq.el (seq-let): Define the macro in terms of a
32796         pcase pattern if `pcase-defmacro' is defined (Emacs>=25.1).
32798 2015-05-10  Przemysław Wojnowski  <esperanto@cumego.com>
32800         Add basic HTML5 tags and a template
32801         * lisp/textmodes/sgml-mode.el: Basic HTML5 support.
32802         (html-tag-alist): Add HTML5 tags.
32803         (html-tag-help): Add new tags descriptions.
32804         (html-navigational-links): Template for nav links.
32805         (html-html5-template): Template for a HTML5 page.
32807 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
32809         semantic/symref/grep: Don't use word boundaries
32810         * lisp/cedet/semantic/symref/grep.el
32811         (semantic-symref-perform-search): Instead of wrapping input in
32812         word boundaries, check that the characters before and after are
32813         not word constituents.
32815         semantic/symref/grep: Support regexp search
32816         * lisp/cedet/semantic/symref.el
32817         (semantic-symref-hit-to-tag-via-buffer): Don't regexp-quote when
32818         the search type is regexp.
32819         * lisp/cedet/semantic/symref/grep.el
32820         (semantic-symref-perform-search): Support the regexp search type.
32821         Pass -E to Grep when it's used.
32823         semantic-symref-regexp: Allow to input an arbitrary string
32824         * lisp/cedet/semantic/symref/list.el (semantic-symref-regexp):
32825         Allow to input an arbitrary string interactively.
32827         Remove tag-symbol-match-p from etags-xref-find-definitions-tag-order
32828         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
32829         Remove tag-symbol-match-p from the default value
32830         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00292.html).
32832         Declare find-tag obsolete
32833         * lisp/progmodes/etags.el (find-tag): Declare obsolete in favor of
32834         xref-find-definitions.
32836 2015-05-10  Jan D  <jan.h.d@swipnet.se>
32838         Draw composite string correctly (Bug#20537)
32839         * src/nsterm.m (ns_draw_composite_glyph_string_foreground):
32840         New function.
32841         (ns_draw_glyph_string): Call it.
32843 2015-05-09  Eli Zaretskii  <eliz@gnu.org>
32845         Avoid infloop in ERC
32846         * lisp/simple.el (line-move-to-column): Ignore field boundaries
32847         while computing line beginning position.  (Bug#20498)
32849 2015-05-08  Glenn Morris  <rgm@gnu.org>
32851         * Makefile.in (ChangeLog): No longer pass "srcprefix"; cd instead.
32852         * build-aux/gitlog-to-emacslog: Check called from right directory.
32853         (srcprefix): Remove.
32855         * build-aux/gitlog-to-emacslog: Get rid of "distprefix".
32856         * Makefile.in (ChangeLog): No longer pass "distprefix".
32857         * make-dist: Update "make ChangeLog" syntax for the above change.
32859         * build-aux/gitlog-to-emacslog: Don't hard-code "ChangeLog.2".
32860         * Makefile.in (ChangeLog): Pass -n to gitlog-to-emacslog.
32862         * build-aux/gitlog-to-emacslog: Add "for earlier changes" to footer.
32864         Add command-line option-parsing to gitlog-to-emacslog
32865         * build-aux/gitlog-to-emacslog: Add command-line options.
32866         By default, refuse to remove an existing output file.
32867         * Makefile.in (CHANGELOG): Update default.
32868         (ChangeLog): Do not test for existing file.
32869         (change-history-nocommit): Ensure temp file does not exist.
32871         Quieten --without-x compilation
32872         * lisp/term/common-win.el: Provide a feature.
32873         * lisp/term/x-win.el (term/common-win): Require it.
32875         * lisp/dired-aux.el (dired-do-print): Require lpr.
32877         Quieten compilation, eg in --without-x builds
32878         * lisp/dired-aux.el (lpr-printer-switch):
32879         * lisp/frame.el (tool-bar-height):
32880         * lisp/linum.el (font-info):
32881         * lisp/window.el (font-info, overflow-newline-into-fringe)
32882         (tool-bar-height):
32883         * lisp/emacs-lisp/package-x.el (tar-data-buffer):
32884         * lisp/gnus/gnus-util.el (iswitchb-mode):
32885         * lisp/mail/rmailmm.el (libxml-parse-html-region):
32886         * lisp/net/nsm.el (gnutls-peer-status)
32887         (gnutls-peer-status-warning-describe):
32888         * lisp/net/shr.el (libxml-parse-xml-region):
32889         * lisp/url/url-http.el (gnutls-peer-status): Declare.
32891 2015-05-08  Stefan Monnier  <monnier@iro.umontreal.ca>
32893         CEDET (srecode-pop, srecode-peek): Don't use `subclass'
32894         * lisp/cedet/srecode/insert.el (srecode-pop, srecode-peek): Don't use
32895         `subclass' since they're never called with a class.
32896         (srecode-insert-method, srecode-insert-subtemplate): Avoid obsolete
32897         srecode-dictionary-child-p.
32899 2015-05-08  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
32901         * lisp/help.el (help--binding-locus): Document argument POSITION.
32902         (Bug#20530)
32904 2015-05-08  Paul Eggert  <eggert@cs.ucla.edu>
32906         Merge from gnulib
32907         * doc/misc/texinfo.tex: Get latest version.
32909 2015-05-08  Oleh Krehel  <ohwoeowho@gmail.com>
32911         ffap.el (ffap-read-file-or-url): Fix completing-read call
32912         * lisp/ffap.el (ffap-read-file-or-url): The HIST argument of
32913         `completing-read' should be a symbol.
32915 2015-05-08  Eli Zaretskii  <eliz@gnu.org>
32917         Verify file modifications by other programs
32918         * src/filelock.c (lock_file): Check whether the file was modified
32919         since it was visited even if 'create-lockfiles' is nil.  (Bug#18828)
32921         Fix keyboard macros that include function keys
32922         * src/keyboard.c (read_char_minibuf_menu_prompt): Record function
32923         keys in the macro before returning.  (Bug#20454)
32925 2015-05-08  Glenn Morris  <rgm@gnu.org>
32927         * build-aux/gitlog-to-changelog: Treat "Tiny-change" like
32928         "Copyright-paperwork-exempt".  (Bug#20324)
32930         * lisp/vc/log-edit.el: Handle "(tiny change)".  (Bug#20324)
32931         (log-edit-rewrite-tiny-change): New variable.
32932         (log-edit-insert-changelog): Maybe add "Copyright-paperwork-exempt".
32933         (log-edit-changelog-ours-p): Set log-edit-author to a cons.
32934         * etc/NEWS: Mention this.
32936         * lisp/calc/calc.el (math-zerop): Declare.
32938         * lisp/emacs-lisp/eieio-opt.el (help-fns-short-filename): Declare.
32940 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
32942         * lisp/emacs-lisp/subr-x.el (if-let): Fix debug spec.
32943         Support the case when BINDINGS is a single tuple.  (Bug#20525)
32945         * etc/NEWS: Fix typo in previous commit
32946         (14bb519f1034ddb38ce375cbad7095d9b07f8b26).
32948 2015-05-07  Jan D  <jan.h.d@swipnet.se>
32950         * configure.ac: Warn for multiple display crash for all Gtk+ versions.
32951         Output URL to Gtk+ bug (Bug#20452).
32953         * lisp/term/ns-win.el (ns-paste-secondary): Use gui-get-selection.
32955 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
32957         * lisp/emacs-lisp/package.el: New "external" package status.
32958         An external package is any installed package that's not built-in
32959         and not from `package-user-dir', which usually means it's from an
32960         entry in `package-directory-list'.  They are treated much like
32961         built-in packages, in that they cannot be through the Package Menu
32962         deleted and are not considered for upgrades.
32963         (package-desc-status): Identify if a package is installed outside
32964         `package-user-dir'.
32965         (package-menu--print-info-simple)
32966         (package-menu--status-predicate): Add support for it.
32967         * etc/NEWS: Document it.
32969 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
32971         * lisp/mail/rmail.el: Use lexical-binding.
32972         (rmail-bury): Remove unused var `buffer-to-bury'.
32973         (rmail-get-new-mail): Remove unused vars `opoint' and `success'.
32974         (rmail-parse-url): Remove unused var `proto', `user', and `host'.
32975         (rmail-unrmail-new-mail-maybe): Remove unused var `new-file'.
32976         (rmail-insert-inbox-text): Remove unused var `movemail'.
32977         (rmail-add-mbox-headers): Remove unused var `limit'.
32978         (rmail-undelete-previous-message): Remove unused var `value'.
32979         (rmail-reply): Remove unused vars `resent-to', `resent-cc',
32980         `resent-reply-to'.
32981         (rmail-mime-mbox-buffer, rmail-mime-view-buffer): Declare.
32982         (rmail-restore-desktop-buffer): Rename arguments.
32984 2015-05-06  Glenn Morris  <rgm@gnu.org>
32986         * Makefile.in (change-history-commit): Add missing piece of previous.
32988         Avoid unnecessary bumping of Makefile.in's timestamp
32989         * Makefile.in (gen_origin): Move to gitlog-to-emacslog.
32990         (emacslog): New variable.
32991         (ChangeLog): Use $emacslog.  Don't pass $gen_origin.
32992         (unchanged-history-files): Use $emacslog rather than Makefile.in.
32993         (change-history-nocommit): Store hash in $emacslog.
32994         * build-aux/gitlog-to-emacslog (gen_origin): Move default here.
32995         * admin/update_autogen (changelog_files): Update for the above.
32997         * Makefile.in: Don't always insist on removing existing "ChangeLog".
32998         (CHANGELOG): New variable.
32999         (no-ChangeLog): Remove.
33000         (ChangeLog): Replace "no-ChangeLog"; pass output file to script.
33001         (change-history-nocommit): Use a temp file rather than insisting
33002         on deletion of any existing "ChangeLog".
33004         * build-aux/gitlog-to-emacslog: Allow specification of output.
33006         * admin/update_autogen: Add option to update ChangeLog.
33007         (usage): Mention -H.
33008         (changelog_flag, changelog_n, changelog_files): New variables.
33009         (main): Check for -H, and maybe run change-history-nocommit.
33011 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
33013         * lisp/subr.el (delete-dups): Pre-size the hashtable.
33015         * lisp/emacs-lisp/cl.el (define-modify-macro): Make sure
33016         cl--arglist-args is defined (bug#20517).
33018 2015-05-06  Glenn Morris  <rgm@gnu.org>
33020         * Makefile.in (change-history-nocommit): New.
33022 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
33024         * lisp/cedet/pulse.el (pulse-momentary-unhighlight): Only cancel
33025         timer when it is non-nil
33026         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00223.html).
33028 2015-05-06  Glenn Morris  <rgm@gnu.org>
33030         Quieten CEDET compilation
33031         * lisp/cedet/semantic/db-el.el (semanticdb-elisp-sym->tag):
33032         Invert fboundp test to quieten on current Emacs.
33033         * lisp/cedet/ede/config.el (ede-shell-run-something)
33034         (semanticdb-file-table-object, semanticdb-needs-refresh-p)
33035         (semanticdb-refresh-table): Declare.
33036         (ede-preprocessor-map): Require semantic/db.
33038         Quieten cc-mode compilation
33039         * lisp/progmodes/cc-awk.el (c-forward-sws):
33040         * lisp/progmodes/cc-cmds.el (c-forward-subword, c-backward-subword):
33041         Declare.
33043 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
33045         * lisp/subr.el (delete-dups): Avoid nreverse.
33047 2015-05-06  Artur Malabarba  <bruce.connor.am@gmail.com>
33049         * lisp/subr.el (delete-dups): Make it destructive again.
33051 2015-05-06  Paul Eggert  <eggert@cs.ucla.edu>
33053         * doc/lispref/sequences.texi (Sequence Functions): Fix quoting.
33055 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
33057         * lisp/emacs-lisp/testcover.el: Don't use edebug--read (bug#20487).
33058         * lisp/emacs-lisp/testcover.el: Use lexical-binding.
33059         (testcover--read): Rename from testcover-read.  Change calling
33060         convention.  Use edebug-read-and-maybe-wrap-form now that edebug-read
33061         is gone.
33062         (testcover-start): Use add-function.  Move edebug-all-defs binding to
33063         testcover--read.
33064         (testcover-this-defun): Tighten scope of edebug-all-defs binding.
33065         (testcover-mark): Remove unused var `item'.
33066         * src/lread.c (syms_of_lread): Default load-read-function to `read'.
33068 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
33070         * lisp/subr.el (delete-dups): When there are more than 100 candidates,
33071           use a hash table.  This can result in ~500 times speed-up for typical
33072           collections of size 5000, like that of `load-library'.
33074 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
33076         CEDET: Avoid `oref' on classes in a few more cases
33077         * lisp/cedet/ede/generic.el (ede-find-target):
33078         * lisp/cedet/ede.el (ede-project-forms-menu): Avoid `oref' on classes.
33079         * lisp/cedet/semantic/bovine/gcc.el (semantic-gcc-setup): Remove unused
33080         var `prefix'.
33082         * lisp/cedet/semantic/symref/grep.el: Fix unused var warnings.
33083         (grepflags, greppattern): Declare.
33084         (semantic-symref-perform-search): Remove unused var `pat'.
33086         CEDET (srecode-compile-inserter): Avoid `oref' on classes
33087         * lisp/cedet/srecode/compile.el (srecode-compile-inserter):
33088         Avoid `oref' on classes (bug#20491).
33089         (srecode-compile-split-code): Remove unused var `key'.
33091 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
33093         Clean up pulse.el a little
33094         * lisp/cedet/pulse.el (pulse): Remove.
33095         (pulse-momentary-timer): Save instead of the stop time.
33096         (pulse-momentary-highlight-overlay):
33097         Call pulse-momentary-unhighlight first thing.
33098         Treat pulse-momentary-overlay as a single value, not a list.
33099         Save the created timer.  Only pass the stop time to the timer.
33100         (pulse-tick): Update accordingly.
33101         (pulse-momentary-unhighlight): Treat pulse-momentary-overlay as a
33102         single value.  Cancel the timer.
33104 2015-05-06  Tassilo Horn  <tsdh@gnu.org>
33106         * lisp/textmodes/reftex-cite.el (reftex-format-bib-entry):
33107         Support the biblatex journaltitle field.
33109 2015-05-05  Glenn Morris  <rgm@gnu.org>
33111         Minor declare-function improvement
33112         * lisp/emacs-lisp/bytecomp.el
33113         (byte-compile-macroexpand-declare-function):
33114         Handle declarations after calls.  (Bug#20509)
33116         * lisp/progmodes/js.el (js--optimize-arglist): Remove declaration.
33118         * lisp/w32-fns.el (w32-shell-name): Silence compiler.
33120 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
33122         Pulse using a timer
33123         * lisp/cedet/pulse.el (pulse-momentary-stop-time): New variable.
33124         (pulse-momentary-highlight-overlay): Set up the timer instead of
33125         calling `pulse'
33126         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/).
33127         (pulse-tick): New function.
33128         (pulse-momentary-unhighlight): Cut off the stop time.
33129         (pulse-delay): Update the docstring WRT to not using sit-for.
33131         Add semantic/symref/grep file patterns for ruby-mode
33132         * lisp/cedet/semantic/symref/grep.el
33133         (semantic-symref-filepattern-alist): Add patterns for ruby-mode.
33134         Clarify the docstring.
33136         Don't require match
33137         * lisp/progmodes/xref.el (xref--read-identifier): Don't require
33138         match.  That doesn't work for every command, and some identifier
33139         completion tables are bound to be imperfect anyway.
33141 2015-05-05  Stefan Monnier  <monnier@iro.umontreal.ca>
33143         * lisp/cedet/semantic/grammar.el: Fix compiler warnings (bug#20505).
33144         (semantic-grammar--template-expand): New function.
33145         (semantic-grammar-header, semantic-grammar-footer): Use it.
33146         (semantic-grammar--lex-block-specs): Remove unused var `block-spec'.
33147         (semantic-grammar-file-regexp): Refine regexp.
33148         (semantic-grammar-eldoc-get-macro-docstring):
33149         Use elisp-get-fnsym-args-string when available.
33150         (semantic-idle-summary-current-symbol-info): Use new elisp-* names
33151         instead of the old eldoc-* names.
33152         * lisp/emacs-lisp/eldoc.el (eldoc-docstring-format-sym-doc): Move back
33153         from elisp-mode.el.  Tweak calling convention.
33154         * lisp/progmodes/elisp-mode.el (package-user-dir): Declare.
33155         (elisp-get-fnsym-args-string): Add `prefix' argument.  Rename from
33156         elisp--get-fnsym-args-string.
33157         (elisp--highlight-function-argument): Add `prefix' arg.
33158         (elisp-get-var-docstring): Rename from elisp--get-var-docstring.
33159         (elisp--docstring-format-sym-doc): Move back to eldoc.el.
33161 2015-05-05  Glenn Morris  <rgm@gnu.org>
33163         * lisp/help-fns.el (describe-function-1):
33164         Handle builtins with advertised calling conventions.  (Bug#20479)
33166 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
33168         Merge branch 'seq-let'
33170         Update `seq-let' documentation
33171         * doc/lispref/sequences.texi: Update the documentation of `seq-let'
33172         with the support of  `&rest'.
33174         Add support for &rest in `seq-let'
33175         * lisp/emacs-lisp/seq.el (seq--make-bindings): Add support for `&rest'
33176         in the argument list.
33177         * test/automated/seq-tests.el: Add a test for parsing and binding
33178         `&rest' in `seq-let'.
33180 2015-05-05  Pierre Lorenzon  <devel@pollock-nageoire.net>  (tiny change)
33182         * lisp/emacs-lisp/eieio-custom.el (eieio-object-value-get):
33183         Add missing increment (Bug#20467).
33184         (eieio-object-value-create): Adjust to new slots representation
33185         (Bug#20467).
33186         (eieio-object-value-create): Fix missed adjustment to new
33187         representation of slots metadata.
33189 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
33191         * lisp/emacs-lisp/seq.el (seq--make-bindings): Improve the docstring.
33193 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
33195         Work around "Attempt to modify read-only object"
33196         * lisp/progmodes/elisp-mode.el (elisp--xref-format): Extract from
33197         elisp--xref-find-definitions, to work around "Attempt to modify
33198         read-only object" error.
33200         Only skip some variables that have function counterparts
33201         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
33202         Only skip minor-mode-named variable if it's defined in a Lisp
33203         file, and it's in minor-mode-list (bug#20506).
33204         * test/automated/elisp-mode-tests.el
33205         (elisp-xref-finds-both-function-and-variable)
33206         (elisp-xref-finds-only-function-for-minor-mode): New tests.
33208 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
33210         * lisp/progmodes/xref.el (xref--location-at-point): Revert the
33211         previous change.
33212         (xref--insert-xrefs): Buttonize the whole line, including the
33213         number at the beginning.
33215         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
33216         Make sure we're inside the let bindings.
33217         * test/automated/elisp-mode-tests.el
33218         (elisp-completes-functions-after-let-bindings): New test.
33220 2015-05-04  Glenn Morris  <rgm@gnu.org>
33222         * lisp/cedet/semantic/grammar.el (eldoc-function-argstring)
33223         (eldoc-docstring-format-sym-doc, eldoc-last-data-store)
33224         (eldoc-get-fnsym-args-string, eldoc-get-var-docstring):
33225         Remove outdated declarations.
33227         Replace instances of "(eval-when-compile (autoload ...))"
33228         * lisp/gnus/gnus-art.el (nneething-get-file-name):
33229         Declare rather than autoload.
33230         * lisp/gnus/gnus-async.el (gnus-html-prefetch-images):
33231         Remove pointless autoload.
33232         * lisp/gnus/gnus-sync.el (gnus-group-topic): Autoload at run-time.
33233         (gnus-topic-create-topic, gnus-topic-enter-dribble):
33234         Declare rather than autoload.
33235         * lisp/gnus/mm-archive.el (gnus-recursive-directory-files)
33236         (mailcap-extension-to-mime): Autoload at run-time.
33237         * lisp/gnus/mm-util.el (latin-unity-massage-name)
33238         (latin-unity-maybe-remap, latin-unity-representations-feasible-region)
33239         (latin-unity-representations-present-region):
33240         Declare rather than autoload.
33241         * lisp/gnus/mml-smime.el (epg-make-context)
33242         (epg-passphrase-callback-function): Autoload at run-time.
33243         (epg-context-set-signers, epg-context-result-for)
33244         (epg-new-signature-digest-algorithm)
33245         (epg-verify-result-to-string, epg-list-keys, epg-verify-string)
33246         (epg-sign-string, epg-encrypt-string)
33247         (epg-context-set-passphrase-callback, epg-sub-key-fingerprint)
33248         (epg-configuration, epg-expand-group, epa-select-keys):
33249         Declare rather than autoload.
33250         * lisp/gnus/nnir.el (nnimap-change-group, nnimap-make-thread-query):
33251         Autoload at run-time.
33252         (gnus-group-topic-name, nnimap-buffer, nnimap-command)
33253         (gnus-registry-get-id-key, gnus-registry-action):
33254         Declare rather than autoload.
33255         * lisp/gnus/nnmail.el (mail-send-and-exit): Autoload at run-time.
33256         * lisp/gnus/spam.el (spam-stat-buffer-change-to-non-spam)
33257         (spam-stat-buffer-change-to-spam, spam-stat-buffer-is-non-spam)
33258         (spam-stat-buffer-is-spam, spam-stat-load, spam-stat-save)
33259         (spam-stat-split-fancy): Remove pointless autoloads.
33260         * lisp/net/mairix.el: Load gnus-util when compiling.
33261         (gnus-group-read-ephemeral-group, gnus-summary-toggle-header)
33262         (message-field-value): Declare rather than autoload.
33263         (mairix-gnus-ephemeral-nndoc, mairix-gnus-fetch-field):
33264         Check gnus-alive-p is fbound.
33265         (vm-quit, vm-visit-folder, vm-select-folder-buffer)
33266         (vm-check-for-killed-summary, vm-error-if-folder-empty)
33267         (vm-get-header-contents, vm-select-marked-or-prefixed-messages):
33268         Declare rather than autoload.
33270         * lisp/gnus/mm-view.el (epg-decrypt-string): Autoload.
33272         * lisp/gnus/mml-smime.el (epg-key-sub-key-list)
33273         (epg-sub-key-capability, epg-sub-key-validity): Fix declarations.
33275         * lisp/progmodes/elisp-mode.el (xref-collect-references): Declare.
33277         * lisp/emacs-lisp/debug.el (help-xref-interned): Update declaration.
33279         * lisp/allout.el (epg-user-id-string, epg-key-user-id-list):
33280         * lisp/emacs-lisp/package.el (epg-signature-status):
33281         Fix declarations.
33283         * lisp/play/gametree.el (gametree-show-children-and-entry)
33284         (gametree-apply-layout, gametree-mouse-show-subtree)
33285         (gametree-mouse-hide-subtree): Replace obsolete outline aliases.
33287         * lisp/emacs-lisp/check-declare.el (check-declare-verify):
33288         Handle cl-defgeneric, cl-defmethod.
33290 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
33292         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions):
33293         Highlight both type and symbol name.
33295         Insert, highlight and align line numbers in xref output
33296         * lisp/progmodes/etags.el (xref-location-line): Specialize for
33297         xref-etags-location.
33298         * lisp/progmodes/xref.el (xref-location-line): New generic method.
33299         (xref-file-location): Add reader for the line slot.
33300         (xref--location-at-point): Skip to the `xref-location' property.
33301         (xref--collect-reference): Drop the line number from description.
33302         (xref--insert-xrefs): Insert, highlight and align line numbers.
33304 2015-05-04  Daniel Colascione  <dancol@dancol.org>
33306         * lisp/simple.el (save-mark-and-excursion--save)
33307         (save-mark-and-excursion--restore): Fix previous commit
33308         (255a011f0ecf004b31c59945b10154b10fac3af1).
33310 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
33312         Don't pulse the indentation, or the newline
33313         * lisp/cedet/pulse.el (pulse-lighten-highlight)
33314         (pulse-reset-face): Fall back to the inherited background
33315         attribute in FACE.
33316         (pulse-momentary-highlight-region): Add autoload cookie.
33317         * lisp/progmodes/xref.el (xref--maybe-pulse): Don't highlight the
33318         indentation, or the newline, if the line's non-empty
33319         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00118.html).
33321 2015-05-04  Daniel Colascione  <dancol@dancol.org>
33323         Add `save-mark-and-excursion', which has the old
33324         `save-excursion' behavior
33325         * doc/lispref/positions.texi (Excursions):
33326         Document `save-mark-and-excursion'.
33327         * lisp/font-lock.el (font-lock-fontify-block):
33328         Use `save-mark-and-excursion' instead of `save-excursion',
33329         restoring Emacs 24 behavior.
33330         * lisp/simple.el (save-mark-and-excursion--save)
33331         (save-mark-and-excursion--restore): New functions.
33332         (save-mark-and-excursion): New user macro.
33333         * src/editfns.c (Fsave_excursion): Mention `save-mark-and-excursion'
33334         in `save-excursion' documentation.
33336 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
33338         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
33339         Classify lone symbol inside let varlist as variable.
33340         * test/automated/elisp-mode-tests.el
33341         (completest-variables-in-let-bindings): New test.
33343         Add xref-pulse-on-jump
33344         * lisp/cedet/pulse.el (pulse-momentary-highlight-one-line):
33345         Add autoload cookie.
33346         * lisp/progmodes/xref.el (xref-pulse-on-jump): New option.
33347         (xref--maybe-pulse): New function.
33348         (xref-pop-marker-stack, xref--pop-to-location)
33349         (xref--display-position): Use it.
33350         (xref--location-at-point): Use back-to-indentation.
33352 2015-05-04  Stefan Monnier  <monnier@iro.umontreal.ca>
33354         lisp/org/org-{macs,list}.el: Fix lexical warnings
33355         * lisp/org/org-list.el (org-list-struct): Remove unused var `ind'.
33356         (org-list-get-next-item, org-list-get-prev-item)
33357         (org-list-get-children): Mark unused arg `struct'.
33358         (org-list-use-alpha-bul-p): Remove unused var `bul'.
33359         (org-toggle-checkbox): Mark unused var.
33360         (org-update-checkbox-count): Remove unused var `box-num'.
33361         (org-adapt-indentation): Declare.
33362         (org-list-parse-list): Declare var instead of adding a dummy duplicate.
33363         (org-list-send-list): Remove unused var `txt'.
33364         (org-list-to-latex, org-list-to-texinfo): Mark unused arg `params'.
33365         (org-list-to-subtree): Add prefix to dyn-bind var, and declare them.
33366         * lisp/org/org-macs.el: Use `declare'.
33367         (org-with-limited-levels): Declare dyn-bound vars.
33369 2015-05-04  Eli Zaretskii  <eliz@gnu.org>
33371         Fix minor issues with CEDET on MS-Windows
33372         * lisp/cedet/semantic/symref/idutils.el
33373         (semantic-symref-parse-tool-output-one-line): Fix the search
33374         regexp to match MS-Windows file names with drive letters.
33375         (Bug#19468)
33376         * lisp/cedet/semantic/symref/grep.el
33377         (semantic-symref-grep-use-template): Remove "--color=always" from
33378         Grep switches on MS-Windows.
33379         (semantic-symref-grep-shell): Use shell-file-name as the default
33380         value, so this works not only on Posix platforms.
33381         (semantic-symref-perform-search): Use shell-quote-argument instead
33382         of literal '..' for portable quoting of Grep command-line
33383         argument.  Use shell-command-switch instead of a literal "-c".
33384         * lisp/cedet/semantic/bovine/gcc.el
33385         (semantic-gcc-get-include-paths): Use file-name-absolute-p to test
33386         for an absolute file name in a portable way.
33388 2015-05-04  Artur Malabarba  <bruce.connor.am@gmail.com>
33390         * lisp/emacs-lisp/package.el: Remove `package--silence' variable.
33391         (package-import-keyring, package-refresh-contents)
33392         (package-compute-transaction, package--save-selected-packages)
33393         (package-install-from-archive, package-delete)
33394         (package-menu--perform-transaction): Use `inhibit-message' instead.
33395         (package--compile): Set `warning-minimum-level' to :error.
33397 2015-05-03  Stefan Monnier  <monnier@iro.umontreal.ca>
33399         * lisp/term/screen.el (xterm-screen-extra-capabilities): New custom.
33400         (terminal-init-screen): Use it (bug#20356).
33401         * lisp/term/xterm.el: Provide `term/xterm' instead of `xterm'.
33402         (xterm--extra-capabilities-type): New const.
33403         (xterm-extra-capabilities): Use it.
33404         (xterm--version-handler): Lower the pseudo-version for `screen'.
33406 2015-05-03  Dmitry Gutov  <dgutov@yandex.ru>
33408         * lisp/progmodes/xref.el (xref--insert-xrefs): Tweak the faces.
33409         Always insert a newline at the end (to avoid mouse-face background
33410         tail at the last line).
33412         elisp-completion-at-point: Prioritize being quoted over funpos
33413         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
33414         Only consider function position when not inside quoted form
33415         (bug#20425).
33416         * test/automated/elisp-mode-tests.el: New file.
33418         Stop vc-print-log from jumping to the top
33419         * lisp/vc/vc.el (vc-print-log-internal): Pass nil
33420         GOTO-LOCATION-FUNC to vc-log-internal-common when WORKING-REVISION
33421         is not specified.
33422         (vc-incoming-outgoing-internal): Always pass nil.
33423         (vc-log-internal-common): When GOTO-LOCATION-FUNC is nil, don't
33424         call it, and don't set vc-sentinel-movepoint (bug#15322).
33425         (vc-print-root-log): Don't fetch the root working revision, nor
33426         pass it to vc-print-log-internal.
33428 2015-05-02  Michael Vehrs  <Michael.Burschik@gmx.de>
33430         Fix display of keyboard layouts for right-to-left scripts
33431         * lisp/international/quail.el (quail-insert-kbd-layout):
33432         Force left-to-right paragraph direction.
33434 2015-05-02  K. Handa  <handa@gnu.org>
33436         * src/cmds.c (internal_self_insert): When we insert spaces for
33437         padding, set point before the padding spaces, not after them.
33439 2015-05-02  Nicolas Petton  <nicolas@petton.fr>
33441         * lisp/emacs-lisp/seq.el (seq-p): New alias to `sequencep'.
33443 2015-05-02  Dmitry Gutov  <dgutov@yandex.ru>
33445         Fix etags-xref-find for references
33446         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references):
33447         Use `cl-mapcan'.
33448         * lisp/progmodes/etags.el (etags-xref-find): Ditto.  Prompt for
33449         directory if no tags tables are loaded (bug#19468).
33451 2015-05-02  Philipp Stephani  <phst@google.com>
33453         Update the options in whitespace-style defcustom
33454         * lisp/whitespace.el (whitespace-style): Use `set' instead of a
33455         `repeat' because the option is really set-like.  Add missing
33456         options.  Reorder options to match the order in the
33457         documentation.  (Bug#20346)
33459 2015-05-02  Eli Zaretskii  <eliz@gnu.org>
33461         Fix error diagnostics of c-macro-expand
33462         * lisp/progmodes/cmacexp.el (c-macro-expansion): Don't bail out
33463         too early if no start-marker string was found -- that generally
33464         means cpp exited abnormally, and we still want to show its error
33465         messages to the user.
33467         Don't require Texinfo 5.0 for Emacs documentation
33468         * doc/emacs/docstyle.texi: Use "@set txicodequoteundirected" and
33469         "@set txicodequotebacktick" instead of "@codequotebacktick on" and
33470         "@codequoteundirected on", respectively, to avoid requiring
33471         Texinfo 5.x for Emacs documentation.
33473 2015-05-01  Simen Heggestøyl  <simenheg@gmail.com>
33475         * lisp/files.el (pwd):
33476         When called with a prefix argument, insert the current default
33477         directory at point.
33479 2015-05-01  Stefan Monnier  <monnier@iro.umontreal.ca>
33481         * lisp/isearch.el (isearch-mode-map): Allow backspace remapping
33482         * lisp/isearch.el (isearch-mode-map): Don't inhibit
33483         function-key-map remapping for backspace (bug#20466).
33485 2015-05-01  Dmitry Gutov  <dgutov@yandex.ru>
33487         Implement xref-find-references in etags and elisp-mode
33488         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references): New function.
33489         (elisp-xref-find): Use it.
33490         * lisp/progmodes/etags.el (etags-xref-find): Use `xref-collect-references'.
33491         * lisp/progmodes/xref.el (xref-collect-references):
33492         (xref--collect-reference): New functions.
33494 2015-05-01  Paul Eggert  <eggert@cs.ucla.edu>
33496         Prefer plain characters to Texinfo circumlocutions
33497         For example, prefer 'François' to 'Fran\c{c}ois', 'Fran\c cois',
33498         'Fran@,{c}ois' or 'Francois' (all of which were used!) in Texinfo sources.
33500         Fix single-quoting style in PDF manuals
33501         The PDF versions of the GNU manuals used curved single quotes to
33502         represent grave accent and apostrophe, which made it a pain to cut
33503         and paste code examples from them.  Fix the PDF versions to use
33504         grave accent and apostrophe for Lisp source code, keystrokes, etc.
33505         This change does not affect the info files, nor does it affect
33506         ordinary uses of curved single quotes in PDF.
33507         * doc/emacs/docstyle.texi: New file, which specifies treatment for
33508         grave accent and apostrophe, as well as the document encoding.
33509         * doc/emacs/emacs-xtra.texi, doc/emacs/emacs.texi:
33510         * doc/lispintro/emacs-lisp-intro.texi:
33511         * doc/lispref/back.texi, doc/lispref/book-spine.texi:
33512         * doc/lispref/elisp.texi, doc/lispref/lay-flat.texi:
33513         * doc/misc/ada-mode.texi, doc/misc/auth.texi:
33514         * doc/misc/autotype.texi, doc/misc/bovine.texi, doc/misc/calc.texi:
33515         * doc/misc/cc-mode.texi, doc/misc/cl.texi, doc/misc/dbus.texi:
33516         * doc/misc/dired-x.texi, doc/misc/ebrowse.texi, doc/misc/ede.texi:
33517         * doc/misc/ediff.texi, doc/misc/edt.texi, doc/misc/efaq-w32.texi:
33518         * doc/misc/efaq.texi, doc/misc/eieio.texi, doc/misc/emacs-gnutls.texi:
33519         * doc/misc/emacs-mime.texi, doc/misc/epa.texi, doc/misc/erc.texi:
33520         * doc/misc/ert.texi, doc/misc/eshell.texi, doc/misc/eudc.texi:
33521         * doc/misc/eww.texi, doc/misc/flymake.texi, doc/misc/forms.texi:
33522         * doc/misc/gnus-coding.texi, doc/misc/gnus-faq.texi:
33523         * doc/misc/gnus.texi, doc/misc/htmlfontify.texi:
33524         * doc/misc/idlwave.texi, doc/misc/ido.texi, doc/misc/info.texi:
33525         * doc/misc/mairix-el.texi, doc/misc/message.texi, doc/misc/mh-e.texi:
33526         * doc/misc/newsticker.texi, doc/misc/nxml-mode.texi:
33527         * doc/misc/octave-mode.texi, doc/misc/org.texi, doc/misc/pcl-cvs.texi:
33528         * doc/misc/pgg.texi, doc/misc/rcirc.texi, doc/misc/reftex.texi:
33529         * doc/misc/remember.texi, doc/misc/sasl.texi, doc/misc/sc.texi:
33530         * doc/misc/semantic.texi, doc/misc/ses.texi, doc/misc/sieve.texi:
33531         * doc/misc/smtpmail.texi, doc/misc/speedbar.texi:
33532         * doc/misc/srecode.texi, doc/misc/todo-mode.texi, doc/misc/tramp.texi:
33533         * doc/misc/url.texi, doc/misc/vhdl-mode.texi, doc/misc/vip.texi:
33534         * doc/misc/viper.texi, doc/misc/widget.texi, doc/misc/wisent.texi:
33535         * doc/misc/woman.texi:
33536         Use it instead of '@documentencoding UTF-8', to lessen the need for
33537         global changes like this in the future.
33538         * doc/emacs/Makefile.in (EMACS_XTRA):
33539         * doc/lispintro/Makefile.in (srcs):
33540         * doc/lispref/Makefile.in (srcs):
33541         Add dependency on docstyle.texi.
33542         * doc/misc/Makefile.in (style): New macro.
33543         (${buildinfodir}/%.info, %.dvi, %.pdf, %.html)
33544         (${buildinfodir}/ccmode.info, ${buildinfodir}/efaq%.info, gnus_deps):
33545         Use it.
33547 2015-05-01  Glenn Morris  <rgm@gnu.org>
33549         * test/automated/cl-lib-tests.el (cl-lib-adjoin-test): Fix it.
33551         * lisp/emacs-lisp/pcase.el (get-edebug-spec, edebug-match)
33552         (help-fns--signature): Declare.
33554         * lisp/emacs-lisp/pcase.el (pcase--make-docstring): Require help-fns.
33556 2015-05-01  Nicolas Petton  <nicolas@petton.fr>
33558         New macro seq-let, providing destructuring support to seq.el
33559         * lisp/emacs-lisp/seq.el (seq-let): New macro.  `seq-let' is similar
33560         to `cl-destructuring-bind' but works on all sequence types supported
33561         by `seq.el'.  Bump version number to 1.6.
33562         * test/automated/seq-tests.el: Add tests for seq-let.
33563         * doc/lispref/sequences.texi: Add documentation for seq-let.
33565 2015-05-01  Pontus Michael  <m.pontus@gmail.com>
33567         * lisp/simple.el (blink-matching-open): Better behavior in minibuffer.
33569 2015-05-01  Glenn Morris  <rgm@gnu.org>
33571         * lisp/emacs-lisp/ert.el (ert--special-operator-p): Fix previous.
33573 2015-05-01  Artur Malabarba  <bruce.connor.am@gmail.com>
33575         * lisp/emacs-lisp/bytecomp.el: Revert "Silence noninteractive compilations"
33576         This reverts commit 9a7ddde977378cb5276a81476ae458889c403267.
33577         This reverts commit 3c0ea587daf8b17960b90603a70e3ac4057d883d.
33578         With message: "* lisp/emacs-lisp/bytecomp.el: Use `inhibit-message'".
33579         (Bug#20445).
33581 2015-05-01  K. Handa  <handa@gnu.org>
33583         * lisp/international/mule-cmds.el (input-method-use-echo-area):
33584         Change :type to 'boolean.
33586 2015-05-01  Lars Magne Ingebrigtsen  <larsi@gnus.org>
33588         Start using proportional fonts in eww by default
33589         * lisp/net/shr.el (shr-use-fonts): Switch the default to t, since
33590         it seems to work well.
33592         Fix links in tables in shr
33593         * lisp/net/shr.el: Remove `shr-inhibit-decoration', because that
33594         makes (some) links in tables not work.
33596 2015-05-01  Jan D  <jan.h.d@swipnet.se>
33598         * lisp/term/ns-win.el (ns-get-cut-buffer-internal): Remove this alias.
33600 2015-04-30  Glenn Morris  <rgm@gnu.org>
33602         * lisp/emacs-lisp/ert.el (ert--special-operator-p):
33603         Update for 2015-02-08 change to indirect-function.
33605         * lisp/term/ns-win.el (ns-get-selection-internal):
33606         Remove declaration for function deleted 2014-10-21.
33608         * lisp/dom.el: Load subr-x when compiling, for when-let.
33610         Silence some compilation warnings
33611         * lisp/emacs-lisp/check-declare.el (compilation-forget-errors):
33612         * lisp/emulation/cua-base.el (delete-active-region):
33613         * lisp/net/net-utils.el (w32-get-console-output-codepage):
33614         * lisp/term/ns-win.el (ns-own-selection-internal)
33615         (ns-disown-selection-internal, ns-selection-owner-p)
33616         (ns-selection-exists-p, ns-get-selection):
33617         Declare for compiler.
33619         Function declaration updates prompted by 'make check-declare'
33620         * lisp/emacs-lisp/package.el (lm-homepage):
33621         * lisp/gnus/gnus-util.el (iswitchb-read-buffer):
33622         * lisp/gnus/mm-decode.el (libxml-parse-html-region):
33623         * lisp/gnus/mml.el (libxml-parse-html-region):
33624         * lisp/gnus/nnrss.el (libxml-parse-html-region):
33625         * lisp/net/eww.el (libxml-parse-html-region):
33626         * lisp/net/shr.el (libxml-parse-html-region):
33627         * lisp/vc/vc-bzr.el (vc-annotate-convert-time):
33628         * lisp/vc/vc-cvs.el (vc-annotate-convert-time):
33629         * lisp/vc/vc-git.el (vc-annotate-convert-time):
33630         * lisp/vc/vc-hg.el (vc-annotate-convert-time):
33631         * lisp/vc/vc-mtn.el (vc-annotate-convert-time):
33632         * lisp/vc/vc-rcs.el (vc-annotate-convert-time):
33633         Update declaration.
33635         Remove compatibility code for 20-year old function renaming
33636         * lisp/progmodes/idlw-shell.el (idlwave-shell-comint-filter):
33637         Make it an obsolete alias.
33638         (idlwave-shell-filter): Change all uses to comint-output-filter.
33640 2015-04-30  Tassilo Horn  <tsdh@gnu.org>
33642         Add ace-window face config
33643         * etc/themes/tsdh-light-theme.el (tsdh-light): Add ace-window face
33644         configuration.
33646 2015-04-30  Paul Eggert  <eggert@cs.ucla.edu>
33648         Unclutter 'make doc' output a bit
33649         * Makefile.in ($(DOCS), $(INSTALL_DOC), $(UNINSTALL_DOC)):
33650         Use make subst rather than sh IFS to split target string apart.
33651         This makes 'make' output easier to follow.
33653         Merge from gnulib
33654         * doc/misc/texinfo.tex: Update from gnulib.
33656 2015-04-30  Artur Malabarba  <bruce.connor.am@gmail.com>
33658         * lisp/emacs-lisp/package.el: Some speed optimizations on menu refresh.
33659         (package-menu--print-info): Obsolete.
33660         (package-menu--print-info-simple): New function.
33661         (package-menu--refresh): Use it, simplify code, and improve
33662         performance.
33663         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print-entry):
33664         Tiny performance improvement.
33666         * lisp/emacs-lisp/package.el (package--message): inhibit-message.
33668 2015-04-29  Paul Eggert  <eggert@cs.ucla.edu>
33670         Omit -Wstrict-overflow workaround in GCC 5
33671         * src/process.c: Remove workaround for GCC -Wstrict-overflow bug
33672         if it's GCC 5 or later, as the bug appears to be fixed in GCC 5.1.
33674         Merge from gnulib
33675         This incorporates:
33676         2015-04-29 extern-inline: no need for workaround in GCC 5.1
33677         2015-04-26 file-has-acl: port to CentOS 6
33678         * m4/acl.m4, m4/extern-inline.m4: Update from gnulib.
33680 2015-04-29  Helmut Eller  <eller.helmut@gmail.com>
33682         Set next-error-* in xref--xref-buffer-mode
33683         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
33684         Set `next-error-function' and `next-error-last-buffer'.
33685         (xref--next-error-function): New function.
33686         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01311.html)
33688 2015-04-29  Fabián Ezequiel Gallina  <fgallina@gnu.org>
33690         python.el: Fix warnings on looking-back calls missing LIMIT
33691         * lisp/progmodes/python.el (python-shell-accept-process-output):
33692         Pass LIMIT arg to looking-back.
33694 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
33696         * lisp/emacs-lisp/package.el: Use pushnew for downloads in progress.
33697         (package--download-and-read-archives): Use pushnew instead of
33698         append.  If something terrible happened during a previous
33699         download, simply refreshing should now make things work again.
33701 2015-04-29  Dmitry Gutov  <dgutov@yandex.ru>
33703         Introduce etags-xref-find-definitions-tag-order
33704         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
33705         New variable.
33706         (etags--xref-find-definitions): Use it (bug#19468).
33708 2015-04-29  Eli Zaretskii  <eliz@gnu.org>
33710         PATH- and completion-related fixes in Eshell on MS-Windows
33711         * lisp/eshell/esh-ext.el (eshell-search-path): When running on
33712         MS-Windows, prepend "." to list of directories produced from PATH,
33713         as Windows always implicitly searches the current directory first.
33714         (eshell-force-execution): Make it have a non-nil default value on
33715         MS-Windows and MS-DOS.
33716         * lisp/eshell/em-cmpl.el (eshell-complete-commands-list): If
33717         eshell-force-execution is non-nil, complete on readable files and
33718         directories, not only executables.  When running on MS-Windows,
33719         prepend "." to list of directories produced from PATH, as Windows
33720         always implicitly searches the current directory first.
33722 2015-04-29  Sam Steingold  <sds@gnu.org>
33724         Bury RCIRC buffers when there is no activity
33725         * lisp/net/rcirc.el (rcirc-non-irc-buffer): Remove.
33726         (rcirc-bury-buffers): New function.
33727         (rcirc-next-active-buffer): When there is no new activity, use
33728         `rcirc-bury-buffers' to hide all RCIRC buffers.
33730 2015-04-29  Krzysztof Jurewicz  <krzysztof.jurewicz@gmail.com>  (tiny change)
33732         Fix DBUS query result parsing for secrets-search-items
33733         * lisp/net/secrets.el (secrets-search-items): Fix DBUS query result
33734         parsing.  The function assumed that return value of the
33735         SearchItems method called on a collection is a list of two lists,
33736         however this is true only when no collection is specified.  GNOME
33737         had used to incorrectly return a list of two lists in both cases,
33738         but this was already fixed:
33739         https://bugzilla.gnome.org/show_bug.cgi?id=695115 .  Also fix an
33740         incorrect information in the secrets-search-items’ docstring.
33741         (Bug#20449)
33743 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
33745         * lisp/emacs-lisp/bytecomp.el (byte-compile--message):
33746         Use `inhibit-message' instead of hiding the previous message
33747         with (message nil).
33749 2015-04-29  Oleh Krehel  <ohwoeowho@gmail.com>
33751         Remove the deprecated INTERNAL_FIELD macro by expanding it
33752         * src/lisp.h (INTERNAL_FIELD): Remove.
33753         (DEFVAR_KBOARD): Modify accordingly.
33754         * src/alloc.c, src/buffer.c, src/buffer.h, src/category.c:
33755         * src/keyboard.c, src/keyboard.h, src/syntax.c: Adjust users.
33756         * src/buffer.c (compact_buffer): Use BVAR.
33758 2015-04-29  Glenn Morris  <rgm@gnu.org>
33760         Replace an obsolete function alias
33761         * lisp/isearch.el (isearch-yank-x-selection):
33762         * lisp/mouse-copy.el (mouse-drag-secondary-pasting)
33763         (mouse-drag-secondary-moving):
33764         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
33765         Replace obsolete alias x-get-selection with gui-get-selection.
33767 2015-04-29  Stefan Monnier  <monnier@iro.umontreal.ca>
33769         * lisp/mail/rmailsum.el: Use lexical-binding.
33771 2015-04-29  Glenn Morris  <rgm@gnu.org>
33773         * test/automated/package-test.el (package-test-update-archives-async):
33774         Skip test on hydra.nixos.org.
33776 2015-04-28  Glenn Morris  <rgm@gnu.org>
33778         * lisp/foldout.el: Update for 2015-01-30 outline.el changes.
33779         (foldout-zoom-subtree, foldout-exit-fold, foldout-mouse-show)
33780         (foldout-mouse-hide-or-exit): Use new names for outline functions.
33782         * lisp/cedet/semantic/bovine/c.el (semantic-c-do-lex-if):
33783         Update for 2014-06-26 hideif.el change.
33785         * lisp/mail/rmailsum.el: Fix search for encoded subjects.  (Bug#19088)
33786         (rmail--decode-and-apply): New function.
33787         (rmail-message-regexp-p-1, rmail-message-subject-p): Use it.
33789         * lisp/mail/rmail.el (rmail-highlighted-headers): Fix :type.
33791 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
33793         * lisp/emacs-lisp/package.el: Fix priority-hiding corner case
33794         (package-menu--refresh): Delegate obsolete-hiding to
33795         `package--remove-hidden'.
33796         (package--remove-hidden): Disregard high-priority package if it is
33797         older than the installed one.
33799 2015-04-28  Paul Eggert  <eggert@cs.ucla.edu>
33801         Update source file encoding list
33802         Update admin/notes/unicode, along with coding system cookies in
33803         other files, so that the two match each other better.
33804         * admin/notes/unicode: lisp/language/ethio-util.el and
33805         lisp/language/ethiopic.el also use utf-8-emacs.
33806         * admin/notes/hydra, doc/misc/dbus.texi, doc/misc/org.texi:
33807         * doc/misc/remember.texi, etc/refcards/cs-dired-ref.tex:
33808         * etc/refcards/cs-refcard.tex, etc/refcards/cs-survival.tex:
33809         * etc/refcards/sk-dired-ref.tex, etc/refcards/sk-refcard.tex:
33810         * etc/refcards/sk-survival.tex:
33811         Add "coding: utf-8" so that this file is not mishandled in a
33812         Latin-1 or Big-5 locale.
33813         * lisp/international/robin.el, lisp/org/ox-ascii.el:
33814         Specify utf-8, not utf-8-emacs, as these are plain UTF-8 files.
33815         * lisp/language/ethio-util.el: Fix trailer.
33817 2015-04-28  Eli Zaretskii  <eliz@gnu.org>
33819         Fix synchronous invocation of Ispell
33820         * lisp/textmodes/ispell.el (ispell-init-process): Assign a non-nil
33821         value to ispell-process-directory before calling ispell-init-process.
33822         Don't call set-process-coding-system if ispell-async-processp is nil.
33823         (Bug#20448)
33825 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
33827         * lisp/emacs-lisp/package.el: Skip space and comments in init file
33828         (package--ensure-init-file): Insert snippet at first
33829         non-whitespace non-comments line.  Respects local-vars at the top
33830         of the file.
33832 2015-04-28  Glenn Morris  <rgm@gnu.org>
33834         * lisp/mail/rmail.el (rmail-copy-headers):
33835         Handle rmail-nonignored-headers being nil.  (Bug#18878)
33837         * lisp/subr.el (delay-mode-hooks): Fix doc typo.
33839         * lisp/vc/vc-bzr.el (vc-bzr-after-dir-status):
33840         Don't get confused by a bzrlib version mismatch warning.
33842 2015-04-27  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
33844         Change default location of EUDC options file
33845         * etc/NEWS: Document change to EUDC options file's default location.
33846         * lisp/net/eudc-vars.el (eudc-options-file): Use
33847         `locate-user-emacs-file' to change default options file location.
33849 2015-04-27  Glenn Morris  <rgm@gnu.org>
33851         * test/automated/package-test.el (package-test-update-archives-async):
33852         Try to handle the test server script dying.
33854 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
33856         * lisp/saveplace.el (save-place-mode): New minor mode.
33857         (save-place): Redefine as an obsolete alias.
33859         * lisp/midnight.el: Make it a minor mode.  Allow predicates.
33860         * lisp/midnight.el: Use lexical-binding.
33861         (midnight-mode): Make it a proper minor mode.
33862         (midnight-buffer-display-time): Make arg non-optional.
33863         (midnight-find): Remove.
33864         (clean-buffer-list-kill-never-regexps)
33865         (clean-buffer-list-kill-regexps): Tweak type for new function choice.
33866         (clean-buffer-list-delay): Allow clean-buffer-list-kill-regexps to
33867         contain functions.
33868         (clean-buffer-list): Use cl-find.
33869         Allow clean-buffer-list-kill-never-regexps to contain functions.
33871 2015-04-27  Nicolas Petton  <nicolas@petton.fr>
33873         Bump version of seq.el to 1.5
33874         * lisp/emacs-lisp/seq.el (seq-doseq): Remove undocumented return value
33875         from seq-doseq.  Bump version number of seq.el.
33877 2015-04-27  Glenn Morris  <rgm@gnu.org>
33879         * lisp/mail/rmail.el (rmail-reply):
33880         Decode subject before matching "Re:" prefix.  (Bug#20396)
33882 2015-04-27  Artur Malabarba  <bruce.connor.am@gmail.com>
33884         * lisp/emacs-lisp/package.el: Small improvements
33885         (package--with-work-buffer-async): More informative error.
33886         (package-install-user-selected-packages): Rename to
33887         `package-install-selected-packages'.
33889 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
33891         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last
33892         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last change.
33893         (eieio--class-make): Remove leftover `tag'.
33895 2015-04-27  Glenn Morris  <rgm@gnu.org>
33897         * lisp/gnus/message.el (gnus-extract-address-components):
33898         Remove bogus declaration that was masking previous problem.
33900 2015-04-27  Nicolas Graner  <nicolas.graner@u-psud.fr>  (tiny change)
33902         * lisp/gnus/message.el (message-insert-formatted-citation-line):
33903         Fix typo.  (Bug#20318)
33905 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
33907         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Reuse oldc.
33909         * lisp/textmodes/reftex-toc.el: Improve multi-frame behavior
33910         * lisp/textmodes/reftex-toc.el (reftex-toc-revert): Avoid displaying
33911         the buffer in yet another frame.
33912         (reftex-toc-visit-location): Make sure toc-window has focus at the end
33913         when `final' is nil.
33914         (reftex--rebuilding-toc): Defvar to avoid `boundp' and
33915         silence warnings.  Use `--' to clarify that it's internal.
33916         (reftex-toc-next, reftex-toc-previous, reftex-toc-demote)
33917         (reftex-toc-promote): Clarify unused argument.
33918         (reftex--pro-or-de, reftex--start-line, reftex--mark-line):
33919         Add `reftex--' prefix.  Fix all users.
33920         (reftex-toc-promote-prepare): Use _ for dummy variable.
33921         (reftex-toc-restore-region): Rename `m.
33923 2015-04-27  Eli Zaretskii  <eliz@gnu.org>
33925         Fix a typo in bibtex.el
33926         * lisp/textmodes/bibtex.el (bibtex-insert-kill): Fix a typo from
33927         last change.  (Bug#20429)
33929         Fix redisplay of frame after loading new fonts
33930         * src/xdisp.c (redisplay_internal): When retrying redisplay of
33931         a frame because new fonts were loaded, disable all redisplay
33932         optimizations on that frame by calling SET_FRAME_GARBAGED.
33933         (Bug#20410)
33935 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
33937         * lisp/info.el (Info-menu): Properly provide the `default'
33938         (Bug#20391)
33940         * lisp/progmodes/elisp-mode.el (elisp--get-fnsym-args-string):
33941         Catch errors from documentation (bug#20418).
33942         (emacs-lisp-mode-abbrev-table): Remove redundant defvar.
33944 2015-04-26  Stefan Monnier  <monnier@iro.umontreal.ca>
33946         * lisp/emacs-lisp/package.el: Move variables to silence byte-compiler.
33947         Remove redundant ":group 'package".
33949 2015-04-26  Eli Zaretskii  <eliz@gnu.org>
33951         Fix a typo in rmail.el
33952         * lisp/mail/rmail.el (rmail-ensure-blank-line): Fix a typo in the
33953         last commit.  (Bug#20429)
33955 2015-04-26  Dmitry Gutov  <dgutov@yandex.ru>
33957         Introduce xref-prompt-for-identifier
33958         * lisp/progmodes/xref.el (xref-prompt-for-identifier): New option.
33959         (xref--read-identifier): Use it
33960         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01205.html).
33962 2015-04-26  João Távora  <joaotavora@gmail.com>
33964         `tex-insert-quote' after single `'' opens quotes instead of closing
33965         Without this, it's very hard to precede double quotes with the
33966         apostrophe character, i.e. insert the sequence '``
33967         (quote-backquote-backquote), commonly useful in portuguese, for
33968         instance.
33969         * lisp/textmodes/tex-mode.el (tex-insert-quote): Add ?' to the list of
33970         preceding chars making `tex-insert-quote' be in the "opening" context.
33972 2015-04-25  Dmitry Gutov  <dgutov@yandex.ru>
33974         Pass `id' to `completing-read' as def instead of initial input
33975         * lisp/progmodes/xref.el (xref--read-identifier): Pass `id' to
33976         `completing-read' as the default value instead of initial input
33977         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01182.html).
33979 2015-04-25  Paul Eggert  <eggert@cs.ucla.edu>
33981         Don't freeze with unreadable processes
33982         Don't freeze if an exiting process can't be read from.  (Bug#19860).
33983         This fixes a bug I introduced in
33984         2014-07-08T07:24:07Z@eggert@cs.ucla.edu
33985         "* process.c: Add sanity checks for file descriptors."
33986         Dmitry Gutov did most of the legwork in finding the problem.
33987         * src/process.c (wait_reading_process_output):
33988         Treat non-running processes that can't be read from
33989         the same as other non-running processes.
33991 2015-04-25  Alan Mackenzie  <acm@muc.de>
33993         Fix change from 2015-04-22 "On C-y, stop some text property entries ..."
33994         * lisp/subr.el (remove-yank-excluded-properties): Put
33995         `with-silent-modifications' around only the last three lines of code.
33997 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
33999         * lisp/emacs-lisp/package.el (package-all-keywords): Don't cache
34000         (package--all-keywords): Deleted variable.
34002         * etc/NEWS: Document package-hiding functionality.
34004 2015-04-25  Eli Zaretskii  <eliz@gnu.org>
34006         * lisp/window.el (recenter-last-op): Doc fix.  (Bug#20419)
34008         Clarify the doc string of 'replace-regexp-in-string'
34009         * lisp/subr.el (replace-regexp-in-string): Doc fix.  (Bug#20395)
34011         Improve doc string of 'insert-buffer-substring'
34012         * src/editfns.c (Finsert_buffer_substring): Doc fix.  (Bug#20421)
34014         MS-Windows followup for the recent gnulib update
34015         * nt/gnulib.mk (libgnu_a_SOURCES): Replace file-has-acl.c with
34016         acl-internal.c.
34018 2015-04-24  Paul Eggert  <eggert@cs.ucla.edu>
34020         Spelling fixes
34022         Merge from gnulib
34023         This incorporates:
34024         2015-04-24 file-has-acl: new module, split from acl
34025         2015-04-24 manywarnings: add GCC 5.1 warnings
34026         2015-04-21 lstat: fix cross-compilation 'ln -s' problem
34027         2015-04-15 qacl: Simplify HP-UX acl_nontrivial check
34028         2015-04-15 acl: On Linux, check for acls without libacl
34029         2015-04-14 tempname: avoid unused parameter warnings (trivial)
34030         * lib/acl-internal.c: New file, from gnulib.
34031         * lib/file-has-acl.c: Remove; no longer imported from gnulib.
34032         * lib/acl-internal.h, lib/gnulib.mk, lib/qcopy-acl.c, lib/tempname.c:
34033         * m4/acl.m4, m4/gnulib-comp.m4, m4/lstat.m4, m4/manywarnings.m4:
34034         Update from gnulib.
34036         Port --enable-gcc-warnings to GCC 5.1 x86-64
34037         * lib-src/ebrowse.c (dump_sym):
34038         * lib-src/hexl.c (main):
34039         * src/ccl.c (ccl_driver):
34040         * src/character.c (string_escape_byte8):
34041         * src/dbusbind.c (xd_retrieve_arg, xd_add_watch):
34042         * src/gnutls.c (Fgnutls_boot):
34043         * src/gtkutil.c (xg_check_special_colors):
34044         * src/image.c (x_build_heuristic_mask):
34045         * src/print.c (safe_debug_print, print_object):
34046         * src/term.c (produce_glyphless_glyph):
34047         * src/xdisp.c (get_next_display_element)
34048         (produce_glyphless_glyph):
34049         * src/xterm.c (x_draw_glyphless_glyph_string_foreground):
34050         Don't use a signed format to print an unsigned integer, or vice
34051         versa.  GCC 5.1's new -Wformat-signedness option warns about this.
34052         * src/image.c (png_load_body, jpeg_load_body):
34053         Silence a bogus setjump diagnostic from GCC 5.1 (GCC bug 54561).
34055 2015-04-24  Tassilo Horn  <tsdh@gnu.org>
34057         Add new faces to tsdh-light-theme
34058         * etc/themes/tsdh-light-theme.el (tsdh-light): New face
34059         definitions for Info-quoted, ace-jump-face-foreground,
34060         hl-paren-face, show-paren-match, and show-paren-mismatch.
34062 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
34064         * lisp/emacs-lisp/seq.el (seq-doseq): Fix the macro.
34066 2015-04-24  Glenn Morris  <rgm@gnu.org>
34068         * build-aux/gitlog-to-emacslog:
34069         Use raw log format rather than wrapped one.
34071 2015-04-24  Stefan Monnier  <monnier@iro.umontreal.ca>
34073         * lisp/emacs-lisp/seq.el (seq-doseq): Tighten the code.
34074         (seq-doseq): Fix out-of-scope binding.
34075         Don't call `seq-length at every iteration.
34076         Reduce `if's from 3 to 2 per iteration.
34077         (emacs-lisp-mode-hook): Don't tweak in Emacs≥25.
34079 2015-04-24  Glenn Morris  <rgm@gnu.org>
34081         * lisp/textmodes/text-mode.el (text-mode-hook):
34082         Move text-mode-hook-identify to default.
34084         * lisp/mouse.el (minor-mode-menu-from-indicator):
34085         Handle non-function members of minor-mode-map-alist.  (Bug#20201)
34087         * lisp/help-fns.el (describe-function): More type checking.
34088         (describe-function-1): Handle changed symbol-function.  (Bug#20201)
34090         * build-aux/gitlog-to-emacslog: Convert "Fixes:" to "(Bug#)".
34091         (Bug#20325)
34093 2015-04-24  Andreas Schwab  <schwab@linux-m68k.org>
34095         shr: strip leading whitespace when expanding URLs
34096         * lisp/net/shr.el (shr-expand-url): Strip leading whitespace from URL.
34098 2015-04-24  Eli Zaretskii  <eliz@gnu.org>
34100         Clarify "co-authored" some more
34102         * CONTRIBUTE: Clarify "co-authored-by".  (Bug#20400)
34104         Clarify doc strings of functions that search for properties
34105         * src/textprop.c (Fnext_char_property_change)
34106         (Fprevious_char_property_change)
34107         (Fnext_single_char_property_change)
34108         (Fprevious_single_char_property_change, Fnext_property_change)
34109         (Fnext_single_property_change, Fprevious_property_change)
34110         (Fprevious_single_property_change): Clarify doc strings wrt return
34111         value and the optional LIMIT argument.  (Bug#20411)
34113 2015-04-24  Glenn Morris  <rgm@gnu.org>
34115         * test/automated/message-mode-tests.el (message-mode-propertize):
34116         Handle non-writable HOME; eg on hydra.nixos.org.
34118 2015-04-23  Eli Zaretskii  <eliz@gnu.org>
34120         Avoid starting threads by w32-shell-execute
34121         * src/w32fns.c (Fw32_shell_execute): Convert "file:///" URLs into
34122         local file names, before invoking ShellExecute.  (Bug#20220)
34124 2015-04-23  Martin Rudalics  <rudalics@gmx.at>
34126         Fix following doc-links in `widget-documentation-link-action'
34127         * lisp/wid-edit.el (widget-documentation-link-action): Make
34128         following doc-links less simplistic (Bug#20398).
34130 2015-04-22  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
34132         Improve EUDC manual
34133         * doc/misc/eudc.texi (Troubleshooting):
34134         New LDAP troubleshooting subsection.
34136 2015-04-22  Paul Eggert  <eggert@cs.ucla.edu>
34138         Omit needless "\ " after multibyte then newline
34139         * src/print.c: Include <c-ctype.h>, for c_isxdigit.
34140         (print_object): When print-escape-multibyte is non-nil and a
34141         multibyte character is followed by a newline or formfeed, followed
34142         by a hex digit, don't output a needless "\ " before the hex digit.
34143         * test/automated/print-tests.el (print-hex-backslash): New test.
34145 2015-04-22  Oleh Krehel  <ohwoeowho@gmail.com>
34147         Add a new `inhibit-message' variable
34148         * src/xdisp.c (syms_of_xdisp): Define a boolean `inhibit_message'.
34149         (message3): Don't call `message3_nolog' (i.e. use the Echo Area) when
34150         `inhibit_message' is non-zero.
34151         * etc/NEWS: Add an entry.
34152         * doc/lispref/display.texi: Add an entry for `inhibit-message',
34153         mention it in `message'.
34155 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
34157         Fix last fix in `display-buffer-record-window'.
34158         * lisp/window.el (display-buffer-record-window): Fix last fix.
34160 2015-04-22  Eli Zaretskii  <eliz@gnu.org>
34162         Minor edits in CONTRIBUTE
34163         * CONTRIBUTE: Rearrange instructions about log messages.
34164         Use "Git" capitalized all over.
34165         Use 2 spaces between sentences.
34167 2015-04-22  Artur Malabarba  <bruce.connor.am@gmail.com>
34169         * lisp/files.el (basic-save-buffer): Fix argument.
34171         * lisp/cus-edit.el (custom-file): Consider init-file-had-error.
34172         In case `(and (null custom-file) init-file-had-error)' do the same
34173         thing we'd do if `(null user-init-file)', which is to either error out
34174         or return nil.  This is in line with `custom-save-all' which would
34175         throw an error in that situation.  (Bug#20355)
34177         * lisp/emacs-lisp/package.el: Hide lower-priority packages in menu.
34178         (package-menu-hide-low-priority): New variable, see its doc.
34179         (package-archive-priorities): Update doc.
34180         (package-desc-priority): New function.
34181         (package-desc-priority-version): Use it.
34182         (package--remove-hidden): New function.
34183         (package-menu--refresh): Use it.
34185         * lisp/emacs-lisp/package.el: Implement displaying obsolete packages.
34186         (package-menu--hide-obsolete): New variable.
34187         (package--remove-hidden): Use it.
34188         (package-menu-hide-obsolete): New interactive function to toggle
34189         the variable.
34190         (package--quick-help-keys): Document it.
34191         (package-menu-async): Add :version tag.
34192         (package-menu-mode-map): Bind package-menu-hide-obsolete.
34193         (package-desc-status): Indicate non-installed obsolete packages as
34194         avail-obso.
34195         (package-menu-mark-install): Allow installation of avail-obso.
34196         (package-menu--status-predicate): Sort avail-obso with available.
34198 2015-04-22  Alan Mackenzie  <acm@muc.de>
34200         On C-y, stop some text property entries being written into buffer-undo-list
34201         * lisp/subr.el (remove-yank-excluded-properties): Enclose the code in
34202         `with-silent-modifications'.
34204 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
34206         In display-buffer-record-window record selected window if necessary
34207         * lisp/window.el (display-buffer-record-window): Store selected window
34208         if it differs from 3rd element of 'quit-restore' parameter (Bug#20353).
34210 2015-04-22  Tassilo Horn  <tsdh@gnu.org>
34212         Fix reftex-citation bug
34213         * lisp/textmodes/reftex-cite.el (reftex-extract-bib-entries):
34214         Fix `wrong-type-argument stringp nil' error that occurs when AUCTeX
34215         integration is enabled and there are no citations in the document
34216         so far.
34218 2015-04-21  Dmitry Gutov  <dgutov@yandex.ru>
34220         Add or reset based on the presence of MERGE_HEAD
34221         * lisp/vc/vc-git.el (vc-git-find-file-hook): Add
34222         `vc-git-resolve-when-done' to `after-save-hook' in either case.
34223         (vc-git-conflicted-files): Add a TODO.
34224         (vc-git-resolve-when-done): Depending on the presence of
34225         MERGE_HEAD, either update the resolved file in the index, or
34226         remove it from there.  (Bug#20292)
34228 2015-04-21  Glenn Morris  <rgm@gnu.org>
34230         * lisp/custom.el (custom-declare-group): No need to purecopy
34231         custom-current-group-alist members following recent change to set
34232         it to nil before dumping.
34234         * build-aux/gitlog-to-emacslog: Get footer from ChangeLog.2.
34235         (Bug#20399)
34237 2015-04-21  Daniel Colascione  <dancol@dancol.org>
34239         Unbreak no-op buffer save message
34240         * lisp/files.el (basic-save-buffer): Accept called-interactively as
34241         an argument instead of directly invoking called-interactively-p,
34242         which will always yield nil in that context.
34244 2015-04-21  Alan Mackenzie  <acm@muc.de>
34246         CC Mode: Do nothing in before/after-change-functions for text
34247         property changes
34248         Fixes bug#20266.
34249         * lisp/progmodes/cc-mode.el (c-basic-common-init): Make
34250         yank-handled-properties buffer local, and remove 'category from it.
34251         (c-called-from-text-property-change-p): New function.
34252         (c-before-change): Don't do anything if a call of the new function
34253         returns non-nil.
34254         (c-after-change): Don't do much if a call of the new function returns
34255         non-nil.
34256         (c-extend-after-change-region): Put changes to text property 'fontified
34257         inside c-save-buffer-state.
34259 2015-04-20  Stefan Monnier  <monnier@iro.umontreal.ca>
34261         Fix byte-compiler warnings about looking-back
34262         * lisp/vc/log-view.el (log-view-end-of-defun-1):
34263         * lisp/textmodes/tex-mode.el (latex-forward-sexp-1):
34264         * lisp/textmodes/reftex-ref.el (reftex-goto-label):
34265         * lisp/textmodes/bibtex.el (bibtex-insert-kill):
34266         * lisp/progmodes/sh-script.el (sh--maybe-here-document):
34267         * lisp/progmodes/ruby-mode.el (ruby-end-of-defun):
34268         * lisp/progmodes/ada-mode.el (ada-in-numeric-literal-p):
34269         * lisp/org/org.el (org-insert-heading, org-sort-entries):
34270         * lisp/org/org-mouse.el (org-mouse-end-headline)
34271         (org-mouse-context-menu):
34272         * lisp/org/org-clock.el (org-clock-cancel):
34273         * lisp/man.el (Man-default-man-entry):
34274         * lisp/mail/rmail.el (rmail-get-new-mail, rmail-insert-inbox-text)
34275         (rmail-ensure-blank-line):
34276         * lisp/mail/footnote.el (Footnote-delete-footnote):
34277         * lisp/mail/emacsbug.el (report-emacs-bug):
34278         * lisp/info.el (Info-follow-reference, Info-fontify-node):
34279         * lisp/info-look.el (info-lookup-guess-custom-symbol):
34280         * lisp/help-fns.el (help-fns--key-bindings):
34281         * lisp/files.el (hack-local-variables):
34282         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-cmd-complete)
34283         (viper-get-ex-pat, ex-expand-filsyms, viper-get-ex-file)
34284         (viper-complete-filename-or-exit):
34285         * lisp/emulation/viper-cmd.el (viper-backward-indent):
34286         * lisp/emacs-lisp/lisp-mode.el (calculate-lisp-indent):
34287         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
34288         * lisp/cus-edit.el (custom-face-edit-value-create):
34289         * lisp/calendar/todo-mode.el (todo-set-item-priority)
34290         (todo-filter-items-1, todo-convert-legacy-files)
34291         (todo-prefix-overlays): Add explicit second arg to looking-back.
34293 2015-04-20  Glenn Morris  <rgm@gnu.org>
34295         Avoid non-nil current-load-list at startup
34296         * src/process.c (init_process_emacs): Move Fprovide statement...
34297         (syms_of_process): ... to here.
34299         * lisp/loadup.el (custom-current-group-alist): Reset before dumping.
34301         * lisp/startup.el (command-line) <site-run-file>: Avoid rogue value
34302         in emacs -Q.
34304 2015-04-20  Ludovic Courtès  <ludo@gnu.org>
34306         * lisp/loadup.el (exec-path): Avoid storing build-time PATH in binary.
34307         (Bug#20330)
34309 2015-04-20  Glenn Morris  <rgm@gnu.org>
34311         * lisp/cus-start.el (exec-path): Set standard value, to avoid rogue.
34313         Tweak exec-path in uninstalled case
34314         * src/callproc.c (init_callproc): If running uninstalled, do not
34315         include eventual installation libexec directory in exec-path.
34317 2015-04-20  Artur Malabarba  <bruce.connor.am@gmail.com>
34319         * lisp/emacs-lisp/package.el: Filter by multiple keywords and
34320         cache keywords.
34321         (package-menu-filter): Accept a list of keywords.
34322         (package--all-keywords): New variable to cache known keywords.
34323         (package-all-keywords): Populate it if necessary.
34324         (package-refresh-contents): Reset it.
34326         * lisp/emacs-lisp/package.el: Make archive and status pseudo-keywords
34327         (package--has-keyword-p): Understand "arc:xxxx" and "status:xxxx"
34328         as special keywords which match agains package archive and status
34329         respectively.
34330         * etc/NEWS: Document it.
34332 2015-04-20  Eli Zaretskii  <eliz@gnu.org>
34334         Describe and index "empty overlays".
34335         * doc/lispref/display.texi (Overlays): Improve indexing.
34336         (Managing Overlays): Describe "empty" overlays.
34337         (Overlay Properties, Finding Overlays): Add cross-reference to
34338         where empty overlays are described.
34340 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
34342         Spelling fixes
34344         Quote 'like this' in top-level files
34345         * CONTRIBUTE, INSTALL, Makefile.in, README, configure.ac, make-dist:
34346         Prefer to single-quote 'like this' (instead of the older style
34347         `like this').
34348         * configure.ac: Fix some space-before-tab problems that 'git commit'
34349         complained about.
34351         Use bool for boolean in textprop.c, undo.c
34352         * src/textprop.c (soft, hard): Now constants instead of macros.
34353         (validate_plist): Rewrite to avoid need for boolean local.
34354         (interval_has_all_properties, interval_has_some_properties)
34355         (interval_has_some_properties_list, add_properties)
34356         (remove_properties, get_char_property_and_overlay)
34357         (Fnext_single_char_property_change)
34358         (Fprevious_single_char_property_change, add_text_properties_1)
34359         (Fremove_text_properties, Fremove_list_of_text_properties)
34360         (copy_text_properties):
34361         * src/tparam.c (tparam1):
34362         * src/undo.c (record_change, record_property_change)
34363         (syms_of_undo):
34364         Use 'true' and 'false' for booleans.
34366 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
34368         * lisp/vc/vc-git.el (vc-git-find-file-hook):
34369         Call `smerge-start-session' even when dealing with a stash
34370         conflict (bug#20292).
34372 2015-04-19  Vibhav Pant  <vibhavp@gmail.com>
34374         Add option to eshell/clear to clear scrollback.
34375         * lisp/eshell/esh-mode.el (eshell/clear-scrollback): New function.
34376         (eshell/clear): Add an optional SCROLLBACK argument.  If non-nil,
34377         scrollback contents are cleared.
34378         * etc/NEWS: Describe change.
34379         * doc/misc/eshell.texi: Add entry for `clear'.
34381 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
34383         * src/widget.c (set_frame_size): Prefer 'int' to 'unsigned'
34384         where either will do.
34386 2015-04-19  Steve Purcell  <steve@sanityinc.com>
34388         Assume package archive-contents are UTF8-encoded
34389         * lisp/emacs-lisp/package.el (package--read-archive-file):
34390         Set `coding-system-for-read' explicitly to 'utf-8 when reading the
34391         downloaded and cached archive-contents files, so that non-ASCII
34392         characters in package descriptions are displayed correctly in the
34393         `list-packages' menu.  (Bug#20231)
34395 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
34397         Abort when looking at stashed changes
34398         * lisp/vc/vc-git.el (vc-git-find-file-hook): Abort when looking at
34399         stashed changes (bug#20292).
34401 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
34403         Refactor low-level printing for simplicity
34404         * src/print.c (PRINTDECLARE): Remove.  Move its contents into
34405         PRINTPREPARE; doable now that we assume C99.  All callers changed.
34406         (PRINTCHAR): Remove, as it adds more mystery than clarity.
34407         All callers changed.
34408         (strout): Assume that caller computes length.  All callers changed.
34409         (print_c_string): New function.
34410         (write_string, write_string_1): Compute length instead of asking
34411         the caller to compute it.  All callers changed.
34412         (write_string): Simplify by using write_string_1.
34413         (write_string_1): Simplify by using print_c_string.
34414         (Fterpri): Compute default val more clearly.
34415         (Fprin1_to_string, print_object):
34416         Assume C99 to avoid unnecessary nesting.
34417         (print_object): Prefer print_c_string to multiple printchar, or
34418         to calling strout with -1 length.  Coalesce into sprintf when
34419         this is easy.
34421 2015-04-18  Paul Eggert  <eggert@cs.ucla.edu>
34423         Prefer "Bug#1234" in commit messages (Bug#20325)
34424         * .dir-locals.el (log-edit-mode): Don't rewrite Bug#,
34425         as this isn't useful for Git.
34426         * CONTRIBUTE: Suggest "Bug#1234" instead of "Fixes: debbugs:1234".
34428 2015-04-18  Glenn Morris  <rgm@gnu.org>
34430         * lisp/files.el (auto-mode-alist): Use conf mode for gitconfig, hgrc.
34431         (Bug#19506)
34433 2015-04-18  Tom Willemse  <tom@ryuslash.org>  (tiny change)
34435         * lisp/elec-pair.el (electric-pair-post-self-insert-function):
34436         Do not use `chomp' as a function.  (Bug#19505)
34438 2015-04-18  Glenn Morris  <rgm@gnu.org>
34440         * lisp/net/browse-url.el (browse-url, browse-url-at-point): Doc fixes.
34442         * doc/emacs/misc.texi (Sorting): Small edit.
34443         (Bug#19896)
34445         * admin/admin.el (make-manuals): Add emacs-xtra in pdf and ps.
34447 2015-04-18  Simen Heggestøyl  <simenheg@gmail.com>
34449         css-mode.el: Support multi-line comment filling
34450         (Bug#20256)
34451         * lisp/textmodes/css-mode.el (css-fill-paragraph): Support multi-line
34452         comment filling.
34453         (css-adaptive-fill): New function.
34454         (css-mode): Set `adaptive-fill-function'.
34455         (scss-mode): Set `comment-continue'.
34457 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
34459         * lisp/emacs-lisp/seq.el (seq-concatenate, seq-into):
34460         Better error messages.
34462 2015-04-18  Ivan Radanov Ivanov  <ivanradanov@yahoo.co.uk>  (tiny change)
34464         Minor improvements in Bulgarian input methods
34465         * lisp/leim/quail/cyrillic.el (bulgarian-phonetic, bulgarian-bds):
34466         Replace U+042C with U+045D, as the former character is not used in
34467         the modern Bulgarian language.
34468         (Bug#20350)
34470 2015-04-17  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
34472         Improve EUDC manual
34473         * doc/misc/eudc.texi (LDAP Configuration): Mention simple and SASL
34474         authentication schemes.  Add index items.  Shorten example server
34475         name.
34477 2015-04-17  Dmitry Gutov  <dgutov@yandex.ru>
34479         Don't show both feature and function with the same name
34480         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
34481         Don't show both feature and function with the same name.
34483         (elisp--xref-identifier-location): Skip variable, if it's also
34484         a function
34485         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
34486         Avoid returning both the variable and the function for the same
34487         minor mode.
34489 2015-04-17  Wolfgang Jenkner  <wjenkner@inode.at>
34491         Fix fontification of keywords clobbered by the prompt
34492         * lisp/comint.el (comint-output-filter): Remove the uses of
34493         with-silent-modifications I introduced as part of the last change.
34494         This fixes, e.g., erratically missing highlighting when running
34495         ./configure --help; ./configure in a shell-mode buffer with
34496         compilation-shell-minor-mode turned on.
34498 2015-04-17  Glenn Morris  <rgm@gnu.org>
34500         * admin/authors.el (authors-valid-file-names)
34501         (authors-renamed-files-alist): Additions.
34503 2015-04-17  Stefan Monnier  <monnier@iro.umontreal.ca>
34505         * lisp/indent.el (indent-region): Don't deactivate the mark.
34506         (Bug#20357)
34508 2015-04-17  Sam Steingold  <sds@gnu.org>
34510         * lisp/net/rcirc.el (defun-rcirc-command): Mark `target' as ignorable.
34512 2015-04-16  Leo Liu  <sdl.web@gmail.com>
34514         * lisp/progmodes/xref.el (xref-push-marker-stack): Add optional arg.
34516 2015-04-16  Stefan Monnier  <monnier@iro.umontreal.ca>
34518         * lisp/erc/erc-pcomplete.el (erc-pcomplete):
34519         Don't use `pcomplete' any more.
34521 2015-04-16  Glenn Morris  <rgm@gnu.org>
34523         * admin/authors.el (authors-lax-changelogs): Update for erc changes.
34525 2015-04-16  Eli Zaretskii  <eliz@gnu.org>
34527         Don't link with -ljpeg on MS-Windows, to avoid dependency on DLL
34528         * configure.ac (LIBJPEG): Leave it empty for MinGW.
34530 2015-04-16  Glenn Morris  <rgm@gnu.org>
34532         * lisp/replace.el (query-replace-from-to-separator):
34533         Delay initialization to avoid rogue setting after startup.
34535 2015-04-16  Paul Eggert  <eggert@cs.ucla.edu>
34537         Pre-4.6 GCC succeeds with unknown option
34538         * configure.ac (emacs_cv_prog_cc_nopie): Port to pre-4.6 GCC.
34539         (Bug#20338)
34541 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
34543         '[:graph:]' now excludes whitespace, not just ' '
34544         * doc/lispref/searching.texi (Char Classes):
34545         * lisp/emacs-lisp/rx.el (rx): Document [:graph:] to be [:print:]
34546         sans whitespace (not sans space).
34547         * src/character.c (graphicp): Exclude all Unicode whitespace chars,
34548         not just space.
34549         * src/regex.c (ISGRAPH): Exclude U+00A0 (NO-BREAK SPACE).
34551 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
34553         * lisp/subr.el (substitute-key-definition-key, special-form-p)
34554         (macrop): Drop deprecated second arg to indirect-function.
34555         (looking-back): Make the second arg non-optional.
34557         * lisp/org/org-clock.el (org-x11idle-exists-p): Be honest about which
34558         command is actually sent to the shell.
34560 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
34562         Port jpeg configuration to Solaris 10 with Sun C
34563         * configure.ac: Check for jpeglib 6b by trying to link it, instead
34564         of relying on cpp magic that has problems in practice.  Check for
34565         both jpeglib.h and jerror.h features.  Remove special case for
34566         mingw32, which should no longer be needed (and if it were needed,
34567         should now be addressable by hotwiring emacs_cv_jpeglib).
34568         (Bug#20332)
34570 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
34572         Move some Elisp-specific code from lisp-mode.el to elisp-mode.el
34573         * lisp/emacs-lisp/lisp-mode.el (lisp--el-font-lock-flush-elisp-buffers):
34574         Move to elisp-mode.el.
34575         (lisp-mode-variables): (Re)move elisp-specific settings.
34576         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode): Add settings removed
34577         from lisp-mode-variables.
34578         (elisp--font-lock-flush-elisp-buffers): New function, moved from
34579         lisp-mode.el.
34581         * lisp/emacs-lisp/lisp-mode.el (lisp--el-non-funcall-position-p):
34582         Avoid pathological slowdown at top-level in large file.
34584 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
34586         Standardize names of ChangeLog history files
34587         Suggested by Glenn Morris in:
34588         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
34589         * Makefile.in (install-man): Don't treat ChangeLog.1 as a man page.
34590         * doc/man/ChangeLog.1: Rename back from doc/man/ChangeLog.01.
34591         * lisp/erc/ChangeLog.1: New file, containing the old contents of ...
34592         * lisp/erc/ChangeLog.01, lisp/erc/ChangeLog.02, lisp/erc/ChangeLog.03:
34593         * lisp/erc/ChangeLog.04, lisp/erc/ChangeLog.05, lisp/erc/ChangeLog.06:
34594         * lisp/erc/ChangeLog.07, lisp/erc/ChangeLog.08, lisp/erc/ChangeLog.09:
34595         Remove.
34597         Split top-level entries into pre- and post-April 7
34598         This more clearly distingiushes pre-April-7 ChangeLog entries (which
34599         are for top-level files only) from post-April-7 entries (which are
34600         about files at all levels.  Problem reported by Glenn Morris in:
34601         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
34602         * ChangeLog.1: Move post-April-7 entries from here ...
34603         * ChangeLog.2: ... to this new file.
34604         * Makefile.in (CHANGELOG_HISTORY_INDEX_MAX): Bump to 2.
34606 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
34608         Fix recent cus-start changes that added customize-rogues
34609         * lisp/cus-start.el (custom-delayed-init-variables): Initialize the
34610         vars early.
34611         * lisp/loadup.el ("cus-start"): Move to the end to reduce
34612         customize-rogue.
34614 2015-04-15  Nicolas Petton  <nicolas@petton.fr>
34616         Define cl-concatenate as an alias to seq-concatenate
34617         * lisp/emacs-lisp/cl-extra.el (cl-concatenate): Removes duplicated
34618           code by making cl-concatenate an alias to seq-concatenate.
34620 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
34622         * src/lread.c (intern_1): Make sure we'd find the symbol we add
34623         (Bug#20334)
34624         * src/xfaces.c (resolve_face_name): Don't use `intern' with
34625         Lisp_Strings.
34627 2015-04-15  Glenn Morris  <rgm@gnu.org>
34629         * doc/lispref/sequences.texi (Sequence Functions): Fix typo in previous.
34631 2015-04-15  Lars Magne Ingebrigtsen  <larsi@gnus.org>
34633         Clean up gnus-uu saving code slightly
34634         * lisp/gnus/gnus-uu.el (gnus-uu-save-article): Make the
34635         save-restriction/widen calls make more sense.
34637 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
34639         Make [:graph:] act like [:print:] sans space
34640         In POSIX [[:print:]] is equivalent to [ [:graph:]], so change
34641         [:graph:] so that it matches everything that [:print:] does,
34642         except for space.
34643         * doc/lispref/searching.texi (Char Classes):
34644         * etc/NEWS:
34645         * lisp/emacs-lisp/rx.el (rx):
34646         Document [:graph:] to be [:print:] sans ' '.
34647         * src/character.c, src/character.h (graphicp): New function.
34648         * src/regex.c (ISGRAPH) [emacs]: Use it.
34649         (BIT_GRAPH): New macro.
34650         (BIT_PRINT): Increase to 0x200, to make room for BIT_GRAPH.
34651         (re_wctype_to_bit) [! WIDE_CHAR_SUPPORT]:
34652         Return BIT_GRAPH for RECC_GRAPH.
34653         (re_match_2_internal) [emacs]: Use ISGRAPH if BIT_GRAPH,
34654         and ISPRINT if BIT_PRINT.
34656 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
34658         automated/eieio-test-methodinvoke.el (make-instance) <(subclass C)>:
34659         Don't use call-next-method in a cl-defmethod.
34661         * lisp/emacs-lisp/eieio-core.el (eieio--class): Derive from cl--class
34662         (eieio--class-p): Remove, provided by cl-defstruct.
34664 2015-04-14  Nicolas Petton  <nicolas@petton.fr>
34666         Add seq-intersection and seq-difference to the seq library
34667         * lisp/emacs-lisp/seq.el (seq-intersection, seq-difference):
34668         New functions.
34669         * test/automated/seq-tests.el: Add tests for seq-intersection and
34670         seq-difference.
34671         * doc/lispref/sequences.texi: Add documentation for seq-intersection
34672         and seq-difference.
34674 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
34676         * lisp/emacs-lisp/eieio-core.el (class-abstract-p): Don't inline,
34677         to avoid leaking internals.
34679 2015-04-14  Sam Steingold  <sds@gnu.org>
34681         package--ensure-init-file: widen requires save-restriction
34683 2015-04-14  Eli Zaretskii  <eliz@gnu.org>
34685         Improve the commit-msg Git hook for unibyte environments
34686         * build-aux/git-hooks/commit-msg: Set LC_ALL=C, before running Awk
34687         in unibyte environments.  (Suggested by Paul Eggert
34688         <eggert@cs.ucla.edu>.)  Use a more accurate approximation to
34689         [:print:], based on UTF-8 sequences of the unprintable characters.
34691         Describe problems with cursor caused by Windows Magnifier
34692         * etc/PROBLEMS: Describe the problem with cursor shape on
34693         MS-Windows due to Windows Magnifier.
34694         (Bug#20271)
34696         Make [:print:] support non-ASCII characters correctly
34697         * src/regex.c (ISPRINT): Call 'printablep' for multibyte characters.
34698         (BIT_PRINT): New bit mask.
34699         (re_wctype_to_bit): Return BIT_PRINT for RECC_PRINT.
34700         * src/character.c (printablep): New function.
34701         * src/character.h (printablep): Add prototype.
34702         * lisp/emacs-lisp/rx.el (rx): Doc fix: document the new behavior
34703         of 'print', 'alnum', and 'alphabetic'.
34704         * doc/lispref/searching.texi (Char Classes): Document the new
34705         behavior of [:print:].
34706         * etc/NEWS: Mention the new behavior of [:print:].
34708         Assign correct general-category and names to surrogates
34709         * admin/unidata/unidata-gen.el (unidata-setup-list): Don't ignore
34710         surrogates.  This avoids assigning them the default
34711         general-category of 'Cn', i.e. unassigned codepoints.
34712         (unidata-get-name): Give surrogates synthetic names.
34714 2015-04-14  Paul Eggert  <eggert@cs.ucla.edu>
34716         Assume C89 offsetof in xterm.c, xlwmenu.c
34717         * lwlib/xlwmenu.c (offset):
34718         * src/xterm.c (cvt_string_to_pixel_args):
34719         Use offsetof, not XtOffset.
34721 2015-04-14  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
34723         Assume C89 offsetof in widget.c
34724         * src/widget.c (XtOffset): Remove; no longer needed.
34725         (offset): Implement via offsetof instead of via pre-C89 XtOffset hack.
34727         Fix think-o in previous patch
34728         * src/window.c (count_windows, get_leaf_windows):
34729         Don't optimize count_windows incorrectly.
34731 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
34733         Avoid some int overflows in window.c
34734         * src/print.c (print_object):
34735         * src/window.c (sequence_number):
34736         * src/window.h (struct window.sequence_number):
34737         Don't assume window sequence number fits in int.
34738         * src/window.c (window_select_count):
34739         * src/window.h (struct window.use_time, window_select_count):
34740         Don't assume window use time fits in int.
34741         * src/window.c (Fsplit_window_internal):
34742         Don't assume user-supplied integer, or sum, fits in int.
34743         (Fset_window_configuration, count_windows, get_leaf_windows)
34744         (save_window_save, Fcurrent_window_configuration):
34745         Use ptrdiff_t for object counts.
34746         (Fset_window_configuration): Omit unused local 'n'.
34747         (count_windows): Simplify by writing in terms of get_leaf_windows.
34748         (get_leaf_windows): Don't store through FLAT if it's null.
34749         (extract_dimension): New static function.
34750         (set_window_margins, set_window_fringes, set_window_scroll_bars):
34751         Use it to avoid undefined behavior when converting user-supplied
34752         integer to 'int'.
34754 2015-04-13  Glenn Morris  <rgm@gnu.org>
34756         Minor doc copyedits
34757         * doc/emacs/custom.texi (Init Examples): Tweak example, replace typo.
34758         * doc/lispintro/emacs-lisp-intro.texi (condition-case): Typo fix.
34760 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
34762         [Gnus] Catch the invalid-operation that idna.el will issue
34763         * lisp/gnus/gnus-art.el (gnus-use-idna):
34764         * lisp/gnus/gnus-sum.el (gnus-summary-idna-message):
34765         * lisp/gnus/message.el (message-use-idna):
34766         Catch the invalid-operation that idna.el will issue.
34768 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
34770         * doc/lispref/processes.texi (Shell Arguments): Prefer diff -u.
34772 2015-04-13  Sam Steingold  <sds@gnu.org>
34774         package--ensure-init-file: widen before looking for
34775         "(package-initialize)"
34777 2015-04-13  Dmitry Gutov  <dgutov@yandex.ru>
34779         Change diff-switches default to `-u' (Bug#20290)
34780         * doc/emacs/files.texi (Comparing Files): Document the new default
34781         value of `diff-switches'.
34782         * doc/emacs/trouble.texi (Sending Patches): Document the preference
34783         for unified diff format.  Escape the plus in the suggested `-F' regexp
34784         value.
34785         * lisp/vc/diff.el (diff-switches): Change the default to `-u'.
34787 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
34789         (gnus-group--setup-tool-bar-update): Fix last change
34790         * lisp/gnus/gnus-group.el (gnus-group--setup-tool-bar-update):
34791         cursor-sensor-functions should be a list of functions.
34793 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
34795         * lisp/gnus/gnus-topic.el (gnus-topic-mode):
34796         Use gmm-called-interactively-p.
34798 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
34800         * lisp/loadup.el ("cus-start"): Load it after loaddefs.el
34801         (Bug#20321)
34802         * lisp/cus-start.el (read-buffer-function): Don't advertise
34803         iswitchb-read-buffer any more.
34804         (iswitchb): Don't tweak this obsolete group any more.
34806 2015-04-13  Artur Malabarba  <bruce.connor.am@gmail.com>
34808         * lisp/emacs-lisp/package.el: Fix package--ensure-init-file.
34810         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Implement docstrings.
34811         Adding a string after a constructor's argument list will use
34812         that string as the constructor function docstring.  If this string
34813         is absent but the struct itself was given a docstring, use that as
34814         the constructor's docstring.
34815         Fixes bug#17284.
34817 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
34819         Deprecate `intangible' and `point-entered' properties
34820         * lisp/emacs-lisp/cursor-sensor.el: New file.
34821         * lisp/simple.el (pre-redisplay-functions): New hook.
34822         (redisplay--pre-redisplay-functions): New function.
34823         (pre-redisplay-function): Use it.
34824         (minibuffer-avoid-prompt): Mark obsolete.
34825         (redisplay--update-region-highlight): Adapt it to work as a function on
34826         pre-redisplay-functions.
34827         * lisp/cus-start.el (minibuffer-prompt-properties--setter): New fun.
34828         (minibuffer-prompt-properties): Use it.  Use cursor-intangible rather
34829         than point-entered to make the prompt intangible.
34830         * lisp/forms.el: Move `provide' calls to the end.
34831         (forms-mode): Don't use `run-hooks' on a local var.
34832         (forms--make-format, forms--make-format-elt-using-text-properties):
34833         Use cursor-intangible rather than `intangible'.
34834         (forms-mode): Enable cursor-intangible-mode.
34835         * lisp/isearch.el (isearch-mode): Use defvar-local.
34836         (cursor-sensor-inhibit): Declare.
34837         (isearch-mode): Set cursor-sensor-inhibit.
34838         (isearch-done): Set it back.
34839         (isearch-open-overlay-temporary, isearch-open-necessary-overlays)
34840         (isearch-close-unnecessary-overlays): Don't bother with `intangible'
34841         any more.
34842         * lisp/ses.el (ses-localvars): Remove `mode-line-process'.
34843         (ses-sym-rowcol, ses-cell-value, ses-col-width, ses-col-printer):
34844         Add Edebug spec.
34845         (ses-goto-print, ses-print-cell, ses-adjust-print-width)
34846         (ses-goto-data, ses-setup, ses-copy-region): Don't let-bind
34847         inhibit-point-motion-hooks any more.
34848         (ses--cell-at-pos, ses--curcell): New functions, extracted from
34849         ses-set-curcell.
34850         (ses-set-curcell): Use them.
34851         (ses-print-cell, ses-setup): Use cursor-intangible instead of
34852         `intangible'.  Make sure cursor-intangible isn't sticky at BOB.
34853         (ses-print-cell-new-width, ses-reprint-all, ses-recalculate-all):
34854         Use ses--cell-at-pos.
34855         (ses--mode-line-process, ses--cursor-sensor-highlight): New functions,
34856         extracted from ses-command-hook.  Make them work with multiple windows
34857         displaying the same buffer.
34858         (ses-mode): Use them via mode-line-process and pre-redisplay-functions.
34859         Enable cursor-intangible-mode.
34860         (ses-command-hook): Remove cell highlight and mode-line update code.
34861         (ses-forward-or-insert, ses-copy-region-helper, ses-sort-column):
34862         Update for new name of text-property holding the cell name.
34863         (ses-rename-cell): Don't mess with mode-line-process.
34864         * lisp/erc/erc-stamp.el (erc-add-timestamp): Use the new
34865         cursor-sensor-functions property instead of point-entered.
34866         (erc-insert-timestamp-right, erc-format-timestamp):
34867         Use cursor-intangible rather than `intangible'.
34868         (erc-munge-invisibility-spec): Use add-to-invisibility-spec and
34869         remove-from-invisibility-spec.  Enable cursor-intangible-mode and
34870         cursor-sensor-mode if needed.
34871         (erc-echo-timestamp): Adapt to calling convention of
34872         cursor-sensor-functions.
34873         (erc-insert-timestamp-right): Remove unused vars `current-window' and
34874         `indent'.
34875         * lisp/gnus/gnus-group.el (gnus-tmp-*): Declare.
34876         (gnus-update-group-mark-positions): Remove unused `topic' var.
34877         (gnus-group-insert-group-line): Remove unused var `header'.
34878         (gnus-group--setup-tool-bar-update): New function.
34879         (gnus-group-insert-group-line): Use it.
34880         (gnus-group-update-eval-form): Declare local
34881         dynamically-bound variables.
34882         (gnus-group-unsubscribe-group): Use \` and \' to match string bounds.
34883         * lisp/gnus/gnus-topic.el (gnus-topic-jump-to-topic)
34884         (gnus-group-prepare-topics, gnus-topic-update-topic)
34885         (gnus-topic-change-level, gnus-topic-catchup-articles)
34886         (gnus-topic-remove-group, gnus-topic-delete, gnus-topic-indent):
34887         Use inhibit-read-only.
34888         (gnus-topic-prepare-topic): Use gnus-group--setup-tool-bar-update.
34889         (gnus-topic-mode): Use define-minor-mode and derived-mode-p.
34890         * lisp/textmodes/reftex-index.el (reftex-display-index):
34891         Use cursor-intangible-mode if available.
34892         (reftex-index-post-command-hook): Check cursor-intangible.
34893         * lisp/textmodes/reftex-toc.el (reftex-toc):
34894         Use cursor-intangible-mode if available.
34895         (reftex-toc-recenter, reftex-toc-post-command-hook):
34896         Check cursor-intangible.
34897         * lisp/textmodes/sgml-mode.el: Use lexical-binding.
34898         (sgml-tag): Use cursor-sensor-functions instead of point-entered.
34899         (sgml-tags-invisible): Use with-silent-modifications and
34900         inhibit-read-only.  Enable cursor-sensor-mode.
34901         (sgml-cursor-sensor): Rename from sgml-point-entered and adjust to
34902         calling convention of cursor-sensor-functions.
34903         * lisp/textmodes/table.el (table-cell-map-hook, table-load-hook)
34904         (table-point-entered-cell-hook, table-point-left-cell-hook):
34905         Don't autoload.
34906         (table-cell-entered-state): Remove var.
34907         (table--put-cell-point-entered/left-property)
34908         (table--remove-cell-properties):
34909         Use cursor-sensor-functions rather than point-entered/left.
34910         (table--point-entered/left-cell-function): Merge
34911         table--point-entered-cell-function and table--point-left-cell-function
34912         and adjust to calling convention of cursor-sensor-functions.
34914         Update ldef-boots.el
34916         * lisp/emacs-lisp/pcase.el (pcase-dolist): Autoload as well.
34918         * doc/misc/eieio.texi: Don't advertise now obsolete constructs
34920         Collapse successive char deletions in the undo log
34921         * src/cmds.c (remove_excessive_undo_boundaries): New function,
34922         extracted from Fself_insert_command.
34923         (Fdelete_char, Fself_insert_command): Use it.
34924         * src/fileio.c (Fmake_symbolic_link): Rename arg to `target'.
34925         * src/keyboard.c (syms_of_keyboard): `top-level' shouldn't be special.
34927         xterm and OSC 52: Add NEWS entry, and tweak the code
34928         * lisp/term/xterm.el (gui-set-selection) <nil>: Move method definition
34929         to top-level.
34930         (terminal-init-xterm-activate-set-selection): Set a terminal property.
34931         (xterm--set-selection): Use it instead of checking the value of
34932         `terminal-initted'.  Don't use string-bytes.
34934 2015-04-13  Philipp Stephani  <p.stephani2@gmail.com>
34936         xterm.el: Implement OSC-52 functionality for setting the X selection
34937         * lisp/term/xterm.el (xterm-max-cut-length): New var.
34938         (xterm--set-selection, terminal-init-xterm-activate-set-selection):
34939         New funs.
34940         (terminal-init-xterm, xterm--version-handler): Use them.
34942 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
34944         Remove left over code from when we used an obsolete/loaddefs.el file
34945         * lisp/subr.el (do-after-load-evaluation): Remove left over code from
34946         when we used an obsolete/loaddefs.el file.
34948         * lisp/cedet/semantic/fw.el (semantic-exit-on-input)
34949         (semanticdb-without-unloaded-file-searches): Use declare.
34950         (semantic-fw-add-edebug-spec): Remove.
34952         * lisp/completion.el (completion-lisp-mode-hook):
34953         Use completion-separator-chars rather than local key binding.
34955         * src/*.c: Set deactivate_mark buffer-locally
34956         (Bug#20260)
34957         * src/insdel.c (prepare_to_modify_buffer_1):
34958         * src/fileio.c (Finsert_file_contents): Set deactivate_mark
34959         buffer-locally.
34961 2015-04-12  Fabián Ezequiel Gallina  <fgallina@gnu.org>
34963         python.el: Keep symmetry on sexp navigation with parens
34964         (Bug#19954)
34965         * lisp/progmodes/python.el
34966         (python-nav--forward-sexp): Add argument skip-parens-p.
34967         (python-nav-forward-sexp, python-nav-backward-sexp)
34968         (python-nav-forward-sexp-safe)
34969         (python-nav-backward-sexp-safe): Use it.
34970         * test/automated/python-tests.el
34971         (python-nav-forward-sexp-1): Fix test.
34973 2015-04-12  João Távora  <joaotavora@gmail.com>
34975         Don't use `setq-local' in Gnus code
34976         This might break upstream builds with older Emacsen
34977         * lisp/gnus/message.el (message-mode): Use `set' and
34978         `make-local-variable' instead of `setq-local'.
34980 2015-04-12  Paul Eggert  <eggert@cs.ucla.edu>
34982         Update Makefile.in's .PHONY dependencies
34983         * Makefile.in (change-history-commit, master-branch-is-current)
34984         (no-ChangeLog): Now phony.
34986         Remove configure's --with-mmdf option
34987         * configure.ac (MAIL_USE_MMDF): Remove.
34988         * etc/NEWS: Document this.
34989         * lib-src/movemail.c: Assume MAIL_USE_MMDF is not defined.
34990         (Bug#20308)
34992         * doc/man/ChangeLog.01: Rename from doc/man/ChangeLog.1.
34993         That way, 'make install' won't think it's a man page.
34994         Reported by Ashish SHUKLA in:
34995         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00656.html
34997         Improve 'make change-history' prereq tests
34998         * Makefile.in (gen_origin): Fix to match what's in the master branch.
34999         (no-ChangeLog, master-branch-is-current): New rules.
35000         (change-history): Depend on them, to avoid similar future problems.
35001         Escape the local-variables string to pacify Emacs when editing
35002         Makefile.in.
35004 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
35006         * test/automated/package-test.el (with-package-test):
35007         Kill Packages buffer.
35009         * lisp/emacs-lisp/package.el: Improve transaction y-or-n prompt.
35010         (package-menu--prompt-transaction-p): Prompt for "Delete" first,
35011         "Upgrade" last, and use capitalized instead of all-caps.
35013         * lisp/emacs-lisp/package.el: Completely silence async operations.
35014         (package--make-autoloads-and-stuff): Silence autoloads.
35015         (package--save-selected-packages): New function, silences
35016         `customize-save-variable'.
35017         (package--user-selected-p, package-install-from-buffer)
35018         (package-delete, package-install): Use it.
35019         (package-install-from-archive)
35020         (package-menu--perform-transaction): Silence.
35021         (package-menu-execute): Feedback when operation starts.
35023         Use delay-mode-hooks when visiting the init-file
35024         * lisp/emacs-lisp/package.el (package--ensure-init-file):
35025         delay-mode-hooks.
35026         * lisp/cus-edit.el (custom-save-all): delay-mode-hooks.
35028         * lisp/files.el: Only message when saving if save-silently is nil.
35029         (save-silently): New variable.
35030         (files--message): New function.
35031         (find-file-noselect, save-buffer, basic-save-buffer)
35032         (basic-save-buffer-2, save-some-buffers, not-modified)
35033         (append-to-file): Use them.
35035 2015-04-12  Johan Bockgård  <bojohan@gnu.org>
35037         Support debug declarations in pcase macros
35038         * lisp/emacs-lisp/pcase.el (pcase-MACRO): New edebug spec.
35039         (pcase-UPAT): Use it.  Remove "`".
35040         (pcase--edebug-match-macro): New function.
35041         (pcase-defmacro): Support debug declarations.
35042         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
35043         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>:
35044         * lisp/emacs-lisp/pcase.el (\`): <pcase-defmacro>:
35045         Add debug declaration.
35047         pcase.el: Edebug support for `app' and vector patterns
35048         * lisp/emacs-lisp/pcase.el (pcase-FUN): New edebug spec.
35049         (pcase-UPAT): Use it.  Support `app' patterns.
35050         (pcase-QPAT): Support vector patterns.
35052         edebug.el: Disambiguate vector specifications
35053         * lisp/emacs-lisp/edebug.el (edebug-match-list): Always treat
35054         `(vector ...)' as a vector specification, not as a sublist.
35056         (gnus-summary-refer-thread): Don't clobber unread articles
35057         This fixes a bug where `A T' causes "random" articles to become marked
35058         as read.
35059         * lisp/gnus/gnus-sum.el (gnus-summary-refer-thread): Make sure
35060         gnus-newsgroup-unreads remains sorted.
35062         mouse-sel.el: Fix mouse-sel-get-selection-function
35063         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
35064         Use gui--last-selected-text-primary instead of no longer existing
35065         gui-last-selected-text.
35067         * lisp/rect.el (delete-whitespace-rectangle-line): Don't cross EOL.
35069         * lisp/net/nsm.el (nsm-query-user): Use cursor-in-echo-area.
35071 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
35073         * lisp/emacs-lisp/package.el (list-packages): Avoid redundant generate.
35075         * lisp/emacs-lisp/package.el (list-packages): Call refresh in
35076         right buffer.
35078         * lisp/emacs-lisp/bytecomp.el: Silence noninteractive compilations.
35079         (byte-compile--interactive): New var.
35080         (byte-compile--message): New function.
35081         (byte-compile-log-1, byte-force-recompile)
35082         (byte-recompile-directory, byte-recompile-file)
35083         (byte-compile-file, compile-defun)
35084         (byte-compile-file-form-defmumble, byte-compile)
35085         (byte-compile-file-form-defalias, display-call-tree): Use it.
35087         * lisp/files.el: Don't message when nothing happened.
35088         (save-some-buffers, basic-save-buffer): Before messaging to say
35089         "nothing was saved" check if (called-interactively-p 'any).
35091 2015-04-12  João Távora  <joaotavora@gmail.com>
35093         Summary: Improve sexp-based movement in message-mode
35094         Works by giving citations and smileys a different syntax.  This helps
35095         modes like `show-paren-mode', `electric-pair-mode', and C-M-*
35096         sexp-based movement.
35097         * lisp/gnus/message.el (message--syntax-propertize): New function.
35098         (message-mode): Set syntax-related vars.
35099         (message-smileys): New variable.
35100         * test/automated/message-mode-tests.el: New file
35102 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
35104         Use bool for boolean in window.c
35105         * src/window.c: Omit unnecessary static function decls.
35106         (adjust_window_count, select_window, Fselect_window)
35107         (window_body_width, Fwindow_body_height, Fwindow_body_width)
35108         (set_window_hscroll, check_window_containing, Fwindow_at)
35109         (Fwindow_end, Fset_window_start, Fpos_visible_in_window_p)
35110         (unshow_buffer, replace_window, recombine_windows)
35111         (add_window_to_list, candidate_window_p, next_window)
35112         (Fnext_window, Fprevious_window, window_loop, check_all_windows)
35113         (Fget_buffer_window, Fdelete_other_windows_internal)
35114         (replace_buffer_in_windows_safely, set_window_buffer)
35115         (Fset_window_buffer, Fforce_window_update)
35116         (temp_output_buffer_show, make_parent_window)
35117         (window_resize_check, window_resize_apply, Fwindow_resize_apply)
35118         (resize_frame_windows, Fsplit_window_internal)
35119         (Fdelete_window_internal, grow_mini_window, shrink_mini_window)
35120         (Fresize_mini_window_internal, mark_window_cursors_off)
35121         (window_scroll, window_scroll_pixel_based)
35122         (window_scroll_line_based, scroll_command, Fscroll_other_window)
35123         (Fscroll_left, Fscroll_right, displayed_window_lines, Frecenter)
35124         (Fmove_to_window_line, Fset_window_configuration)
35125         (delete_all_child_windows, apply_window_adjustment)
35126         (set_window_fringes, set_window_scroll_bars)
35127         (Fset_window_vscroll, foreach_window, foreach_window_1)
35128         (compare_window_configurations, Fcompare_window_configurations):
35129         Prefer 'bool', 'true', and 'false' for booleans.
35130         * src/window.h (WINDOW_MODE_LINE_LINES)
35131         (WINDOW_HEADER_LINE_LINES): Omit unnecessary "!!" on bool value.
35133 2015-04-11  Artur Malabarba  <bruce.connor.am@gmail.com>
35135         Speed up byte-compilation and autoload generation by avoiding mode-hooks
35136         This prevents emacs-lisp-mode-hook from being run everytime an
35137         autoload file is generated, which can account for a fraction of
35138         package installation time depending on the hooks the user has
35139         configured.
35140         * lisp/emacs-lisp/bytecomp.el (byte-compile-file): Use delay-mode-hooks.
35141         * lisp/emacs-lisp/autoload.el (autoload-find-file)
35142         (autoload-find-generated-file): Use delay-mode-hooks.
35144         * lisp/emacs-lisp/package.el: Improve `package-menu-refresh'.
35145         (package-menu-refresh): Respect async and do new package checking.
35146         (list-packages): Use `package-menu-refresh' instead of repeating code.
35148         * lisp/emacs-lisp/package.el: Improve package-menu-quick-help.
35149         (package--quick-help-keys): New variable.
35150         (package--prettify-quick-help-key): New function.
35151         (package-menu-quick-help): Use it.
35153         * lisp/emacs-lisp/package.el: Fix initially wrong compat table.
35154         (package--build-compatibility-table): Require finder.
35156         * test/automated/package-test.el: Fix new test.
35158         * lisp/emacs-lisp/package.el: Silence async operations.
35159         (package--silence): New variable.
35160         (package--message): New function.
35161         (package-import-keyring, package-refresh-contents)
35162         (package-compute-transaction, package-install, package-delete)
35163         (package-menu--perform-transaction, package-menu-execute): Use it.
35165         * test/automated/package-test.el: Test async functionality.
35166         (package-test-update-archives-async): New test.
35168 2015-04-11  Daiki Ueno  <ueno@gnu.org>
35170         Utilize `make-process' in epg.el
35171         * lisp/epg.el (epg-error-output): Abolish.
35172         (epg-context): New slot `error-buffer'.
35173         (epg--start): Use `make-process' and `make-pipe-process'.
35174         (epg--process-filter): Remove code separating stderr from stdout.
35175         (epg-wait-for-completion): Simplify `error-output' handling.
35176         (epg-reset): Dispose error buffer.
35178 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
35180         * .gitignore: Ignore doc temps and outputs.
35182         Port commit-msg to MSYS Bash+Gawk
35183         See Eli Zaretskii in:
35184         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00610.html
35185         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format)
35186         (cent_sign, print_at_sign, at_sign): Revert previous change.
35187         (print_at_sign): Prepend "BEGIN".
35188         (at_sign): Redirect from /dev/null to be safer with pre-POSIX awk.
35190         Port commit-msg to broken MS-Windows shell
35191         * build-aux/git-hooks/commit-msg (cent_sign):
35192         Just use UTF-8 here rather than ASCII + printf, as the latter fails
35193         on a broken MS-Windows shell.  Reported by Eli Zaretskii in:
35194         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00592.html
35196 2015-04-11  Chris Zheng  <chriszheng99@gmail.com>  (tiny change)
35198         Support GnuTLS v3.4 and later on MS-Windows
35199         * src/gnutls.c (syms_of_gnutls) <libgnutls-version>: New DEFSYM.
35200         * lisp/term/w32-win.el (dynamic-library-alist): Determine which
35201         GnuTLS DLL to load according to value of libgnutls-version.
35202         (Bug#20294)
35204 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
35206         Minor quoting etc. fixes to misc manuals
35207         Fix some minor quoting and spacing issues.  Distinguish more
35208         clearly among grave accent and apostrophe (which are ASCII) and
35209         single quote (which is not).  Prefer the standard terms
35210         "apostrophe" and "grave accent" to alternative names that can be
35211         confusing.  Use apostrophes to single-quote ASCII text.
35212         * doc/misc/remember.texi: Spell the mystic's pseudonym in UTF-8
35213         rather than approximating it in ASCII with grave accent.
35215 2015-04-11  Daiki Ueno  <ueno@gnu.org>
35217         Respect more keyword args in `make-process'
35218         * src/process.c (Fmake_process): Respect `:sentinel' and `:filter'
35219         keywords as documented.
35221 2015-04-10  Dmitry Gutov  <dgutov@yandex.ru>
35223         Extract ChangeLog entries when committing a directory
35224         * lisp/vc/vc-dispatcher.el (vc-log-edit): Update FIXME comment.
35225         * lisp/vc/log-edit.el (log-edit-changelog-insert-entries):
35226         Add a FIXME comment.
35227         (log-edit-changelog-entries): Extract from
35228         `log-edit-changelog-entries', handle FILE being a directory
35229         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00555.html).
35231 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
35233         Fix problems found by --enable-gcc-warnings
35234         * src/process.c (create_process, Fmake_pipe_process)
35235         (Fmake_network_process): Omit unused locals.
35237         Fix commit-msg to handle scissors lines
35238         * build-aux/git-hooks/commit-msg:
35239         Ignore every line after a scissors line, such as a line generated
35240         by 'git commit -v'.  Problem reported by Johan Bockgård in:
35241         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00580.html
35243         port commit-msg to Gawk 3.0.4 (1999)
35244         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format, cent_sign)
35245         (print_at_sign, at_sign): New vars.  Use them to avoid problems
35246         Eli Zaretskii encountered with Gawk 3.0.4 (1999) on MSYS.  See:
35247         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
35249         Have commit-msg report commit failure
35250         * build-aux/git-hooks/commit-msg: If the commit is aborted,
35251         say so.  Simplify by doing this at the end.  Problem reported
35252         by Eli Zaretskii in:
35253         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
35255 2015-04-10  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
35257         Clean up LDAP Configuration section of EUDC manual
35258         * doc/misc/eudc.texi: Combine indices.
35259         (LDAP Configuration): Use command markup.  Add index entries.
35260         Change formatting.  Wrap long lines.  Add noindent markup.
35262 2015-04-10  Daiki Ueno  <ueno@gnu.org>
35264         Add facility to collect stderr of async subprocess
35265         * src/w32.h (register_aux_fd): New function declaration.
35266         * src/w32.c (register_aux_fd): New function.
35267         * src/process.h (struct Lisp_Process): New member stderrproc.
35268         * src/process.c (PIPECONN_P): New macro.
35269         (PIPECONN1_P): New macro.
35270         (Fdelete_process, Fprocess_status, Fset_process_buffer)
35271         (Fset_process_filter, Fset_process_sentinel, Fstop_process)
35272         (Fcontinue_process): Handle pipe process specially.
35273         (create_process): Respect p->stderrproc.
35274         (Fmake_pipe_process): New function.
35275         (Fmake_process): Add new keyword argument :stderr.
35276         (wait_reading_process_output): Specially handle a pipe process when
35277         it gets an EOF.
35278         (syms_of_process): Register Qpipe and Smake_pipe_process.
35279         * doc/lispref/processes.texi (Asynchronous Processes): Document
35280         `make-pipe-process' and `:stderr' keyword of `make-process'.
35281         * lisp/subr.el (start-process): Suggest to use `make-process' handle
35282         standard error separately.
35283         * test/automated/process-tests.el (process-test-stderr-buffer)
35284         (process-test-stderr-filter): New tests.
35285         * etc/NEWS: Mention new process type `pipe' and its usage with the
35286         `:stderr' keyword of `make-process'.
35288 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
35290         Minor quoting etc. fixes to lispref manual
35291         * doc/lispref/tips.texi (Documentation Tips):
35292         Distinguish more clearly among grave accent, apostrophe,
35293         and single quote.
35294         * doc/lispref/README, doc/lispref/buffers.texi:
35295         * doc/lispref/commands.texi, doc/lispref/control.texi:
35296         * doc/lispref/customize.texi, doc/lispref/display.texi:
35297         * doc/lispref/elisp.texi, doc/lispref/files.texi:
35298         * doc/lispref/frames.texi, doc/lispref/hash.texi:
35299         * doc/lispref/help.texi, doc/lispref/internals.texi:
35300         * doc/lispref/loading.texi, doc/lispref/makefile.w32-in:
35301         * doc/lispref/markers.texi, doc/lispref/modes.texi:
35302         * doc/lispref/nonascii.texi, doc/lispref/objects.texi:
35303         * doc/lispref/os.texi, doc/lispref/positions.texi:
35304         * doc/lispref/strings.texi, doc/lispref/syntax.texi:
35305         * doc/lispref/text.texi, doc/lispref/tips.texi:
35306         * doc/lispref/two-volume-cross-refs.txt, doc/lispref/windows.texi:
35307         Use American-style double quoting in ordinary text,
35308         and quote 'like this' when single-quoting in ASCII text.
35309         Also, fix some minor spacing issues.
35311 2015-04-10  Michael Albinus  <michael.albinus@gmx.de>
35313         Handle symlinked test directory in tramp-tests.el
35314         * test/automated/tramp-tests.el (tramp-test18-file-attributes)
35315         (tramp--test-check-files): Use `file-truename' for directories.
35317 2015-04-10  Eli Zaretskii  <eliz@gnu.org>
35319         Fix 'recenter' when visual-line-mode is turned on
35320         * src/window.c (Frecenter): Use the same code for GUI and TTY
35321         frames alike; use vmotion only for "initial" frames.  This is
35322         because vmotion doesn't support visual-line-mode.  Rewrite the
35323         'iarg >= 0' case to use move_it_* functions instead of using
35324         vmotion, for the same reason.  Fix the clipping of the argument
35325         value to support scroll-margin in all cases and avoid unwarranted
35326         recentering.  Reported by Milan Stanojević <milanst@gmail.com> in
35327         http://lists.gnu.org/archive/html/help-gnu-emacs/2015-04/msg00092.html,
35328         which see.
35330 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
35332         * lisp/abbrev.el (define-abbrev-table): Refine last change.
35334         * lisp/emacs-lisp/cl-lib.el: Partial revert of "2015-04-05 Rationalize
35335         use of c[ad]+r", so as to keep the "cl-" prefix on all
35336         cl-lib definitions.
35338         * lisp/progmodes/vhdl-mode.el (vhdl-prepare-search-2):
35339         Use inhibit-point-motion-hooks.
35341         * lisp/cedet/semantic: Remove some dead code.
35342         * lisp/cedet/semantic/util-modes.el
35343         (semantic-stickyfunc-header-line-format): Emacs<22 is not supported
35344         any more.
35345         * lisp/cedet/semantic/fw.el (semantic-buffer-local-value): Emacs<21 is
35346         not supported any more.
35347         (semantic-safe): Use `declare'.
35348         * lisp/cedet/semantic/decorate.el (semantic-set-tag-intangible)
35349         (semantic-tag-intangible-p): Remove unused functions.
35350         * lisp/cedet/semantic/complete.el (semantic-displayor-window-edges):
35351         Remove unused function.
35353         * lisp/gnus/gnus-art.el (gnus-hidden-properties): Simplify.
35354         (gnus-article-hide-text, gnus-article-unhide-text)
35355         (gnus-article-unhide-text-type): Remove special handling of
35356         `intangible' since that property is not used any more.
35357         (gnus-article-treat-body-boundary): Use gnus-hidden-properties.
35359 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
35361         Use the VC root in `log-edit-listfun'
35362         * lisp/vc/vc-dispatcher.el (vc-log-edit): Use the VC root in
35363         `log-edit-listfun'.
35365 2015-04-09  Jay Belanger  <jay.p.belanger@gmail.com>
35367         Fix description of Unix time, mention new function.
35368         * lisp/calc/calc-forms.el (calcFunc-unixtime): Fix adjustment for
35369         Unix time.
35370         * doc/misc/calc.texi (Date Forms): Fix description of Unix time.
35371         (Basic Operations on Units): Mention `calc-convert-exact-units'.
35373 2015-04-09  Artur Malabarba  <bruce.connor.am@gmail.com>
35375         * lisp/emacs-lisp/package.el: Use mode-line-process for notification.
35377 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
35379         * lisp/vc/log-edit.el (log-edit-insert-changelog-entries):
35380         Don't add newline after the last entry.
35382 2015-04-09  Simen Heggestøyl  <simenheg@gmail.com>
35384         css-mode.el: Add "not" pseudo-class
35385         (Bug#20267)
35386         * lisp/textmodes/css-mode.el (css-pseudo-class-ids): Add "not" to
35387         list of CSS pseudo-classes.
35389 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
35391         * etc/NEWS: Add missing entry for "Stop messing with the EMACS env var".
35393 2015-04-09  Michael Albinus  <michael.albinus@gmx.de>
35395         Stop messing with the EMACS env var
35396         * doc/emacs/misc.texi (Interactive Shell): Remove description of
35397         EMACS env var.
35399 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
35401         Adapt 'make change-history' to coding cookie
35402         * Makefile.in (change-history): Adjust to change of format of
35403         ChangeLog file, which now has a coding cookie before an indented
35404         copyright notice.
35406 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
35408         Adapt 'make change-history' to coding cookie
35409         * Makefile.in (change-history): Adjust to change of format of
35410         ChangeLog file, which now has a coding cookie before an indented
35411         copyright notice.
35413         gitlog-to-changelog coding cookie and mv -i
35414         * build-aux/gitlog-to-emacslog: Use ChangeLog.1, not Makefile.in,
35415         for copyright notice prototype, so that we get a proper "coding:"
35416         cookie.  Use 'mv -i' to avoid unconditionally overwriting an
35417         existing ChangeLog.  Problems reported by Eli Zaretskii in:
35418         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00504.html
35420         Merge from gnulib
35421         * build-aux/gitlog-to-changelog: Update from gnulib, incorporating:
35422         2015-04-09 gitlog-to-changelog: port to MS-Windows
35424 2015-04-09  Boruch Baum  <boruch_baum@gmx.com>  (tiny change)
35426         * lisp/bookmark.el (bookmark-bmenu-goto-bookmark): Don't inf-loop.
35427         (Bug#20212)
35429 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
35431         Stop messing with the EMACS env var
35432         (Bug#20202)
35433         * lisp/net/tramp-sh.el (tramp-remote-process-environment):
35434         * lisp/comint.el (comint-exec-1):
35435         * lisp/term.el (term-exec-1): Don't set EMACS envvar.
35436         * lisp/progmodes/compile.el (compilation-start): Same and bring
35437         INSIDE_EMACS's format in line with other users.
35439         css-mode.el (css-smie-rules): Fix indentation after complex selectors
35440         (Bug#20282)
35441         * lisp/textmodes/css-mode.el (css-smie-rules): Don't get confused by
35442         inner structure of selectors.
35444 2015-04-08  Fabián Ezequiel Gallina  <fgallina@gnu.org>
35446         python.el: Indent docstring lines to base-indent
35447         (Bug#19595)
35448         Thanks to immerrr <immerrr@gmail.com> for reporting and providing
35449         an initial patch.
35450         * lisp/progmodes/python.el
35451         (python-indent-context): Add :inside-docstring context.
35452         (python-indent--calculate-indentation): Handle :inside-docstring.
35453         (python-indent-region): Re-indent docstrings.
35454         * test/automated/python-tests.el (python-indent-region-5)
35455         (python-indent-inside-string-2): Fix tests.
35457         python.el: Increase native completion robustness
35458         (Bug#19755)
35459         Thanks to Carlos Pita <carlosjosepita@gmail.com> for reporting
35460         this and providing useful ideas.
35461         * lisp/progmodes/python.el
35462         (python-shell-completion-native-output-timeout): Increase value.
35463         (python-shell-completion-native-try-output-timeout): New var.
35464         (python-shell-completion-native-try): Use it.
35465         (python-shell-completion-native-setup): New readline setup avoids
35466         polluting current context, ensures output when no-completions are
35467         available and includes output end marker.
35468         (python-shell-completion-native-get-completions): Trigger with one
35469         tab only.  Call accept-process-output until output end is found or
35470         python-shell-completion-native-output-timeout is exceeded.
35472 2015-04-08  Samer Masterson  <samer@samertm.com>
35474         * lisp/eshell: Make backslash a no-op in front of normal chars
35475         (Bug#8531)
35476         * lisp/eshell/esh-arg.el (eshell-parse-argument-hook): Update comment.
35477         (eshell-parse-backslash): Return escaped character after backslash
35478         if it is special.  Otherwise, if the backslash is not in a quoted
35479         string, ignore the backslash and return the character after; if
35480         the backslash is in a quoted string, return the backslash and the
35481         character after.
35482         * test/automated/eshell.el (eshell-test/escape-nonspecial)
35483         (eshell-test/escape-nonspecial-unicode)
35484         (eshell-test/escape-nonspecial-quoted)
35485         (eshell-test/escape-special-quoted): Add tests for new
35486         `eshell-parse-backslash' behavior.
35488 2015-04-08  Gustav Hållberg  <gustav@gmail.com>  (tiny change)
35490         * lisp/vc/diff-mode.el (diff-hunk-file-names): Don't require a TAB
35491         after the file name.
35492         (Bug#20276)
35494 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
35496         Minor quoting etc. fixes to Emacs manual
35497         * doc/emacs/Makefile.in, doc/emacs/ack.texi, doc/emacs/building.texi:
35498         * doc/emacs/calendar.texi, doc/emacs/cmdargs.texi:
35499         * doc/emacs/custom.texi, doc/emacs/dired.texi, doc/emacs/emacs.texi:
35500         * doc/emacs/files.texi, doc/emacs/glossary.texi, doc/emacs/gnu.texi:
35501         * doc/emacs/indent.texi, doc/emacs/macos.texi:
35502         * doc/emacs/maintaining.texi, doc/emacs/makefile.w32-in:
35503         * doc/emacs/programs.texi, doc/emacs/rmail.texi:
35504         * doc/emacs/search.texi, doc/emacs/trouble.texi:
35505         * doc/emacs/vc1-xtra.texi:
35506         Use American-style double quoting in ordinary text,
35507         and quote 'like this' when single-quoting in ASCII text.
35508         Also, fix some minor spacing issues.
35510         Minor quoting etc. fixes to elisp intro
35511         * doc/lispintro/emacs-lisp-intro.texi: Consistently use
35512         American-style double quoting in ordinary text.  In ASCII text,
35513         consistently quote 'like this' instead of `like this', unless
35514         Emacs requires the latter.
35516 2015-04-08  Dmitry Gutov  <dgutov@yandex.ru>
35518         * CONTRIBUTE: Mention log-edit-insert-changelog.
35520         * CONTRIBUTE: Emphasize creating the top-level ChangeLog file manually.
35522 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
35524         * doc/misc/calc.texi (Summary): Avoid '@:' when usurped.
35526 2015-04-08  Stefan Monnier  <monnier@iro.umontreal.ca>
35528         * lisp/emacs-lisp/eieio-core.el (eieio-copy-parents-into-subclass):
35529         Fix inheritance of initargs.  (Bug#20270)
35531 2015-04-08  Artur Malabarba  <bruce.connor.am@gmail.com>
35533         * lisp/emacs-lisp/package.el (package-menu-mode): Mode-line notification
35534         while dowloading information.
35536         * lisp/emacs-lisp/package.el: More conservative `ensure-init-file'
35537         (package--ensure-init-file): Check file contents before visiting.
35538         (package-initialize): Call it.
35539         (package-install-from-buffer, package-install): Don't call it.
35541 2015-04-08  Eli Zaretskii  <eliz@gnu.org>
35543         * src/eval.c (init_eval_once): Bump max_lisp_eval_depth to 800.
35544         (Bug#17517)
35546 2015-04-08  Michael Albinus  <michael.albinus@gmx.de>
35548         * lisp/net/tramp-cache.el (tramp-flush-file-property):
35549         Fix nasty scoping bug.
35551 2015-04-08  Tassilo Horn  <tsdh@gnu.org>
35553         Add notice to visual commands section
35554         * doc/misc/eshell.texi (Input/Output): Add notice that some tools
35555         such as git call less with its -F option which omits pagination if
35556         the contents is less than one page long.  This interferes with
35557         eshell's visual (sub-)commands.
35559 2015-04-07  Dmitry Gutov  <dgutov@yandex.ru>
35561         * lisp/ffap.el (ffap-string-at-point-mode-alist): Support
35562         environment variable expansion in file names.  (Bug#19839)
35564 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
35566         Prefer double-quote to accent-grave in man pages
35568 2015-04-07  Stefan Monnier  <monnier@iro.umontreal.ca>
35570         (Bug#20257)
35571         * lisp/files.el (set-visited-file-name): Clear auto-save if nil.
35573 2015-04-07  Ivan Shmakov  <ivan@siamics.net>
35575         Update etc/PROBLEMS.
35576         * etc/PROBLEMS: Mention visible-cursor; a few more mentions of
35577         ~/.Xresources and xrdb(1); refer to 'GNU Coreutils' and
35578         'X Window System' or 'X' (were: 'GNU Fileutils' and 'X Windows',
35579         respectively); other minor updates and tweaks.  (Bug#20011)
35581 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
35583         Add doc strings for some Isearch state vars
35584         * lisp/misearch.el (multi-isearch-buffer-list)
35585         (multi-isearch-file-list): Add doc strings.
35586         (Bug#20232)
35588 2015-04-07  Alan Mackenzie  <acm@muc.de>
35590         Always mark "<" and ">" in #include directives with text properties.
35591         * lisp/progmodes/cc-fonts.el (c-cpp-matchers): Replace a font-lock
35592         "anchored matcher" with an invocation of
35593         c-make-font-lock-search-function to allow fontification when there's
35594         no trailing space on an "#include <..>" line.
35596 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
35598         Generate a ChangeLog file from commit logs
35599         * .gitignore: Add 'ChangeLog'.
35600         * build-aux/gitlog-to-changelog: New file, from Gnulib.
35601         * build-aux/gitlog-to-emacslog: New file.
35602         * CONTRIBUTE: Document the revised workflow.
35603         * Makefile.in (clean): Remove *.tmp and etc/*.tmp*
35604         instead of just special cases.
35605         (CHANGELOG_HISTORY_INDEX_MAX, CHANGELOG_N, gen_origin): New vars.
35606         (ChangeLog, unchanged-history-files, change-history)
35607         (change-history-commit): New rules.
35608         * admin/admin.el (make-manuals-dist--1):
35609         Don't worry about doc/ChangeLog.
35610         * admin/authors.el: Add a FIXME.
35611         * admin/make-tarball.txt:
35612         * lisp/calendar/icalendar.el:
35613         * lisp/gnus/deuglify.el:
35614         * lisp/obsolete/gulp.el:
35615         * lwlib/README:
35616         Adjust to renamed ChangeLog history files.
35617         * admin/merge-gnulib (GNULIB_MODULES): Add gitlog-to-changelog.
35618         * admin/notes/repo: Call it 'master' a la Git, not 'trunk' a la Bzr.
35619         Remove obsolete discussion of merging ChangeLog files.
35620         New section "Maintaining ChangeLog history".
35621         * build-aux/git-hooks/pre-commit:
35622         Reject attempts to commit files named 'ChangeLog'.
35623         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
35624         * make-dist: Make and distribute top-level ChangeLog if there's a
35625         .git directory.  Distribute the new ChangeLog history files
35626         instead of scattered ChangeLog files.  Distribute the new files
35627         gitlog-to-changelog and gitlog-to-emacslog.
35628         (Bug#19113)
35630         Rename ChangeLogs for gitlog-to-changelog
35631         This patch was implemented via the following shell commands:
35632         find * -name ChangeLog |
35633         sed 's,.*,git mv & &.1,
35634         s, lisp/ChangeLog\.1$, lisp/ChangeLog.17,
35635         s, lisp/erc/ChangeLog\.1$, lisp/erc/ChangeLog.09,
35636         s, lisp/gnus/ChangeLog\.1$, lisp/gnus/ChangeLog.3,
35637         s, lisp/mh-e/ChangeLog\.1$, lisp/mh-e/ChangeLog.2,
35638         s, src/ChangeLog\.1$, src/ChangeLog.13,' |
35639         sh
35640         git commit -am"[this commit message]"
35642 This file records repository revisions from
35643 commit 9d56a21e6a696ad19ac65c4b405aeca44785884a (exclusive) to
35644 commit ec4226d81074751c105264a3a3383c48d0a05e41 (inclusive).
35645 See ChangeLog.1 for earlier changes.
35647 ;; Local Variables:
35648 ;; coding: utf-8
35649 ;; End:
35651   Copyright (C) 2015-2017 Free Software Foundation, Inc.
35653   This file is part of GNU Emacs.
35655   GNU Emacs is free software: you can redistribute it and/or modify
35656   it under the terms of the GNU General Public License as published by
35657   the Free Software Foundation, either version 3 of the License, or
35658   (at your option) any later version.
35660   GNU Emacs is distributed in the hope that it will be useful,
35661   but WITHOUT ANY WARRANTY; without even the implied warranty of
35662   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
35663   GNU General Public License for more details.
35665   You should have received a copy of the GNU General Public License
35666   along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.