* lisp/auth-source.el (auth-source-backend-parse): `return' -> cl-return.
[emacs.git] / ChangeLog.2
blob4b266e1e9527d820c8ffd7d6a6e986eb24db21e1
1 2017-04-20  Nicolas Petton  <nicolas@petton.fr>
3         * Version 25.2 released.
5 2017-04-18  Eli Zaretskii  <eliz@gnu.org>
7         Fix a typo in indexing the user manual
9         * doc/emacs/cmdargs.texi (General Variables): Fix a horrible typo.
11 2017-04-12  Eli Zaretskii  <eliz@gnu.org>
13         * lisp/menu-bar.el (kill-this-buffer): Doc fix.  (Bug#26466)
15 2017-04-11  Eli Zaretskii  <eliz@gnu.org>
17         Document 'line-pixel-height'
19         * doc/lispref/display.texi (Size of Displayed Text): Document
20         line-pixel-height.  Suggested by Tak Kunihiro
21         <tkk@misasa.okayama-u.ac.jp>.  (Bug#26379)
23 2017-04-07  Hong Xu  <hong@topbug.net>
25         * src/search.c (Fre_search_forward, Fre_search_backward): Improve doc (Bug#25193).
27 2017-04-07  Noam Postavsky  <npostavs@gmail.com>
29         Mention that processes start in default-directory (Bug#18515)
31         * doc/lispref/processes.texi (Synchronous Processes):
32         (Asynchronous Processes):
33         * lisp/subr.el (start-process):
34         * src/callproc.c (call-process): Mention that the subprocess starts in
35         `default-directory' when local, suggest `start-file-process' and
36         `process-file' otherwise.
38 2017-04-07  Noam Postavsky  <npostavs@gmail.com>
40         * src/xdisp.c (vmessage, message): Clarify commentary.
42 2017-04-02  Glenn Morris  <rgm@gnu.org>
44         Belated fixes for admin.el's M-x make-manuals-dist
46         * admin/admin.el (make-manuals-dist-output-variables): Additions.
47         (make-manuals-dist--1): Also copy docstyle.texi.
49 2017-03-31  Tino Calancha  <tino.calancha@gmail.com>
51         default-directory: Remark that it must be a directory name
53         * src/buffer.c (default-directory): Update docstring (Bug#26272).
55 2017-03-31  Tino Calancha  <tino.calancha@gmail.com>
57         Delete confuse statement in manual
59         * doc/misc/cl.texi (For Clauses): Delete confuse statement
60         and its example (Bug#23550).
62 2017-03-31  Noam Postavsky  <npostavs@gmail.com>
64         Improve packaging documentation
66         * doc/lispref/package.texi (Packaging Basics):
67         * doc/lispref/tips.texi (Library Headers): Clarify some header
68         formats, relation between file headers and package
69         attributes (Bug#13281).
71 2017-03-27  Eric Abrahamsen  <eric@ericabrahamsen.net>
73         Expand manual section on quitting windows
75         * doc/lispref/windows.texi (Quitting Windows): Provide more
76           information about the elements of the quit-restore window parameter,
77           and how they affect the behavior of quit-restore-window.
79 2017-03-26  Noam Postavsky  <npostavs@gmail.com>
81         Fix docstring of dabbrev-abbrev-char-regexp
83         * lisp/dabbrev.el (dabbrev-abbrev-char-regexp): Using a value of nil
84         is equivalent to "\\sw\\|\\s_", and has no special behavior.  If the
85         previous character doesn't match, we search backwards for one that
86         does, not throw an error.  Replace Lisp example with C based one to
87         make it clear that "symbol" means a sequence of word and symbol
88         constituent characters, not a Lisp symbol (Bug#358).
90 2017-03-26  Johan Claesson  <johanclaesson@bredband.net>  (tiny change)
92         * doc/misc/cl.texi (Iteration Clauses): Clarify example (Bug#19515).
94 2017-03-25  Eli Zaretskii  <eliz@gnu.org>
96         ;* doc/misc/info.texi (Choose menu subtopic): Improve indexing.  (Bug#26236)
98 2017-03-21  Noam Postavsky  <npostavs@gmail.com>
100         Narrow scope of modification hook renabling in org-src fontification
102         Modification hooks should be enabled while modifying text in the
103         org-src temp buffer, but in 2017-01-29 "Call modification hooks in
104         org-src fontify buffers" the hooks were enabled also for modifications
105         to the original org buffer.  This causes fontification errors when
106         combined with certain packages, as reported in
107         http://lists.gnu.org/archive/html/emacs-orgmode/2017-03/msg00420.html.
109         * lisp/org/org-src.el (org-src-font-lock-fontify-block): Reduce scope
110         of inhibit-modification-hooks let-binding.
112 2017-03-17  Eli Zaretskii  <eliz@gnu.org>
114         Improve documentation of interactive "r".
116         * doc/lispref/commands.texi (Interactive Codes): Mention that mark
117         must be set for "r" to work.
119 2017-03-17  Thien-Thi Nguyen  <ttn@gnu.org>
121         Fix bug: Range-check integer ‘alpha’ frame parm value
123         Typo introduced 2013-04-01, "Prefer < to >
124         in range checks such as 0 <= i && i < N".
126         * src/frame.c (x_set_alpha): Use ‘ialpha’, not ‘alpha’.
128 2017-03-17  Paul Eggert  <eggert@cs.ucla.edu>
130         * etc/PROBLEMS: Say that HP-UX cc doesn't work.
132 2017-03-14  Eli Zaretskii  <eliz@gnu.org>
134         Fix duplicate wording in Emacs manual
136         * doc/emacs/programs.texi (Which Function): Delete duplicate
137         wording.  (Bug#26098)
139 2017-03-14  Hong Xu  <hong@topbug.net>
141         * lisp/paren.el (show-paren--default, show-paren-function): Add docstring.
143 2017-03-13  Eli Zaretskii  <eliz@gnu.org>
145         Fix wording in Emacs manual
147         * doc/emacs/text.texi (Paragraphs): Fix a garbled sentence.
148         (Bug#26086)
150 2017-03-11  Eli Zaretskii  <eliz@gnu.org>
152         Document how to customize input methods
154         * doc/emacs/mule.texi (Input Methods): Document how to customize
155         input methods.
157 2017-03-11  Eli Zaretskii  <eliz@gnu.org>
159         * lisp/net/eww.el (eww-reload): Doc fix.  (Bug#25981)
161 2017-03-06  Noam Postavsky  <npostavs@gmail.com>
163         Fix warning message about native completion (Bug#25984)
165         * lisp/progmodes/python.el (python-shell-completion-native-turn-on-maybe):
166         The relevant variable is `python-shell-completion-native-enable'.
168 2017-03-04  Eli Zaretskii  <eliz@gnu.org>
170         Clarify documentation of 'raise' and 'height' display specs
172         * doc/lispref/display.texi (Other Display Specs): Clarify the
173         effect of 'height' display spec on the following 'raise'.
174         (Bug#25824)
176 2017-03-04  Eli Zaretskii  <eliz@gnu.org>
178         Mention problems with GPaste in PROBLEMS
180         * etc/PROBLEMS (GPaste): Mention the problem in yanking caused by
181         GPaste, and its solution.  (Bug#25902)
183 2017-02-25  Eli Zaretskii  <eliz@gnu.org>
185         Fix doc strings in info.el
187         * lisp/info.el (Info-selection-hook, Info-mode-hook)
188         (Info-edit-mode-hook): Doc fixes.  (Bug#25794)
190 2017-02-25  Eli Zaretskii  <eliz@gnu.org>
192         Fix doc string of 'posn-at-point'
194         * src/keyboard.c (Fposn_at_point): Clarify the doc string.
195         (Bug#25796)
197 2017-02-24  Tino Calancha  <tino.calancha@gmail.com>
199         Documentation fix in elisp reference manual
201         * doc/lispref/macros.texi (Defining Macros): Drop redundant mention
202         on 'declare' forms (Bug#25846).
204 2017-02-18  Noam Postavsky  <npostavs@gmail.com>
206         * lisp/woman.el (woman): Fix docstring prefix arg description.
208 2017-02-18  Eli Zaretskii  <eliz@gnu.org>
210         Mention "editor" in Emacs man page header
212         * doc/man/emacs.1.in: Mention "editor" in the header line.
213         (Bug#25771, Bug#25779)
215 2017-02-18  Eli Zaretskii  <eliz@gnu.org>
217         Document problems with nerd-fonts
219         * etc/PROBLEMS (fonts): Describe the potential problems with
220         nerd-fonts that cause slow display.  (Bug#25697)
222 2017-02-13  Stefan Monnier  <monnier@iro.umontreal.ca>
224         * doc/lispref/modes.texi (Derived Modes): Make example more idiomatic
226 2017-02-12  Eli Zaretskii  <eliz@gnu.org>
228         Clarify what is the "cursor"
230         * doc/lispref/windows.texi (Window Point): Clarify the notion of
231         "cursor".
233 2017-02-10  Eli Zaretskii  <eliz@gnu.org>
235         Improve commentary in lisp.h
237         * src/lisp.h: Explain in the comment why enlarging a Lisp_Misc
238         object is discouraged.
240 2017-02-08  Noam Postavsky  <npostavs@gmail.com>
242         Disable native completion for ipython (Bug#25067)
244         * lisp/progmodes/python.el:
245         (python-shell-completion-native-disabled-interpreters): Add "ipython".
247 2017-02-07  Eli Zaretskii  <eliz@gnu.org>
249         Fix a typo in ada-mode manual
251         * doc/misc/ada-mode.texi (Project file variables): Add a missing
252         right bracket.  Reported by Jean-Christophe Helary
253         <jean.christophe.helary@gmail.com>.
255 2017-02-05  Eli Zaretskii  <eliz@gnu.org>
257         Clarify documentation of 'bufferpos-to-filepos' and 'filepos-to-bufferpos'
259         * doc/lispref/nonascii.texi (Text Representations): Clarify that
260         'exact' value of QUALITY argument to 'bufferpos-to-filepos' and
261         'filepos-to-bufferpos' can lead to expensive and slow processing.
263         * lisp/international/mule-util.el (filepos-to-bufferpos)
264         (bufferpos-to-filepos): Doc fix.  (Bug#25626)
266 2017-02-03  Nicolas Petton  <nicolas@petton.fr>
268         Bump Emacs version to 25.2 RC1
270         * README:
271         * configure.ac:
272         * msdos/sed2v2.inp:
273         * nt/README.W32: Bump Emacs version.
274         * lisp/ldefs-boot.el: Update.
276 2017-02-03  Nicolas Petton  <nicolas@petton.fr>
278         * admin/make-tarball.txt: Add documentation regarding the release banner.
280 2017-02-03  Tino Calancha  <tino.calancha@gmail.com>
282         * CONTRIBUTE (Documenting your changes): Index new vars/commands in manual.
284 2017-01-31  Eli Zaretskii  <eliz@gnu.org>
286         Index byte-compile-debug
288         * doc/lispref/compile.texi (Compilation Functions): Index
289         byte-compile-debug.
291 2017-01-31  Philipp Stephani  <phst@google.com>
293         Document `byte-compile-debug' in the ELisp manual
295         * doc/lispref/compile.texi: Document variable `byte-compile-debug'.
297 2017-01-31  Philipp Stephani  <phst@google.com>
299         Document variable `byte-compile-debug'
301         * lisp/emacs-lisp/bytecomp.el (byte-compile-debug): Document variable.
303 2017-01-31  Noam Postavsky  <npostavs@gmail.com>
305         Fix call to debugger on assertion failure
307         * lisp/emacs-lisp/cl-preloaded.el (cl--assertion-failed): The first
308         argument must be `error', and the second is a list of arguments for
309         `signal'.
311 2017-01-29  Noam Postavsky  <npostavs@gmail.com>
313         Call modification hooks in org-src fontify buffers
315         * lisp/org/org-src.el (org-src-font-lock-fontify-block): Let-bind
316         `inhibit-modification-hooks' to nil, since this function can be called
317         from jit-lock-function which binds that variable to t (Bug#25132).
319 2017-01-28  Eli Zaretskii  <eliz@gnu.org>
321         Improve documentation of 'format' conversions
323         * src/editfns.c (Fformat): More accurate description of %g and
324         effects of the various flags on it.  More accurate description of
325         integer conversions.
327         * doc/lispref/strings.texi (Formatting Strings): More accurate
328         description of %g and effects of the various flags on it.  More
329         accurate description of integer conversions.  (Bug#25557)
331 2017-01-27  Vladimir Panteleev  <git@thecybershadow.net>  (tiny change)
333         Remove stale functions from ert manual
335         * doc/misc/ert.texi (Useful Techniques when Writing Tests):
336         Replace ert--mismatch references with its cl-lib replacement,
337         cl-mismatch.
339 2017-01-27  Eli Zaretskii  <eliz@gnu.org>
341         Fix a typo in Eshell manual
343         * doc/misc/eshell.texi (History): Fix a typo.  Reported by Mak
344         Kolybabi <mak@kolybabi.com>.
346 2017-01-20  Eli Zaretskii  <eliz@gnu.org>
348         Improve documentation of hooks related to saving buffers
350         * lisp/files.el (write-file-functions, write-contents-functions)
351         (before-save-hook, after-save-hook): Note that these are only used
352         by save-buffer.
354         * doc/lispref/backups.texi (Auto-Saving):
355         * doc/lispref/files.texi (Saving Buffers): Mention that
356         save-related hooks are not run by auto-saving.  (Bug#25460)
358 2017-01-20  Eli Zaretskii  <eliz@gnu.org>
360         Improve documentation of auto-save-visited-file-name
362         * doc/emacs/files.texi (Auto Save Files): Mention subtle
363         differences between saving the buffer and auto-saving with
364         auto-save-visited-file-name set non-nil.  (Bug#25478)
366 2017-01-18  Tom Tromey  <tom@tromey.com>
368         fix typo in mailcap-mime-extensions
370         * lisp/gnus/mailcap.el (mailcap-mime-extensions): Use "text/x-patch",
371         not "test/x-patch".  (Bug#25472)
373 2017-01-18  Lele Gaifax  <lele@metapensiero.it>  (tiny change)
375         Fix typos in flymake.el
377         * lisp/progmodes/flymake.el (flymake-check-patch-master-file-buffer):
378         Spelling fixes in the doc string.
380 2017-01-17  Glenn Morris  <rgm@gnu.org>
382         More NEWS checking for admin.el's set-version
384         * admin/admin.el (set-version): Warn if temporary NEWS markup
385         still present in release candidates.
387 2017-01-17  Michael Albinus  <michael.albinus@gmx.de>
389         Fix auto-save-file-name problem in Tramp on MS Windows. Do not merge
391         * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
392         Fix a problem when running on MS Windows.
394 2017-01-16  Ian Dunn  <dunni@gnu.org>  (tiny change)
396         * lisp/net/eww.el (eww-tag-meta): Handle single quoted URLs (Bug#25445).
398 2017-01-14  Stefan Monnier  <monnier@iro.umontreal.ca>
400         * lisp/progmodes/sql.el (sql-product-alist): Doc tweak
402         `:sqli-comint-func' does not have to be a symbol.
404 2017-01-14  Eli Zaretskii  <eliz@gnu.org>
406         * lisp/progmodes/sql.el (sql-product-alist): Doc fix.  (Bug#25440)
408 2017-01-13  Eli Zaretskii  <eliz@gnu.org>
410         Improve documentation of dabbrevs
412         * doc/emacs/abbrevs.texi (Dynamic Abbrevs): Add a cross reference
413         to "Dabbrev Customization".
414         (Dabbrev Customization): More details about the default value of
415         dabbrev-abbrev-char-regexp and use cases when it might not be good
416         enough.  (Bug#25432)
418 2017-01-12  Noam Postavsky  <npostavs@gmail.com>
420         Clarify that easy-menu-add is a nop (Bug#25382)
422         * lisp/emacs-lisp/easymenu.el (easy-menu-add): Make it into an alias of
423         `ignore', like `easy-menu-remove'.
425 2017-01-12  Glenn Morris  <rgm@gnu.org>
427         * lisp/textmodes/rst.el (rst-package-emacs-version-alist): Fix entry.
429 2017-01-11  Eli Zaretskii  <eliz@gnu.org>
431         Revert "Add DNS keywords and remove duplications"
433         This reverts commit 1cb9aa5b14867983d0013a61709b4d0af18364ff.
435 2017-01-11  Alexander Kuleshov  <kuleshovmail@gmail.com>
437         Add DNS keywords and remove duplications
439         * lisp/textmodes/dns-mode.el (dns-mode-types): Add two TLSA and
440         NSEC" DNS related keywords and remove duplication of "NSAP".
442 2017-01-10  Eli Zaretskii  <eliz@gnu.org>
444         Improve documentation of coding-systems
446         * doc/lispref/nonascii.texi (Coding System Basics): Mention
447         'prefer-utf-8'.  Index it and 'undecided'.
448         (Encoding and I/O): Fix a typo.
449         (User-Chosen Coding Systems): Improve the documentation of
450         ACCEPT-DEFAULT-P argument to select-safe-coding-system.  Document
451         select-safe-coding-system-function.
452         (Specifying Coding Systems): Document coding-system-require-warning.
454 2017-01-09  Eli Zaretskii  <eliz@gnu.org>
456         Improve definition of 'variable-pitch' face on MS-Windows
458         * lisp/faces.el (variable-pitch): Don't specify too many
459         attributes of the font, otherwise faces that request different
460         weight or slant or size will not get them.
462 2017-01-09  Eli Zaretskii  <eliz@gnu.org>
464         Fix an error message in python.el
466         * lisp/progmodes/python.el (python-shell-get-process-or-error):
467         Don't repeat the same key binding twice.  (Bug#25405)
469 2017-01-07  Noam Postavsky  <npostavs@gmail.com>
471         Clarify major mode switching
473         * doc/emacs/modes.texi (Major Modes):
474         * doc/lispref/modes.texi (Modes, Major Modes): Explictly say that each
475         buffer has exactly one major mode and can't be "turned off", only
476         switched away from (Bug#25357).
478 2017-01-07  Noam Postavsky  <npostavs@gmail.com>
480         Add helpful comment to compile-command's docstring
482         * lisp/progmodes/compile.el (compile-command): Mention trailing space in
483         docstring (Bug#25337).
485 2017-01-06  Eli Zaretskii  <eliz@gnu.org>
487         Fix ':version' of 'select-enable-primary'
489         * lisp/select.el (select-enable-primary): Fix a typo in
490         ':version'.  (Bug#25375)
492 2017-01-04  Glenn Morris  <rgm@gnu.org>
494         Update remaining copyright years with admin.el M-x set-copyright
496         * etc/refcards/ru-refcard.tex (cyear): Set to 2017.
498 2017-01-04  Glenn Morris  <rgm@gnu.org>
500         * lisp/ffap.el (ffap-lax-url): Bump :version after recent change.
502 2017-01-03  Philipp Stephani  <phst@google.com>
504         Document that functions in 'ffap-alist' can use the match data
506         * lisp/ffap.el (ffap-alist): Document that ffap sets the match data
507         while walking 'ffap-alist'.
509 2017-01-01  Paul Eggert  <eggert@cs.ucla.edu>
511         Fix copyright years by hand
513         These are dates that admin/update-copyright did not update, or
514         updated incorrectly.
516 2017-01-01  Paul Eggert  <eggert@cs.ucla.edu>
518         Update copyright year to 2017
520         Run admin/update-copyright.
522 2016-12-30  Nicolas Petton  <nicolas@petton.fr>
524         Bump Emacs version to 25.1.91
526         * README:
527         * configure.ac:
528         * msdos/sed2v2.inp:
529         * nt/README.W32: Bump Emacs version.
530         * lisp/ldefs-boot.el: Update.
532 2016-12-30  Alan Mackenzie  <acm@muc.de>
534         Backport: Remove an ambiguity from defvar's doc string.  Fixes bug #25292.
536         The ambiguity was whether INITVALUE is evaluated when it's not going to be
537         used to set SYMBOL's value.
539         * src/eval.c (defvar): Rewrite a paragraph of the doc string.
541         (cherry picked from commit 8295e97f18490a535d1188a3daf0b0fd1bf4fa0d)
543 2016-12-28  Stefan Monnier  <monnier@iro.umontreal.ca>
545         * lisp/emacs-lisp/inline.el: Fix apply-conversion (bug#25280)
547         (inline--dont-quote): Quote the function with #' when passing it to `apply'.
548         Cherry picked from commit e6161f648903d821865b9610b3b6aa0f82a5dcb7.
550 2016-12-26  Eli Zaretskii  <eliz@gnu.org>
552         Document 'default-toplevel-value' and 'set-default-toplevel-value'
554         * doc/lispref/variables.texi (Default Value): Document
555         'default-toplevel-value' and 'set-default-toplevel-value'.
557 2016-12-25  Leo Liu  <sdl.web@gmail.com>
559         Don't modify minibuffer variables globally
561         * lisp/files.el (cd): Use setq-local instead.  (Bug#25260)
563 2016-12-24  Eli Zaretskii  <eliz@gnu.org>
565         Revert to pre-25.1 behavior in ffap
567         * lisp/ffap.el (ffap-lax-url): Change the default to t, to produce
568         the same behavior as in Emacs 24.x.  (Bug#25264)
569         Explain the trade-offs of customizing this in the doc string.
571 2016-12-24  Noam Postavsky  <npostavs@gmail.com>
573         * lisp/ffap.el: Fix obsolete comment referencing ffap-bug.
575 2016-12-23  Eli Zaretskii  <eliz@gnu.org>
577         Attempt to fix 64-bit AIX build
579         * src/unexaix.c (make_hdr, copy_text_and_data, write_segment): Fix
580         type-casts that assumed 32-bit pointers.  (Bug#25141)
582 2016-12-23  Philipp Stephani  <phst@google.com>
584         Clarify usage of 'ediff-cleanup-hook' (Bug#24675)
586         * doc/misc/ediff.texi (Hooks): Clarify usage of 'ediff-cleanup-hook'
588 2016-12-23  Philipp Stephani  <phst@google.com>
590         Document that variable binding order is unspecified
592         * doc/lispref/variables.texi (Local Variables):
593         * doc/misc/cl.texi (Modify Macros): Document that binding order in 'let' and
594         'cl-letf' is unspecified.
596 2016-12-23  Eli Zaretskii  <eliz@gnu.org>
598         * lisp/desktop.el (desktop-buffers-not-to-save): Doc fix.
600 2016-12-23  Stefan Monnier  <monnier@IRO.UMontreal.CA>
602         Fix M-x hints on Mac port
604         * lisp/simple.el (execute-extended-command--shorter): Call
605         input-pending-p to trigger input processing on some systems, such
606         as Mac port.  (Bug#23002)
608 2016-12-22  Martin Rudalics  <rudalics@gmx.at>
610         Work around reporting a dpi change in apply_xft_settings
612         * src/xsettings.c (apply_xft_settings): Don't report a change
613         when dpi settings do not differ substantially.
615 2016-12-20  Alan Mackenzie  <acm@muc.de>
617         Amend the version number of CC Mode 5.33 -> 5.32.99.  Don't merge to trunk.
619         lisp/progmodes/cc-defs.el: Amend the version number.
620         etc/NEWS: Add an item explaining the change.
622 2016-12-20  Noam Postavsky  <npostavs@gmail.com>
624         Improve skeleton docstrings
626         * lisp/skeleton.el (skeleton-end-newline): Remove mention of
627         `skeleton-end-hook', its default code was moved into `skeleton-insert'.
628         (skeleton-insert): Mention `skeleton-end-newline' and move reference to
629         `skeleton-end-hook' above the explanation of skeleton syntax.
631 2016-12-19  Eli Zaretskii  <eliz@gnu.org>
633         Improve documentation of 'w32-scroll-lock-modifier'
635         * doc/emacs/msdos.texi (Windows Keyboard): Document how to set up
636         w32-scroll-lock-modifier so that Scroll Lock toggles the LED.
638         * src/w32fns.c (syms_of_w32fns) <w32-scroll-lock-modifier>: Doc
639         fix.  (Bug#25204)
641 2016-12-19  Eli Zaretskii  <eliz@gnu.org>
643         Document 'describe-fontset'
645         * doc/emacs/mule.texi (Fontsets): Document 'describe-fontset'.
646         (Bug#25216)
648 2016-12-19  Eli Zaretskii  <eliz@gnu.org>
650         Document 'describe-fontset'
652         * doc/emacs/mule.texi (Fontsets): Document 'describe-fontset'.
653         (Bug#25216)
655 2016-12-17  Eli Zaretskii  <eliz@gnu.org>
657         Repair desktop restoration on text terminals
659         * lisp/desktop.el (desktop-restoring-frameset-p): Test for the GUI
660         frame here, instead of in desktop-restoring-frameset.  That's
661         because desktop-read wants to know whether frameset will actually
662         be restored, and has fallback procedures up its sleeve when it
663         won't be; these fallbacks need to be invoked when the frameset is
664         not going to be restored.  (Bug#24298)
666 2016-12-17  Dmitry Gutov  <dgutov@yandex.ru>
668         Ignore forward-sexp-function in js-mode indentation code
670         * lisp/progmodes/js.el (js--multi-line-declaration-indentation)
671         (js--maybe-goto-declaration-keyword-end):
672         Bind forward-sexp-function to nil (bug#25215).
674 2016-12-16  Eli Zaretskii  <eliz@gnu.org>
676         Improve documentation of 'define-coding-system'
678         * lisp/international/mule.el (define-coding-system): Warn against
679         possible infinite recursion in pre-write-conversion and
680         post-read-conversion functions.  (Bug#25203)
682 2016-12-11  Michael Albinus  <michael.albinus@gmx.de>
684         Fix Bug#25162
686         * doc/emacs/files.texi (Reverting): Document
687         auto-revert-remote-files and auto-revert-verbose.
689         * lisp/autorevert.el (auto-revert-verbose, auto-revert-mode)
690         (auto-revert-tail-mode, global-auto-revert-mode): Fix docstring.
692 2016-12-11  Glenn Morris  <rgm@gnu.org>
694         Fix a typo in define-abbrev-table
696         * lisp/abbrev.el (define-abbrev-table): Fix typo in docstring handling.
698 2016-12-11  Glenn Morris  <rgm@gnu.org>
700         Bump makeinfo requirement from 4.7 to 4.13
702         * configure.ac: Bump makeinfo version requirement from 4.7 to 4.13.
703         We need at least 4.8, and that may be buggy, so go for the last
704         of the 4 series, which is 8 years old.  (Bug#25108)
706 2016-12-11  Glenn Morris  <rgm@gnu.org>
708         Fixes related to select-enable-clipboard
710         * lisp/menu-bar.el (clipboard-yank, clipboard-kill-ring-save)
711         (clipboard-kill-region):
712         * lisp/eshell/esh-io.el (eshell-virtual-targets)
713         (eshell-clipboard-append):
714         Replace option gui-select-enable-clipboard with
715         select-enable-clipboard; renamed October 2014.  (Bug#25145)
717 2016-12-10  Noam Postavsky  <npostavs@gmail.com>
719         Define struct predicate before acccesors
721         The accessor functions use the predicate function, which causes problems
722         when reloading after unload-feature: the compiler-macro property is
723         still present on the predicate symbol, and the compiler fails to find
724         the definition when trying to inline it into the accessor
725         function (Bug#25088).
727         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Move predicate definition
728         before field accessor definitions.
730 2016-12-08  Glenn Morris  <rgm@gnu.org>
732         Doc fix for vc-git
734         * lisp/vc/vc-git.el (vc-git-region-history): Add a doc string.
736 2016-12-08  Glenn Morris  <rgm@gnu.org>
738         Further improve make-dist checking
740         * make-dist: Print status messages when checking.
742 2016-12-08  Glenn Morris  <rgm@gnu.org>
744         Improve previous make-dist change
746         * make-dist: Let make check the info files more thoroughly.
748 2016-12-08  Glenn Morris  <rgm@gnu.org>
750         Make make-dist --snapshot do some sanity checks
752         * make-dist: Snapshot mode no longer disables checks.
753         Checks now includes checks for freshness.  (Bug#25084)
754         Checks now exits with an error if problems were found.
756 2016-12-07  Paul Eggert  <eggert@cs.ucla.edu>
758         Fix minor quoting problems in doc strings
760 2016-12-07  Philipp Stephani  <p.stephani2@gmail.com>
762         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode): Fix docstring
764         so that it matches the actual implementation.
765         See https://lists.gnu.org/archive/html/help-gnu-emacs/2016-04/msg00071.html
767 2016-12-07  Noam Postavsky  <npostavs@gmail.com>
769         Don't assume window-point and point are the same
771         The function `cursor-sensor--detect' calls `bobp' to decide whether to
772         check properties at (1- (window-point)).  However, (window-point) may be
773         at beginning of buffer, even if (point) is not.  In this case an
774         `args-out-of-range' error will be signaled (Bug#25104).
776         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor--detect): Check the
777         value of (window-point) against (point-min), rather than (bobp) to
778         decide if (1- (window-point)) is accessible.
780 2016-12-02  Nicolas Petton  <nicolas@petton.fr>
782         Fix bug#25087
784         * etc/themes/manoj-dark-theme.el: Fix two typos.
786         (cherry picked from commit 66d6e7e9ecf5e481f8c2c3a4f88411f66c869a6e)
788 2016-12-02  Eli Zaretskii  <eliz@gnu.org>
790         * lisp/vc/ediff-util.el (ediff-janitor): Doc fix.  (Bug#25046)
792 2016-12-02  Eli Zaretskii  <eliz@gnu.org>
794         Improve indexing of 'man'
796         * doc/emacs/programs.texi (Man Page): Index 'man', not
797         'manual-entry', as the latter is an alias for the former.
798         Suggested by Hong Xu <hong@topbug.net>.  (Bug#25033)
800 2016-12-02  Paul Eggert  <eggert@cs.ucla.edu>
802         Port to Sun C 5.14
804         Backport from master.  Sun C 5.14 supports C11 but not GCC
805         extensions, and so refuses to compile Emacs without this patch.
806         * src/alloc.c (lmalloc, lrealloc): Don't use INT_ADD_WRAPV on
807         size_t, as in general this macro is restricted to signed types.
809 2016-12-02  Richard Stallman  <rms@gnu.org>
811         Fix mail-combine-fields
813         * lisp/mail/sendmail.el (mail-combine-fields): Call `save-excursion' to
814         avoid losing our place in the search loop.
816         (cherry picked from commit 5fbba6cceaf843cfca449eb000a0a65243b61808)
818 2016-12-01  Martin Rudalics  <rudalics@gmx.at>
820         Fix documentation of `window-combination-resize'
822         * src/window.c (Vwindow_combination_resize): Fix doc-string.
823         * doc/lispref/windows.texi (Recombining Windows): Fix
824         documentation of `window-combination-resize'.
826 2016-11-29  Bogdan Creanga  <bogdan.creanga@gmail.com>  (tiny change)
828         Typo fixes in elisp manual
830         * doc/lispref/sequences.texi: Add missing '4' in result (Bug#25047).
831         * doc/lispref/strings.texi (Text Comparison): Avoid duplicate
832         definitions of 'string-prefix-p' and 'string-suffix-p'.
833         * doc/lispref/symbols.texi (Definitions): Pluralize 'definitions'.
835 2016-11-28  Eli Zaretskii  <eliz@gnu.org>
837         Fix 'expand-file-name' during startup on MS-Windows
839         * src/w32.c (w32_init_file_name_codepage): New function, resets
840         file_name_codepage and w32_ansi_code_page to undo the values
841         recorded during dumping.
842         (codepage_for_filenames): Fix an embarrassing typo.  Ignore the
843         cached value of file-name encoding if it is nil, i.e. not
844         initialized yet.  Actually cache the last used file-name encoding
845         to avoid calling APIs when not necessary.
847         * src/w32.h (w32_init_file_name_codepage): Add prototype.
849         * src/w32term.c (syms_of_w32term): Set the value of
850         w32_unicode_filenames according to the OS version.  This avoids
851         resetting it during startup, which then causes temacs to run with
852         the incorrect value.
854         * src/emacs.c (main): Call w32_init_file_name_codepage early
855         during the startup.
857         * src/fileio.c (Fexpand_file_name) [WINDOWSNT]: Update 'newdir'
858         after converting $HOME to a UTF-8 string, so that 'newdirlim' is
859         consistent with it.  (Bug#25038)
861         * lisp/international/mule-cmds.el (set-locale-environment): Set
862         'default-file-name-coding-system' to the ANSI codepage even in
863         non-interactive sessions.
865         * lisp/files.el (directory-abbrev-alist, abbreviated-home-dir):
866         Doc fix.
867         (abbreviate-file-name): Decode 'abbreviated-home-dir' if it is a
868         unibyte string.
870         * doc/lispref/files.texi (Directory Names): Index
871         'directory-abbrev-alist'.
873 2016-11-28  Nicolas Petton  <nicolas@petton.fr>
875         * admin/authors.el (authors-renamed-files-alist): Addition.
877 2016-11-28  Glenn Morris  <rgm@gnu.org>
879         Tweak refcard note about documentation location
881         * etc/refcards/calccard.tex, etc/refcards/cs-dired-ref.tex:
882         * etc/refcards/cs-refcard.tex, etc/refcards/cs-survival.tex:
883         * etc/refcards/de-refcard.tex, etc/refcards/dired-ref.tex:
884         * etc/refcards/fr-dired-ref.tex, etc/refcards/fr-refcard.tex:
885         * etc/refcards/fr-survival.tex, etc/refcards/gnus-refcard.tex:
886         * etc/refcards/orgcard.tex, etc/refcards/pl-refcard.tex:
887         * etc/refcards/pt-br-refcard.tex, etc/refcards/refcard.tex:
888         * etc/refcards/ru-refcard.tex, etc/refcards/sk-dired-ref.tex:
889         * etc/refcards/sk-refcard.tex, etc/refcards/sk-survival.tex:
890         * etc/refcards/survival.tex, etc/refcards/vipcard.tex:
891         * etc/refcards/viperCard.tex: Tweak documentation url.
893 2016-11-28  Glenn Morris  <rgm@gnu.org>
895         Improve treatment of Fortran's "class is"
897         * lisp/progmodes/f90.el (f90-start-block-re, f90-no-block-limit):
898         Handle "class is".  (Bug#25039)
899         * test/automated/f90.el (f90-test-bug25039): New test.
901 2016-11-28  Nicolas Petton  <nicolas@petton.fr>
903         Bump Emacs version to 25.1.90
905         * README:
906         * configure.ac:
907         * msdos/sed2v2.inp:
908         * nt/README.W32: Bump Emacs version to 25.1.90
910 2016-11-27  Nicolas Petton  <nicolas@petton.fr>
912         Bump Emacs version
914         * README:
915         * configure.ac:
916         * etc/NEWS:
917         * msdos/sed2v2.inp:
918         * nt/README.W32: Bump Emacs version to 25.2.90
920 2016-11-26  Karl Fogel  <kfogel@red-bean.com>
922         Handle TeX comments when making new paragraph
924         * lisp/textmodes/tex-mode.el (tex-handle-newline): New function.
925           Handle comment case directly, and dispatch to `tex-terminate-paragraph'
926           for original behavior in non-comment case.
927           (tex-mode-map): Bind above to C-j, replacing `tex-terminate-paragraph'.
929 2016-11-25  Eli Zaretskii  <eliz@gnu.org>
931         Restore keystroke echo in 'C-q'
933         * lisp/simple.el (read-quoted-char): Use 'read-event' instead of
934         'read-key', to avoid losing the keystroke echo in 'C-q'.  (Bug#24635)
936 2016-11-25  Eli Zaretskii  <eliz@gnu.org>
938         Improve documentation of 'current-word'
940         * lisp/simple.el (current-word): Clarify and improve the doc
941         string.  (Bug#24979)
943 2016-11-25  Chunyang Xu  <mail@xuchunyang.me>
945         Fix a typo in an Eshell defcustom
947         * lisp/eshell/esh-mode.el (eshell-scroll-to-bottom-on-output): Fix
948         a typo in the 'others' standard value.  (Bug#24983)
950 2016-11-24  Hong Xu  <hong@topbug.net>  (tiny change)
952         Minor copyedits of electric-pair-mode
954         * doc/emacs/programs.texi (Matching): Add index entries.  Fix
955         typos.  (Bug#25012)
957 2016-11-24  Eli Zaretskii  <eliz@gnu.org>
959         Fix documentation of 'invocation-directory'
961         * doc/lispref/os.texi (System Environment): Fix wording of the
962         description of 'invocation-directory'.  (Bug#24999)
964 2016-11-23  Glenn Morris  <rgm@gnu.org>
966         * admin/authors.el (authors-aliases): Add an entry.
968 2016-11-22  Philipp Stephani  <phst@google.com>
970         Guard terminal parameter in XTerm mouse mode
972         It has been observed (in the HTerm terminal emulator) that the
973         event stored in the 'xterm-mouse-last-down' terminal parameter gets
974         overwritten during a mouse drag operation, causing Emacs to attempt to
975         synthesize the non-existing <drag-mouse-0> event.  Copy the event into
976         the terminal parameter to protect against such modifications.
978         * lisp/xt-mouse.el (xterm-mouse-translate-1): Guard against modification
979         of input event list.
981 2016-11-21  Nicolas Petton  <nicolas@petton.fr>
983         * etc/AUTHORS: Regenerate the AUTHORS file
985 2016-11-21  Nicolas Petton  <nicolas@petton.fr>
987         Update ChangeLog files and authors.el
989         * admin/authors.el (authors-renamed-files-alist): Add entries for
990           obsolete files.
991         * ChangeLog.2: Update.
993 2016-11-21  Eli Zaretskii  <eliz@gnu.org>
995         Fix menu bindings of Dired 'A' and 'Q' commands
997         * lisp/dired.el (dired-mode-map): Rebind "Search Files" and "Query
998         Replace in Files" menu items to 'dired-do-find-regexp' and
999         'dired-do-find-regexp-and-replace', respectively.  (Bug#24977)
1001 2016-11-20  Eli Zaretskii  <eliz@gnu.org>
1003         Avoid errors in shr-pixel-column due to dedicated windows
1005         * lisp/net/shr.el (shr-pixel-column): If we are switching to
1006         another buffer in the selected window, make that window
1007         temporarily non-dedicated.  (Bug#24950)
1009 2016-11-20  Tino Calancha  <tino.calancha@gmail.com>
1011         Update format-time-string documentation
1013         * doc/lispref/os.texi (Time Parsing):
1014         Document %F, %g, %G, %u and %V.
1016 2016-11-19  Eli Zaretskii  <eliz@gnu.org>
1018         * admin/release-process: Update versions and blocking bug numbers.
1020 2016-11-18  Eli Zaretskii  <eliz@gnu.org>
1022         Improve documentation of functions that accept time values
1024         * doc/lispref/os.texi (Time Calculations): Mention the meaning of
1025         'nil' or a scalar number as the time-value argument.  Add a
1026         cross-reference to 'float-time' for computing a time difference as
1027         a scalar number of seconds.
1029         * src/editfns.c (Fformat_time_string, Ftime_less_p)
1030         (Ftime_subtract, Ftime_add, Fdecode_time, Fcurrent_time_string)
1031         (Fcurrent_time_zone): Mention in the doc strings the meaning of
1032         nil argument and the fact that a time value can be a scalar number
1033         of seconds since the epoch.
1034         (Ftime_subtract): Mention 'float-time'.
1036 2016-11-18  Daniel Colascione  <dancol@dancol.org>
1038         Speed up initialization by preferring /dev/urandom to GnuTLS
1040         * src/sysdep.c (init_random): Try /dev/urandom before GnuTLS.
1042         (cherry picked from commit a37eba849eddc41375ad73974f6fcb1258aa8eba)
1044 2016-11-18  Glenn Morris  <rgm@gnu.org>
1046         Add a comment in generated refcards about the source
1048         * etc/refcards/calccard.tex, etc/refcards/cs-dired-ref.tex:
1049         * etc/refcards/cs-refcard.tex, etc/refcards/cs-survival.tex:
1050         * etc/refcards/de-refcard.tex, etc/refcards/dired-ref.tex:
1051         * etc/refcards/fr-dired-ref.tex, etc/refcards/fr-refcard.tex:
1052         * etc/refcards/fr-survival.tex, etc/refcards/gnus-refcard.tex:
1053         * etc/refcards/orgcard.tex, etc/refcards/pl-refcard.tex:
1054         * etc/refcards/pt-br-refcard.tex, etc/refcards/refcard.tex:
1055         * etc/refcards/ru-refcard.tex, etc/refcards/sk-dired-ref.tex:
1056         * etc/refcards/sk-refcard.tex, etc/refcards/sk-survival.tex:
1057         * etc/refcards/survival.tex, etc/refcards/vipcard.tex:
1058         * etc/refcards/viperCard.tex: Add comment about the source.
1060 2016-11-17  Dmitry Gutov  <dgutov@yandex.ru>
1062         js-mode: Fix indent problem after a regexp
1064         * lisp/progmodes/js.el (js--looking-at-operator-p): Check that the
1065         slash is not ending a regexp (bug#24854).
1067 2016-11-16  Eli Zaretskii  <eliz@gnu.org>
1069         Fix sluggish display of symbols in UTF-8 language environment
1071         * lisp/international/fontset.el (setup-default-fontset): Make sure
1072         Symbola and FreeMono are set up in the default fontset as belonging
1073         to the "iso10646-1" registry.  In the UTF-8 locale, this avoids a
1074         long and futile search for a suitable font, whose side effect is a
1075         lot of consing, which then hits the font-cache compacting issue,
1076         and causes very sluggish redisplay of characters displayed by
1077         these fonts.  All this happens because the default for the
1078         registry is "iso8859-1".  (Bug#24953)
1080 2016-11-16  Glenn Morris  <rgm@gnu.org>
1082         Don't confuse how Texinfo outputs @var with the input
1084         * doc/emacs/rmail.texi (Movemail):
1085         * doc/lispref/control.texi (Pattern matching case statement):
1086         * doc/lispref/frames.texi (Size and Position):
1087         * doc/lispref/processes.texi (Asynchronous Processes):
1088         * doc/lispref/text.texi (Document Object Model):
1089         * doc/lispref/windows.texi (Coordinates and Windows):
1090         Do not upper-case the argument of @var.
1092 2016-11-16  Glenn Morris  <rgm@gnu.org>
1094         * doc/lispref/display.texi (Scroll Bars):
1095         * doc/lispref/frames.texi (Size and Position):
1096         * doc/lispref/windows.texi (Window Sizes): Fix arglist typos.
1098         * doc/emacs/cmdargs.texi (Initial Options): Copyedit for --daemon.
1100 2016-11-15  Eli Zaretskii  <eliz@gnu.org>
1102         More fixes in copyright notices in etc/refcards/
1104         * etc/refcards/calccard.tex:
1105         * etc/refcards/cs-dired-ref.tex:
1106         * etc/refcards/cs-refcard.tex:
1107         * etc/refcards/cs-survival.tex:
1108         * etc/refcards/de-refcard.tex:
1109         * etc/refcards/dired-ref.tex:
1110         * etc/refcards/fr-dired-ref.tex:
1111         * etc/refcards/fr-refcard.tex:
1112         * etc/refcards/fr-survival.tex:
1113         * etc/refcards/orgcard.tex:
1114         * etc/refcards/pl-refcard.tex:
1115         * etc/refcards/pt-br-refcard.tex:
1116         * etc/refcards/refcard.tex:
1117         * etc/refcards/ru-refcard.tex:
1118         * etc/refcards/sk-dired-ref.tex:
1119         * etc/refcards/sk-refcard.tex:
1120         * etc/refcards/sk-survival.tex:
1121         * etc/refcards/survival.tex:
1122         * etc/refcards/vipcard.tex:
1123         * etc/refcards/viperCard.tex: Change "GNU Emacs" to "this
1124         document" in copyright notices.  (Bug#24520)
1126 2016-11-13  Eli Zaretskii  <eliz@gnu.org>
1128         Update copyright text in refcards
1130         * etc/refcards/viperCard.tex:
1131         * etc/refcards/vipcard.tex:
1132         * etc/refcards/survival.tex:
1133         * etc/refcards/sk-survival.tex:
1134         * etc/refcards/sk-dired-ref.tex:
1135         * etc/refcards/sk-refcard.tex:
1136         * etc/refcards/ru-refcard.tex:
1137         * etc/refcards/refcard.tex:
1138         * etc/refcards/pt-br-refcard.tex:
1139         * etc/refcards/pl-refcard.tex:
1140         * etc/refcards/orgcard.tex:
1141         * etc/refcards/gnus-refcard.tex:
1142         * etc/refcards/fr-survival.tex:
1143         * etc/refcards/fr-refcard.tex:
1144         * etc/refcards/fr-dired-ref.tex:
1145         * etc/refcards/dired-ref.tex:
1146         * etc/refcards/de-refcard.tex:
1147         * etc/refcards/cs-survival.tex:
1148         * etc/refcards/cs-refcard.tex:
1149         * etc/refcards/cs-dired-ref.tex:
1150         * etc/refcards/calccard.tex: Update the copyright blurb.  (Bug#24520)
1152 2016-11-12  Eli Zaretskii  <eliz@gnu.org>
1154         Fix Outline command names
1156         * doc/emacs/text.texi (Foldout): Use the outline-* names instead
1157         of the obsolete aliases.  (Bug#24890)
1159 2016-11-10  Philipp Stephani  <phst@google.com>
1161         Send text received by bracketed paste to process
1163         See Bug#24639.
1165         * lisp/term.el (term--xterm-paste): New function.
1166         (term-raw-map): Use it.
1167         (xterm--pasted-text): Declare function from xterm.el.
1169 2016-11-10  Alan Mackenzie  <acm@muc.de>
1171         Correct the statement about programming modes always running prog-mode-hook.
1173         * doc/emacs/modes.texi (Major Modes): Amend the statement about programming
1174         modes running prog-mode-hook to say that it applies to many (not all) such
1175         modes, and specifying exactly which modes.
1177 2016-11-10  Eli Zaretskii  <eliz@gnu.org>
1179         Improve documentation of 'occur'
1181         * doc/emacs/search.texi (Other Repeating Search): Clarify how to
1182         use Occur with search strings from last Isearch.  (Bug#24890)
1184 2016-11-09  Noam Postavsky  <npostavs@gmail.com>
1186         Do call debugger on failed cl-assert
1188         "Don't call debug on failed cl-assert..." removed the call to `debug' in
1189         cl--assertion-failed because `debug' calls `kill-emacs' in batch mode,
1190         thus messing up ert test runs.  However, calling the debugger is useful
1191         because it allows catching failed assertions even inside
1192         `condition-case' calls.  The problem with ert can be avoided by calling
1193         `debugger' instead of `debug' directly, since ert installs its own
1194         debugger while running tests.
1196         * lisp/emacs-lisp/cl-preloaded.el (cl--assertion-failed): Call
1197         `debugger' if `debug-on-error' is non-nil.
1199 2016-11-09  Daniel Colascione  <dancol@dancol.org>
1201         Avoid infloop in python
1203         Fix bug#24905
1205         * lisp/progmodes/python.el (python-info-docstring-p): Improve
1206         infloop avoidance: replace (bobp) with generic test for
1207         forward progress.
1208         * test/automated/python-tests.el (python-bob-infloop-avoid): Add
1209         test for bug#24905
1211 2016-11-07  Eli Zaretskii  <eliz@gnu.org>
1213         Don't refer to obsolete FEATURE-unload-hook
1215         * doc/lispref/tips.texi (Coding Conventions): Refer to
1216         FEATURE-unload-function rather than its obsolete variant
1217         FEATURE-unload-hook.  (Bug#24890)
1219 2016-11-07  Eli Zaretskii  <eliz@gnu.org>
1221         Improve documentation of dabbrevs
1223         * lisp/dabbrev.el (dabbrev-expand): Doc fix.  (Bug#24890)
1225         * doc/emacs/abbrevs.texi (Dynamic Abbrevs): Mention
1226         'dabbrev-check-all-buffers', 'dabbrev-check-other-buffers', and
1227         'dabbrev-ignored-buffer-names' and their purpose.  (Bug#24890)
1229 2016-11-07  Eli Zaretskii  <eliz@gnu.org>
1231         * lisp/chistory.el (list-command-history): Doc fix.  (Bug#24890)
1233         * lisp/simple.el (set-mark-command): Doc fix.  (Bug#24890)
1235 2016-11-07  Eli Zaretskii  <eliz@gnu.org>
1237         Improve documentation of some Help commands
1239         * doc/emacs/help.texi (Help Mode): Fix mistake in key sequences.
1240         Mention the 'l' and 'r' keys.
1241         (Misc Help): Mention that 'C-h m' describes key bindings.
1242         (Bug#24890)
1244 2016-11-07  Eli Zaretskii  <eliz@gnu.org>
1246         Fix documentation of yes-or-no prompts
1248         * doc/emacs/mini.texi (Yes or No Prompts): Fix mistakes in key
1249         sequences.  (Bug#24890)
1251 2016-11-07  Eli Zaretskii  <eliz@gnu.org>
1253         Fix documentation of partial completion style
1255         * doc/emacs/mini.texi (Completion Styles): Fix the description of
1256         the wildcard '*'.  (Bug#24890)
1258 2016-11-07  Eli Zaretskii  <eliz@gnu.org>
1260         Fix documentation of the mode line on emacsclient frames
1262         * doc/emacs/screen.texi (Mode Line): Document the '@' indicator on
1263         emacsclient frames.
1265 2016-11-07  Eli Zaretskii  <eliz@gnu.org>
1267         Fix description of 'C-z' in User manual
1269         * doc/emacs/entering.texi (Exiting): 'C-z' is bound to
1270         'suspend-frame'.  (Bug#24890)
1272 2016-11-07  Eli Zaretskii  <eliz@gnu.org>
1274         Improve and clarify documentation of Outline Mode
1276         * doc/emacs/text.texi (Outline Visibility): Use the outline-*
1277         names instead of the obsolete aliases.  (Bug#24890)
1279         * lisp/outline.el (outline-hide-sublevels, outline-hide-other)
1280         (outline-hide-body): Doc fixes.  (Bug#24890)
1282 2016-11-06  Eli Zaretskii  <eliz@gnu.org>
1284         Add Emacs version number to nt/README.W32
1286         * nt/README.W32: Include the version number of the latest Emacs
1287         release.
1289         * admin/admin.el (set-version): Update the version in nt/README.W32.
1291 2016-11-06  Noam Postavsky  <npostavs@gmail.com>
1293         Fix python-mode hideshow regexp
1295         2015-02-07 "Fix hideshow integration[...]" changed the regexp added to
1296         `hs-special-modes-alist' so that it worked when not searching from the
1297         beginning of the line.  However, this allows matching tokens ending in
1298         "def" or "class", not just those keywords.  This results in an infinite
1299         loop in hs-hide-all (Bug #24815).
1301         * lisp/progmodes/python.el (python-mode): Add symbol boundaries around
1302         the def|class matching part of the regexp added to
1303         hs-special-modes-alist.
1305 2016-11-06  Paul Eggert  <eggert@cs.ucla.edu>
1307         Modernize usage of 'macOS' in doc and comments
1309         Apple changed the spelling of its operating system again, to "macOS",
1310         effective with macOS 10.12 Sierra (2016-09-20).  Change Emacs
1311         documentation and comments to match this.  Stick with older OS
1312         spellings ("OS X", "Mac OS X") when talking about older releases where
1313         the older names are more correct.
1315 2016-11-06  Paul Eggert  <eggert@cs.ucla.edu>
1317         Prefer comments /* like this */ in C code
1319         Emacs C code assumes C99 features, but has long used traditional
1320         comments /* like this */ instead of C99-style comments // like this.
1321         Stick with traditional comments for now, partly for style, partly as
1322         it may be safer with compilers that are not fully in C99 mode.
1324 2016-11-05  Noam Postavsky  <npostavs@gmail.com>
1326         * doc/lispref/loading.texi (Autoload): Better link (Bug#24845).
1328 2016-11-05  Eli Zaretskii  <eliz@gnu.org>
1330         Clarify documentation of face attribute functions
1332         * doc/lispref/display.texi (Attribute Functions): Make sure to
1333         document that an omitted FRAME argument means the same as nil.
1334         (Bug#24879)
1336 2016-11-05  Noam Postavsky  <npostavs@gmail.com>
1338         Don't call debug on failed cl-assert
1340         Doing this causes problems when running ert tests, for
1341         instance (Bug#24778).  The call to `debug` when `debug-on-error' is
1342         non-nil was introduced in 2015-02-14 "* lisp/emacs-lisp/cl*.el: Use
1343         define-inline and move some code...".
1345         * lisp/emacs-lisp/cl-preloaded.el (cl--assertion-failed): Don't call
1346         `debug' directly.
1348 2016-11-04  Phillip Lord  <phillip.lord@russet.org.uk>
1350         Update README for precompiled windows Emacs.
1352          * nt/README.W32: Describe 64 and 32-bit downloads, optional
1353            dependencies bundle. Remove old material on sourcing dependencies.
1354            Remove references to Windows 95. Update GUI references to recent
1355            Windows. Remove references to Usenet.
1357 2016-11-04  Hong Xu  <hong@topbug.net>
1359         Clarify documentation of 'vc-responsible-backend' wrt symlinks
1361         * lisp/vc/vc.el (vc-responsible-backend): Clarify that symlinks
1362         are not resolved when the VC backend is reported.
1364         * doc/lispref/files.texi (Truenames): Document
1365         'vc-responsible-backend'.  (Bug#23436)
1366         * doc/emacs/maintaining.texi (Version Control Systems): Fix a
1367         typo.
1369 2016-11-04  Eli Zaretskii  <eliz@gnu.org>
1371         Clarify doc string of 'transpose-sexps'
1373         * lisp/simple.el (transpose-sexps): Clarify the conditions for
1374         transposing sexps that are lists or strings.  Mention the effect
1375         of the prefix argument.  (Bug#24860)
1377 2016-11-04  Tibor Csögör  <tibi@tiborius.net>  (tiny change)
1379         Fix docstring of 'browse-url-firefox-new-window-is-tab'
1381         * lisp/net/browse-url.el (browse-url-firefox-new-window-is-tab):
1382         Remove obsolete note from docstring (obsoleted by previous commits).
1383         (Bug#24843)
1385 2016-11-04  Eli Zaretskii  <eliz@gnu.org>
1387         Improve documentation of 'font-lock-remove-keywords'
1389         * doc/lispref/modes.texi (Customizing Keywords): Clarify the
1390         'keywords' argument of 'font-lock-remove-keywords'.  Suggested by
1391         Hong Xu <hong@topbug.net>.  (Bug#24830)
1393 2016-11-04  Eli Zaretskii  <eliz@gnu.org>
1395         Fix documentation of the command summary key
1397         * doc/misc/info.texi (Help-^L, Help-Xref, Top): Emacs Info uses
1398         '?' for the summary of commands, whereas the stand-alone reader
1399         uses 'H'.  (Bug#24825)
1401 2016-11-04  Eli Zaretskii  <eliz@gnu.org>
1403         Mark relocation workarounds with REL_ALLOC
1405         * src/search.c (boyer_moore): Mark workarounds for ralloc.c
1406         relocation of buffer text with "#ifdef REL_ALLOC".
1408 2016-11-02  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
1410         Fix documentation for 'eudc-options-file'
1412         * doc/misc/eudc.texi (The Server Hotlist): Update the default
1413         value of 'eudc-options-file'.
1415         Backport:
1417         (cherry picked from commit 0575fd95d0b92a9a0ebff8df183a449190f74dbc)
1419 2016-11-02  Tibor Csögör  <tibi@tiborius.net>
1421         Fix documentation of 'eudc-inline-expansion-format'
1423         * doc/misc/eudc.texi (Inline Query Expansion): Fix the default value of
1424         'eudc-inline-expansion-format'. (Bug#24840)
1426         Backport:
1428         (cherry picked from commit 1fef1387c387d80f8ece326621539b89a6965702)
1430 2016-10-31  Clément Pit--Claudel  <clement.pitclaudel@live.com>
1432         python.el: Fix detection of native completion in Python 3 (bug #24401)
1434         With Python 3.5, (python-shell-completion-native-get-completions ... "")
1435         would return an empty list, causing python.el to think that native
1436         completion was unavailable (the difference between Python 2 and Python 3
1437         is due to https://bugs.python.org/issue25660).
1439         * lisp/progmodes/python.el (python-shell-completion-native-try): Use "_"
1440           to check whether native completion is available instead of "".
1442 2016-10-26  Glenn Morris  <rgm@gnu.org>
1444         * Makefile.in (install-arch-indep): Skip etc/refcards/emacsver.tex.in.
1446 2016-10-26  Stefan Monnier  <monnier@iro.umontreal.ca>
1448         * lisp/subr.el (set-transient-map): Exit for unbound events (bug#24755).
1450 2016-10-26  Eli Zaretskii  <eliz@gnu.org>
1452         Update category-table for Chinese characters
1454         * lisp/international/characters.el (standard-category-table):
1455         Update the ranges of Han and Chinese characters.  (Bug#24798)
1457 2016-10-26  Noam Postavsky  <npostavs@gmail.com>
1459         Inhibit buffer relocation during regex searches
1461         * src/search.c (looking_at_1, fast_looking_at, search_buffer): Prevent
1462         relocation of buffer contents during calls to re_search_2.  This ensures
1463         the pointers into buffer text won't be invalidated by
1464         r_alloc_sbrk (called from malloc with configurations where
1465         REL_ALLOC=yes).
1467 2016-10-26  Noam Postavsky  <npostavs@gmail.com>
1469         Revert fixes to allocation of regex matching
1471         The fix was not complete, and completing it was proving too complicated.
1473         - Revert "* src/regex.c (re_search_2): Make new code safe for
1474                   -Wjump-misses-init."
1475           This reverts commit c2a17924a57483d14692c8913edbe8ad24b5ffbb.
1476         - Revert "Port to GCC 6.2.1 + --enable-gcc-warnings"
1477           This reverts commit f6134bbda259c115c06d4a9a3ab5c39340a15949.
1478         - Revert "Fix handling of allocation in regex matching"
1479           This reverts commit ad66b3fadb7ae22a4cbb82bb1507c39ceadf3897.
1480         - Revert "Fix handling of buffer relocation in regex.c functions"
1481           This reverts commit ee04aedc723b035eedaf975422d4eb242894121b.
1483 2016-10-25  Eli Zaretskii  <eliz@gnu.org>
1485         Comment for bug#24793
1487         * lisp/info.el (Info-mode-font-lock-keywords): Add a comment
1488         explaining why `..' quoting is not fontified using the
1489         'Info-quoted' face.  (Bug#24793)
1491 2016-10-25  Paul Eggert  <eggert@cs.ucla.edu>
1493         Default REL_ALLOC to 'no'
1495         This should make ralloc-related bugs less likely on GNU/Linux
1496         systems with bleeding-edge glibc.  See the email thread containing:
1497         http://lists.gnu.org/archive/html/emacs-devel/2016-10/msg00801.html
1498         Do not merge to master.
1499         * configure.ac (REL_ALLOC): Default to 'no' on all platforms, not
1500         merely on platforms with Doug Lea malloc.  Although bleeding-edge
1501         glibc no longer exports __malloc_initialize_hook and so longer
1502         passes the configure-time test for Doug Lea malloc, ralloc tickles
1503         longstanding bugs like Bug#24358 and Bug#24764 and Emacs is likely
1504         to be more reliable without it.  This patch is not needed on
1505         master, which uses hybrid malloc in this situation.
1507 2016-10-24  Eli Zaretskii  <eliz@gnu.org>
1509         Yet another fix for using pointers into buffer text
1511         * src/search.c (boyer_moore): Update pointers to buffer text
1512         after call to set_search_regs.  (Bug#24358)
1514 2016-10-24  Eli Zaretskii  <eliz@gnu.org>
1516         Another fix for using pointer to buffer text
1518         * src/search.c (Freplace_match): Move the call to BYTE_POS_ADDR
1519         after the call to xpalloc, to avoid the danger of buffer text
1520         relocation after its address was taken.  (Bug#24358)
1522 2016-10-24  Michael Albinus  <michael.albinus@gmx.de>
1524         Fix Bug#24478
1526         * lisp/net/tramp-sh.el (tramp-histfile-override): Change default value
1527         to "~/.tramp_history".
1528         (tramp-open-shell): Check proper HISTFILE setting.
1529         (tramp-maybe-open-connection): Cleanup also for errors.  (Bug#24478)
1531 2016-10-24  Paul Eggert  <eggert@cs.ucla.edu>
1533         Port --enable-gcc-warnings to bleeding-edge glibc
1535         Bleeding-edge glibc sets emacs_cv_var_doug_lea_malloc to 'no'.
1536         Do not merge to master.
1537         * configure.ac: Check for valloc decl when compiling gmalloc.c.
1538         * src/gmalloc.c (emacs_abort) [emacs]: Adjust decl to match
1539         what is in lisp.h.  Remove duplicate decl.
1540         (aligned_alloc): #undef before defining.
1541         (aligned_alloc, memalign) [!MSDOS]: Declare.
1542         (valloc) [HAVE_DECL_VALLOC]: Remove duplicate decl.
1544 2016-10-23  Eli Zaretskii  <eliz@gnu.org>
1546         Fix handling of buffer relocation in regex.c functions
1548         * src/search.c (search_buffer): Updated the base pointer to buffer
1549         text after the call to re_search_2.  (Bug#24358)
1551 2016-10-23  Eli Zaretskii  <eliz@gnu.org>
1553         Avoid relocating buffers while libxml2 reads its text
1555         * src/xml.c (parse_region) [REL_ALLOC]: Freeze the ralloc arena
1556         while libxml2 reads the current buffer's text.  (Bug#24764)
1558 2016-10-23  Eli Zaretskii  <eliz@gnu.org>
1560         Attempt to catch reads from a buffer that is relocated
1562         * src/xml.c (parse_region): Add assertion to ensure buffer text is
1563         not relocated while libxml2 is reading it.  (Bug#24764)
1565 2016-10-23  Eli Zaretskii  <eliz@gnu.org>
1567         Revert "* lisp/simple.el (process-menu-mode, list-processes--refresh):"
1569         This reverts commit a4285bcb1114e29200001f33af9b4802167d6140.
1570         Do not merge to master!
1572 2016-10-23  Eli Zaretskii  <eliz@gnu.org>
1574         Revert "* lisp/ibuf-ext.el (ibuffer-do-shell-command-file):"
1576         This reverts commit b0c447e4668116cecfda91d0203cb7cac2486d92.
1577         Do not merge to master!
1579 2016-10-23  Eli Zaretskii  <eliz@gnu.org>
1581         Revert "* lisp/ibuffer.el (ibuffer): Improve 'other-window' case.  (Bug#23617)"
1583         This reverts commit cf3c19b0298236293d9c56d5ba425af4f42c1f8e.
1584         Do not merge to master!
1586 2016-10-23  Eli Zaretskii  <eliz@gnu.org>
1588         ;* src/w32heap.c: Fix typo and wording of the comments.
1590 2016-10-23  Paul Eggert  <eggert@cs.ucla.edu>
1592         electric-quote mode no longer worries about coding
1594         * doc/emacs/text.texi (Quotation Marks), etc/NEWS: Document this.
1595         * lisp/electric.el (electric--insertable-p): Remove.
1596         All uses removed (Bug#24759).
1598 2016-10-23  Paul Eggert  <eggert@cs.ucla.edu>
1600         * src/regex.c (re_search_2): Make new code safe for -Wjump-misses-init.
1602 2016-10-23  Paul Eggert  <eggert@cs.ucla.edu>
1604         Port to GCC 6.2.1 + --enable-gcc-warnings
1606         * src/regex.c (ENSURE_FAIL_STACK, re_search_2):
1607         Redo recent regex changes to avoid complaints from GCC 6.2.1 when
1608         Emacs is configured with --enable-gcc-warnings.  Also, work around
1609         GCC bug 78081, which was uncovered by this new code.
1611 2016-10-22  Noam Postavsky  <npostavs@gmail.com>
1613         Explain how to debug emacsclient lisp errors
1615         * doc/lispref/debugging.texi (Error Debugging): Mention that
1616         debug-on-signal is useful for getting backtraces from
1617         emacsclient (Bug#24616).
1619 2016-10-22  Noam Postavsky  <npostavs@gmail.com>
1621         Let describe-function work for lambda again
1623         Since commit "* lisp/help-fns.el (describe-function): More type
1624         checking[...]", `describe-function' throws a user-error when given a
1625         non-symbol.  This prevents the [back] button in a *Help* buffer from
1626         working when the page it goes back to describes an anonymous
1627         function (e.g., the result of `describe-key' on a key which is bound to
1628         a lambda form).
1630         * lisp/help-fns.el (describe-function): Move the checks on FUNCTION
1631         being an fbound symbol into the `interactive' form.  This allows
1632         non-interactive calls to pass an anonymous function (Bug #24221).  Note
1633         that passing a non-bound symbol non-interactively will still trigger a
1634         `void-function' error from `describe-function-1'.
1636 2016-10-22  Noam Postavsky  <npostavs@gmail.com>
1638         Fix kill-line's docstring
1640         * lisp/simple.el (kill-line): The effect of show-trailing-whitespace is
1641         important lines with *no* nonblanks (Bug #16654).
1643 2016-10-22  Noam Postavsky  <npostavs@gmail.com>
1645         Fix handling of allocation in regex matching
1647         `re_match_2_internal' uses pointers to the lisp objects that it
1648         searches.  Since it may call malloc when growing the "fail stack", these
1649         pointers may be invalidated while searching, resulting in memory
1650         curruption (Bug #24358).
1652         To fix this, we check the pointer that the lisp object (as specified by
1653         re_match_object) points to before and after growing the stack, and
1654         update existing pointers accordingly.
1656         * src/regex.c (STR_BASE_PTR): New macro.
1657         (ENSURE_FAIL_STACK, re_search_2): Use it to convert pointers into
1658         offsets before possible malloc call, and back into pointers again
1659         afterwards.
1660         (POS_AS_IN_BUFFER): Add explanatory comment about punning trick.
1661         * src/search.c (search_buffer): Instead of storing search location as
1662         pointers, store them as pointers and recompute the corresponding address
1663         for each call to `re_search_2'.
1664         (string_match_1, fast_string_match_internal, fast_looking_at):
1665         * src/dired.c (directory_files_internal): Set `re_match_object' to Qnil
1666         after calling `re_search' or `re_match_2'.
1667         * src/regex.h (re_match_object): Mention new usage in commentary.
1669 2016-10-21  Paul Eggert  <eggert@cs.ucla.edu>
1671         * lisp/electric.el (electric-quote-mode): Improve doc (Bug#24759).
1673 2016-10-20  Tino Calancha  <tino.calancha@gmail.com>
1675         vc-region-history: Search just on lines intersecting the region
1677         * lisp/vc/vc.el (vc-region-history): If region ends in the beginning
1678         of a line, then exclude that line from the search (Bug#24725).
1680 2016-10-19  Eli Zaretskii  <eliz@gnu.org>
1682         Fix documentation of 'alist-get'
1684         * doc/lispref/lists.texi (Association Lists): Fix the signature of
1685         'alist-get'.  Fix the markup, the wording, and the punctuation in
1686         the description. (Bug#24740)
1688 2016-10-19  Eli Zaretskii  <eliz@gnu.org>
1690         * src/regex.h (re_match_object): Improve commentary.
1692 2016-10-19  Alan Third  <alan@idiocy.org>
1694         Fix cursor at bottom left of rectangle (bug#24364)
1696         * lisp/rect.el (rectangle--col-pos): Don't assume point at EOL doesn't
1697         require rectangle--point-crutches to be set.
1699 2016-10-19  Michael Albinus  <michael.albinus@gmx.de>
1701         Change Tramp version to "2.2.13.25.2"
1703         * doc/misc/trampver.texi:
1704         * lisp/net/trampver.el: Change version to "2.2.13.25.2".
1706 2016-10-19  Eli Zaretskii  <eliz@gnu.org>
1708         * lisp/emacs-lisp/autoload.el (update-directory-autoloads): Fix last change.
1710 2016-10-19  Eli Zaretskii  <eliz@gnu.org>
1712         Don't scan compiled module files for autoloads
1714         * lisp/emacs-lisp/autoload.el (update-directory-autoloads): Ignore
1715         compiled module files.  Make sure the extension really ends the
1716         file name.
1718 2016-10-18  Michael Albinus  <michael.albinus@gmx.de>
1720         Fix Bug#24698
1722         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
1723         Don't send "stty tab0" to *BSD and Darwin machines.  (Bug#24698)
1725 2016-10-18  Eli Zaretskii  <eliz@gnu.org>
1727         * lisp/subr.el (start-process): Doc fix.  (Bug#24693)
1729 2016-10-18  Göktuğ Kayaalp  <self@gkayaalp.com>
1731         Fix display of vc-dir CVS file statuses in subdirectories
1733         * lisp/vc/vc-cvs.el (vc-cvs-dir-status-files): Use 'cvs update'
1734         instead of 'cvs status'.  It's faster, easier to parse, and
1735         relieves us of the need to use vc-expand-dirs.  (Bug#24082)
1736         (vc-cvs-after-dir-status): Parse its output.
1738 2016-10-17  Eli Zaretskii  <eliz@gnu.org>
1740         Update URL of MS-Windows optional DLLs
1742         * nt/README.W32:
1743         * nt/INSTALL: Update the URL of the MS-Windows binaries of the
1744         optional libraries built with MSYS2/MinGW64 project tools.
1746 2016-10-17  Eli Zaretskii  <eliz@gnu.org>
1748         Fix time-related data types in 2 editfns.c functions
1750         * src/editfns.c (format_time_string, Fcurrent_time_zone): Pass a
1751         pointer to time_t value to emacs_localtime_rz and gmtime_r,
1752         instead of relying on struct timespec's tv_sec member to be of
1753         compatible type.
1755 2016-10-17  Tino Calancha  <f92capac@gmail.com>
1757         * lisp/simple.el (process-menu-mode, list-processes--refresh):
1758         Include PID.  (Bug#21725)
1760         (cherry picked from commit b7adc2f23787eb72015cd705b873e229db6a5049)
1762 2016-10-17  Tino Calancha  <f92capac@gmail.com>
1764         * lisp/ibuf-ext.el (ibuffer-do-shell-command-file):
1765         Fix non-file-visiting-buffer case.  (Bug#22678)
1767         (cherry picked from commit 738738259ba77fe17e433c64e0758ea59ab5bc75)
1769 2016-10-17  Tino Calancha  <f92capac@gmail.com>
1771         * lisp/ibuffer.el (ibuffer): Improve 'other-window' case.  (Bug#23617)
1773         (cherry picked from commit f4ef1a1fea15aa58fbb5e7a59bff260720658e49)
1775 2016-10-17  Paul Eggert  <eggert@cs.ucla.edu>
1777         Port to Ubuntu 16.10, which needs gcc -nopie
1779         * configure.ac (emacs_cv_prog_cc_no_pie): Rename from
1780         emacs_cv_prog_cc_nopie.  All usages changed.  Check for -no-pie in
1781         preference to -nopie (Bug#24682).  Backport from master.
1783 2016-10-17  Glenn Morris  <rgm@gnu.org>
1785         * lisp/cus-start.el (exec-path): Handle nil elements.  (Bug#24471)
1787 2016-10-16  Andreas Politz  <politza@hochschule-trier.de>
1789         Catch the imenu-unavailable error in sh-mode completion table
1791         * lisp/progmodes/sh-script.el (sh--cmd-completion-table):
1792         Catch the imenu-unavailable error (bug#24238).
1794 2016-10-16  Eli Zaretskii  <eliz@gnu.org>
1796         More char-width fixes
1798         * lisp/international/characters.el (char-width-table): More fixes
1799         according to the latest EastAsianWidth.txt.  (Bug#24705)
1801 2016-10-15  Eli Zaretskii  <eliz@gnu.org>
1803         Fix char-width-table values for some Emoji
1805         * lisp/international/characters.el (char-width-table): Add missing
1806         range U+1F400..U+1F43E.  (Bug#24699)
1808         * admin/notes/unicode: Mention the need to verify char-width-table
1809         setting against data in EastAsianWidth.txt.
1811 2016-10-15  Eli Zaretskii  <eliz@gnu.org>
1813         Keep point when switching from and to *terminal* buffer
1815         * lisp/term.el (term-reset-size): Don't reset the size if it
1816         didn't change.  If the size did change, restore point after
1817         adjusting the size.  (Bug#24465)
1819 2016-10-15  Michael Albinus  <michael.albinus@gmx.de>
1821         * INSTALL: Use correct Emacs release number 25.
1823 2016-10-14  Eli Zaretskii  <eliz@gnu.org>
1825         Avoid crashes due to objects read with the #n=object form
1827         * src/lread.c (read1): Use Fcons for 'placeholder', not AUTO_CONS,
1828         because elements of the list in 'read_objects' cannot be allocated
1829         off the stack.  (Bug#24640)
1831 2016-10-13  Eli Zaretskii  <eliz@gnu.org>
1833         Improve doc string of 'completion-at-point-functions'
1835         * lisp/minibuffer.el (completion-at-point-functions): Doc fix.
1836         (Bug#24663)
1838 2016-10-13  Philipp Stephani  <phst@google.com>
1840         Fix crash in evaluating functions
1842         See Bug#24673
1844         * src/eval.c (funcall_lambda): Fix crash for bogus functions such
1845         as (closure).
1847 2016-10-13  Paul Eggert  <eggert@cs.ucla.edu>
1849         * src/filelock.c (current_lock_owner): Update comment.
1851 2016-10-12  Paul Eggert  <eggert@cs.ucla.edu>
1853         Port --enable-gcc-warnings to GCC 6.2.1
1855         Backport from master.
1856         * src/conf_post.h (GNUC_PREREQ): New macro.
1857         * src/keyboard.c: Use it to work around GCC bug 54561.
1858         * src/process.c (would_block): New function.
1859         (server_accept_connection, wait_reading_process_output, send_process):
1860         Use it.
1862 2016-10-12  Paul Eggert  <eggert@cs.ucla.edu>
1864         Work around Samba bug with ':' in symlink contents
1866         * src/filelock.c (current_lock_owner): When reading the contents
1867         of a lock, treat the UTF-8 for U+F022 as if it were ':' (Bug#24656).
1868         Backport from master.
1870 2016-10-12  Paul Eggert  <eggert@cs.ucla.edu>
1872         Port last_marked change to full-program optimizers
1874         * src/alloc.c (last_marked): Now EXTERNALLY_VISIBLE.
1876 2016-10-12  Eli Zaretskii  <eliz@gnu.org>
1878         Adapt GDB scripts to '--enable-check-lisp-object-type' builds
1880         * etc/emacs-buffer.gdb <$qnil>: New variable.
1881         (ybuffer-list, yset-buffer): Use $qnil for comparing against
1882         'nil', as direct comparison with Qnil doesn't work in a build with
1883         '--enable-check-lisp-object-type'.
1885         * src/.gdbinit: Adapt commands of the temporary breakpoint in
1886         init_sys_modes to a build with '--enable-check-lisp-object-type'.
1888 2016-10-11  Eli Zaretskii  <eliz@gnu.org>
1890         Avoid optimizing out the last_marked[] array
1892         * src/alloc.c <last_marked>: No longer 'static', to avoid having
1893         it optimized out in optimized builds, which then makes debugging
1894         GC problems harder.
1896 2016-10-09  Alan Mackenzie  <acm@muc.de>
1898         CC Mode manual: remove reference to former Emacs variable last-command-char
1900         * doc/misc/cc-mode.texi (Hanging Semicolons and Commas): Replace reference to
1901         variable last-command-char by one to macro c-last-command-char.
1903 2016-10-08  Eli Zaretskii  <eliz@gnu.org>
1905         Allow to disable compaction of font caches
1907         * src/font.c (syms_of_font) <inhibit-compacting-font-caches>: New
1908         boolean variable.
1909         * src/alloc.c (compact_font_caches): Use it to bypass the call to
1910         compact_font_cache_entry.  (Bug#24634)  (Bug#24565)
1912         * etc/NEWS: Mention the new variable.
1914 2016-10-08  Eli Zaretskii  <eliz@gnu.org>
1916         Allow selection of font for symbols as in Emacs 24.x
1918         * src/fontset.c (syms_of_fontset) <use-default-font-for-symbols>:
1919         New boolean variable.
1920         (face_for_char): Use it to fall back to pre-Emacs 25.1 behavior
1921         when selecting fonts for displaying symbol and punctuation
1922         characters.  (Bug#24644)
1924         * etc/NEWS: Mention the new variable.
1926 2016-10-08  Eli Zaretskii  <eliz@gnu.org>
1928         Fix horizontal scrolling during Isearch
1930         * lisp/isearch.el (isearch-update): Compute the window's body
1931         width in a way that is correct when there are no fringes.
1932         (Bug#24584)
1934 2016-10-08  Eli Zaretskii  <eliz@gnu.org>
1936         Fix infloop in redisplay due to truncated lines and invisible text
1938         * src/xdisp.c (forward_to_next_line_start): Don't call
1939         'get_next_display_element' after finding the end of line.  This
1940         avoids setting the row's end position to the wrong value when the
1941         next screen line begins with invisible text; that wrong value
1942         caused set_cursor_from_row position the cursor in the wrong screen
1943         line, and eventually triggered bug#24109.
1945 2016-10-07  David Engster  <deng@randomsample.de>
1947         gitmerge: Add cherry pick to gitmerge-skip-regexp
1949         * admin/gitmerge.el (gitmerge-skip-regexp): Add "cherry picked
1950         from commit", which is the string appended by 'git cherry-pick
1951         -x'.
1953         (cherry picked from commit f648e4866981b142fca788372e1fd9013a0bb16a)
1955 2016-10-06  Eli Zaretskii  <eliz@gnu.org>
1957         Improve documentation of 'menu-bar-open'
1959         * lisp/term/w32-win.el (w32-menu-bar-open): Clarify that sometimes
1960         two ESC keypresses are needed to exit the menu.
1962         * doc/emacs/screen.texi (Menu Bar): Qualify the description of how
1963         to exit menus.  (Bug#24596)
1965 2016-10-06  Eli Zaretskii  <eliz@gnu.org>
1967         Fix compilation with MinGW runtime 3.22.2 and w32api 3.18.2
1969         * nt/inc/ms-w32.h (_WIN32_WINNT) [!MINGW_W64]: Undefine before
1970         defining to avoid redefinition warnings.
1972         * nt/inc/sys/stat.h (_SYS_STAT_H, _INC_STAT_H): Define, to avoid
1973         inclusion of sys/stat.h from the system headers, which could then
1974         lead to compilation errors due to redefinition of 'struct stat'
1975         etc.  This is needed because latest versions of MinGW runtime
1976         include sys/stat.h from wchar.h.
1978         * src/image.c (__MINGW_MAJOR_VERSION) [WINDOWSNT]: Temporarily
1979         redefine to 4 to avoid conflict between 2 definitions of
1980         MemoryBarrier.  (Bug#24613)
1982         Do not merge to master!
1984 2016-10-05  John Wiegley  <johnw@newartisans.com>
1986         Add documentation note from Alex
1988 2016-10-05  Aurelien Aptel  <aaptel@suse.com>
1990         * src/alloc.c: call only non-null finalizers
1992 2016-10-04  Karl Fogel  <kfogel@red-bean.com>
1994         Clarify that doc fixes are okay in feature freeze
1996         * CONTRIBUTE (branches): Explain that doc fixes are always safe, even
1997         on a release branch in feature freeze.  Tweak wording of paragraph
1998         after that to avoid a misleading contrast.
2000 2016-10-04  Eli Zaretskii  <eliz@gnu.org>
2002         Avoid crashes when setting the cursor
2004         * src/xdisp.c (display_and_set_cursor): Don't index glyphs of a
2005         glyph row if hpos is out of valid bounds.  This avoids crashes in
2006         some rare cases.  (Bug#24614)
2008 2016-10-04  Philippe Vaucher  <philippe.vaucher@gmail.com>
2010         Restore 'command-debug-status' functionality
2012         * src/callint.c (Fcall_interactively): Bind command-debug-status
2013         to nil.  This restores functionality inadvertently removed in
2014         Emacs 25.1.  (Bug#24555)
2016         * lisp/subr.el (command-debug-status): Declare obsolete.
2018         * doc/lispref/debugging.texi (Internals of Debugger): Document
2019         that 'command-debug-status' is obsolete.
2021 2016-10-03  Karl Fogel  <kfogel@red-bean.com>
2023         Document yank behavior in the right place
2025         * lisp/simple.el (yank): Document the handling of the
2026         `yank-handled-properties' and `yank-excluded-properties' variables,
2027         and the `yank-handler' text property.
2028         (yank-pop): Refer to `yank' now (bug#286)
2030         * lisp/subr.el (insert-for-yank): Refer to `yank' now.
2031         (insert-for-yank-1): Refer to `insert-for-yank' now.
2033         See this thread for discussion:
2035           https://lists.gnu.org/archive/html/emacs-devel/2016-09/threads.html#00329
2036           From: Karl Fogel
2037           To: Emacs Devel
2038           Subject: Question about intended behavior of 'insert-for-yank-1'.
2039           Date: Mon, 12 Sep 2016 00:17:14 -0500
2040           Message-ID: <874m5lr92d.fsf@red-bean.com>
2042 2016-10-03  Philipp Stephani  <phst@google.com>
2044         Document nil args of compare-buffer-substrings
2046         * src/editfns.c (Fcompare_buffer_substrings): Document behavior when
2047         the arguments are nil.
2049 2016-10-03  Katsumi Yamaoka  <yamaoka@jpl.org>
2051         * doc/misc/message.texi (Bcc Warning): Fix markup.
2053         * doc/misc/message.texi (Bcc Warning):
2054         Document mml-secure-safe-bcc-list.
2056 2016-10-02  Noam Postavsky  <npostavs@gmail.com>
2058         Don't require isearch-update before isearch-done
2060         It is useful to be able to call `isearch-done' unconditionally to
2061         ensure a non-isearching state.
2063         * lisp/isearch.el (isearch-done): Check that `isearch--current-buffer'
2064         is a live buffer before using it (Bug #21091).
2065         * test/automated/isearch-tests.el (isearch--test-done): Test it.
2067         (cherry picked from commit 68f4b5292781bc331b040105c4079902b993835c)
2069 2016-10-02  Peder O. Klingenberg  <peder@klingenberg.no>
2071         Avoid error in icalendar--read-element
2073         * lisp/calendar/icalendar.el (icalendar--read-element): Avoid a regex
2074         stack overflow by not using regex to extract values from calendar
2075         events. (Bug#24315)
2077         (cherry picked from commit 55dde6c1a21a792d3d75c19e612c74dd054aaf1e)
2079 2016-10-02  Lars Ingebrigtsen  <larsi@gnus.org>
2081         Make a menu less ambiguous
2083         * doc/emacs/custom.texi (Key Bindings): The Modifier Keys node
2084         is about using modifier keys, not binding them (bug#10942).
2086         (cherry picked from commit 214f85a0a68b96a552ca605d601b33f6eef5c4ca)
2088 2016-10-02  Devon Sean McCullough  <Emacs-Hacker2012@jovi.net>
2090         Doc fix for url-http
2092         * lisp/url/url-http.el (url-http): Document better return values
2093           (bug#13187) (tiny change)
2095         (cherry picked from commit 344303c8d9cb03d4778a73940e80e966280aa694)
2097 2016-10-01  Eli Zaretskii  <eliz@gnu.org>
2099         * lisp/frame.el (blink-cursor-delay): Doc fix.  (Bug#24372)
2101 2016-09-30  Katsumi Yamaoka  <yamaoka@jpl.org>
2103         * lisp/gnus/gnus-art.el (gnus-button-handle-library): Fix typo.
2105 2016-09-27  Paul Eggert  <eggert@cs.ucla.edu>
2107         Regexp Functions doc minor fixes
2109         * doc/lispref/searching.texi (Regexp Functions):
2110         Fix misspelling of “matching”.  Use @table for table.
2111         Reformat code example to fit into info file width (Bug#17862).
2113 2016-09-27  Katsumi Yamaoka  <yamaoka@jpl.org>
2115         Backport mm-convert-shr-links fix from master (bug#23964)
2117         * lisp/gnus/mm-decode.el (mm-convert-shr-links):
2118         Preserve key bindings that shr adds (bug#23964).
2120 2016-09-26  Eli Zaretskii  <eliz@gnu.org>
2122         Improve documentation of 'expand-abbrev' and wrapper hooks
2124         * lisp/simple.el (filter-buffer-substring-functions)
2125         (buffer-substring--filter): Add a link to 'with-wrapper-hook' as
2126         the place to look for documentation of wrapper hooks.
2127         * lisp/minibuffer.el (completion-in-region-functions)
2128         (completion--in-region): Add a link to 'with-wrapper-hook' as the
2129         place to look for documentation of wrapper hooks.
2130         * lisp/abbrev.el (expand-abbrev, abbrev--default-expand): Clarify
2131         the doc strings.  (Bug#24540)
2133         * doc/lispref/text.texi (Buffer Contents): Mention
2134         'with-wrapper-hook's doc string as the place to learn about that
2135         obsolete facility.
2137 2016-09-25  Eli Zaretskii  <eliz@gnu.org>
2139         Minor copyedits of MS-Windows installation instructions
2141         * nt/INSTALL:
2142         * nt/README.W32: Add URL of Emacs dependencies on alpha.gnu.org.
2144 2016-09-23  Eli Zaretskii  <eliz@gnu.org>
2146         Fix display of cursor when 'blink-cursor-delay' has small value
2148         * lisp/frame.el (blink-cursor-check, blink-cursor-mode):
2149         Protect ourselves against too small values of blink-cursor-delay.
2150         This avoids erratic display of the cursor, or even failure to
2151         display it, when user types text at high speed or leans on a key
2152         to invoke the keyboard auto-repeat feature.  (Bug#24372)
2154 2016-09-23  Eli Zaretskii  <eliz@gnu.org>
2156         Improve the doc string of 'format'
2158         * src/editfns.c (Fformat): Fix ambiguity in the doc string's usage
2159         of a literal period.  (Bug#24407)
2161         This was backported from master
2162         (cherry picked from commit 7123896626b06c26c4e37839ab41e41980c8f433)
2164 2016-09-23  Eli Zaretskii  <eliz@gnu.org>
2166         Improve doc strings in whitespace.el
2168         * lisp/whitespace.el (whitespace-mode, whitespace-newline-mode)
2169         (global-whitespace-mode, global-whitespace-newline-mode): Improve
2170         the doc strings.  (Bug#24413)
2172         This was backported from master
2173         (cherry picked from commit 3462fe73351f3da5bc3ebf8296ee44dd2e6b1dbc)
2175 2016-09-23  Eli Zaretskii  <eliz@gnu.org>
2177         Improve detectability of 'next-logical-line' and 'previous-logical-line'
2179         * lisp/simple.el (next-line, previous-line): Mention
2180         'next-logical-line' and 'previous-logical-line' in the doc
2181         strings.  (Bug#24443)
2183         This was backported from master
2184         (cherry picked from commit e95d0d15bb1534803b0adb3c3a927c8beb7d4e79)
2186 2016-09-23  Martin Rudalics  <rudalics@gmx.at>
2188         Fix (next-frame nil t) crash (Bug#24281)
2190         * src/frame.c (candidate_frame): Check minibuf argument before
2191         comparing it to zero (Bug#24281).
2193         This was backported from master
2194         (cherry picked from commit dc491c3df305a73908fe8de20b7c428a5b38c846)
2196 2016-09-23  Noam Postavsky  <npostavs@gmail.com>
2198         Fix debugging of string-match-p errors
2200         * src/eval.c (call_debugger): Bind inhibit-changing-match-data to nil so
2201         that debugger code that needs to do regexp match won't break
2202         (Bug #23949, Bug #24166, Bug#16294).
2204         This was backported from master
2205         (cherry picked from commit 7fb75680b38fe0805c2ff7e9cca3bec8121ba984)
2207 2016-09-23  Eli Zaretskii  <eliz@gnu.org>
2209         Fix region display while dragging mouse
2211         * lisp/mouse.el (mouse-drag-track): Reset deactivate-mark in the
2212         buffer of the drag event, to allow mark to be set and the region
2213         be shown as we drag the mouse.  (Bug#24030)
2215         This was backported from master
2216         (cherry picked from commit 7d58b02f363ab02961faa950d1ba727df96f2f19)
2218 2016-09-23  Eli Zaretskii  <eliz@gnu.org>
2220         Fix 'vertical-motion' and 'posn-at-point' under 'visual-line-mode'
2222         * src/xdisp.c (move_it_in_display_line_to): Don't assume we can
2223         wrap on a whitespace character if it's followed by another
2224         whitespace character.  When returning under WORD_WRAP for a screen
2225         line that is continued, restore to wrap point when atpos/atx
2226         position would be displayed on the next screen line due to
2227         line-wrap.  (Bug#23570)
2229         This is backported from master
2230         (cherry picked from commit 99848b37d2c3e14c0af45fc6da437a806aa58a80)
2232 2016-09-23  Paul Eggert  <eggert@cs.ucla.edu>
2234         Improve display of tex-verbatim and Info quoted
2236         Problem reported by Glenn Morris (Bug#19889).
2237         * doc/emacs/display.texi (Standard Faces):
2238         * doc/lispref/display.texi (Basic Faces):
2239         * etc/NEWS: Mention fixed-pitch-serif.
2240         * lisp/faces.el (face-font-family-alternatives):
2241         New family alias Monospace Serif.
2242         (fixed-pitch-serif): New face, which uses the new family.
2243         * lisp/info.el (Info-quoted):
2244         * lisp/textmodes/tex-mode.el (tex-verbatim): Use the new face.
2245         * test/automated/font-parse-tests.el (font-parse-tests--data):
2246         Add test case for Monospace Serif.
2248         This is backport from master
2249         (cherry picked from commit 36906806ccfc0e53f1d8c365ab0d7151288b7833)
2251 2016-09-23  Lars Ingebrigtsen  <larsi@gnus.org>
2253         Document how to check for ImageMagick support
2255         * doc/lispref/display.texi (ImageMagick Images): Say how to
2256         check for ImageMagick support, which isn't quite obvious
2257         (bug#20702).
2259         This is backport from master
2260         (cherry picked from commit faf07d646575c78d6d956ce91820ebbf38308553)
2262 2016-09-23  Tino Calancha  <f92capac@gmail.com>
2264         Run find-function-after-hook after finding a symbol
2266         * lisp/emacs-lisp/find-func.el (find-library):
2267         * lisp/help-mode.el (help-function-def, help-variable-def):
2268         Run `find-function-after-hook' inside the help-function of the
2269         buttons (bug#22583).
2270         * etc/NEWS: Mention the change.
2272         This is a backport from master.
2273         (cherry picked from commit f069d854508946bcc03e4c77ceb430748e3ab6d7)
2275 2016-09-23  Eli Zaretskii  <eliz@gnu.org>
2277         Document 'timerp'
2279         * doc/lispref/os.texi (Timers): Document 'timerp'.  (Bug#24511)
2280         Improve indexing.
2282 2016-09-23  Eli Zaretskii  <eliz@gnu.org>
2284         Improve documentation of overlay priorities
2286         * doc/lispref/display.texi (Overlay Properties): Minor copyedits.
2287         By popular demand, mention the '(PRIMNARY . SECONDARY)' form of
2288         overlay properties used for the region.  (Bug#20253)
2290 2016-09-23  Eli Zaretskii  <eliz@gnu.org>
2292         Fix 'dired-compress-files'
2294         * lisp/dired-aux.el (dired-do-compress-to): Make sure the archive
2295         file name is fully expanded by running it through
2296         'expand-file-name'.  Suggested by Drew Adams <drew.adams@oracle.com>.
2297         (Bug#24486)  Doc fix.
2298         * lisp/dired.el: Regenerated changes in autoloads.
2300 2016-09-23  Eli Zaretskii  <eliz@gnu.org>
2302         Update commentary of STRING_CHAR and FETCH_MULTIBYTE_CHAR
2304         * src/character.h (STRING_CHAR):
2305         * src/buffer.h (FETCH_MULTIBYTE_CHAR): Update commentary: these
2306         two macros no longer do any character unification, so the caveats
2307         in those comments are no longer pertinent.
2309 2016-09-23  Eli Zaretskii  <eliz@gnu.org>
2311         Increment Emacs version to 25.1.50
2313         * README:
2314         * configure.ac:
2315         * etc/NEWS:
2316         * msdos/sed2v2.inp: Bump the version to 25.1.50.
2318 2016-09-21  Eli Zaretskii  <eliz@gnu.org>
2320         Document the optional zlib library in MS-Windows builds
2322         * nt/README.W32:
2323         * nt/INSTALL.W64:
2324         * nt/INSTALL: Mention the optional text decompression support and
2325         the zlib library.
2327 2016-09-21  Eli Zaretskii  <eliz@gnu.org>
2329         Fix tagging of DEFUN by etags
2331         * lib-src/etags.c (C_entries): Tag DEFUN twice: once with its C
2332         name, and then again with its Lisp name.  This restores the
2333         ability to find Lisp primitives by their C name, which was lost
2334         when the etags back-end was switched to a more strict search
2335         criteria.
2337         * test/etags/ETAGS.good_1:
2338         * test/etags/ETAGS.good_2:
2339         * test/etags/ETAGS.good_3:
2340         * test/etags/ETAGS.good_4:
2341         * test/etags/ETAGS.good_5:
2342         * test/etags/ETAGS.good_6:
2343         * test/etags/CTAGS.good: Adapt to the changes in etags.c wrt
2344         tagging DEFUN.
2346 2016-09-21  Eli Zaretskii  <eliz@gnu.org>
2348         Avoid resetting track-mouse by mouse clicks
2350         * lisp/mouse.el (mouse-drag-line, mouse-drag-track): Don't assume
2351         the previous value of track-mouse is nil; instead, save and
2352         restore the previous value.  (Bug#24480)
2354 2016-09-20  Eli Zaretskii  <eliz@gnu.org>
2356         Improve nt/README.W32 instructions
2358         * nt/README.W32: Add instructions for installing 64-bit builds of
2359         optional libraries.  (Bug#24470)
2361 2016-09-17  Eli Zaretskii  <eliz@gnu.org>
2363         Document that desktop file overrides frame parameters
2365         * doc/emacs/misc.texi (Saving Emacs Sessions):
2366         * doc/emacs/frames.texi (Frame Parameters): Document that frame
2367         parameters restored by desktop.el take precedence over the
2368         customizations in the init file, and explain how to countermand
2369         that.  For the details of the issue, see
2370         http://lists.gnu.org/archive/html/emacs-devel/2016-09/msg00318.html.
2372 2016-09-15  Nicolas Petton  <nicolas@petton.fr>
2374         * etc/AUTHORS: Regenerate the AUTHORS file
2376 2016-09-16  Nicolas Petton  <nicolas@petton.fr>
2378         * Version 25.1 released.
2380 2016-09-15  Nicolas Petton  <nicolas@petton.fr>
2382         * etc/AUTHORS: Regenerate the AUTHORS file
2384 2016-09-15  Eli Zaretskii  <eliz@gnu.org>
2386         Update admin/authors.el
2388         * admin/authors.el (authors-fixed-entries): Add an entry for Bob
2389         Weiner.
2391 2016-09-14  Eli Zaretskii  <eliz@gnu.org>
2393         Update Antinews in ELisp manual
2395         * doc/lispref/anti.texi (Antinews): Update for Emacs 25.1.
2396         * doc/lispref/elisp.texi (Top): Update the main menu entry for
2397         Antinews.
2399 2016-09-11  Noam Postavsky  <npostavs@gmail.com>
2401         Fix comments on window height macros
2403         * src/window.h (WINDOW_MODE_LINE_HEIGHT, WINDOW_HEADER_LINE_HEIGHT): Fix
2404         confusing claim that "height is in pixels and in lines"; in fact it's in
2405         pixels.
2407 2016-09-10  Toke Høiland-Jørgensen  <toke@toke.dk>  (tiny change)
2409         Fix 'url-http-create-request' when cookies are used
2411         * lisp/url/url-http.el (url-http-create-request): Make sure the
2412         cookie headers are a unibyte string.  For the details, see
2413         http://lists.gnu.org/archive/html/emacs-devel/2016-09/msg00202.html.
2415 2016-09-08  Martin Rudalics  <rudalics@gmx.at>
2417         Fix cross reference in frames.texi
2419         * doc/lispref/frames.texi (Minibuffers and Frames): Fix cross
2420         reference.
2422 2016-09-04  immerrr  <immerrr@gmail.com>
2424         Fix regexp-opt documentation (bug #17862)
2426         * lisp/emacs-lisp/regexp-opt.el (regexp-opt):
2427         * doc/lispref/searching.texi (Regexp Functions): Update PAREN doc.
2429 2016-08-31  Nicolas Richard  <youngfrog@members.fsf.org>
2431         * lisp/emacs-lisp/gv.el (gv-ref): Fix example of PLACE in docstring.
2433 2016-08-27  Noam Postavsky  <npostavs@gmail.com>
2435         Fix tags-query-replace docstring
2437         * lisp/progmodes/etags.el (tags-query-replace): Remove incorrect info
2438         regarding non-existent parameters.
2440 2016-08-26  Eli Zaretskii  <eliz@gnu.org>
2442         Clarify documentation of precision in format specs
2444         * doc/lispref/strings.texi (Formatting Strings): Be less
2445         definitive wrt what precision means in format specs other than
2446         floating-point, %s and %S.  (Bug#24314)
2448 2016-08-24  Eli Zaretskii  <eliz@gnu.org>
2450         Improve and clarify documentation of subprocesses
2452         * doc/lispref/processes.texi (Subprocess Creation, Shell Arguments):
2453         Mention 'make-process' rather than 'start-process'.  Update wrt
2454         standard destinations of standard output/error streams and due to
2455         different formats of arguments accepted by 'make-process'.
2456         (Processes): Mention process objects that represent connections.
2457         (Synchronous Processes): Minor clarifications.
2458         (Asynchronous Processes): Describe 'make-process' and
2459         'make-pipe-process' before 'start-process'.  Update and expand the
2460         documentation.
2461         (Deleting Processes, Process Information, Input to Processes)
2462         (Signals to Processes, Query Before Exit, Network): Update and
2463         expand the documentation, especially wrt process objects that
2464         represent connections.
2465         (Output from Processes): Mention the possibility of separating
2466         stderr via 'make-process'.
2467         (Filter Functions): Mention that stderr by default arrives at the
2468         filter function together with stdout.  (Bug#24287)
2470         * src/process.c (Fprocess_id, Fprocess_command)
2471         (Fprocess_contact, Fprocess_type, Fstop_process): Doc fixes for
2472         process objects that represent connections.
2474 2016-08-23  Paul Eggert  <eggert@cs.ucla.edu>
2476         * etc/PROBLEMS: Mention gnutls-cli 3.5.3 (Bug#24247).
2478 2016-08-21  Nicolas Petton  <nicolas@petton.fr>
2480         * etc/AUTHORS: Update the AUTHORS file
2482 2016-08-20  Philipp Stephani  <phst@google.com>
2484         Some assorted documentation clarifications
2486         * src/fileio.c (Fwrite_region): Clarify that END is ignored if
2487         START is nil.
2488         * src/editfns.c (Fbuffer_size): Add short discussion about
2489         narrowing.
2490         * src/callproc.c (Fcall_process_region): Discuss behavior when
2491         START and END are not buffer positions.
2493 2016-08-18  Eli Zaretskii  <eliz@gnu.org>
2495         Improve commentary in src/character.h
2497         * src/character.h (BYTES_BY_CHAR_HEAD, MULTIBYTE_LENGTH)
2498         (MULTIBYTE_LENGTH_NO_CHECK, STRING_CHAR_AND_LENGTH): Remove stale
2499         info from commentary and improve it.
2501 2016-08-17  Dmitry Gutov  <dgutov@yandex.ru>
2503         * etc/NEWS: Mention the change in json-encode-string.
2505         The change was made to fix bug#20154, and came up again in bug#24239.
2507 2016-08-16  Eli Zaretskii  <eliz@gnu.org>
2509         * src/doc.c (Fsubstitute_command_keys): Another fix for smart quotes.
2511         (Bug#24206)
2513 2016-08-16  Eli Zaretskii  <eliz@gnu.org>
2515         Avoid segfaults due to quoting in 'substitute-command-keys'
2517         * src/doc.c (Fsubstitute_command_keys): Correct character counts
2518         when the input string is unibyte.  (Bug#24206)
2520 2016-08-16  Martin Rudalics  <rudalics@gmx.at>
2522         In NEWS describe new handling of window margins (Bug#24193)
2524         * etc/NEWS: Describe new handling of margins when splitting or
2525         resizing windows (Bug#24193).
2527 2016-08-16  Martin Rudalics  <rudalics@gmx.at>
2529         Facultatively ignore margins when splitting and resizing windows (Bug#24193)
2531         Provide a new window parameter 'min-margins' which allows to
2532         ignore the actual widths of a window's margins when splitting or
2533         resizing that window horizontally.  This should serve as a
2534         workaround for handling the problems raised by Bug#24193.
2536         * lisp/window.el (window--min-size-1): Handle new window
2537         parameter 'min-margins'.
2538         (split-window): Fix text of error messages.
2539         * doc/lispref/windows.texi (Window Parameters): Describe new
2540         parameter 'min-margins'.
2542 2016-08-14  Noam Postavsky  <npostavs@gmail.com>
2544         Document CATEGORY arg to modify-category-entry
2546         * src/category.c (Fmodify_category_entry): Document CATEGORY argument.
2548 2016-08-13  Noam Postavsky  <npostavs@gmail.com>
2550         Document char-script-table's effect on word motion
2552         * doc/lispref/positions.texi (Word Motion): Talk about
2553         char-script-table (Bug #10494).
2555 2016-08-13  Eli Zaretskii  <eliz@gnu.org>
2557         Further fix for 'url-http-create-request' and multibyte strings
2559         * lisp/url/url-http.el (url-http-create-request): Run
2560         url-mime-charset-string through url-http--encode-string.
2561         (Bug#24117)
2563 2016-08-13  Noam Postavsky  <npostavs@gmail.com>
2565         Fix docstring of eval-expression
2567         * lisp/simple.el (eval-expression): Fix the docstring to reflect the
2568         fact that the prefix argument does not affect formatting for
2569         integers (Bug #20691).
2571 2016-08-11  Eli Zaretskii  <eliz@gnu.org>
2573         Clarify when 'cursor' property is in effect
2575         * doc/lispref/text.texi (Special Properties): Minor copyedits.
2576         (Bug#24179)
2578 2016-08-11  Dmitry Gutov  <dgutov@yandex.ru>
2580         Convert the remaining strings to unibyte before concatenating
2582         * lisp/url/url-http.el (url-http--encode-string): New function.
2583         (url-http-create-request): Use it to convert ASCII to unibyte.
2584         (Bug#24117)
2586 2016-08-11  Eli Zaretskii  <eliz@gnu.org>
2588         Fix bug with handling the bidi cache
2590         * src/xdisp.c (redisplay_window): Save and restore the state of
2591         the bidi cache before reusing the iterator after calls to
2592         try_window and try_window_reusing_current_matrix.
2594 2016-08-10  Eli Zaretskii  <eliz@gnu.org>
2596         * doc/lispref/text.texi (Change Hooks): Minor copyedits.
2598 2016-08-09  Eli Zaretskii  <eliz@gnu.org>
2600         Clarify documentation of before/after-change-functions
2602         * doc/lispref/text.texi (Change Hooks): Clarify that the hooks are
2603         not called in balanced pairs.
2605 2016-08-06  Noam Postavsky  <npostavs@gmail.com>
2607         Document use of vectors in keymaps
2609         * doc/lispref/keymaps.texi (Format of Keymaps): Mention vector
2610         format (Bug #14797).
2612 2016-08-03  Alan Third  <alan@idiocy.org>
2614         Post AppDefined events from the main thread ONLY (bug#23934)
2616         * src/nsterm.h: Make nextappdefined var not just GNUStep.
2617         * src/nsterm.m (ns_send_appdefined, sendFromMainThread): Remove GNUStep
2619 2016-08-03  John Wiegley  <johnw@newartisans.com>
2621         Update to the AUTHORS file for Bob Weiner
2623                 * etc/AUTHORS: Update the packages attributed to Bob Weiner
2625 2016-08-02  John Wiegley  <johnw@newartisans.com>
2627         Revert "Fix local printer set to left aligned string formatter."
2629         This reverts commit 8a38e948b039516e70176ebe20c5349e2ade6ac5.
2631 2016-08-02  John Wiegley  <johnw@newartisans.com>
2633         Revert "Fix ses-delete-blanks to delete only blanks + documentation."
2635         This reverts commit 3c97b0f7589e06aeb1ab0147f0ee32974c32926d.
2637 2016-08-02  John Wiegley  <johnw@newartisans.com>
2639         Revert "Fix English."
2641         This reverts commit b275cc76f0c5ab49e81445fcc3420c8772aefd42.
2643 2016-08-01  Eli Zaretskii  <eliz@gnu.org>
2645         Improve doc strings of 'gud-gdb' and 'gdb'
2647         * lisp/progmodes/gdb-mi.el (gdb):
2648         * lisp/progmodes/gud.el (gud-gdb): Doc fix.  (Bug#24125)
2650 2016-08-01  Eli Zaretskii  <eliz@gnu.org>
2652         Fix doc string of 'minibuffer-message-timeout'
2654         * src/keyboard.c (syms_of_keyboard) <minibuffer-message-timeout>:
2655         Doc fix.  (Bug#24123)
2657 2016-07-29  Vincent Belaïche  <vincentb1@users.sourceforge.net>
2659         Fix English.
2661         * doc/misc/ses.texi (Nonrelocatable references): Fix grammatically
2662           incorrect English.
2664 2016-07-29  Vincent Belaïche  <vincentb1@users.sourceforge.net>
2666         Fix ses-delete-blanks to delete only blanks + documentation.
2668         * doc/misc/ses.texi (Quick Tutorial): Mention the '!'
2669         'ses-range' modifier as an alternative to 'ses+'.
2670         (Advanced Features): Add a refernce to node 'Nonrelocatable
2671         references' concerning function 'ses-rename-cell'.
2672         (Standard formula functions): Mention the '!' 'ses-range'
2673         modifier as an alternative to 'ses-delete-blanks'.
2674         (More on cell printing): Fix fallback printer
2675         definition.  Minor editorial formatting changes.
2676         (Nonrelocatable references): Document the use of
2677         'ses-rename-cell' as a better way to make cell reference
2678         non-relocatable.
2679         (The data area): Document the presence of local printer
2680         definitions in the data area.
2682         * lisp/ses.el (ses-delete-blanks): Do not remove
2683         *error*.  Any error in an argument should propagate into the
2684         using formula rather than being silently hidden !
2686 2016-07-29  Noam Postavsky  <npostavs@gmail.com>
2688         profiler: document prefix arg for tree expansion
2690         * doc/lispref/debugging.texi (Profiling):
2691         * lisp/profiler.el (profiler-report-toggle-entry): Document use of
2692         prefix argument to expand whole call trees.
2694 2016-07-29  Noam Postavsky  <npostavs@gmail.com>
2696         Clarify usage of eshell-visual-options
2698         * lisp/eshell/em-term.el (eshell-visual-options): Add second option to
2699         example usage (Bug #19627).
2701 2016-07-29  Noam Postavsky  <npostavs@gmail.com>
2703         Fix comment in files-in-below-directory
2705         * doc/lispintro/emacs-lisp-intro.texi (Files List): Comment should not
2706         say append, since the code is adding to front of list (Bug #21589).
2708 2016-07-28  Vincent Belaïche  <vincentb1@users.sourceforge.net>
2710         Fix local printer set to left aligned string formatter.
2712         * lisp/ses.el (ses-local-printer-compile): Add missing case
2713         for left-aligned string formatter.
2715 2016-07-24  Nicolas Petton  <nicolas@petton.fr>
2717         Bump Emacs version to 25.1 for the first RC
2719         * README:
2720         * configure.ac:
2721         * lisp/ldefs-boot.el:
2722         * msdos/sed2v2.inp: Bump Emacs version to 25.1.
2724 2016-07-24  Nicolas Petton  <nicolas@petton.fr>
2726         * etc/AUTHORS: Update the AUTHORS file
2728         ;; * ChangeLog.2: ChangeLog update.
2730 2016-07-24  Nicolas Petton  <nicolas@petton.fr>
2732         * admin/authors.el (authors-valid-file-names): Addition.
2734 2016-07-23  Eli Zaretskii  <eliz@gnu.org>
2736         Warn about Cairo-related problems
2738         * etc/NEWS: Warn about known problems in the Cairo build.
2739         (Bug#23925)
2741 2016-07-23  Paul Pogonyshev  <pogonyshev@gmail.com>
2743         Don't let completion break `declare' handling
2745         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point): Fix to not alter
2746         `defun-declarations-alist' by side effect (Bug #23648).
2748 2016-07-23  Noam Postavsky  <npostavs@gmail.com>
2750         Adjust match data before calling after-change-funs
2752         It's important to adjust the match data in between calling
2753         before-change-functions and after-change-functions, so that buffer
2754         change hooks will always see match-data consistent with buffer content.
2755         (Bug #23917)
2757         * src/insdel.c (replace_range): Add new parameter ADJUST_MATCH_DATA, if
2758         true call update_search_regs.  Update all callers (except
2759         Freplace_match) to pass 0 for the new parameter.
2760         * src/search.c (update_search_regs): New function, extracted from
2761         Freplace_match.
2762         (Freplace_match): Remove match data adjustment code, pass 1 for
2763         ADJUST_MATCH_DATA to replace_range instead.
2765 2016-07-21  Mark Oteiza  <mvoteiza@udel.edu>
2767         Do not show string-rectangle preview if minibuffer is empty
2769         * lisp/rect.el (rectangle--string-preview): Remove condition that sets
2770         preview string to the default replacement string.
2772 2016-07-21  Achim Gratz  <Stromeko@nexgo.de>
2774         * etc/PROBLEMS: Add entry about selection problems under Plasma 5.
2776         Bug#24013
2778 2016-07-21  Paul Eggert  <eggert@cs.ucla.edu>
2780         Port to glibc 2.24 (pre-release) + ppc64
2782         Backport from master (Bug#24033).
2783         Inspired by a suggestion by Florian Weimer in:
2784         https://sourceware.org/ml/libc-alpha/2016-07/msg00425.html
2785         * src/emacs.c (main) [__PPC64__]:
2786         Special case for __PPC64__, which needs ASLR disabled in
2787         dumped Emacs too.
2789 2016-07-21  Katsumi Yamaoka  <yamaoka@jpl.org>
2791         * lisp/net/shr.el (shr-fill-line): Withdraw the last commit (4157159).
2793         * lisp/net/shr.el (shr-fill-line):
2794         Preserve text properties in folded lines (bug#24034).
2796 2016-07-17  Robert Cochran  <robert-git@cochranmail.com>  (tiny change)
2798         Expand FIXME near definition of fboundp
2800         This expansion of the FIXME is so that future developers are aware of
2801         the potential problems of aliasing fboundp to symbol-function without
2802         taking backwards compatibility into account.
2804         * src/data.c (fboundp): Note potential backwards compatibility issues in
2805         FIXME.
2807 2016-07-17  Noam Postavsky  <npostavs@gmail.com>
2809         kill-rectangle should mention killed-rectangle
2811         * lisp/rect.el (kill-rectangle): Mention `killed-rectangle' in docstring
2812         and warning message, rather than kill ring (Bug#19773).
2814 2016-07-16  Eli Zaretskii  <eliz@gnu.org>
2816         Avoid assertion violations in nhexl-mode
2818         * src/bidi.c (bidi_resolve_neutral): Convert an assertion to real
2819         code executed in all builds.  (Bug#24001)
2821 2016-07-15  Fredrik Bergroth  <fbergroth@gmail.com>  (tiny change)
2823         Use memmove instead of memcpy on overlapping regions
2825         * src/editfns.c (Ftranspose_regions): Regions may overlap, so
2826         use memmove instead of memcpy (bug#19213).
2829         This is a backport from trunk.
2830         (cherry picked from commit 354f9f0fc6cc05ed98883447f9b2f37943d79160)
2832 2016-07-15  Noam Postavsky  <npostavs@gmail.com>
2834         Document buffer-swap-text+save-excursion interaction
2836         * doc/lispref/buffers.texi (Swapping Text):
2837         * src/buffer.c (Fbuffer_swap_text): Add warning about interaction of
2838         `buffer-swap-text' and `save-excursion' (Bug #4655).
2840 2016-07-14  Stefan Monnier  <monnier@iro.umontreal.ca>
2842         Fix eieio vs cl-generic incompatibilities found in Rudel (bug#23947)
2844         * lisp/emacs-lisp/cl-generic.el (cl-generic-apply): New function.
2845         * lisp/emacs-lisp/eieio-compat.el (eieio--defmethod): Fix incorrect
2846         mapping between cl-no-applicable-method and EIEIO's no-applicable-method.
2847         * lisp/emacs-lisp/eieio-core.el (eieio--class-precedence-c3):
2848         `class' is not a symbol but a class object.
2850 2016-07-14  Stefan Monnier  <monnier@iro.umontreal.ca>
2852         Include cl-generic in package--builtin-versions (bug#22817)
2854         * lisp/emacs-lisp/cl-generic.el (package--builtin-versions):
2855         Add ourselves manually.  Don't merge since there's a better fix on master.
2857 2016-07-14  Michael Albinus  <michael.albinus@gmx.de>
2859         Improve timing in `tramp-test29-environment-variables'
2861         * test/automated/tramp-tests.el
2862         (tramp-test--shell-command-to-string-asynchronously):
2863         Add additional `accept-process-output' call.
2864         (tramp-test29-environment-variables): Remove additional sleep calls.
2866 2016-07-14  Michael Albinus  <michael.albinus@gmx.de>
2868         Add test for handling environment variables in Tramp
2870         * test/automated/tramp-tests.el
2871         (tramp-test--shell-command-to-string-asynchronously): New defun.
2872         (tramp-test29-environment-variables): New test.
2873         (tramp-test30-vc-registered)
2874         (tramp-test31-make-auto-save-file-name)
2875         (tramp-test32-special-characters)
2876         (tramp-test32-special-characters-with-stat)
2877         (tramp-test32-special-characters-with-perl)
2878         (tramp-test32-special-characters-with-ls, tramp-test33-utf8)
2879         (tramp-test33-utf8-with-stat, tramp-test33-utf8-with-perl)
2880         (tramp-test33-utf8-with-ls)
2881         (tramp-test34-asynchronous-requests)
2882         (tramp-test35-recursive-load, tramp-test36-unload): Rename.
2884 2016-07-13  Glenn Morris  <rgm@gnu.org>
2886         * lisp/emacs-lisp/package.el (describe-package-1)
2887         (package-status-external): Fix face references.  (Bug#23927)
2889 2016-07-12  Stephen Berman  <stephen.berman@gmx.net>
2891         Improve documentation of search functions
2893         Make the documentation of the search functions more accurate,
2894         complete, and uniform; in particular, extend the description of
2895         the effect when the 'count' parameter is a negative number to all
2896         of these functions.
2898         * src/search.c (Fsearch_backward, Fsearch_forward)
2899         (Fre_search_backward, Fre_search_forward)
2900         (Fposix_search_backward, Fposix_search_forward):
2901         * lisp/isearch.el (word-search-backward, word-search-forward)
2902         (word-search-backward-lax, word-search-forward-lax): Improve doc
2903         strings as described above.
2905         * doc/lispref/searching.texi (String Search, Regexp Search)
2906         (POSIX Regexps): Use 'count' instead of 'repeat' as the name of
2907         the fourth parameter of the *-search-{forward,backward} functions
2908         and improve documentation as described above.
2910 2016-07-12  Michael Albinus  <michael.albinus@gmx.de>
2912         Delete environment variables in Tramp when needed
2914         * lisp/net/tramp-sh.el (tramp-get-env-with-u-option): New defun.
2915         (tramp-sh-handle-start-file-process)
2916         (tramp-sh-handle-process-file, ): Use it.  (Bug#23952)
2918 2016-07-12  Eli Zaretskii  <eliz@gnu.org>
2920         Add "New in Emacs 25" section to the FAQ
2922         * doc/misc/efaq.texi (Latest version of Emacs): Update for later
2923         versions.
2924         (New in Emacs 25): New node.
2925         (Status of Emacs): Add it to the menu.
2927 2016-07-10  Eli Zaretskii  <eliz@gnu.org>
2929         Fix 'vertical-motion' in non-interactive sessions
2931         * src/indent.c (Fvertical_motion): Don't return uninitialized
2932         value in non-interactive session.  This fixes random errors in
2933         batch mode, see
2934         http://lists.gnu.org/archive/html/emacs-devel/2016-06/msg00609.html
2935         and
2936         http://lists.gnu.org/archive/html/emacs-devel/2016-07/msg00500.html
2937         for the details.
2939 2016-07-10  Andreas Schwab  <schwab@linux-m68k.org>
2941         Fix memory leak in imagemagick-types
2943         * src/image.c (Fimagemagick_types): Use AcquireExceptionInfo to
2944         avoid memory leak.
2946 2016-07-10  Eli Zaretskii  <eliz@gnu.org>
2948         Update ELisp manual to match 'string-collate-equalp' doc string
2950         * doc/lispref/strings.texi (Text Comparison): Remove reference to
2951         sorting from the description of 'string-collate-equalp'.  (Bug#23902)
2953 2016-07-09  Noam Postavsky  <npostavs@gmail.com>
2955         Clarify docstring of find-feature-regexp
2957         * lisp/emacs-lisp/find-func.el (find-feature-regexp): Explain that `%s'
2958         is optional (Bug #23520).
2960 2016-07-09  Noam Postavsky  <npostavs@gmail.com>
2962         Add details to cl-lib defining macros' docstrings
2964         * lisp/emacs-lisp/cl-macs.el (cl-defun, cl-defmacro): Add terse summary
2965         of supported arglist forms (Bug #22462).
2967 2016-07-09  Eli Zaretskii  <eliz@gnu.org>
2969         Clarify doc string of 'save-buffer'
2971         * lisp/files.el (save-buffer): Clarify that backups might not be
2972         made even if this command is invoked with 2 or 3 "C-u"s.
2973         (Bug#3702)
2975 2016-07-08  Eli Zaretskii  <eliz@gnu.org>
2977         Un-confuse doc string of 'string-collate-equalp'
2979         * src/fns.c (Fstring_collate_equalp): Remove confusing text from
2980         doc string.  (Bug#23902)
2982 2016-07-07  Eli Zaretskii  <eliz@gnu.org>
2984         Clarify documentation of 'mouse-on-link-p'
2986         * lisp/mouse.el (mouse-on-link-p): Clarify the form of the POS
2987         argument.  (Bug#23899)
2989 2016-07-06  Phillip Lord  <phillip.lord@russet.org.uk>
2991         Fix missing undo-boundary on revert-buffer.
2993         * lisp/simple.el (undo-auto--undoable-change-no-timer): New function.
2994         * src/fileio.c (insert-buffer-contents): Call
2995           undo-auto--undoably-changed-buffers before changes.
2997         Addresses Bug#23785.
2999         Do not merge to master as c98bc98 also addresses the same bug.
3001 2016-07-06  Martin Rudalics  <rudalics@gmx.at>
3003         Amend last addition to etc/PROBLEMS
3005         * etc/PROBLEMS: Mention GTK+ problem with unexpected frame widenings
3007 2016-07-06  Paul Eggert  <eggert@cs.ucla.edu>
3009         Fix open-network-stream responsiveness
3011         Problem reported by Christer Ekholm (Bug#23864).
3012         Backport from master.
3013         * src/process.c (wait_reading_process_output):
3014         Fix typo introduced in 2015-07-06T02:19:13Z!eggert@cs.ucla.edu
3015         when wait == INFINITY and got_output_end_time is invalid.
3016         In this case the code should break, not continue.
3018 2016-07-05  Phillip Lord  <phillip.lord@russet.org.uk>
3020         Fix missing point information in undo
3022         * src/undo.c (record_insert): Use record_point instead of
3023           prepare_record, and do so unconditionally.
3024           (prepare_record): Do not record first change.
3025           (record_point): Now conditional on state before the last command.
3026           (record_delete): Call record_point unconditionally.
3027           (record_property_change): Use prepare_record.
3028           (record_marker_adjustments): Use prepare_record.
3030         Addresses Bug# 21722
3032 2016-07-04  Eli Zaretskii  <eliz@gnu.org>
3034         Avoid crashes when buffer modification hooks clobber match data
3036         * src/search.c (Freplace_match): Error out if buffer modification
3037         hooks triggered by buffer changes in replace_range, upcase-region,
3038         and upcase-initials-region clobber the match data needed to be
3039         adjusted for the replacement.  (Bug#23869)
3041 2016-07-03  Noam Postavsky  <npostavs@gmail.com>
3043         Note combine-and-quote-strings doesn't shell quote
3045         * doc/lispref/processes.texi (Shell Arguments):
3046         * lisp/subr.el (combine-and-quote-strings): Add a note that
3047         combine-and-quote-strings doesn't protect arguments against shell
3048         evaluation (Bug #20333).
3050 2016-07-03  Noam Postavsky  <npostavs@gmail.com>
3052         Explain when package-initialize isn't called
3054         * doc/lispref/os.texi (Startup Summary): Explain that package-initialize
3055         is not called when options -q, -Q, or --batch were passed (Bug #19151).
3057 2016-07-03  Noam Postavsky  <npostavs@gmail.com>
3059         Fix escaping in sh-indent-after-continuation docstr
3061         * lisp/progmodes/sh-script.el (sh-indent-after-continuation): Properly
3062         escape backslashes in docstring (Bug#23046).
3064 2016-07-02  Eli Zaretskii  <eliz@gnu.org>
3066         Clarify the documentation of back-references in replacements
3068         * doc/emacs/search.texi (Regexp Replace): Clarify that \D starts
3069         with \1, not \0.
3071         * lisp/replace.el (query-replace-regexp)
3072         (query-replace-regexp-eval, replace-regexp): Doc fix (Bug#23884)
3074 2016-07-01  Noam Postavsky  <npostavs@gmail.com>
3076         Clarify lexical binding with symbol args behavior
3078         * doc/lispref/variables.texi (Lexical Binding): Clarify that symbol
3079         arguments always refer to dynamic values (Bug #23781).  Remove mention
3080         of obsolete restriction regarding lexical binding for defun and
3081         defmacro, this no longer applies since 61b108cc 2012-05-29 "*
3082         lisp/emacs-lisp/byte-run.el (defmacro, defun): Move from C...".
3084 2016-06-30  Michael Albinus  <michael.albinus@gmx.de>
3086         * lisp/net/tramp-sh.el (tramp-remote-path): Doc fix.
3088 2016-06-29  Eli Zaretskii  <eliz@gnu.org>
3090         * lisp/net/tramp-sh.el (tramp-remote-path): Doc fix.  (Bug#23865)
3092 2016-06-29  Eli Zaretskii  <eliz@gnu.org>
3094         Avoid assertion violations when rendering some fonts
3096         * src/dispextern.h (FONT_TOO_HIGH): Don't consider a font "too
3097         high" if its pixel_size value is zero.  This avoids assertion
3098         violations at the end of x_produce_glyphs.
3100 2016-06-28  Noam Postavsky  <npostavs@gmail.com>
3102         Document more details of package activation
3104         * doc/emacs/package.texi (Package Installation): Explain that package
3105         activation adds to load-path (Bug #21704).
3107 2016-06-28  Noam Postavsky  <npostavs@gmail.com>
3109         Fixup warning message regarding HOME a bit more
3111         * src/w32.c (init_environment): The manual section title is "Windows
3112         HOME" (Bug #11612).  Move newline so warning fits in 80 character lines.
3114 2016-06-27  Eli Zaretskii  <eliz@gnu.org>
3116         * lisp/leim/quail/indian.el ("bengali-probhat"): Change indicator to BngPB.
3118 2016-06-27  Michael Albinus  <michael.albinus@gmx.de>
3120         Fix input method "probhat" for Bengali
3122         Author: উৎসব রায় <uroybd@gmail.com>
3124         * lisp/leim/quail/indian.el ("bengali-probhat"): Fix entry.
3126 2016-06-27  Noam Postavsky  <npostavs@gmail.com>
3128         Add to elisp-completion-at-point's docstring
3130         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point): Document
3131         position dependent behavior (Bug #19854).
3133 2016-06-27  Noam Postavsky  <npostavs@gmail.com>
3134             Eli Zaretskii  <eliz@gnu.org>
3136         Give more helpful warning about setting HOME
3138         * src/w32.c (init_environment): Improve warning message that pops when
3139         Emacs sets HOME according to existence of C:\.emacs (Bug #11612).
3141 2016-06-26  Eli Zaretskii  <eliz@gnu.org>
3143         Fix slow redisplay in term-mode
3145         * lisp/term.el (term-mode): Move the setting of
3146         bidi-paragraph-direction from 'ansi-term' to here, since term-mode
3147         is also affected.  Do not merge to master, since there the problem
3148         is solved in bidi.c by changing the regexps that delimit a
3149         paragraph.  (Bug#23801)
3151 2016-06-26  উৎসব রায়  <uroybd@gmail.com>
3153         New input method "probhat" for Bengali
3155         * lisp/leim/quail/indian.el ("probhat"): New input method.
3156         (Bug#23822)
3158         * etc/NEWS: Mention the new input method.
3160 2016-06-25  Noam Postavsky  <npostavs@gmail.com>
3161             Drew Adams  <drew.adams@oracle.com>
3163         Update docs for `customize-mode'
3165         * lisp/cus-edit.el (customize-mode): This function works with both major
3166         and minor modes, make docstring and prompt reflect that (Bug #23649).
3168         * doc/lispref/modes.texi (Derived Modes): Remove note about
3169         customize-mode being experimental; it has been around since Emacs
3170         22 (Bug #11299).
3172 2016-06-23  Eli Zaretskii  <eliz@gnu.org>
3174         Fix documentation of 'assoc-string' and 'compare-strings'
3176         * src/minibuf.c (Fassoc_string): Clarify how CASE-FOLD affects the
3177         string comparison.  (Bug#23833)
3178         * src/fns.c (Fcompare_strings): Fix the description of how
3179         IGNORE-CASE affects the comparison.
3181         * doc/lispref/strings.texi (Text Comparison): Clarify how
3182         CASE-FOLD affects the string comparison in 'assoc-string'.  Fix
3183         the description of how IGNORE-CASE affects the comparison in
3184         'compare-strings'.
3186 2016-06-22  Dmitry Gutov  <dgutov@yandex.ru>
3188         Error on multibyte characters in HTTP request
3190         * lisp/url/url-http.el (url-http-create-request): Check the
3191         constructed request in the end to verify that it does not contain
3192         multibyte characters (bug#23750).
3194 2016-06-22  Katsumi Yamaoka  <yamaoka@jpl.org>
3196         * lisp/gnus/mm-decode.el (mm-convert-shr-links):
3197         Mask keys that launch `widget-button-click' (bug#22157).
3199 2016-06-22  Dmitry Gutov  <dgutov@yandex.ru>
3201         Unset GIT_DIR when calling Git commands
3203         * lisp/vc/vc-git.el (vc-git--call, vc-git-command):
3204         Unset GIT_DIR (bug#23769).
3206 2016-06-21  Phillip Lord  <phillip.lord@russet.org.uk>
3208         Ensure undo-boundary after insert-file-contents.
3210         * src/fileio.c: Record undoable change during insert-file-contents.
3212         Addresses Bug #23785.
3214 2016-06-21  Eli Zaretskii  <eliz@gnu.org>
3216         Clarify documentation of 'line-spacing' and 'line-height'
3218         * doc/lispref/display.texi (Line Height): Clarify how the line
3219         height is determined via variables and text properties.  (Bug#23806)
3221 2016-06-20  Eli Zaretskii  <eliz@gnu.org>
3223         Fix removal of variables from process-environment
3225         * src/callproc.c (add_env): Fix comparison of a variable with a
3226         value against the same variable without a value.  (Bug#23779)
3228 2016-06-20  Glenn Morris  <rgm@gnu.org>
3230         * admin/authors.el (authors-ignored-files, authors-valid-file-names)
3231         (authors-renamed-files-alist): Additions.
3233         * admin/authors.el (authors-aliases, authors-fixed-case): Additions.
3235 2016-06-18  Noam Postavsky  <npostavs@gmail.com>
3237         Fix documentation of completion functions
3239         So that the described behavior matches the code (and docstrings).
3241         * doc/lispref/minibuf.texi (Basic Completion): Symbol keys of hash table
3242         collections are used like string keys, not ignored (Bug #10416).
3244 2016-06-18  Eli Zaretskii  <eliz@gnu.org>
3246         Clarify documentation of 'font-lock-maximum-decoration'
3248         * doc/emacs/display.texi (Font Lock): Explain how to make the
3249         customization of 'font-lock-maximum-decoration' effective for an
3250         existing buffer.  (Bug#23783)
3252 2016-06-17  Glenn Morris  <rgm@gnu.org>
3254         * doc/misc/cl.texi (Usage): Add some more details.
3256 2016-06-17  Noam Postavsky  <npostavs@gmail.com>
3258         Fbackward_prefix_chars: stay within buffer bounds
3260         The commit 1fd3172d "(Fbackward_prefix_chars): Set point properly while
3261         scanning" (1998-03-18), moved the check against of the position against the
3262         buffer beginning out the loop condition so that we might end up checking
3263         the syntax of characters before the beginning of the buffer.  This can
3264         cause segfaults or trigger a "Point before start of properties" error in
3265         `update_interval' (called indirectly from `char_quoted').
3267         * src/syntax.c (Fbackward_prefix_chars): Stop the loop when beginning of
3268         buffer is reached (Bug #3552, Bug #17132, Bug #19379).
3270 2016-06-16  Paul Eggert  <eggert@cs.ucla.edu>
3272         Fix ifdef-vs-if typo with RANDR13_LIBRARY
3274         * src/xfns.c (x_get_monitor_attributes_xrandr): Use #if, not #ifdef.
3275         This ports to systems that predate xrandr 1.3. See Christian Lynbech in:
3276         http://lists.gnu.org/archive/html/emacs-devel/2016-06/msg00198.html
3278         (cherry picked from commit dce99f222f1ca33265cd56ddb157817be1dc078e)
3280 2016-06-16  Stephen Berman  <stephen.berman@gmx.net>
3282         Fix last todo-mode change
3284         * lisp/calendar/todo-mode.el (todo-read-category): Return the
3285         keymap in order to use its defined key bindings.
3287 2016-06-15  Stephen Berman  <stephen.berman@gmx.net>
3289         Improve last todo-mode fix
3291         * lisp/calendar/todo-mode.el (todo-read-category): Use
3292         set-keymap-parent instead of copy-keymap, and default (as
3293         previously) to the global binding (for rationale, see
3294         http://lists.gnu.org/archive/html/emacs-devel/2016-06/msg00217.html).
3296 2016-06-14  Stephen Berman  <stephen.berman@gmx.net>
3298         Fix todo-mode use of minibuffer completion keymap (bug#23695).
3300         * lisp/calendar/todo-mode.el (todo-read-category): Don't
3301         override minibuffer-local-completion-map globally (bug#23695).
3302         Bind <SPC> key to self-insert-command.
3304 2016-06-14  Glenn Morris  <rgm@gnu.org>
3306         * src/alloc.c (ALIGN): Avoid error on DragonFly BSD.  (Bug#23764)
3308         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
3309         Avoid mangling autoloads with unspecified arguments.  (Bug#21299)
3311 2016-06-13  Glenn Morris  <rgm@gnu.org>
3313         * lisp/help-fns.el (describe-function-1): Avoid reporting advised
3314         autoloads as aliases.  (Bug#21299)
3316 2016-06-13  Stephen Berman  <stephen.berman@gmx.net>
3318         Minor grammar fix (bug#23746)
3320         * doc/lispref/processes.texi (Synchronous Processes):
3321         Another minor grammar fix (bug#23746).
3323 2016-06-13  Stephen Berman  <stephen.berman@gmx.net>
3325         Doc fixes for grammar and typos (bug#23746)
3327         * doc/emacs/files.texi (Customize Save):
3328         * doc/emacs/frames.texi (Window Dividers):
3329         * doc/emacs/misc.texi (Printing):
3330         * doc/lispref/compile.texi (Compiler Errors):
3331         * doc/lispref/keymaps.texi (Changing Key Bindings):
3332         * doc/lispref/loading.texi (Named Features):
3333         * doc/lispref/markers.texi (Marker Insertion Types):
3334         * doc/lispref/modes.texi (Mode Hooks):
3335         * doc/lispref/text.texi (Undo):
3336         * src/floatfns.c (Fldexp):
3337         * src/xfaces.c (syms_of_xfaces):
3338         Minor doc fixes for grammar and typos (bug#23746).
3340 2016-06-13  Eli Zaretskii  <eliz@gnu.org>
3342         * doc/lispref/processes.texi (Process Buffers): Minor rewording.  (Bug#23446)
3344 2016-06-13  Eli Zaretskii  <eliz@gnu.org>
3346         Add cross-reference to ELisp manual
3348         * doc/lispref/commands.texi (Classifying Events): Add
3349         cross-reference to "Motion Events".  (Bug#23756)
3351 2016-06-11  Stefan Monnier  <monnier@iro.umontreal.ca>
3353         * lisp/emacs-lisp/macroexp.el (macroexp--expand-all): Fix (bug#19704)
3355         Don't rewrite (funcall 'f ...) to (f ...).
3357 2016-06-11  Phillip Lord  <phillip.lord@russet.org.uk>
3359         Restore initial undo boundary with viper
3361         * lisp/emulation/viper-cmd.el (viper-adjust-undo): Add back last undo
3362           boundary if it has been removed.
3364         Addresses Bug#22295.
3366 2016-06-11  Phillip Lord  <phillip.lord@russet.org.uk>
3368         Revert "Fix viper undo breakage from undo-boundary changes"
3370         This reverts commit c0139e32f1f3bb287b04e02a69a7848d6a040003.
3372 2016-06-11  Ken Brown  <kbrown@cornell.edu>
3374         Fix dbus crash on 32-bit Cygwin
3376         * src/dbusbind.c (Fdbus__init_bus): Use make_save_pointer to store
3377         connection address.  (Bug#23741)
3378         (xd_lisp_dbus_to_dbus): Use XSAVE_POINTER to retrieve connection
3379         address.
3381 2016-06-10  Nicolas Petton  <nicolas@petton.fr>
3383         Bump version to 25.0.95
3385         * README:
3386         * configure.ac:
3387         * lisp/ldefs-boot.el:
3388         * msdos/sed2v2.inp: Bump Emacs version to 25.0.95.
3390 2016-06-10  Nicolas Petton  <nicolas@petton.fr>
3392         * etc/AUTHORS: Update the AUTHORS file
3394 2016-06-10  Nicolas Petton  <nicolas@petton.fr>
3396         add entries to authors.el
3398         * admin/authors.el (authors-renamed-files-alist): Add char-fold files.
3400 2016-06-10  Jules Tamagnan  <jtamagnan@gmail.com>
3402         Fix eldoc-related freezes in python mode
3404         * lisp/progmodes/python.el (python-eldoc-get-doc): New defvar.
3405         (python-eldoc-function-timeout)
3406         (python-eldoc-function-timeout-permanent): New defcustoms.
3407         (python-eldoc-function): If python-eldoc--get-doc-at-point times
3408         out, effectively turn off ElDoc in current buffer.  (Bug#23609)
3410 2016-06-09  Martin Rudalics  <rudalics@gmx.at>
3412         Handle mouse leaving initial window in `mouse-set-region' (Bug#23707)
3414         * lisp/mouse.el (mouse-set-region): If the mouse ends up in
3415         another window or on the menu bar, use `window-point' of
3416         selected window instead of `posn-point' of the event end
3417         (Bug#23707).
3419 2016-06-08  Marco Wahl  <marcowahlsoft@gmail.com>
3421         org.el: Fix bindings of < and > for calendar scrolling
3423         [This patch taken from upstream Org repo with 8b63dc9 dated
3424         2014-10-20 (Bug#23725).]
3425         * lisp/org/org.el (org-read-date-minibuffer-local-map):
3426         Switch to the current calendar API for scrolling the calendar.
3428 2016-06-08  Phillip Lord  <phillip.lord@russet.org.uk>
3430         Fix undo boundary in recursive edit (Bug#23632)
3432          * src/keyboard.c (recursive_edit_1): specbind
3433            undo-auto--undoably-changed-buffers.
3434          * lisp/simple.el (undo-auto--undoably-changed-buffers):
3435            fix docstring.
3437 2016-06-07  Glenn Morris  <rgm@gnu.org>
3439         Doc fixes re alist-get.  (Bug#23548)
3441         * lisp/subr.el (alist-get): Doc fix.
3442         * doc/lispref/lists.texi (Association Lists): Improve alist-get.
3444 2016-06-07  Glenn Morris  <rgm@gnu.org>
3446         * lisp/progmodes/python.el (inferior-python-mode):
3447         Avoid tabs.  (Bug#23616)
3449         * src/syntax.c (syms_of_syntax) <comment-end-can-be-escaped>: Doc fix.
3451 2016-06-07  Tino Calancha  <f92capac@gmail.com>
3453         * lisp/help-fns.el (describe-function-1):
3454         Fix handling of file name for aliases.  (Bug#21950)
3456         * lisp/emacs-lisp/cl-macs.el (cl-loop): Doc fix re "by".
3458         * doc/misc/cl.texi (Mapping over Sequences): Fix cl-notevery.
3460 2016-06-07  Paul Eggert  <eggert@cs.ucla.edu>
3462         Fix crash in syntax.c after GC
3464         Problem reported by Vincent Belaïche (Bug#23704).
3465         * src/syntax.c (skip_chars): Recompute pointers into the
3466         buffer after every call to update_syntax_table_forward,
3467         as it can GC.
3469 2016-06-06  Dmitry Gutov  <dgutov@yandex.ru>
3471         Improve squiggly heredoc support in non-SMIE Ruby mode
3473         * lisp/progmodes/ruby-mode.el (ruby-parse-partial): Support
3474         squiggly heredocs here, too (port from upstream).
3476 2016-06-06  Stephen Berman  <stephen.berman@gmx.net>
3478         Fix doc string quoting
3480         * lisp/files.el (shell-quote-wildcard-pattern):
3481         * lisp/progmodes/vhdl-mode.el (vhdl-mode):
3482         * lisp/subr.el (replace-regexp-in-string):
3483         * lisp/view.el (view-mode):
3484         * src/nsfns.m (syms_of_nsfns):
3485         * src/syntax.c (Fbackward_prefix_chars):
3486         Fix quoting problems in doc strings (Bug#23696).
3488 2016-06-05  Martin Rudalics  <rudalics@gmx.at>
3490         Fix mouse dragging of vertical dividers with scroll bars on left (Bug#23690)
3492         * lisp/mouse.el (mouse-drag-line): With scroll bars on the left
3493         adjust trailing edge of window on the left when dragging the
3494         vertical divider of the mode line.  (Bug#23690)
3496 2016-06-04  Eli Zaretskii  <eliz@gnu.org>
3498         * etc/PROBLEMS: Mention the link-time problems on FreeBSD 11.
3500         (Bug#23641)
3502 2016-05-31  Glenn Morris  <rgm@gnu.org>
3504         * test/automated/viper-tests.el (viper-test-undo-kmacro):
3505         Delete temp-file at end.
3507         * lisp/mail/footnote.el (footnote-mode): Fix doc typo.
3509         * doc/misc/smtpmail.texi (Encryption): Fix 2012-12-22 typo.
3511         * lisp/emacs-lisp/lisp-mode.el (lisp--mode-syntax-table):
3512         Fix typo.  (Bug#23654)
3514 2016-05-30  Stefan Monnier  <monnier@iro.umontreal.ca>
3516         * lisp/recentf.el (recentf-dialog-mode-map): Remove follow-link (bug#22434)
3518 2016-05-30  Bill Wohler  <wohler@newt.com>
3520         Correct cl-flet usage (Bug#22317)
3522         * lisp/mh-e/mh-compat.el: Rename mh-cl-flet to mh-flet and convert alias to
3523         macro using patch from Katsumi Yamaoka <yamaoka@jpl.org>.
3524         * lisp/mh-e/mh-thread.el (mh-thread-set-tables):
3525         * lisp/mh-e/mh-show.el (mh-gnus-article-highlight-citation):
3526         * lisp/mh-e/mh-mime.el (mh-display-with-external-viewer):
3527         (mh-mime-display, mh-press-button, mh-push-button):
3528         (mh-display-emphasis): Call mh-flet instead of mh-cl-flet.
3530 2016-05-30  Bill Wohler  <wohler@newt.com>
3532         Release MH-E manual version 8.6
3534         * doc/misc/mh-e.texi (VERSION, EDITION, UPDATED, UPDATE-MONTH):
3535         Update for release 8.6.
3537 2016-05-30  Mike Kupfer  <m.kupfer@acm.org>
3539         Update MH-E's documentation about HTML renderers
3541         * doc/misc/mh-e.texi (HTML): Remove the footnote with the minimum Gnus
3542         version (we are no longer trying to support multiple Emacs
3543         releases). Sort the table of HTML renderers by name (the previous
3544         ordering was based on a 10-year-old survey). Add shr and gnus-w3m to
3545         the table. Remove the entry for w3 (no longer available).  Update
3546         existing entries so that they are more consistent about what features
3547         are discussed, and to reflect recent testing (Debian 8). Small tweaks
3548         to existing text.
3550 2016-05-30  Dmitry Gutov  <dgutov@yandex.ru>
3552         Fx the we->the typo
3554         * doc/emacs/trouble.texi (Sending Patches):
3555         Fix the typo (bug#23657).
3557 2016-05-30  Paul Eggert  <eggert@cs.ucla.edu>
3559         Restore frames into the current display by default
3561         * lisp/desktop.el (desktop-restore-in-current-display):
3562         Default to t, not nil (Bug#23604).
3563         * etc/NEWS: Mention the change.
3565 2016-05-29  Stefan Monnier  <monnier@iro.umontreal.ca>
3567         * lisp/recentf.el (recentf-open-files-item): Quick fix for (bug#22434).
3569         etc/TODO: Remove out-of-place issue
3571 2016-05-29  Eli Zaretskii  <eliz@gnu.org>
3573         Clarify doc string of 'file-name-sans-extension'
3575         * lisp/files.el (file-name-sans-extension, file-name-extension):
3576         Clarify in the doc strings what is the extension, and which
3577         leading period doesn't count.  (Bug#23643)
3579 2016-05-28  Eli Zaretskii  <eliz@gnu.org>
3581         Fix the MSDOS build
3583         * msdos/sed1v2.inp (PAXCTL_dumped, PAXCTL_notdumped): Define to
3584         empty, and remove the lines which use them in recipes, as that
3585         causes weird error message from Make and breaks the MSDOS build.
3587 2016-05-28  Andreas Schwab  <schwab@linux-m68k.org>
3589         * lisp/progmodes/elisp-mode.el (elisp-function-argstring): Call
3590         substitute-command-keys to undo help--docstring-quote. (Bug#23634)
3592 2016-05-27  Eli Zaretskii  <eliz@gnu.org>
3594         * src/dired.c (Ffile_name_all_completions): Doc fix.  (Bug#23631)
3596 2016-05-27  Eli Zaretskii  <eliz@gnu.org>
3598         Fix infloop in 'number-sequence'
3600         * lisp/subr.el (number-sequence): Avoid overflow leading to an
3601         infloop.  (Bug#23627)
3603         * test/automated/subr-tests.el (number-sequence-test): New test.
3605 2016-05-26  Glenn Morris  <rgm@gnu.org>
3607         * lisp/emacs-lisp/find-func.el (find-function-library):
3609         Update for symbol-function no longer erroring.  (Bug#23626)
3611 2016-05-26  Glenn Morris  <rgm@gnu.org>
3613         * lisp/w32-fns.el (set-message-beep, w32-get-locale-info)
3614         (w32-get-valid-locale-ids): Improve declarations.
3616 2016-05-26  Vincent Belaïche  <vincentb1@users.sourceforge.net>
3618         Correct old cell name unbinding when renaming cell.
3620         Bug is to unbind old cell names when renaming a cell with
3621         'makunbound'. when the old cell name is of A1 type, then
3622         'kill-local-variable' must be used instead, so that only the current
3623         spreadsheet is affected. When the old cell name is a renamed cell,
3624         then 'ses--unbind-cell-name' must be used in order to remove the old
3625         name from the name hashmap.
3627         * lisp/ses.el (ses-rename-cell): check consistency of cell symbol from
3628         text-property and from array object. Instead of 'makunbound', use
3629         either 'ses--unbind-cell-name' or 'kill-local-variable' depending on
3630         whether the cell old name is a named cell or an A1 type cell
3632 2016-05-25  Vincent Belaïche  <vincentb1@users.sourceforge.net>
3634         Document problem: slow screen refresh on missing font.
3636         See discussion of bug#22519 for more on this.
3638 2016-05-25  Glenn Morris  <rgm@gnu.org>
3640         * admin/admin.el (add-release-logs): Basic check of existing ChangeLog.
3642 2016-05-25  Glenn Morris  <rgm@gnu.org>
3644         * build-aux/gitlog-to-emacslog: Handle empty generated ChangeLog.
3646         This is relevant for M-x add-release-logs right after M-x authors.
3648 2016-05-25  Glenn Morris  <rgm@gnu.org>
3650         * admin/admin.el (add-release-logs): Generate ChangeLog if needed.
3652 2016-05-25  Paul Eggert  <eggert@cs.ucla.edu>
3654         * doc/misc/texinfo.tex: Revert previous change (Bug#23611).
3656 2016-05-25  Glenn Morris  <rgm@gnu.org>
3658         * admin/authors.el (authors): First update the ChangeLog.
3660         * admin/make-tarball.txt: Related updates.
3662 2016-05-24  Dmitry Gutov  <dgutov@yandex.ru>
3664         Rename vc-stay-local back to vc-cvs-stay-local
3666         * lisp/vc/vc-cvs.el (vc-cvs-stay-local): Rename back from
3667         vc-stay-local (bug#19548).  Improve the docstring.
3668         (vc-cvs-stay-local-p): Update accordingly.
3670 2016-05-24  Glenn Morris  <rgm@gnu.org>
3672         * doc/emacs/files.texi (Comparing Files):
3673         * doc/emacs/trouble.texi (Sending Patches): Fix external xrefs.
3675         * doc/misc/eww.texi (Advanced): Fix xref.
3677 2016-05-24  Eli Zaretskii  <eliz@gnu.org>
3679         Fix cross-references between manuals
3681         * doc/misc/viper.texi (Viper Specials):
3682         * doc/misc/url.texi (Tramp):
3683         * doc/misc/sem-user.texi (Smart Jump):
3684         * doc/lispintro/emacs-lisp-intro.texi (Finding More):
3685         * doc/misc/efaq.texi (Replacing text across multiple files): Fix
3686         cross-references between manuals.  (Bug#23612)
3687         * doc/lispintro/emacs-lisp-intro.texi (etags): Node deleted: no
3688         longer relevant to Emacs Lisp programming.
3690 2016-05-24  Glenn Morris  <rgm@gnu.org>
3692         * doc/misc/vhdl-mode.texi (Sample Init File): Rename node to avoid ".".
3694         * admin/admin.el (add-release-logs): Also update etc/HISTORY.
3696 2016-05-24  Eli Zaretskii  <eliz@gnu.org>
3698         Avoid aborting due to errors in arguments of 'set-face-attribute'
3700         * src/xfaces.c (Finternal_set_lisp_face_attribute): Check the
3701         FRAME argument before using it.  This avoids gratuitous aborts in
3702         Emacs built with --enable-checking when the luser was unlucky
3703         enough to get the argument list in wrong order.
3705 2016-05-23  Phillip Lord  <phillip.lord@russet.org.uk>
3707         Add automated test for viper-tests.el
3709 2016-05-23  Phillip Lord  <phillip.lord@russet.org.uk>
3711         Fix viper undo breakage from undo-boundary changes
3713         * lisp/simple.el (undo-auto-disable-boundaries): New variable
3714         * lisp/emulation/viper-init.el (viper-undo-in-complex-command,
3715           viper-undo-needs-adjustment): Rename
3716           variable to reflect new purpose,
3717           (viper-buffer-undo-list-mark): Remove
3718         * lisp/emulation/viper-cmd.el (viper-set-complex-command-for-undo):
3719           Add undo using `undo-boundary', disable default undo-boundary
3720           addition.
3721         * lisp/emulation/viper-cmd.el
3722           (viper-complete-complex-command-for-undo,viper-adjust-undo):
3723           Change function name, remove old undo list manipulation.
3724         * lisp/emulation/viper-cmd.el (viper-undo,viper-repeat,
3725           viper-change-state-to-vi,viper-change-state):
3726           Update for function name change.
3728         Addresses Bug #22295
3730 2016-05-22  Kaushal Modi  <kaushal.modi@gmail.com>
3732         Fix reference to obsolete fn ps-eval-switch
3734         lpr-eval-switch is functionally the same as ps-eval-switch,
3735         which was obsoleted in 2cdeb903c57126d3ad5f0cbd72e182584b76ee29.
3736         So use that instead (Bug#19717).
3737         * lisp/printing.el (pr-switches): Use lpr-eval-switch instead of
3738         ps-eval-switch.
3740 2016-05-22  Paul Eggert  <eggert@cs.ucla.edu>
3742         Do not trash symlinks to init file
3744         If the user’s init file is a symbolic link, do not break the link
3745         when initializing the package system.  Problem reported by Jackson
3746         Hamilton (Bug#23050).
3747         * lisp/emacs-lisp/package.el (package--ensure-init-file):
3748         Bind find-file-visit-truename when visiting the init file, and
3749         save and restore the buffer name the way cus-edit does in a
3750         similar situation (Bug#454).
3752 2016-05-22  Alan Mackenzie  <acm@muc.de>
3754         Don't print the "decomposition" line for control chars in what-cursor-position
3756         This is a temporary workaround for bug #23594, where the decomposition line
3757         for linefeed corrupted the display on a Linux virtual terminal.
3759         * lisp/descr-text.el (describe-char): Remove `decomposition' from the list of
3760         character code properties printed for control characters.
3762 2016-05-22  Paul Eggert  <eggert@cs.ucla.edu>
3764         Bring back xterm pasting with middle mouse
3766         Problem reported by Jan Synáček.
3767         Solution suggested by Stefan Monnier (Bug#23519).
3768         * lisp/isearch.el (isearch-mode-map): Add a binding for xterm-paste.
3769         (xterm--pasted-text): New decl.
3770         (isearch-xterm-paste): New function.
3771         * lisp/term/xterm.el (xterm--pasted-text): New function,
3772         taken from xterm-paste internals.
3773         (xterm-paste): Use it.
3775 2016-05-22  Eli Zaretskii  <eliz@gnu.org>
3777         Provide workaround for xftfont rendering problem
3779         * src/xftfont.c (syms_of_xftfont) <xft-font-ascent-descent-override>:
3780         New variable.
3781         (xftfont_open): Use it to work around problems with rendering some
3782         fonts.  (Bug#23360)
3784 2016-05-21  Jun Hao  <jun_hao@aol.com>
3786         * lisp/desktop.el: Disable restore frameset if in non-graphic display.
3788         (Bug#17693)
3790 2016-05-21  Eli Zaretskii  <eliz@gnu.org>
3792         Mention GTK+ problems in etc/PROBLEMS
3794         * etc/PROBLEMS (GDK_SCALE, GDK_DPI_SCALE): Mention the possible
3795         problems this could create and the workaround.  (Bug#23587)
3797 2016-05-20  Artur Malabarba  <bruce.connor.am@gmail.com>
3799         * lisp/emacs-lisp/package.el (package-refresh-contents):
3801         Don't change the value of `package-check-signature'.
3802         (package-check-signature): Use `epg-find-configuration'
3803         instead of `executable-find'.
3805 2016-05-20  Daiki Ueno  <ueno@gnu.org>
3807         Revert "epg: Add a way to detect gpg1 executable for tests"
3809         This reverts commit d4ae6d7033b34e8b75c59aaf1584131e439ef2d5.
3811 2016-05-19  Eli Zaretskii  <eliz@gnu.org>
3813         Avoid errors with Czech and Slovak input methods
3815         * lisp/leim/quail/slovak.el (slovak, slovak-prog-1, slovak-prog-2)
3816         (slovak-prog-3): Remove the kp-* key bindings, they are not needed
3817         and cause errors in "C-u C-x =".
3818         * lisp/leim/quail/czech.el (czech, czech-qwerty, czech-prog-1)
3819         (czech-prog-2, czech-prog-3): Remove the kp-* key bindings.
3820         (Bug#23559)
3822 2016-05-19  Daiki Ueno  <ueno@gnu.org>
3824         epg: Add a way to detect gpg1 executable for tests
3826         Fixes bug#23561.
3828         * test/automated/epg-tests.el
3829         (epg-tests-program-alist-for-passphrase-callback): New
3830         constant.
3831         (epg-tests-find-usable-gpg-configuration): New function,
3832         renamed from `epg-tests-gpg-usable'.  All callers changed.
3833         (epg-tests-gpg-usable): Remove.
3835         * lisp/epg-config.el (epg-config--program-alist): Factor out
3836         constructor element to...
3837         (epg-config--configuration-constructor-alist): ...here.
3838         (epg-find-configuration): Rename FORCE argument to NO-CACHE,
3839         and add PROGRAM-ALIST argument.
3841 2016-05-18  Artur Malabarba  <bruce.connor.am@gmail.com>
3843         * lisp/emacs-lisp/package.el: Fix free variable warnings.
3845         (package--with-response-buffer): Replace two usages of
3846         `macroexp-let2*' with `let'.
3848 2016-05-18  Artur Malabarba  <bruce.connor.am@gmail.com>
3850         * lisp/emacs-lisp/package.el (package--with-response-buffer):
3852         Fix some macro locals leaking into body.  (Bug#22440)
3854         * test/automated/package-test.el (package-test-signed):
3855         Manually check all possible values of `package-check-signature'.
3857 2016-05-18  Eli Zaretskii  <eliz@gnu.org>
3859         Improve documentation of 'server-name'
3861         * doc/emacs/misc.texi (Emacs Server): Fix example of setting
3862         'server-name'.  Mention how to do that with daemon sessions.
3863         (Bug#23576)
3865 2016-05-18  Paul Eggert  <eggert@cs.ucla.edu>
3867         Modernize ASLR advice in etc/PROBLEMS
3869         * etc/PROBLEMS (Segfault during 'make'): Modernize advice for
3870         seccomp, Docker, and NetBSD (Bug#23529).
3872 2016-05-17  Juri Linkov  <juri@linkov.net>
3874         * lisp/char-fold.el: Rename from character-fold.el.
3876         * lisp/replace.el (replace-char-fold): Rename from replace-character-fold.
3877         * test/automated/char-fold-tests.el: Rename from character-fold-tests.el.
3878         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00529.html
3880 2016-05-17  Nicolas Petton  <nicolas@petton.fr>
3882         Bump version to 25.0.94
3884         * README:
3885         * configure.ac:
3886         * msdos/sed2v2.inp: Bump Emacs version to 25.0.94.
3888 2016-05-17  Nicolas Petton  <nicolas@petton.fr>
3890         etc/AUTHORS: Update the AUTHORS file
3892 2016-05-16  Alan Third  <alan@idiocy.org>
3894         Fix bug#23462: Crash when iconifying frame on OS X.
3896         * src/nsterm.m (x_iconify_frame): Block input while miniaturize is
3897         running.
3899 2016-05-16  Paul Eggert  <eggert@cs.ucla.edu>
3901         Avoid shrinking windows with Gtk+ 3.20.3
3903         Problem reported by Matthias Clasen (Bug#23144).
3904         This was fixed in a different way in master.
3905         Do not merge to master.
3906         * src/xterm.c (handle_one_xevent) [GTK_CHECK_VERSION (3, 20, 3)]:
3907         Do not call xg_frame_resized in the MapNotify case.
3909 2016-05-16  Eli Zaretskii  <eliz@gnu.org>
3911         Fix bug in default setting of 'ps-paper-type'
3913         * lisp/international/mule-cmds.el (set-locale-environment): Don't
3914         inherit the value of locale from previous examination of different
3915         environment variables, which didn't look at LC_PAPER, and so using
3916         that value would effectively ignore the setting of LC_PAPER.
3917         (Bug#23544)
3919 2016-05-13  Paul Eggert  <eggert@cs.ucla.edu>  (tiny change)
3921         Properly reject malformed or empty package sigs
3923         Problem report and fix by Lizzie Dixon (Bug#23513).
3924         * lisp/emacs-lisp/package.el (package--check-signature-content):
3925         Report an error if no good signatures OR if a fatal error.  Not AND.
3927 2016-05-13  Paul Eggert  <eggert@cs.ucla.edu>
3929         Remove buggy non-native image scrolling
3931         This never worked, and could cause infinite recursion.
3932         Problem reported by Glenn Morris (Bug#22465).
3933         * lisp/xwidget.el (xwidget-webkit-scroll-behavior): Remove.
3934         All uses removed.
3936 2016-05-13  Paul Eggert  <eggert@cs.ucla.edu>
3938         * doc/misc/texinfo.tex: Sync from gnulib.
3940 2016-05-12  Glenn Morris  <rgm@gnu.org>
3942         * lisp/emacs-lisp/find-func.el (find-feature-regexp)
3943         (find-alias-regexp): Fix :version.
3945 2016-05-11  Dmitry Gutov  <dgutov@yandex.ru>
3947         Do not mistake colon at the end of regexp for slash symbol
3949         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize):
3950         Check the parse state in the "Symbols with special characters"
3951         rule (bug#23515).
3953 2016-05-11  Dmitry Gutov  <dgutov@yandex.ru>
3955         Make package-install-from-buffer not move point
3957         * lisp/emacs-lisp/package.el (package-install-from-buffer):
3958         Use save-excursion here (bug#22616).
3960 2016-05-11  Dmitry Gutov  <dgutov@yandex.ru>
3962         Redo the fix for bug#21839
3964         * lisp/help.el (help-add-fundoc-usage): Undo the previous change.
3965         (help--make-usage-docstring): Escape newlines when printing.
3967         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
3968         Ditto (bug#21839).
3970 2016-05-10  Dmitry Gutov  <dgutov@yandex.ru>
3972         Don't treat JS spread as contination method call
3974         * lisp/progmodes/js.el (js--indent-operator-re):
3975         Allow only one dot (bug#23492).
3977         * test/indent/js.js (default): Add a corresponding example.
3979 2016-05-09  Dmitry Gutov  <dgutov@yandex.ru>
3981         Allow newlines inside cl function arglists
3983         * lisp/help.el (help-add-fundoc-usage): Allow newlines inside
3984         ARGLIST (bug#21839).
3986 2016-05-09  Dmitry Gutov  <dgutov@yandex.ru>
3988         Publicize cl--generic-all-functions
3990         * lisp/emacs-lisp/cl-generic.el (cl-generic-all-functions):
3991         Rename from cl--generic-all-functions.  Update both callers.
3993         * lisp/cedet/semantic/db-el.el
3994         (semanticdb-find-tags-external-children-of-type-method):
3995         And use it here (bug#23042).
3997 2016-05-09  Alan Mackenzie  <acm@muc.de>
3999         Add some "safe-local-variable" declarations for compatibility with master.
4001         These enable C files from the master repository to be visited in Emacs 25
4002         without generating irritating questions about configuration variable safety.
4004         * lisp/progmodes/cc-vars.el: (c-string-list-p, c-string-or-string-list-p): New
4005         functions.
4006         (c-noise-macro-names, c-noise-macro-with-parens-names): give the
4007         safe-local-variable property c-string-list-p.
4008         (c-macro-names-with-semicolon): give the safe-local-variable property
4009         c-string-or-string-list-p.
4011 2016-05-09  Lars Ingebrigtsen  <larsi@gnus.org>
4013         Fix doc string in `insert'
4015         * src/editfns.c (Finsert_and_inherit): The before-insertion
4016         markers do not move.
4017         (Finsert): Ditto.
4019 2016-05-08  Paul Eggert  <eggert@cs.ucla.edu>
4021         * doc/misc/emacs-mime.texi (time-date): Document now-builtins better.
4023 2016-05-07  Dmitry Gutov  <dgutov@yandex.ru>
4025         Say 'All results processed' at the end
4027         * lisp/progmodes/xref.el (xref--query-replace-1):
4028         Say 'All results processed' at the end if the user hadn't
4029         cancelled the process (bug#23284).
4031 2016-05-07  Eli Zaretskii  <eliz@gnu.org>
4033         Document automatic adjustment of process' logical window dimensions
4035         * doc/lispref/processes.texi (Process Buffers): Document
4036         'set-process-window-size' and
4037         'window-adjust-process-window-size-function'.
4039         * etc/NEWS: Mention the new functionality and variable.
4041         * src/process.c (Fset_process_window_size): Improve the doc string.
4043 2016-05-06  Michael Albinus  <michael.albinus@gmx.de>
4045         tramp-sh.el: Work around a stat bug (backport from master)
4047         * lisp/net/tramp-sh.el (tramp-get-remote-stat): Do not use
4048         stat versions which produce shell quoted output.  See also
4049         coreutils Bug#23422.
4051         (cherry picked from commit 6aad36ace9953b9672b13be68416d205532d5e59)
4053 2016-05-05  Paul Eggert  <eggert@cs.ucla.edu>
4055         Doc fixes for fclist and grep
4057         A newline is needed between two fc-list calls.
4058         egrep and fgrep have been withdrawn from POSIX,
4059         so document grep -E and grep -F instead.
4061 2016-05-05  Paul Eggert  <eggert@cs.ucla.edu>
4063         Minor doc fixes for quoting
4065         * doc/lispref/control.texi (Signaling Errors):
4066         * doc/lispref/display.texi (Displaying Messages):
4067         Don’t say that formats “generate”.  Try to word more clearly.
4068         * etc/NEWS: Coalesce near-duplicate entries.
4070 2016-05-05  Dmitry Gutov  <dgutov@yandex.ru>
4072         `nreverse' the marker pairs list
4074         * lisp/progmodes/xref.el (xref--buf-pairs-iterator): `nreverse'
4075         the marker pairs list for each buffer before returning.
4077 2016-05-04  Dmitry Gutov  <dgutov@yandex.ru>
4079         Use save-excursion in xref-location-marker more
4081         * lisp/progmodes/elisp-mode.el (xref-location-marker): Use
4082         save-excursion, in order not to alter the value of point if the
4083         buffer is currently open in the background (problem reported by
4084         Robert Weiner).
4086         * lisp/progmodes/etags.el (xref-location-marker): Same.
4088 2016-05-04  Dmitry Gutov  <dgutov@yandex.ru>
4090         shell-quote-argument DIR when appropriate
4092         * lisp/progmodes/project.el (project-file-completion-table):
4093         `shell-quote-argument' DIR as well.
4095         * lisp/progmodes/xref.el (xref--rgrep-command): Pass DIR through
4096         `shell-quote-argument' (bug#23453).  Thanks for Kaushal Modi for
4097         pointing out the problem.  Assert that DIR doesn't start with `~'.
4099 2016-05-04  Dmitry Gutov  <dgutov@yandex.ru>
4101         Rework xref-query-replace-in-results
4103         * lisp/progmodes/xref.el (xref-query-replace-in-results): Collect
4104         all xrefs from the buffer first, then delegate most of the
4105         processing to the value returned by xref--buf-pairs-iterator.
4106         (xref--buf-pairs-iterator): New function.  Return an "iterator"
4107         which partitions returned markers into buffers, and only processes
4108         markers from one buffer at a time.  When an xref is out of date,
4109         skip it with a message instead of signaling error (bug#23284).
4110         (xref--outdated-p): Extract from xref--buf-pairs-iterator.  Trim
4111         CR from both strings before comparing.
4112         (xref--query-replace-1): Remove the variable current-buf, no need
4113         to track it anymore.  Simplify the filter-predicate and search
4114         functions accordingly.  Iterate over buffer-markers pairs returned
4115         by the iterator, and call `perform-replace' for each of them.  Use
4116         multi-query-replace-map (bug#23284).  Use `switch-to-buffer' every
4117         time after the first, in order not to jump between windows.
4119         * test/automated/xref-tests.el
4120         (xref--buf-pairs-iterator-groups-markers-by-buffers-1)
4121         (xref--buf-pairs-iterator-groups-markers-by-buffers-2)
4122         (xref--buf-pairs-iterator-cleans-up-markers): New tests.
4124 2016-05-04  Juri Linkov  <juri@linkov.net>
4126         * lisp/replace.el (query-replace-read-from): Use minibuffer-with-setup-hook
4128         to set minibuffer-local value of text-property-default-nonsticky.
4129         (Bug#23418, bug#23127)
4131 2016-05-04  Stephen Berman  <stephen.berman@gmx.net>
4133         Fix todo-mode bug involving archived items (bug#23447)
4135         * lisp/calendar/todo-mode.el (todo-jump-to-category): When jumping
4136         from Todo Categories mode to a category with only archived items
4137         and todo-skip-archived-categories is non-nil, make sure the
4138         archive file buffer is in Todo Archive mode to prevent
4139         todo-category-select from raising an error, and don't set
4140         todo-current-todo-file, since that makes todo-show display the
4141         archived category.  Remove a no-op call to kill-buffer, which is
4142         already called in todo-insert-category-line.
4144 2016-05-03  Dmitry Gutov  <dgutov@yandex.ru>
4146         Handle "empty line" regexp in xref searches
4148         * lisp/progmodes/xref.el (xref--collect-matches-1): Stop after one
4149         match if re-search-forward doesn't move point (bug#23426).
4151         * test/automated/xref-tests.el
4152         (xref-collect-matches-finds-an-empty-line-regexp-match):
4153         Uncomment test.
4155 2016-05-03  Dmitry Gutov  <dgutov@yandex.ru>
4157         Add tests for xref-collect-matches
4159         * test/automated/xref-tests.el: New file.  Add tests for
4160         xref-collect-matches.
4162 2016-05-03  Dmitry Gutov  <dgutov@yandex.ru>
4164         Use grep-find-ignored-directories instead of vc-directory-exclusion-list
4166         * lisp/dired-aux.el (dired-do-find-regexp):
4167         Use grep-find-ignored-directories instead of
4168         vc-directory-exclusion-list.  The result should be functionally
4169         similar (the former uses the latter as the default value), but it
4170         should be more consistent and appropriate WRT user
4171         customizations.
4172         (dired-do-find-regexp-and-replace): Update the docstring.
4174         * lisp/dired.el: Update the corresponding autoloads.
4176         * doc/emacs/dired.texi (Operating on Files): Update the
4177         documentation accordingly.
4179 2016-05-03  Dmitry Gutov  <dgutov@yandex.ru>
4181         Clear buffer-undo-list when showing xrefs
4183         * lisp/progmodes/xref.el (xref--show-xref-buffer): Clear
4184         buffer-undo-list and temporarily bind it to t while rendering the
4185         buffer contents.
4187 2016-05-03  Alan Mackenzie  <acm@muc.de>
4189         Note the quote translation in `message' in section "incompatible changes".
4191         * etc/NEWS: Note that `message' translates quotes, that the translation
4192         cannot be disabled, and that `format' can be used to get the old
4193         behavior back.
4195 2016-05-03  Paul Eggert  <eggert@cs.ucla.edu>
4197         * etc/NEWS: Mention (message "%s" (format ...)).
4199 2016-05-03  Lars Ingebrigtsen  <larsi@gnus.org>
4201         (Common Keywords): Correct what missing :group means
4203         * doc/lispref/customize.texi (Common Keywords): Correct what
4204         missing :group means.
4206 2016-05-03  Eli Zaretskii  <eliz@gnu.org>
4208         Improve documentation of Dired's 'A' and 'Q' commands
4210         * lisp/dired-aux.el (dired-do-find-regexp)
4211         (dired-do-find-regexp-and-replace): Mention
4212         'grep-find-ignored-files' and 'vc-directory-exclusion-list', and
4213         also the fact that REGEXP should be palatable by Grep.  (Bug#23426)
4214         * lisp/dired.el: Update the corresponding autoload forms.
4216         * doc/emacs/dired.texi (Operating on Files): Mention
4217         'grep-find-ignored-files' and 'vc-directory-exclusion-list'.
4218         (Bug#23429)
4220 2016-05-03  Paul Eggert  <eggert@cs.ucla.edu>
4222         Doc fixes for quoting
4224         * doc/emacs/text.texi, doc/lispintro/emacs-lisp-intro.texi:
4225         * doc/lispref/control.texi, doc/lispref/display.texi:
4226         * doc/lispref/help.texi, doc/lispref/strings.texi, lisp/subr.el:
4227         * src/callint.c, src/doprnt.c, src/editfns.c:
4228         Document quoting a bit more systematically.
4229         Problem reported by Alan Mackenzie (Bug#23425).
4231 2016-05-02  Lars Ingebrigtsen  <larsi@gnus.org>
4233         posnp doc clarification
4235         * lisp/subr.el (posnp): Mention that a posn object is returned
4236         from `event-start' (bug#18211).
4238 2016-05-02  Lars Ingebrigtsen  <larsi@gnus.org>
4240         Mention what a missing :group does
4242         * doc/lispref/customize.texi (Common Keywords): Document that
4243         a missing :group reuses the group from the preceding item (bug#21601).
4245 2016-05-02  Eli Zaretskii  <eliz@gnu.org>
4247         Fix documentation of dired-aux search/replace commands
4249         * lisp/dired-aux.el (dired-do-find-regexp)
4250         (dired-do-find-regexp-and-replace): Doc fixes.  (Bug#23429)
4251         * lisp/dired.el: Update the corresponding autoload forms.
4253 2016-05-02  Paul Eggert  <eggert@cs.ucla.edu>
4255         Fix quoting problem in cc-engine debug message
4257         * lisp/progmodes/cc-engine.el (c-replay-parse-state-state):
4258         Use "%s" format to pass through ‘'’ unscathed (Bug#23425), and
4259         likewise for ‘`’, and ‘%’.
4261 2016-05-02  Philipp Stephani  <phst@google.com>
4263         Add electric-quote-string unit test
4265         * test/automated/electric-tests.el (electric-quote-string): New test.
4267 2016-05-02  Paul Eggert  <eggert@cs.ucla.edu>
4269         Don’t electrically quote ‘'’ in Python
4271         Problem reported by Philipp Stephani (Bug#23387).
4272         * lisp/electric.el (electric-quote-post-self-insert-function):
4273         Do not requote a string starter or ender.
4275 2016-05-02  Dmitry Gutov  <dgutov@yandex.ru>
4277         `nreverse' Grep hits before passing them to xref--convert-hits
4279         * lisp/progmodes/xref.el (xref-collect-matches): `nreverse' hits
4280         before passing them to xref--convert-hits.  Fixes a regression
4281         from cc0b7132.
4283 2016-05-01  Paul Eggert  <eggert@cs.ucla.edu>
4285         * doc/misc/texinfo.tex: Sync from gnulib.
4287 2016-05-01  Juri Linkov  <juri@linkov.net>
4289         * lisp/isearch.el (isearch-forward-symbol-at-point): Add isearch-push-state.
4291         (Bug#23410)
4293 2016-05-01  Michael Albinus  <michael.albinus@gmx.de>
4295         tramp.texi: Revert last change due to backward compatibility
4297         (cherry picked from commit 910f9a0a936aacbffe9b9b790d7f698dfd287aac)
4299 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4301         cua-prefix-override-inhibit-delay doc fix
4303         * lisp/emulation/cua-base.el
4304         (cua-prefix-override-inhibit-delay): Typo fix in doc string
4305         (bug#23401).
4307         (cherry picked from commit 2b4c099822811ede787fc6e575bfbb17b3cc0681)
4309 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4311         global-eldoc-mode doc fix
4313         * lisp/emacs-lisp/eldoc.el (global-eldoc-mode): Be more
4314         specific about what "applicable" means (bug#23071).
4316         (cherry picked from commit 25e95b5dd8cd92e03788e589bf99a4b399f03114)
4318 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4320         normal-top-level-add-subdirs-to-load-path doc fix
4322         * lisp/startup.el (normal-top-level-add-subdirs-to-load-path):
4323         Doc fix (bug#21962).
4325         (cherry picked from commit 28aaa6d20586e3330a23b017a65e56dd6461c003)
4327 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4329         isearch-search-fun-function doc tweak
4331         * lisp/isearch.el (isearch-search-fun-function): Mention what
4332         the STRING parameter is (bug#21552).
4334         (cherry picked from commit cafc2a5940cdc523cfea6dcf1cf540f48367c62a)
4336 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4338         Fill some imenu--index-alist doc lines
4340         * lisp/imenu.el (imenu--index-alist): Fill some doc lines (bug#21269).
4342         (cherry picked from commit 4b7bb8f596550628eaa83b82c0f7eabe59a84964)
4344 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4346         Fmarker_position doc string clarification
4348         * src/marker.c (Fmarker_position): Clarify the doc string
4349         (bug#21231).
4351         (cherry picked from commit eeac7c57273cec3f9408b18392dd2bafe3be4450)
4353 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4355         Further define-obsolete-* doc fixups
4357         * lisp/emacs-lisp/byte-run.el (define-obsolete-face-alias):
4358         Fix up last change.
4359         (define-obsolete-variable-alias): Ditto.
4361         (cherry picked from commit 28e9f4390d8391c2c36be4ef515cf3a2c679a5a5)
4363 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4365         Describe WHEN in all the define-obsolete- macros
4367         * lisp/emacs-lisp/byte-run.el (define-obsolete-face-alias):
4368         Say more verbosely what WHEN is (bug#21225).
4369         (define-obsolete-function-alias): Describe the WHEN parameter.
4370         (define-obsolete-variable-alias): Ditto.
4372         (cherry picked from commit 247c388f160581d207e41ca5926990bbf69d4a0f)
4374 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4376         Mention with-silent-modifications in the lispref manual
4378         * doc/lispref/text.texi (Changing Properties): Document
4379         with-silent-modifications (bug#21171).
4381         (cherry picked from commit fcd0d854eef6e439d51e8f07cf734d5e34e502b3)
4383 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4385         with-silent-modifications doc clarification
4387         * lisp/subr.el (with-silent-modifications): Rearrange the doc
4388         string a bit so that the most pertinent information is at the
4389         top (bug#21171).
4391         (cherry picked from commit e0e70f030e69d9696a963a86f5f7caaff4df06eb)
4393 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4395         clear-visited-file-modtime doc string fix
4397         * lisp/files.el (clear-visited-file-modtime): Fix possibly
4398         confusing doc string wording (bug#21169).
4400         (cherry picked from commit 1aaeaf1450756a71c9254a2a5b174c72084ca67a)
4402 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4404         Document mode mode line variables
4406         * doc/lispref/modes.texi (Mode Line Variables): Document
4407         `mode-line-front-space, `mode-line-misc-info',
4408         `mode-line-end-spaces' (bug#21014).
4410         (cherry picked from commit bf7a630b0a5d3900f2afb0e7a881ce62e2b9f935)
4412 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4414         Add a cross ref to Optional Mode Line
4416         * doc/lispref/modes.texi (Mode Line Variables): Add a cross
4417         reference to the Emacs mode line node that explains things
4418         like `display-time-string' (bug#21002).
4420         (cherry picked from commit a3151a28789f413af73b14fbba557b2a587fca53)
4422 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4424         Add a doc string to display-time-string
4426         * lisp/time.el: Add a doc string to `display-time-string',
4427         because it's referred to in the manual, and is too mysterious
4428         otherwise (bug#21002).
4430         (cherry picked from commit 45559c584e5a4ddeed1539b028b50b95baa372f8)
4432 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4434         custom-buffer-style doc fix
4436         * lisp/cus-edit.el (custom-buffer-style): Document the `tree'
4437         value (bug#20724).
4439         (cherry picked from commit bcf0291d0cd02095b0809b1eb91f1e5c5c2ac5e3)
4441 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4443         Rearrange the doc of query-replace slightly
4445         * lisp/replace.el (query-replace): Move the mention of the
4446         interactive prefix arg earlier so that users can find it
4447         (bug#20654).
4449         (cherry picked from commit bcc10761c3b968fa4534718116a0a601ed7da389)
4451 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4453         apropos-print doc fix
4455         * lisp/apropos.el (apropos-print): Document the undocumented
4456         parameters (bug#20520).
4458         (cherry picked from commit 0714d7387812a151f59993ac77c7321724ef79b1)
4460 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4462         completion-table-with-predicate doc string fix
4464         * lisp/minibuffer.el (completion-table-with-predicate): t ->
4465         non-nil in the doc string (bug#20460).
4467         (cherry picked from commit b6a4d162208f239bc7804696d611ae52c686f138)
4469 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4471         Fill the completion-table-with-predicate doc string
4473         * lisp/minibuffer.el (completion-table-with-predicate): Fill
4474         the doc string (bug#20460).
4476         (cherry picked from commit 207a31432c1ed8b548003a3e4af32c49aa3441e9)
4478 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4480         replace-match-maybe-edit doc clarification
4482         * lisp/replace.el (replace-match-maybe-edit): Say what
4483         MATCH-DATA is (bug#20304).
4485         (cherry picked from commit 139874ba53c2e2de9868f8e5234d6ea2bcb97af8)
4487 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4489         add-timeout doc fix
4491         * lisp/emacs-lisp/timer.el (add-timeout): Mention the return
4492         value (bug#20181).
4494         (cherry picked from commit 921b40476f597c84d7c34aa289cd43caeb389c4a)
4496 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4498         Extremely minor doc fix in Choosing Window
4500         * doc/lispref/windows.texi (Choosing Window): There's only one
4501         action alist, I think (bug#20158).
4503         (cherry picked from commit 6c7e7f421d02d9290d6d1d85320737371160aef7)
4505 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4507         Transform mentions of `eval-after-load' to `with-eval-after-load'
4509         * doc/lispref/loading.texi (Hooks for Loading): Update text to
4510         not mention `eval-after-load' (bug#20038).
4512         (cherry picked from commit 9392193be56eebdfac702a0bbb5e954088371c7a)
4514 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4516         cursor-type doc fix
4518         * src/buffer.c (syms_of_buffer): Mention that cursor-type's
4519         WIDHT/HEIGHT can't exceed the frame char size (bug#19215).
4521         (cherry picked from commit 77c5f4554ebb3b7c7d49bc881e45a550f6c93987)
4523 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4525         Add a link from Tool Bar to Images
4527         * doc/lispref/keymaps.texi (Tool Bar): Add a link to the
4528         Images node (bug#19722).
4530         (cherry picked from commit da5d0786163a91400eced4fddba4a92b652458d1)
4532 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4534         (default-mode-line-format): More explicit obsolete info
4536         * lisp/subr.el (default-mode-line-format): Be more explicit in
4537         how default values are now handled (bug#19424).
4539         (cherry picked from commit 9dc5f6d830e72420dc4d41c8f6ca1ca6b28609c0)
4541 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4543         Fcompare_buffer_substrings doc string clarification
4545         * src/editfns.c (Fcompare_buffer_substrings): Extremely minor
4546         doc string clarification (bug#19255).
4548         (cherry picked from commit aa692acbb598a1cc8219ed7a87dde25fd7626ba5)
4550 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4552         insert-file-contents-literally doc fix
4554         * lisp/files.el (insert-file-contents-literally): Say that the
4555         parameters are explained in the other function (bug#18317).
4557         (cherry picked from commit b6481b19bc9592492b1f70dfecb4de6256f537fe)
4559 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4561         Fix custom types for cursor-in-non-selected-windows
4563         * lisp/cus-start.el (standard): Use the same custom types for
4564         cursor-in-non-selected-windows as for cursor-type (bug#19214).
4566         (cherry picked from commit b66bc0cced786e0320e1c3b0758bd3c434d4e8b5)
4568 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4570         Doc clarification to mwheel-scroll
4572         * lisp/mwheel.el (mwheel-scroll): Mention that the restriction
4573         does not apply to Windows (bug#19209).
4575         (cherry picked from commit 696052b5fdfbc5c25dff3c6b081aebe70f6d06c7)
4577 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4579         Clarify the doc of eval-expression-print-format
4581         * lisp/simple.el (eval-expression-print-format): Doc
4582         clarification (bug#19114).
4584         (cherry picked from commit cd193a871f5a8e1c81ba86fc398ac382fa814383)
4586 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4588         Explictly explain that package-initialize loads the packages
4590         * lisp/emacs-lisp/package.el (package-initialize): Be explicit
4591         in saying that `package-initialize' obviates adjusting the
4592         path or requiring the packages, as this is a question that
4593         apparently comes up now and then (bug#18829).
4595         (cherry picked from commit 619e0aedb2f3dbfe6821ac34e2d25b4e5c181117)
4597 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4599         Have the doc strings of `load-path' and `require' mention each other
4601         * src/fns.c (Frequire): Mention `load-path' and fill the doc
4602         string (bug#18829).
4604         * src/lread.c (syms_of_lread): Mention that `require' uses
4605         `load-path'.
4607         (cherry picked from commit 3eca9a03816f95da0030665223c0b5262f223ba7)
4609 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4611         Doc fix for insert-pair-alist
4613         * lisp/emacs-lisp/lisp.el (insert-pair-alist): Say what
4614         COMMAND-CHAR is (bug#18809).
4616         (cherry picked from commit 2824c587e9749a8f350f1d3dddd65176b4561dcb)
4618 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4620         Move doc of backup-directory-alist to the Backup node
4622         * doc/emacs/files.texi (Backup): Move the documentation of
4623         `backup-directory-alist' here from the "Single or Numbered
4624         Backups" node, because it doesn't seem to have much to do with
4625         numbering (bug#18692).
4627         (cherry picked from commit e77b8d84b4161f2cf8720dec2bf44a3e50134398)
4629 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4631         Tiny doc clarification for create-fontset-from-fontset-spec
4633         * lisp/international/fontset.el (create-fontset-from-fontset-spec):
4634         Clarify what the optional part is (bug#18686).
4636         (cherry picked from commit c05d186455ce9907eeb6b21ea4227e453996c681)
4638 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4640         Fill the doc string of font-lock-keywords
4642         * lisp/font-lock.el (font-lock-keywords): Fill the lines and
4643         reorganise some explanations (bug#21427).
4645         (cherry picked from commit c05716d3a26ea7518b89eacfccaf70c9d0731df7)
4647 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4649         Doc fix for font-lock-remove-keywords
4651         * lisp/font-lock.el (font-lock-remove-keywords): Add a link to
4652         `font-lock-add-keywords' to describe KEYWORDS (bug#18634).
4654         (cherry picked from commit bc00dcf12983cd399127d0eea39647f29778eb02)
4656 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4658         Clarify whitespace-style doc string
4660         * lisp/whitespace.el (whitespace-style): Doc clarification
4661         (bug#18296).
4663         (cherry picked from commit d96c720d0cca7c9ffbb4c712ad315bb707d6625c)
4665 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4667         Doc fixed for next-error-buffer-p
4669         * lisp/simple.el (next-error-buffer-p): Clarify doc string
4670         (bug#18202).
4672         (cherry picked from commit a10eb168cc96db9f0dab2d75550cbd8f08be2363)
4674 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4676         Tiny doc fix
4678         * src/fileio.c (Ffile_accessible_directory_p): Tiny doc fix
4679         (and fill) (bug#18201).
4681         (cherry picked from commit 2ef0040e2363a669d9b93df935d31c98fa130132)
4683 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4685         Doc fix
4687         * src/keymap.c (Fdefine_prefix_command): Clarify doc string
4688         slightly (bug#18092).
4690         (cherry picked from commit 6b769c81d024f7eeb90b167e7df6f87d859614d4)
4692 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4694         delsel doc touch ups
4696         * lisp/delsel.el (delete-selection-helper): Use non-nil
4697         instead of t and clarify function return values (bug#18089).
4699         (cherry picked from commit d7a5b5be9a5869bcd233434ec3103dd1976d7df7)
4701 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4703         Doc fixes for menu-bar.el
4705         * lisp/menu-bar.el (clipboard-kill-ring-save): Describe the
4706         REGION parameter (bug#18028).
4707         (clipboard-kill-region): Ditto.
4709         (cherry picked from commit 33d2c67bff0992ecbc0fe38556683242b9d1a4ae)
4711 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4713         Doc fix
4715         * lisp/rect.el (delete-whitespace-rectangle): Doc fix (bug#18026).
4717         (cherry picked from commit 6baca4911ec901579749dbf7596011d90fea3781)
4719 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4721         Minor doc clarification
4723         * lisp/subr.el (y-or-n-p): Document the return value from "n"
4724         (bug#18024).
4726         (cherry picked from commit 5d1f3192d484edee92caa46cd7d699da3e920259)
4728 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4730         Fill font-lock-mode doc string
4732         * lisp/font-core.el (font-lock-mode): Fill the text to make it
4733         narrower (bug#18008).
4735         (cherry picked from commit 27abf372836532c57be2e9e3ed23413729cc07fc)
4737 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4739         Wrap the auto-generated doc string
4741         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode): Wrap a
4742         string to make it less likely that we get overlong lines
4743         (bug#17999).
4745         (cherry picked from commit 323b69664914d687fd4b48593479cea223dfbcb4)
4747 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4749         Clarify hi-lock-find-patterns
4751         * lisp/hi-lock.el (hi-lock-find-patterns): Doc clarification
4752         (bug#17989).
4754         (cherry picked from commit 552e90ce7dff3a7107243fdf71c4de3af443e13a)
4756 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4758         Add a doc string to `winner-mode'
4760         * lisp/winner.el (winner-mode): Add a doc string based on the
4761         comments in the file (bug#17716).
4763         (cherry picked from commit 2c3ab9b6e39a3d600e7d82deacc24effaec051bb)
4765 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4767         Doc fix for align-newline-and-indent
4769         * lisp/align.el (align-newline-and-indent): Mention that
4770         alignment is done by `align' (bug#17707).
4772         (cherry picked from commit 340a224ec3e01706112a07164da9a9f3f369a5aa)
4774 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4776         Doc fix for `kbd'
4778         * lisp/subr.el (kbd): Describe more fully the format of the
4779         parameter (bug#17039).
4781         (cherry picked from commit 3a33afe25d8518f194fa4706eaccdb2a786a0348)
4783 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4785         Doc tweak
4787         * lisp/simple.el (use-empty-active-region): Doc tweak.
4788         There's only one region (bug#16513).
4790         (cherry picked from commit 35fb7897f161d5e5a87e039dc1e427094640b0c8)
4792 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4794         Link from (emacs)Exiting to (lisp)Killing Emacs
4796         * doc/emacs/entering.texi (Exiting): Link to the lispref
4797         manual for further customisations (bug#15445).
4799         (cherry picked from commit bc5f27aa099cdde02ca66e71501b89300685ab28)
4801 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4803         find-lisp doc touchups
4805         * lisp/find-lisp.el (find-lisp-format): Copy over the doc
4806         string (bug#15047).
4807         (find-lisp-find-files): Clarify doc.
4809         (cherry picked from commit e4c7657b0d1a31d64ca24bc64b5480cd7687e332)
4811 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4813         Don't have the manual claim that it lists all CL incompatibilities
4815         * doc/misc/cl.texi (Common Lisp Compatibility): The list of
4816         incompatibilities isn't exhaustive, so don't say that it is
4817         (bug#15171).
4819         (cherry picked from commit fb685bc91a72508c97ce7e30f970d4157677f371)
4821 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4823         Change all occurrences of "Mouse-[0-9]" to "mouse-[0-9]"
4825         * doc/emacs/*.texi: Change all occurrences of "Mouse-[0-9]" to
4826         "mouse-[0-9]".  These are case sensitive, and the keys are lower case
4827         (bug#14554).
4829         (cherry picked from commit e4c26271f2c2fe08f8490e25c63a436ab2a804ca)
4831 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4833         Doc string change to enable-recursive-minibuffers
4835         * src/minibuf.c (syms_of_minibuf): Mention
4836         minibuffer-depth-indicator-mode in the doc string to
4837         enable-recursive-minibuffers (bug#14147).
4839         (cherry picked from commit 23ba488a5e8290c4de91e0ff4161641efa364c0d)
4841 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4843         Clarify the `interactive' doc string slightly
4845         * src/callint.c (Finteractive): Clarify the doc string slightly
4846           (bug#14577).
4848         (cherry picked from commit cd993be60da2d12db0d390001373d486c1091c47)
4850 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4852         Clarify some doc strings
4854         * lisp/emacs-lisp/syntax.el (syntax-propertize-via-font-lock):
4855         Clarify doc string (bug#8693).
4856         (syntax-propertize): Clarify doc string.
4858         (cherry picked from commit ad3ef417f3c40f086de9c547d6272e5685595e42)
4860 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4862         Add some concept index entries for custom types
4864         * doc/lispref/customize.texi (Composite Types): Add concept
4865         index entries for restricted-sexp, radio and choice (bug#7385).
4867         (cherry picked from commit 388bb723fa078158d3148de05e942f9c01e95dd8)
4869 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4871         Mention `lisp-indent-function' in the lispref manual
4873         * doc/lispref/macros.texi (Indenting Macros): Mention
4874         `lisp-indent-function' (bug#3393).
4876         (cherry picked from commit a1627691a896b2afaa264f93534178bc763564c9)
4878 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4880         Clarify doc string of internal compilation function
4882         * lisp/progmodes/compile.el (compilation-get-file-structure):
4883         Clarify doc string (bug#3137).
4885         (cherry picked from commit 123191decb7428db3b32a6c01631fa755088393a)
4887 2016-05-01  Paul Eggert  <eggert@cs.ucla.edu>
4889         Use ‘T *restrict’ proto, not ‘T[restrict]’
4891         * src/fns.c (sort_vector_copy): Use a different way to attempt to
4892         work around GCC 3.0-and-earlier incompatibility with C99, one that
4893         does not have problems with modern non-GCC compilers.
4895 2016-05-01  Eli Zaretskii  <eliz@gnu.org>
4897         Fix documentation of 'url-retrieve-synchronously'
4899         * doc/misc/url.texi (Retrieving URLs): Update argument list of
4900         'url-retrieve-synchronously'.  (Bug#23411)
4902 2016-05-01  Eli Zaretskii  <eliz@gnu.org>
4904         * lisp/url/url.el (url-retrieve-synchronously): Doc fix.  (Bug#23411)
4906 2016-04-30  Leo Liu  <sdl.web@gmail.com>
4908         Fix last change to isearch-update (bug#23406)
4910         * lisp/isearch.el (isearch-update): Remove (setq cursor-sensor-inhibit
4911           nil) ie remove the original (unless (boundp 'cursor-sensor-inhibit)
4912           ...) form.
4914 2016-04-30  Leo Liu  <sdl.web@gmail.com>
4916         Autoload cursor-sensor-inhibit (bug#23406)
4918         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor-inhibit): Autoload.
4919         * lisp/isearch.el (isearch-update): Remove boundp check.
4921 2016-04-30  Phillip Lord  <phillip.lord@newcastle.ac.uk>
4923         org-map-entries: Fix org-agenda-prepare-buffers call
4925         * lisp/org/org.el (org-map-entries): Check that buffer-file-name is non-nil
4926           before passing to org-agenda-prepare-buffers.
4928         This is a backport of commit 44c8cd7136e3fcd1e6bfa08895cac437b7a691fa
4929         from upstream org-mode. Addresses bug #23365.
4931 2016-04-30  Eli Zaretskii  <eliz@gnu.org>
4933         Followup for last commit in the user manual
4935         * doc/emacs/basic.texi (Moving Point): Clarify that
4936         set-goal-column has buffer-local effect.  (Bug#23405)
4938 2016-04-30  Eli Zaretskii  <eliz@gnu.org>
4940         Improve doc string of 'set-goal-column'
4942         * lisp/simple.el (set-goal-column): Doc fix.  (Bug#23405)
4944 2016-04-30  Eli Zaretskii  <eliz@gnu.org>
4946         Fix the MSDOS build
4948         * config.bat:
4949         * msdos/sedlisp.inp:
4950         * msdos/sedlibmk.inp:
4951         * msdos/sedleim.inp:
4952         * msdos/sedadmin.inp:
4953         * msdos/sed6.inp:
4954         * msdos/sed3v2.inp:
4955         * msdos/sed2v2.inp:
4956         * msdos/sed1v2.inp: Adapt to Emacs 25.
4958         * src/process.c (remove_slash_colon): Move out of "#ifdef
4959         subprocesses" block, as it its called unconditionally.  Move
4960         ADD_SUBFEATURE calls into "#ifdef subprocesses" block, as they
4961         reference variables only defined in that block.
4962         * src/msdos.h: Provide prototypes for IT_set_frame_parameters,
4963         faccessat, msdos_fatal_signal, syms_of_msdos, pthread_sigmask,
4964         dos_keysns, dos_keyread, run_msdos_command, and
4965         syms_of_win16select, to avoid compiler warnings.
4966         * src/msdos.c (SYS_ENVIRON): Define to either '_environ' or
4967         'environ', depending on the DJGPP version.
4968         Remove declarations of externally-visible Lisp objects, like
4969         Qbackground_color and Qreverse.
4970         (run_msdos_command): First argument is not signed, not unsigned.
4971         Use SYS_ENVIRON.
4972         (sys_select): Use 'timespec_cmp' instead of 'timespec_sign', as
4973         the latter doesn't work when 'time_t' is an unsigned data type.
4974         This caused idle timers to behave incorrectly: they only fired
4975         after a keyboard input event.
4976         * src/frame.c (adjust_frame_size) [MSDOS]: Account for
4977         FRAME_TOP_MARGIN that isn't counted in the frame's number of
4978         lines, but dos_set_window_size needs it to be added.
4979         * src/lread.c (INFINITY, NAN) [DJGPP < 2.05]: Provide definitions.
4980         * src/fns.c (sort_vector_copy) [__GNUC__ < 4]: Provide a prototype
4981         that works around compilation errors with older GCC versions.
4982         * src/w16select.c: Don't declare QCLIPBOARD and QPRIMARY as Lisp
4983         Objects.
4984         * src/filelock.c [MSDOS]: Ifdef away most of the code.  Provide
4985         no-op implementations for 'lock_file' and 'unlock_file'.
4986         (Ffile_locked_p) [MSDOS]: Always return nil.  This avoids multiple
4987         ifdefs in all users of filelock.c functionality.
4988         * src/conf_post.h (EOVERFLOW, SIZE_MAX) [DJGPP < 2.04]: Define.
4989         * src/emacs.c [MSDOS]: Include dosfns.h, to avoid compiler
4990         warnings.
4991         * src/dosfns.h: Provide prototypes for dos_cleanup,
4992         syms_of_dosfns, and init_dosfns.
4993         * src/deps.mk (atimer.o): Depend on msdos.h.
4994         (emacs.o): Depend on dosfns.h.
4995         * src/atimer.c [MSDOS]: Include msdos.h, to avoid compiler
4996         warnings.
4998         * lisp/window.el (window--adjust-process-windows): Skip the body
4999         if 'process-list' is not available.  This avoids failure to start
5000         up on MS-DOS.
5001         * lisp/vc/diff.el (diff-no-select): Test 'make-process', not
5002         'start-process', as the latter is now available on all platforms.
5003         * lisp/textmodes/ispell.el (ispell-async-processp): Replace
5004         'start-process' with 'make-process' in a comment.
5005         * lisp/term/internal.el (IT-unicode-translations): Modify and add
5006         a few translations to display Info files with Unicode markup.  Fix
5007         an ancient off-by-one mismatch error with Unicode codepoints.
5008         * lisp/progmodes/compile.el (compilation-start): Test
5009         'make-process', not 'start-process', as the latter is now
5010         available on all platforms.
5011         * lisp/man.el (Man-build-man-command, Man-getpage-in-background):
5012         Test 'make-process', not 'start-process', as the latter is now
5013         available on all platforms.
5014         * lisp/international/mule-cmds.el (set-coding-system-map): Test
5015         'make-process', not 'start-process', as the latter is now
5016         available on all platforms.
5017         * lisp/eshell/esh-cmd.el (eshell-do-pipelines-synchronously): Doc
5018         fix.
5019         (eshell-execute-pipeline): Test 'make-process', not
5020         'start-process', as the latter is now available on all platforms.
5022 2016-04-30  Andreas Schwab  <schwab@linux-m68k.org>
5024         Remove \= from format string (bug#18190)
5026         * lisp/emacs-lisp/eieio.el (defclass): Remove \= from format
5027         string.
5029 2016-04-30  Eli Zaretskii  <eliz@gnu.org>
5031         Fix variable-pitch font on MS-Windows
5033         * lisp/faces.el (variable-pitch) [w32]: Name a variable-pitch font
5034         explicitly, to avoid Emacs picking up a bold-italic variant on
5035         some MS-Windows systems.  See this thread for details:
5036         http://lists.gnu.org/archive/html/emacs-devel/2016-04/msg00746.html.
5038 2016-04-29  Alan Mackenzie  <acm@muc.de>
5040         Restore follow-scroll-up/down to scrolling by the combined size of all windows
5042         Also rename the current follow-scroll-up/down functions to
5043         follow-scroll-up-window and follow-scroll-down-window.  These scroll by the
5044         height of the current window.
5046         This fixes bug #23347.
5048         * lisp/follow.el (follow-mode): Tweak the doc string.
5049         (follow-scroll-up-arg, follow-scroll-down-arg): new functions, extracted from
5050         follow-scroll-up/down.
5051         (follow-scroll-up-window, follow-scroll-down-window): Functions renamed from
5052         follow-scroll-up/down.
5053         (follow-scroll-up, follow-scroll-down): Restore the historic functionality.
5055 2016-04-29  Alan Mackenzie  <acm@muc.de>
5057         Revert unneeded change which harms syntactic parsing.  This fixes bug #23308.
5059         * lisp/progmodes/cc-engine.el (c-invalidate-state-cache): User
5060         c-state-old-cpp-end as an argument to c-with-all-but-one-cpps-commented-out
5061         regardless of the value of `here'.
5063 2016-04-29  Alan Mackenzie  <acm@muc.de>
5065         Correct indentation of ids in a C++ enum after a protection keyword.
5067         Also correct the misfontification of the last enum identifier.
5069         * lisp/progmodes/cc-engine.el (c-forward-keyword-prefixed-id): setq
5070         c-last-identifier-range to nil to ensure that only types recognized by this
5071         macro are set for fontification as types.
5072         (c-backward-typed-enum-colon): Function renamed from
5073         c-backward-colon-prefixed-type.  On finding a colon in the backward search,
5074         check it is preceded by an identifier rather than a keyword.
5076 2016-04-27  Glenn Morris  <rgm@gnu.org>
5078         * lisp/window.el (window--process-window-list): No-op if no processes.
5080         This avoids an issue with save-selected-window (from walk-windows)
5081         failing if frame.el is not loaded, eg if the terminal is resized
5082         during startup of a -nw CANNOT_DUMP build.  (Bug#23369).
5084 2016-04-27  Paul Eggert  <eggert@penguin.cs.ucla.edu>
5086         Port dumping to NetBSD with PaX
5088         Problem reported by Thomas Klausner (Bug#23371).
5089         * configure.ac (PAXCTL_dumped, PAXCTL_notdumped): New vars.
5090         Set them to setfattr and/or paxctl commands appropriate for
5091         GNU/Linux and/or NetBSD; the latter prefers paxctl +a.  Search
5092         for paxctl only if setfattr is not found.
5093         * src/Makefile.in (PAXCTL_dumped, PAXCTL_notdumped):
5094         New vars, replacing PAXCTL_if_present and SETFATTR_if_present.
5095         All uses changed.
5097 2016-04-27  Dmitry Gutov  <dgutov@yandex.ru>
5099         Don't mistake `for' inside a function for a part of array comprehension
5101         * lisp/progmodes/js.el (js--indent-in-array-comp): Also check the
5102         depth in parens between the bracket and `for' (bug#23391).
5104         * test/indent/js.js: Add a corresponding example.
5106 2016-04-27  Anders Lindgren  <andlind@gmail.com>
5108         Fix bug#22891: wrong terminal width when a fringe width is zero.
5110         When either fringe width is zero, Emacs reserved one column for a
5111         continuation glyph. Terminal windows does not take this into
5112         account when the frame is resized.
5114         * lisp/window.el (window-adjust-process-window-size): Use
5115         `window-max-chars-per-line' instead of `window-body-width'.
5116         * lisp/term.el (term-window-width): Remove function. (It does the
5117         same as `window-max-chars-per-line' but without recent bug fixes.)
5118         (term-mode): Use `window-max-chars-per-line' instead of
5119         `term-window-width'.
5121         Backport
5123         (cherry picked from commit 5b5403289888efe8783ae6a405845b925f544ec1)
5125 2016-04-27  Leo Liu  <sdl.web@gmail.com>
5127         Improve last change to vc-git-mode-line-string
5129         * lisp/vc/vc-git.el (vc-git-mode-line-string): Better fix that caches
5130           the result.
5132 2016-04-27  Stephen Berman  <stephen.berman@gmx.net>
5134         Todo mode doc bug fix
5136         * lisp/calendar/todo-mode.el (todo-show): Correct obsolete and no
5137         longer correct information in doc string.
5139 2016-04-27  Leo Liu  <sdl.web@gmail.com>
5141         Fix revision calculation in vc-git-mode-line-string
5143         * lisp/vc/vc-git.el (vc-git-mode-line-string): Use
5144           vc-git-working-revision because vc-working-revision needs to decide
5145           the backend and may return nil.
5147 2016-04-26  Jorgen Schaefer  <contact@jorgenschaefer.de>
5149         Add Python 3.5 keyword "await"
5151         * lisp/progmodes/python.el (python-font-lock-keywords): Add await as
5152         keyword.
5154 2016-04-26  Lele Gaifax  <lele@metapensiero.it>
5156         Add new keywords of Python 3.5
5158         Python 3.5, released in mid September 2015, introduced a few new
5159         keywords to better support asynchronous code, "async" and "await"
5160         in particular. See https://www.python.org/dev/peps/pep-0492/ for
5161         details. (Bug#21783)
5162         * lisp/progmodes/python.el (python-rx-constituents): Add async
5163         def/for/with as block-start and async def as defun.
5164         * lisp/progmodes/python.el (python-font-lock-keywords): Add async
5165         def/for/with as keyword.
5166         * test/automated/python-tests.el (python-indent-after-async-block-1,
5167         python-indent-after-async-block-2, python-indent-after-async-block-3,
5168         python-nav-beginning-of-defun-3): New tests to test indentation and
5169         navigation for the async keyword.
5171 2016-04-26  Mark Oteiza  <mvoteiza@udel.edu>
5173         Partially revert previous change.
5175         This commit partially reverts 0f332848cdb2ed6d46771914a911cbca194cd51a.
5176         * lisp/rect.el (rectangle--highlight-for-redisplay): Use region face.
5177         This function is for rectangle-mark-mode, not string-rectangle.
5179 2016-04-25  Paul Eggert  <eggert@penguin.cs.ucla.edu>
5181         Say why text-quoting-style is not a user option
5183         * doc/lispref/help.texi (Keys in Documentation):
5184         * etc/NEWS: Document why text-quoting-style is not a
5185         customizable variable (Bug#23372).
5187 2016-04-25  Glenn Morris  <rgm@gnu.org>
5189         * lisp/emacs-lisp/autoload.el (update-directory-autoloads):
5190         Future-proof against non-time-values.
5192 2016-04-25  Eli Zaretskii  <eliz@gnu.org>
5194         Don't mention ~/.emacs.bmk literally in doc strings
5196         * lisp/bookmark.el (bookmark-save-flag, bookmark-load): Don't
5197         mention "~/.emacs.bmk" explicitly as the default bookmark file in
5198         the doc strings.  (Bug#23350)
5200 2016-04-25  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
5202         * etc/NEWS: Explain why multicolor font display is disabled on OS X Cocoa.
5204 2016-04-24  Paul Eggert  <eggert@cs.ucla.edu>
5206         Port to Ubuntu 16.04 --enable-gcc-warnings
5208         * src/image.c (gif_load) [HAVE_GIF]: Fix pointer signedness problem.
5210 2016-04-24  Paul Eggert  <eggert@cs.ucla.edu>
5212         * etc/NEWS: Improve wording of vc-git-log-output-coding-system etc.
5214 2016-04-24  Tino Calancha  <f92capac@gmail.com>
5216         Don't kill ~/ if it's the top level directory
5218         * lisp/dired-aux.el (dired-kill-subdir): Don't kill ~/ if it's
5219         the top level directory (bug#23017).
5221 2016-04-23  Tino Calancha  <f92capac@gmail.com>  (tiny change)
5223         describe-char: fix insert char documentation
5225         * lisp/descr-text.el (describe-char):
5226         Only 'ucs-names' entries can be inserted by unicode name (Bug#23325).
5228 2016-04-23  Dmitry Gutov  <dgutov@yandex.ru>
5230         (vc-git-mode-line-string): Don't use `replace-regexp-in-string'
5232         * lisp/vc/vc-git.el (vc-git-mode-line-string): Use `substring'
5233         instead of `replace-regexp-in-string', because REV can be nil
5234         (e.g. when FILE is a directory, bug#23344), and we actually know
5235         we only need the first 4 characters.
5237 2016-04-22  Nicolas Petton  <nicolas@petton.fr>
5239         Bump version to 25.0.93
5241         * README:
5242         * configure.ac:
5243         * msdos/sed2v2.inp: Bump Emacs version to 25.0.93.
5245 2016-04-22  Nicolas Petton  <nicolas@petton.fr>
5247         * etc/AUTHORS: Update the AUTHORS file
5249         * admin/update_autogen: Use #!/usr/bin/env bash
5251         * admin/authors.el (authors-ignored-files): Additions.
5253 2016-04-22  Martin Rudalics  <rudalics@gmx.at>
5255         In x_set_window_size restore do_pending_window_change calls
5257         * src/xterm.c (x_set_window_size):
5258         * src/w32term.c (x_set_window_size): Restore
5259         do_pending_window_change calls after their stupid removal on
5260         2015-08-31.
5262 2016-04-21  Ilya Zakharevich  <ilya@math.berkeley.edu>
5264         Fix Alt-modified keys on some European MS-Windows keyboards
5266         * src/w32fns.c (deliver_wm_chars): If the reported character is
5267         ASCII, AND Meta modifier is a candidate, behave as if Meta is
5268         present, i.e. fall back to the legacy code.  (Bug#23251)
5270 2016-04-20  Eli Zaretskii  <eliz@gnu.org>
5272         Document 'help-go-forward'
5274         * doc/emacs/help.texi (Help Mode): Document and index
5275         'help-go-forward'.  (Bug#23323)
5277 2016-04-20  Eli Zaretskii  <eliz@gnu.org>
5279         Revert "Allow to customize names of executables used by grep.el"
5281         This reverts commit c93ae7a1e5a94541189a8f36984014344d561ffc.
5283 2016-04-20  Eli Zaretskii  <eliz@gnu.org>
5285         Revert "Don't use 'find-program'"
5287         This reverts commit 10597c977d55cbf9304b51c3b364ce58199384a0.
5289 2016-04-20  Eli Zaretskii  <eliz@gnu.org>
5291         Revert "Use 'grep-find-program' in check-declare.el"
5293         This reverts commit 33bef6e90bfd20609d044b8a076c1570c627684a.
5295 2016-04-20  Eli Zaretskii  <eliz@gnu.org>
5297         Clarify documentation of 'dired-mark-files-containing-regexp'
5299         * doc/emacs/dired.texi (Marks vs Flags): Clarify that for files
5300         visited in buffers, 'dired-mark-files-containing-regexp' searches
5301         the buffer rather than the file on disk.  (Bug#22694)
5303         * lisp/dired.el (dired-mark-files-containing-regexp): Clarify that
5304         for files visited in buffers, 'dired-mark-files-containing-regexp'
5305         searches the buffer rather than the file on disk.  (Bug#22694)
5307 2016-04-19  Eli Zaretskii  <eliz@gnu.org>
5309         Make tmm-menubar work in correct order again
5311         * lisp/tmm.el (tmm-prompt): Don't reverse 'tmm-km-list' right at the
5312         beginning; instead, pass a reversed copy to 'tmm--completion-table'.
5313         (Bug#23309)
5314         (tmm-menubar): Fix an off-by-one error in determining the menu
5315         item when the function is called with a non-nil 'x-position'
5316         argument.
5318 2016-04-18  Dmitry Gutov  <dgutov@yandex.ru>
5320         Remove the Meta-CVS VC backend
5322         * lisp/obsolete/vc-mcvs.el: Remove the file (bug#20475).
5324         * lisp/vc/log-view.el (log-view-extract-comment): Remove the MCVS
5325         reference.
5327         * doc/misc/efaq-w32.texi (Version control): Same.
5329 2016-04-18  Michael Albinus  <michael.albinus@gmx.de>
5331         Fix Bug#23276
5333         * lisp/autorevert.el (auto-revert-handler): Ignore errors
5334         coming from `revert-buffer'.  (Bug#23276)
5336 2016-04-17  Reto Zimmermann  <reto@gnu.org>
5338         Sync with upstream vhdl mode v3.38.1.
5340         * lisp/progmodes/vhdl-mode.el (vhdl-version, vhdl-time-stamp): Update.
5341         (vhdl-mode): No longer set comment-padding.
5342         (vhdl-begin-p): Handle missing space between keyword and parenthesis.
5343         (vhdl-beginning-of-statement-1): Fix indentation for "else generate".
5344         (vhdl-template-else, vhdl-template-elsif): Support generate statement.
5345         (vhdl-re-search-forward, vhdl-re-search-backward): Save match data.
5347 2016-04-16  Paul Eggert  <eggert@cs.ucla.edu>
5349         Tweak configure.ac syntax in recent module patch
5351         * configure.ac: Use proper Autoconf parenthesization in
5352         recent HAVE_MODULES patch.  Although this doesn’t fix any bugs,
5353         the previous syntax was confusing.
5355 2016-04-16  Paul Eggert  <eggert@cs.ucla.edu>
5357         Port to GCC 5.3.1 20160406 (Red Hat 5.3.1-6)
5359         * src/indent.c (Fvertical_motion): Pacify --enable-gcc-warnings
5360         when using the April 6 Fedora patch to GCC.
5362 2016-04-16  Mark Oteiza  <mvoteiza@udel.edu>
5364         Make sh-electric-here-document-mode accessible in sh-mode-hook. (Bug#3226)
5366         * lisp/progmodes/sh-script.el (sh-mode-hook): Add
5367         sh-electric-here-document-mode as an option and the default value.
5368         (sh-mode): Mention sh-mode-hook in docstring.
5369         (sh-mode): Remove sh-electric-here-document-mode invocation.
5371 2016-04-16  Glenn Morris  <rgm@gnu.org>
5373         * configure.ac (HAVE_MODULES): Exclude gnu-kfreebsd from previous.
5375 2016-04-16  Mark Oteiza  <mvoteiza@udel.edu>
5377         Make use of rectangle-preview custom variable.
5379         lisp/rect.el (rectangle--string-preview): Only create a preview if
5380         rectangle-preview is non-nil (Bug#23248).
5382 2016-04-16  Mark Oteiza  <mvoteiza@udel.edu>
5384         Make use of rectangle-preview face.
5386         * lisp/rect.el (rectangle--string-preview):
5387         (rectangle--highlight-for-redisplay): Replace 'region with
5388         'rectangle-preview (Bug#23248).
5390 2016-04-16  Eli Zaretskii  <eliz@gnu.org>
5392         Use 'grep-find-program' in check-declare.el
5394         * lisp/emacs-lisp/check-declare.el (check-declare-directory): Use
5395         'grep-find-program', not 'find-program'.
5397 2016-04-16  Eli Zaretskii  <eliz@gnu.org>
5399         Improve "C-h S" for cl-lib symbols
5401         * lisp/info-look.el: Add cl.info lookup to emacs-lisp-mode related
5402         manuals.  (Bug#23289)
5404 2016-04-16  Eli Zaretskii  <eliz@gnu.org>
5406         Fix minor issues with removing left or right fringes
5408         * lisp/window.el (window-max-chars-per-line): Account for
5409         'left-fringe-width' and 'right-fringe-width' variables.
5411         * doc/lispref/windows.texi (Window Sizes): Document the effect on
5412         window text width when setting the width of one or both fringes to
5413         zero.
5414         * doc/emacs/display.texi (Fringes): Document the effect on window
5415         text width when setting the width of one or both fringes to zero.
5416         (Bug#22891)
5418 2016-04-16  Eli Zaretskii  <eliz@gnu.org>
5420         Speed up redisplay in ansi-term mode
5422         * lisp/term.el (ansi-term): Force L2R 'bidi-paragraph-direction'.
5423         (Bug#20611)
5425 2016-04-16  Philipp Stephani  <phst@google.com>
5427         Simplify 8-bit character handling by terminal for 'raw-text'
5429         * lisp/international/mule.el (set-keyboard-coding-system): Treat
5430         'raw-text' as another coding type that requires 8-bit characters.
5431         * lisp/xt-mouse.el (xterm-mouse--read-coordinate): Use 'no-conversion'
5432         instead of 'latin-1'.
5434 2016-04-15  Glenn Morris  <rgm@gnu.org>
5436         * configure.ac (HAVE_MODULES): Treat gnu like gnu-linux.  (Bug#22722)
5438 2016-04-15  Eli Zaretskii  <eliz@gnu.org>
5440         Fix w32 memory-management problem when extending buffer text
5442         * src/w32heap.c (mmap_realloc): Only attempt extending a region if
5443         the following region has the same allocation base.  Also, use the
5444         original allocation base and enlarged size to commit reserved
5445         memory, to ensure that the allocation base stays at its original
5446         value.  This fixes several hard-to-debug problems whereby part of
5447         buffer text was overwritten with binary nulls, because
5448         mmap_realloc copied only part of buffer text when extending it.
5449         See
5450         http://lists.gnu.org/archive/html/emacs-devel/2016-04/msg00325.html
5451         and http://debbugs.gnu.org/cgi/bugreport.cgi?bug=23223#55 for two
5452         examples of the related problems.
5454 2016-04-14  Michael Albinus  <michael.albinus@gmx.de>
5456         Fix Bug#20637.  Do not merge to master
5458         * lisp/vc/vc-hooks.el (vc-state, vc-working-revision):
5459         Use `vc-backend' instead of `vc-responsible-backend'.  (Bug#20637)
5461         * test/automated/vc-tests.el (vc-test--state)
5462         (vc-test--working-revision): Deactivate now failing checks.
5464 2016-04-14  Paul Eggert  <eggert@cs.ucla.edu>
5466         substitute-command-keys keeps quotes’ text props
5468         Problem reported by Clément Pit--Claudel (Bug#23254).
5469         * src/doc.c: Include intervals.h.
5470         (Fsubstitute_command_keys): If the only substitutions are for
5471         quotes, copy the source string’s text properties too, since no
5472         substring lengths have changed.
5474 2016-04-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
5476         * src/xwidget.c (x_draw_xwidget_glyph_string): More clipping fixes.
5478 2016-04-12  Dmitry Gutov  <dgutov@yandex.ru>
5480         Add semantic-symref-filepattern-alist entry for lisp-interaction-mode
5482         * lisp/cedet/semantic/symref/grep.el
5483         (semantic-symref-filepattern-alist):
5484         Add entry for lisp-interaction-mode
5485         (http://debbugs.gnu.org/cgi/bugreport.cgi?bug=23223#47)
5487 2016-04-12  Dmitry Gutov  <dgutov@yandex.ru>
5489         Perform xref searches without visiting unopened files
5491         * lisp/progmodes/xref.el (xref-collect-references): Instead of
5492         calling `semantic-symref-find-references-by-name', use
5493         `semantic-symref-instantiate' and `semantic-symref-perform-search'
5494         directly.  Ask for `line-and-text' results (bug#23223).
5495         (xref-collect-matches): Include the line text in the "hit"
5496         structure.
5497         (xref--convert-hits): New function, split off from
5498         `xref-collect-references' and `xref-collect-matches', to convert
5499         "hits" to xref instance list.  Create a temporary buffer here, to
5500         use it for post-processing all hit lines.
5501         (xref--collect-matches): Use a different approach for non-visited
5502         files.  Insert the line text into the temp buffer, apply the
5503         file's major mode the best we can without reading its whole
5504         contents, syntax-propertize, and search in the result.
5505         (xref--collect-matches-1): Extract, to handle the common logic
5506         between two cases.
5507         (xref--find-buffer-visiting): New function, a wrapper around
5508         `find-buffer-visiting' to amortize its cost.
5510         * lisp/cedet/semantic/symref/idutils.el
5511         (semantic-symref-idutils--line-re): New constant.
5512         (semantic-symref-parse-tool-output-one-line): Support result type
5513         `line-and-text'.
5515         * lisp/cedet/semantic/symref/grep.el
5516         (semantic-symref-grep--line-re)
5517         (semantic-symref-parse-tool-output-one-line): Same.
5519         * lisp/cedet/semantic/symref/cscope.el
5520         (semantic-symref-cscope--line-re)
5521         (semantic-symref-parse-tool-output-one-line): Same.
5523         * lisp/cedet/semantic/symref/global.el
5524         (semantic-symref-global--line-re)
5525         (semantic-symref-parse-tool-output-one-line): Same.
5527 2016-04-12  Phillip Lord  <phillip.lord@newcastle.ac.uk>
5529         Revert "Prevent bootstrap autoload backup files"
5531         This reverts commit c23c965bb9d0a4bcc1b6158833ff99aa20fd53e9.
5533 2016-04-12  Paul Eggert  <eggert@cs.ucla.edu>
5535         Improve time zone documentation
5537         * doc/lispref/os.texi (Time Zone Rules):
5538         New section, mostly with material moved here from other sections.
5539         * doc/emacs/cmdargs.texi (General Variables):
5540         * doc/lispref/os.texi (Time Conversion, Time Parsing):
5541         Xref new section.
5542         * etc/NEWS, etc/PROBLEMS:
5543         * lisp/org/org.el (org-timestamp-format):
5544         * src/editfns.c (Fformat_time_string, Fdecode_time)
5545         (Fencode_time, Fcurrent_time_string, Fcurrent_time_zone)
5546         (Fset_time_zone_rule):
5547         When documenting time zone rule strings, mention the TZ
5548         environment variable in preference to mentioning the
5549         sort-of-internal function set-time-zone-rule.
5551 2016-04-12  Phillip Lord  <phillip.lord@russet.org.uk>
5553         Prevent bootstrap autoload backup files
5555          * lisp/emacs-lisp/autoload.el (autoload-find-generated-file): Suppress
5556            backups in newly created file.
5558           (autoload-ensure-default-file): Function split into two.
5559           (autoload-ensure-file-writeable): New function from split.
5561           (Bug#23203)
5563 2016-04-11  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
5565         Disable multicolor fonts on OS X since they are not supported on free systems
5567         * src/macfont.m (macfont_list): Don't use color bitmap fonts.
5569 2016-04-11  Paul Eggert  <eggert@cs.ucla.edu>
5571         Capitalize “Universal Time” in documentation
5573         It’s a proper noun.
5574         * lisp/vc/add-log.el (add-log-time-zone-rule): Also, fix typo by
5575         mentioning ‘format-time-string’ instead of ‘set-time-zone-rule’.
5577 2016-04-11  Eli Zaretskii  <eliz@gnu.org>
5579         Don't use 'find-program'
5581         * lisp/progmodes/project.el (project-file-completion-table): Use
5582         'grep-find-program', rather than the obsolete 'find-program'.
5584 2016-04-11  Paul Eggert  <eggert@cs.ucla.edu>
5586         Sync with gnulib
5588         This is for picky compilers whose stdint.h fails our C11 tests.
5589         Problem reported for clang by Philipp Stephani (Bug#23261).
5590         This incorporates:
5591         2016-04-11 stdint: port to strict C11 left shift
5592         * doc/misc/texinfo.tex, lib/stdint.in.h: Copy from gnulib.
5594 2016-04-11  Leo Liu  <sdl.web@gmail.com>
5596         Fix last change on 2016-01-02
5598         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2): Move
5599           `cl-errs-re' before `lisp--el-match-keyword'; don't use `prepend'
5600           which highlights `cl-errs-re' even in comments or strings.
5602 2016-04-11  Paul Eggert  <eggert@cs.ucla.edu>
5604         Port run-prolog EMACS to SWI-Prolog 7.2.3
5606         * lisp/progmodes/prolog.el (prolog-ensure-process):
5607         Work around incompatibility of SWI-Prolog 7.2.3 and earlier
5608         with the new way of dealing with the EMACS and INSIDE_EMACS
5609         environment variables.
5611 2016-04-10  Eli Zaretskii  <eliz@gnu.org>
5613         Avoid crashes due to unreasonably large or small text scaling
5615         * lisp/face-remap.el (text-scale-min-amount)
5616         (text-scale-max-amount): New functions.
5617         (text-scale-set, text-scale-increase): Use them to limit the text
5618         scaling to a reasonable range of values.  (Bug#23259)
5620 2016-04-10  Eli Zaretskii  <eliz@gnu.org>
5622         Improve documentation of 'with-eval-after-load'
5624         * lisp/subr.el (with-eval-after-load): Doc fix.  (Bug#23258)
5626 2016-04-10  Eli Zaretskii  <eliz@gnu.org>
5628         Improve handling of non-ASCII characters in Git log messages
5630         * lisp/vc/vc-git.el (vc-git-commits-coding-system): Now a defcustom.
5631         (vc-git-log-output-coding-system): New defcustom.
5632         (vc-git-print-log, vc-git-command, vc-git--call): Use
5633         'vc-git-log-output-coding-system' for reading stuff from Git.
5634         Don't override values of 'coding-system-for-read/write' if they
5635         are bound by caller -- this allows the user to force an encoding
5636         via "C-x RET c".
5637         (vc-git-checkin): On MS-Windows, pass the log message via a
5638         temporary file, to work around the limitations on passing
5639         non-ASCII characters via command-line arguments.  Force using the
5640         'locale-coding-system' for Git command-line arguments.  This fixes
5641         problems with non-ASCII commit log messages on MS-Windows.
5642         (Bug#23076)
5644         * etc/NEWS: Mention the new vc-git related defcustoms.
5646 2016-04-09  Philipp Stephani  <phst@google.com>
5648         Remove undefined behavior in OS X dumper.
5650         Found by Address Sanitizer.
5652         * src/unexmacosx.c (unexec_write): Use Mach virtual memory API to
5653         avoid undefined behavior when reading arbitrary memory.
5655 2016-04-09  Joakim Verona  <joakim@verona.se>
5657         Fix clipping of xwidgets
5659         * src/xwidget.c (x_draw_xwidget_glyph_string): Use window_box
5660         instead of calculating the clipping borders manually.  Suggested
5661         by YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>.
5663 2016-04-09  Eli Zaretskii  <eliz@gnu.org>
5665         Improve Lisp-level documentation of tooltips
5667         * doc/lispref/display.texi (Tooltips): New section.  (Bug#23246)
5668         (Display): Update the chapter menu.
5669         * doc/lispref/text.texi (Special Properties): Make the "tooltip"
5670         index entry more concrete.  Change the cross-reference to point to
5671         "Tooltips" in the ELisp manual.
5672         * doc/lispref/elisp.texi (Top): Update the master menu.
5673         * doc/emacs/frames.texi (Tooltips): Include more customization
5674         variables.  Add a cross-reference to the ELisp manual.
5676 2016-04-08  Glenn Morris  <rgm@gnu.org>
5678         Faces names should not end in "-face".
5680         * lisp/rect.el (rectangle-preview): Rename from rectangle-preview-face.
5681         * lisp/vc/vc-hooks.el (vc-state-base): Rename from vc-state-base-face.
5683 2016-04-08  Paul Eggert  <eggert@cs.ucla.edu>
5685         * src/xsmfns.c (syms_of_xsmfns): Remove stray "s in doc strings.
5687 2016-04-08  Paul Eggert  <eggert@cs.ucla.edu>
5689         Comint and compile no longer set EMACS
5691         This mostly restores the change that I reverted on March 23,
5692         fixing most of Bug#20202.  The only part of the change that is
5693         still reverted is the change to M-x term, where compatibility with
5694         current Bash constrains us from moving too quickly (Bug#20484).
5695         Problem reported by Phillip Lord in: http://bugs.gnu.org/20484#108
5696         * etc/NEWS: Document this.
5697         * lisp/comint.el (comint-exec-1):
5698         * lisp/net/tramp-sh.el (tramp-remote-process-environment):
5699         * lisp/progmodes/compile.el (compilation-start):
5700         Don’t set EMACS=t in the subsidiary process.
5702 2016-04-08  Stefan Monnier  <monnier@iro.umontreal.ca>
5704         * lisp/subr.el (read-key): Don't let the prompt linger (bug#22714)
5706 2016-04-08  Eli Zaretskii  <eliz@gnu.org>
5708         Allow to customize names of executables used by grep.el
5710         * lisp/progmodes/grep.el (grep-find-program): Renamed from
5711         'find-program', which was a variable.  All uses changed.
5712         (grep-xargs-program): Renamed from 'xargs-program', which was a
5713         variable.  All uses changed.
5714         (grep-program): Now a defcustom rather than a simple variable.
5715         (Bug#23219)
5717 2016-04-08  Alan Third  <alan@idiocy.org>
5719         Set locale encoding to UTF-8 when run from OS X GUI.
5721         * src/nsterm.m (ns_init_locale): Append .UTF-8 when setting LANG.
5723 2016-04-08  Eli Zaretskii  <eliz@gnu.org>
5725         Avoid signaling errors in 'M-n' at the 'C-x C-f' prompt
5727         * lisp/ffap.el (ffap-guess-file-name-at-point): Ignore errors
5728         while 'ffap-guesser' runs.  (Bug#23218)
5730 2016-04-08  Marcin Borkowski  <mbork@mbork.pl>
5732         Avoid infinite loop in 'studlify-word'
5734         * lisp/play/studly.el (studlify-region): Call
5735         'forward-word-strictly' and 'backward-word-strictly' instead of
5736         'forward-word' and 'backward-word'.  (Bug#19940)
5738 2016-04-07  Paul Eggert  <eggert@cs.ucla.edu>
5740         Don’t recommend obsolete EMACS env var
5742         * doc/misc/efaq.texi (Escape sequences in shell output):
5743         Remove long-obsolete (and now-confusing) notes about
5744         the EMACS environment variable in Emacs 21.1 and earlier.
5745         * doc/misc/efaq.texi (^M in the shell buffer):
5746         * etc/PROBLEMS:
5747         Remove obsolescent recommendation to consult the EMACS environment
5748         variable.
5750 2016-04-07  Glenn Morris  <rgm@gnu.org>
5752         * lisp/emacs-lisp/package.el: Change from a few days ago needs seq.
5754         * lisp/emacs-lisp/seq.el: Load cl-lib, not cl-extra.
5756 2016-04-07  Leo Liu  <sdl.web@gmail.com>
5758         Fix "Beginning of buffer" error in forward-page
5760         * lisp/textmodes/page.el (forward-page): Check before move to prevent
5761           "Beginning of buffer" error.
5763 2016-04-06  Dmitry Gutov  <dgutov@yandex.ru>
5765         Add a `transient' project type
5767         * lisp/progmodes/project.el (project-roots): Implement for the
5768         `transient' project type (bug#23224).
5769         (project-current): Instead of signaling an error, return a
5770         transient project instance rooted in the chosen directory.
5772 2016-04-06  Lars Magne Ingebrigtsen  <larsi@gnus.org>
5774         Revert "Backport HTTPS proxy fix"
5776         This reverts commit 2d1a6054b161bd1055d4feb11c8c5ac95543f5db.
5778         It's too late in the Emacs 25 release cycle to add things like this to
5779         Emacs 25.1.  It's border line new feature.
5781 2016-04-06  Tao Fang  <fangtao0901@gmail.com>
5783         Backport HTTPS proxy fix
5785         Cherry-picked from 3c623c26ae7d695746e05d8a2e16a67a6256b024
5787         Backport:
5789 2016-04-06  Paul Eggert  <eggert@cs.ucla.edu>
5791         Fix stability confusion in sort-tests
5793         Problem reported by Philipp Stephani (Bug#23205).
5794         * test/automated/sort-tests.el:
5795         (sort-tests--insert-words-sort-and-compare):
5796         Don’t assume that reversing a sorted list is the same
5797         as sorting with the reverse predicate.  This is not true
5798         for stable sorts when items compare equal.
5800 2016-04-05  Paul Eggert  <eggert@cs.ucla.edu>
5802         Avoid describe-key error with lambdas
5804         Problem reported by Sho Takemori (Bug#22716).
5805         * lisp/cedet/mode-local.el (describe-mode-local-overload)
5806         (xref-mode-local-overload): Use function-overload-p instead
5807         of assuming the argument is a symbol.
5809 2016-04-04  Artur Malabarba  <bruce.connor.am@gmail.com>
5811         * lisp/emacs-lisp/package.el (package-install-selected-packages):
5813         Skip unavailable packages.
5815 2016-04-04  Paul Eggert  <eggert@cs.ucla.edu>
5817         Sync with gnulib
5819         This incorporates:
5820         2016-04-03 stdint: detect good enough pre-C++11 stdint.h in C++ mode
5821         2016-04-01 stddef: support configuring with g++
5822         * doc/misc/texinfo.tex, lib/stddef.in.h, m4/stdint.m4:
5823         Copy from gnulib.
5825 2016-04-03  Paul Eggert  <eggert@cs.ucla.edu>
5827         Fix doc for Universal Time
5829         * doc/lispref/os.texi (Time of Day, Time Conversion):
5830         Be more careful about distinguishing UTC (which is not valid for
5831         pre-1961 time stamps) and UT (which is).
5832         (Time Parsing): Remove stray obsolete paragraph about a
5833         UNIVERSAL argument for ‘format-time-string’.
5835 2016-04-03  Michael Albinus  <michael.albinus@gmx.de>
5837         Handle Bug#23186
5839         * lisp/net/tramp.el (tramp-encoding-command-switch)
5840         (tramp-encoding-command-interactive):
5841         * lisp/net/tramp-sh.el (tramp-maybe-open-connection):
5842         `tramp-encoding-shell' could be nil.  (Bug#23186)
5844 2016-04-03  Paul Eggert  <eggert@cs.ucla.edu>
5846         More format-time-string change fixups
5848         * lisp/net/tramp-sh.el (tramp-sh-handle-set-file-times):
5849         * lisp/org/org.el (org-timestamp-format):
5850         Fix doc to match new format-time-string behavior.
5851         * lisp/org/ox-icalendar.el (org-icalendar-convert-timestamp):
5852         Use (not (not X)) to treat non-nil values of utc arg as UTC.
5854 2016-04-02  Paul Eggert  <eggert@cs.ucla.edu>
5856         make-xwidget unused arg cleanup
5858         * doc/lispref/display.texi (Xwidgets): Remove stray refs.
5859         * src/xwidget.c (syms_of_xwidget): Qwebkit, not Qwebkit_osr.
5861 2016-04-02  Joakim Verona  <joakim@verona.se>
5863         Remove unused arguments from make-xwidget
5865         The arguments BEG and END were unused, and are now removed.
5867         * doc/emacs/display.texi (Xwidgets): Document the change
5868         * lisp/xwidget.el (make-xwidget, xwidget-insert)
5869         (xwidget-webkit-new-session): Reflect changed arguments
5870         * src/xwidget.c (Fmake_xwidget, syms_of_xwidget): Reflect changed arguments
5872 2016-04-02  Eli Zaretskii  <eliz@gnu.org>
5874         Document incompatible changes in 'format-time-string'
5876         * etc/NEWS: Mention the incompatible change in the interpretation
5877         of the 3rd argument to 'format-time-string'.  (Bug#21943)
5879 2016-04-02  Eli Zaretskii  <eliz@gnu.org>
5881         Improve documentation of byte-code objects
5883         * doc/lispref/compile.texi (Byte-Code Objects): Document the
5884         integer format of the argument descriptor.  (Bug#23061)
5886 2016-04-02  Eli Zaretskii  <eliz@gnu.org>
5888         Adapt calls to 'format-time-string' to changes in Emacs 25
5890         * lisp/vc/pcvs-info.el (cvs-fileinfo-from-entries): Use t as the
5891         last argument to format-time-string.  (Bug#23128)
5892         * lisp/gnus/gmm-utils.el (gmm-format-time-string): Use t as the
5893         last argument to format-time-string, when the TZ argument is not a
5894         number, per the doc string.
5896 2016-04-02  Eli Zaretskii  <eliz@gnu.org>
5898         Improve vc-diff with Git backend
5900         * lisp/vc/vc-git.el (vc-git-command): Don't override
5901         coding-system-for-read/write if they are already bound.
5902         Suggested by joaotavora@gmail.com (João Távora).  (Bug#20892)
5903         (vc-git-print-log): Don't override coding-system-for-read if it's
5904         already bound.
5906 2016-04-01  Dmitry Gutov  <dgutov@yandex.ru>
5908         (js--continued-expression-p): Special-case unary plus and minus
5910         * lisp/progmodes/js.el (js--continued-expression-p): Make an
5911         effort to recognize unary plus and minus, in the contexts where
5912         they make sense (https://github.com/mooz/js2-mode/issues/322).
5914 2016-04-01  Alan Mackenzie  <acm@muc.de>
5916         Prevent C++ Mode wrongly fontifying some identifiers near templates as types
5918         This fixes debbugs #7917.
5920         * lisp/progmodes/cc-engine.el (c-forward-keyword-prefixed-id): Accept 'maybe
5921         (from c-forward-type) as sufficient to record an id.  Record type id as well
5922         as ref ids.
5923         (c-forward-name): Bind c-last-identifier-range around the call to
5924         c-forward-<>-arglist to prevent it getting corrupted.  Don't automatically
5925         assume an identifier is a type when a template ">" is followed by a "(".
5926         (c-forward-type): Don't automatically assume an identifier is a type when a
5927         template ">" is followed by a "(".
5929         * lisp/progmodes/cc-fonts.el (c-font-lock-<>-arglists): Don't fontify an
5930         identifier as a type when its associated ">" is followed by a "(".
5932 2016-04-01  Eli Zaretskii  <eliz@gnu.org>
5934         Avoid crashes due to insanely large columns in tabulated-list-format
5936         * src/xdisp.c (append_stretch_glyph, produce_xwidget_glyph)
5937         (produce_image_glyph): Limit the pixel width of the produced glyph
5938         to SHRT_MAX.  (Bug#23178)
5939         (append_composite_glyph, append_glyph, append_glyphless_glyph):
5940         Add assertions to verify that the pixel width of the glyph will
5941         never overflow a 'short'.
5942         * src/term.c (append_composite_glyph): Add assertion to verify
5943         that the pixel width of the glyph will never overflow a 'short'.
5945 2016-03-31  Mark Oteiza  <mvoteiza@udel.edu>
5947         Teach M-x disassemble a default argument.
5949         Adopts default argument in the same way as `describe-function'.
5950         * lisp/emacs-lisp/disass.el (disassemble): Default to function at point,
5951         if any.
5953 2016-03-31  Eli Zaretskii  <eliz@gnu.org>
5955         Fix EOL decoding in vc-annotate with SVN back-end on MS-Windows
5957         * lisp/vc/vc-annotate.el (vc-annotate): Force DOS EOL decoding on
5958         MS-Windows and MS-DOS, when processing the output of "svn annotate".
5960 2016-03-31  Michael Albinus  <michael.albinus@gmx.de>
5962         Fix OS X specific settings in tramp-tests
5964         * lisp/net/tramp-sh.el (tramp-maybe-open-connection): Use it.
5966         * lisp/net/tramp.el (tramp-get-local-locale): New defun.
5968         * test/automated/tramp-tests.el (tramp--test-darwin-p): Remove.
5969         (tramp--test-utf8): Improve settings of coding systems.
5970         Do not use `tramp--test-darwin-p' anymore.  (Bug#22145)
5972 2016-03-30  Alan Mackenzie  <acm@muc.de>
5974         Finish fixing a cacheing bug in CC Mode (see 2016-03-09)
5976         * lisp/progmodes/cc-cmds.el: (c-beginning-of-defun, c-end-of-defun): Remove
5977         superfluous invocations of c-self-bind-state-cache.
5979         * lisp/progmodes/cc-defs.el: (c-self-bind-state-cache): Copy and terminate
5980         markers correctly.
5982         * lisp/progmodes/cc-engine.el (c-record-parse-state-state): Terminate stale
5983         markers.
5985 2016-03-30  Alan Mackenzie  <acm@muc.de>
5987         Merge branch 'emacs-25' of /home/acm/emacs/emacs.git/emacs-25 into emacs-25
5989 2016-03-29  Xue Fuqiao  <xfq.free@gmail.com>
5991         * doc/lispref/text.texi (Columns): Remove a nonexistent reference.
5993         The example was removed by Chong Yidong on Mar 5, 2012.
5995 2016-03-29  Paul Eggert  <eggert@cs.ucla.edu>
5997         * doc/man/emacsclient.1: Document +line:column option.
5999 2016-03-29  Eli Zaretskii  <eliz@gnu.org>
6001         Fix rare problems with echo-area display and multiple frames
6003         * src/xdisp.c (redisplay_window): Bind inhibit-redisplay non-nil
6004         around the call to x_consider_frame_title, to prevent
6005         resize_mini_window from undoing echo-area display.  (Bug#23124)
6007 2016-03-29  Alan Mackenzie  <acm@muc.de>
6009         In M-%, avoid making buffer-local binding of text-property-default-nonsticky
6011         This would happen when that variable already has a buffer local binding.  Such
6012         a binding would not be seen by read-from-minibuffer.  This fixes bug #23127.
6014         * lisp/replace.el (query-replace-read-from): Move the binding of
6015         text-property-default-nonsticky to inside of a new with-current-buffer buffer
6016         form with the minibuffer as argument.
6018 2016-03-27  Dmitry Gutov  <dgutov@yandex.ru>
6020         Remove prog-indentation-context
6022         * lisp/progmodes/prog-mode.el: (prog-indentation-context)
6023         (prog-first-column, prog-widen): Remove, as discussed in
6024         http://lists.gnu.org/archive/html/emacs-devel/2016-03/msg01425.html.
6026         * doc/lispref/text.texi (Mode-Specific Indent): Remove references
6027         to them.
6029         * etc/NEWS: Ditto.
6031         * lisp/progmodes/python.el: (prog-widen, prog-first-column):
6032         Remove the compatibility aliases and all uses.
6034         Do not merge to master.
6036 2016-03-27  Paul Eggert  <eggert@cs.ucla.edu>
6038         * src/font.c (QCuser_spec): Add missing colon to :user-spec.
6040 2016-03-27  Eli Zaretskii  <eliz@gnu.org>
6042         Don't start the 'midnight' timer twice
6044         * lisp/midnight.el (midnight-mode): Avoid starting the midnight
6045         timer twice when activating the mode the first time.  (Bug#23123)
6047 2016-03-27  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
6049         * src/xwidget.c (Fxwidget_resize): Fix inappropriate use of XFASTINT.
6051 2016-03-26  Stephen Berman  <stephen.berman@gmx.net>
6053         Fix todo-mode category movement
6055         * lisp/calendar/todo-mode.el (todo-move-category): Use moved
6056         category's existing categories sexp instead of invoking
6057         todo-update-categories-sexp in file moved to, in order to take
6058         archived items into account.  If the moved category has archived
6059         items, handle the source archive buffer properly.  Remove
6060         superfluous code.
6062 2016-03-26  Glenn Morris  <rgm@gnu.org>
6064         * lisp/xt-mouse.el (xterm-mouse-utf-8): Add :version.
6066 2016-03-26  Eli Zaretskii  <eliz@gnu.org>
6068         Ignore non-nil. non-cons values of unread-command-events
6070         * src/keyboard.c (requeued_events_pending_p, read_char)
6071         (Finput_pending_p): Use CONSP instead of !NILP to see if there are
6072         unread command events to be processed.  (Bug#22976)
6074 2016-03-26  Eli Zaretskii  <eliz@gnu.org>
6076         Improve documentatuon of 'truncate-partial-width-windows'
6078         * src/xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>:
6079         Clarify in the doc string how the width of partial-width windows
6080         is computed for the purposes of truncation decision.  (Bug#4338)
6082         * doc/emacs/windows.texi (Split Window): Clarify how the width of
6083         windows is calculated for the purposes of truncation decision.
6084         * doc/emacs/display.texi (Line Truncation): Remove a redundant
6085         index entry.
6087 2016-03-25  Paul Eggert  <eggert@cs.ucla.edu>
6089         * src/ftfont.c (ftfont_shape_by_flt): Parenthesize as per GNU style.
6091 2016-03-25  Eli Zaretskii  <eliz@gnu.org>
6093         Fix 'dired-goto-file' in Dired buffers produced by find-dired
6095         * lisp/dired.el (dired-goto-file): Try looking for the file as a
6096         relative name with leading sub-directories, before looking for the
6097         basename alone.  (Bug#23089)
6099 2016-03-25  Nicolas Petton  <nicolas@petton.fr>
6101         Fix map-put and map-delete for alists (Bug#23105)
6103         * lisp/emacs-lisp/map.el (map-put): Do not bind the evaluated place
6104         expression to a new symbol.
6105         * test/automated/map-tests.el: Add a regression test.
6107 2016-03-25  Eli Zaretskii  <eliz@gnu.org>
6109         Minor copyedits of documentation for temporary displays
6111         * doc/emacs/windows.texi (Temporary Displays): Improve indexing.
6112         Minor changes in wording.
6113         (Window Choice, Displaying Buffers, Pop Up Window): Disambiguate
6114         index entries for 'display-buffer'.
6116         * etc/NEWS: Minor rewording of the entry about temporary displays.
6118 2016-03-25  Philipp Stephani  <phst@google.com>
6120         Add customization option for using UTF-8 coordinates in xt-mouse
6122         * lisp/xt-mouse.el (xterm-mouse-utf-8): New customization option.
6123         (xterm-mouse--read-coordinate): New function to replace
6124         `xterm-mouse--read-utf8-char'; uses UTF-8 only if enabled.
6125         (xterm-mouse--read-number-from-terminal): Adapt to new name.
6126         (xterm-mouse-tracking-enable-sequence)
6127         (xterm-mouse-tracking-disable-sequence): Replace constants with
6128         functions, mark constants as obsolete.
6129         (xterm-mouse--tracking-sequence): New helper function.
6130         (turn-on-xterm-mouse-tracking-on-terminal): Use new functions;
6131         enable UTF-8 only if customization option says so; store UTF-8
6132         flag in terminal parameter.  (Bug#23009)
6134         * test/automated/xt-mouse-tests.el: Add tests for xt-mouse.el.
6136 2016-03-25  Eli Zaretskii  <eliz@gnu.org>
6138         Minor doc string fixes in replace.el
6140         * lisp/replace.el (query-replace, query-replace-regexp)
6141         (query-replace-regexp-eval, map-query-replace-regexp)
6142         (replace-string, replace-regexp): Clarify in doc strings that
6143         these commands operate from point to the end of the buffer's
6144         accessible portion.  (Bug#23067)
6146 2016-03-25  Eli Zaretskii  <eliz@gnu.org>
6148         Fix scrolling upwards with 'xwidget-webkit-browse-url'
6150         * src/xwidget.c (Fxwidget_set_adjustment): Use CHECK_NUMBER instead
6151         of CHECK_NATNUM.  Suggested by Shayan Pirani <shayanpirani@gmail.com>.
6152         (Bug#22918)
6154 2016-03-25  K. Handa  <handa@gnu.org>
6156         Fix display of Indic scripts
6158         * src/ftfont.c (ftfont_shape_by_flt): For combining characters out
6159         of the range U+300...U+36F, use the "combining" FLT only with
6160         non-OTF fonts.
6162 2016-03-25  Eli Zaretskii  <eliz@gnu.org>
6164         Fix splash screen display at startup
6166         * src/frame.c (DEFAULT_ROWS): Enlarge to 36, so that the initial
6167         window displayed by "emacs -q" has enough space to show the whole
6168         text even if it includes 2 lines talking about recovering crashes
6169         sessions.  (Bug#23074)
6171         * lisp/startup.el (use-fancy-splash-screens-p): Fix off-by-one
6172         error when computing the window-height from frame-height.
6174         * etc/NEWS: Mention the change.
6176 2016-03-25  Martin Rudalics  <rudalics@gmx.at>
6178         Describe temporary displays in Emacs manual
6180         * doc/emacs/emacs.texi (Temporary Displays): New subsubsection.
6181         * doc/emacs/windows.texi (Window Choice): Minor fixes.
6182         (Temporary Displays): New subsubsection describing display of
6183         temporary buffers and `temp-buffer-resize-mode'.
6185 2016-03-24  Paul Eggert  <eggert@cs.ucla.edu>
6187         Avoid stray As next to IDLW icons
6189         * lisp/progmodes/idlw-toolbar.el (idlwave-toolbar-add-everywhere):
6190         Use "" for empty labels, not "a", as the latter now displays stray
6191         "A"s (Bug#18997).
6193 2016-03-24  Paul Eggert  <eggert@cs.ucla.edu>
6195         Avoid GTK 3 crash with icons and masks
6197         Problem reported by Mosè Giordano (Bug#18997).
6198         * src/gtkutil.c (xg_get_pixbuf_from_pixmap): Remove.
6199         (xg_get_pixbuf_from_pix_and_mask): Do not use
6200         xg_get_pixbuf_from_pixmap, as it is poorly documented.  Instead,
6201         invoke XGetPixel directly.  This is slow but speed is not
6202         important here.  Also, fail for unusual situations (not TrueColor,
6203         or images that are not 8 bits per sample) instead of displaying
6204         junk or crashing.
6206 2016-03-24  Juri Linkov  <juri@linkov.net>
6208         * lisp/minibuffer.el (minibuffer-completion-help): Use fit-window-to-buffer
6210         instead of shrink-window-if-larger-than-buffer.  (Bug#23092)
6212 2016-03-24  Eli Zaretskii  <eliz@gnu.org>
6214         Define make_save_ptr_ptr unconditionally
6216         * src/alloc.c (make_save_ptr_ptr): Remove the !(defined
6217         USE_X_TOOLKIT || defined USE_GTK) conditional.  Reported by
6218         Philipp Stephani <phst@google.com>.  (Bug#23101)
6220 2016-03-24  Eli Zaretskii  <eliz@gnu.org>
6222         Preserve current buffer when popping up TTY menus
6224         * src/term.c (tty_menu_show): Be sure to save and restore the
6225         current buffer around TTY menu pop-ups.  (Bug#23101)
6227 2016-03-24  Eli Zaretskii  <eliz@gnu.org>
6229         Improve font selection by family on MS-Windows
6231         * src/w32font.c (w32font_list_internal): Allow 'ascii-0' charset,
6232         in addition to 'iso10646-1', 'unicode-bmp', and 'unicode-sip'.
6233         This avoids rejecting many font families whose members are shown
6234         by 'font-family-list', in particular 'courier' requested by
6235         info.el.  Without this change, many values of ':family' attribute
6236         of a face have no effect on MS-Windows, because they are rejected
6237         due to bogus mismatch of the charset.
6239 2016-03-23  Paul Eggert  <eggert@penguin.cs.ucla.edu>
6241         Comint, term, and compile now set EMACS
6243         This fixes directory tracking in ansi-term, at the expense of
6244         breaking some usages of 'configure'.  Setting EMACS is meant to be
6245         a somewhat temporary measure, until Bash 4.4 comes out and is
6246         common.  (Bug#20484).
6247         * etc/NEWS: Document this.
6248         * lisp/comint.el (comint-exec-1):
6249         * lisp/net/tramp-sh.el (tramp-remote-process-environment):
6250         * lisp/progmodes/compile.el (compilation-start):
6251         * lisp/term.el (term-exec-1):
6252         Go back to setting the EMACS environment variable, for backward
6253         compatibility to Bash 4.3 and earlier.
6255 2016-03-23  Paul Eggert  <eggert@penguin.cs.ucla.edu>
6257         Ignore more merges when generating ChangeLog
6259         * build-aux/gitlog-to-emacslog: Ignore all merges from gnu.org,
6260         not merely those from master and emacs-NN.  The ChangeLog entries
6261         they generate are not that useful.
6263 2016-03-23  Paul Eggert  <eggert@cs.ucla.edu>
6265         Sync with gnulib
6267         This incorporates:
6268         2016-03-22 gitlog-to-changelog: suppress ignored chatter
6269         2016-03-21 sys_select: port to new Cygwin
6270         * build-aux/gitlog-to-changelog, doc/misc/texinfo.tex:
6271         * lib/sys_select.in.h: Copy from gnulib.
6273 2016-03-23  Paul Eggert  <eggert@cs.ucla.edu>
6275         Resurrect GNUS-NEWS autogeneration
6277         * doc/misc/gnus-coding.texi (Gnus Maintenance Guide): Update
6278         GNUS-NEWS section to match current file locations and procedure.
6279         * etc/GNUS-NEWS: Regenerate by using new procedure.
6280         * lisp/Makefile.in (update-gnus-news): New rule, containing a
6281         procedure for building GNUS-NEWS.  The old procedure got lost
6282         somehow when Gnus was merged into Emacs.
6284 2016-03-22  Anders Lindgren  <andlind@gmail.com>
6286         Make `toggle-frame-maximized' respect the dock on OS X (bug#22988).
6288         * src/nsterm.m (ns_screen_margins): New function.
6289         (ns_screen_margins_ignoring_hidden_dock): New function.
6290         (ns_menu_bar_height): Reimplement in terms of `ns_screen_margins'.
6291         ([EmacsWindow zoom:]): Take all screen margins (except those
6292         originating from a hidden dock) into account.
6294 2016-03-22  Eli Zaretskii  <eliz@gnu.org>
6296         Fix bug in displaying header line with a box face
6298         * src/xdisp.c (get_next_display_element): Handle the case when a
6299         display string acquires the box face from an underlying string,
6300         not from the buffer.  (Bug#23091)
6302 2016-03-21  Kaushal Modi  <kaushal.modi@gmail.com>
6304         Fix an Isearch var to be a string (Bug#23038)
6306         * lisp/isearch.el (isearch--describe-regexp-mode): The `description' var
6307           needs to always be a string.  Add the missing default case for the
6308           cond form that ensures that.
6310         Before this bug fix, for the events when `regexp-function' and
6311         `search-default-mode' both were nil, `description' also stayed nil.  So
6312         when `space-before' was non-nil, the "non-string" `description'
6313         (with a value of nil) got passed as an argument to
6314         `replace-regexp-in-string' (where a string was expected).  That caused
6315         the error described in Bug#23038.
6317 2016-03-21  Leo Liu  <sdl.web@gmail.com>
6319         Fix (args-out-of-range 1) error in cursor-sensor--detect
6321         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor--detect): Don't
6322           hard-code (point-min) as 1 which fails in narrowed buffers.
6324 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
6326         Render empty <ul><li><ul> correctly
6328         * lisp/net/shr.el (shr-tag-ul): Render empty <ul><li><ul>
6329         correctly (bug#22964).
6330         (cherry picked from commit 4f6ea3988b66cf132c67fd0cc26d12eb9a300ba1)
6332         Backport:
6334 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
6336         Ignore invalid base64 encoded embedded images
6338         * lisp/net/shr.el (shr-image-from-data): Ignore invalid base64
6339         encoded embedded images (bug#22928).
6340         (cherry picked from commit f2da80d0e1ccd121c4891e869a45aeb9c6b1795d)
6342         Backport:
6344 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
6346         Fix <p> and <div> newlines with or without <li> in shr
6348         * lisp/net/shr.el (shr-ensure-newline): Respect that we're in
6349         a <li>, if we are, and don't insert newlines there.
6350         (shr-ensure-paragraph): When mixing newlines and paragraph
6351         ensurements, don't insert too many blank lines.
6352         (shr-tag-div): A <div> shouldn't introduce a paragraph, but a
6353         new line.
6354         (cherry picked from commit 292921facaff2f02ac4e8602c1f7ecbdcfe7ef45)
6356         Backport:
6358 2016-03-19  Eli Zaretskii  <eliz@gnu.org>
6360         Avoid errors in 'newline'
6362         * lisp/simple.el (newline): Don't barf if invoked with
6363         non-positive argument in the middle of a line.  (Bug#22490)
6365 2016-03-19  Michael Albinus  <michael.albinus@gmx.de>
6367         Fix Bug#23032
6369         * doc/misc/eshell.texi (Arguments): Mention the pipe symbol in
6370         remote file names.  (Bug#23032)
6372 2016-03-19  Eli Zaretskii  <eliz@gnu.org>
6374         Adjudicate review comments in abbrevs.texi
6376         * doc/lispref/abbrevs.texi (Abbrev Files, Abbrev Expansion):
6377         * doc/emacs/abbrevs.texi (Dabbrev Customization): State the
6378         default values of variables.  Suggested by Steve Byrne
6379         <sbb@penguinis.org>.  (Bug#23016)
6381         * admin/release-process (Check manuals): Mark files reviewed by
6382         Steve Byrne.
6384 2016-03-18  Dmitry Gutov  <dgutov@yandex.ru>
6386         Fixup the "normal" matcher; highlight global var symbols, too
6388         * lisp/progmodes/ruby-mode.el (ruby-font-lock-keywords): Highlight
6389         operator name symbols with the "normal" matcher (it actually
6390         needed updating).  Highlight global variable symbols, too.
6392 2016-03-18  Marcin Borkowski  <mbork@mbork.pl>
6394         Honor prefix arg in doc-view-next-line-or-next-page
6396         * lisp/doc-view.el (doc-view-next-line-or-next-page): Take the
6397         prefix argument into consideration when continuous scrolling is
6398         not in effect (i.e., by default) (bug#19559).
6400 2016-03-18  Paul Eggert  <eggert@cs.ucla.edu>
6402         Port to strict C99 offsetof
6404         * src/bidi.c (bidi_copy_it):
6405         * src/lisp.h (CHAR_TABLE_EXTRA_SLOTS):
6406         Use only a single identifier as the second argument of offsetof.
6407         Found by using clang -pedantic.
6409 2016-03-18  Paul Eggert  <eggert@cs.ucla.edu>
6411         Port to GTK with strict C11 compiler
6413         * src/gtkutil.c (xg_create_frame_widgets, xg_toggle_notify_cb):
6414         Cast from function type to void * where the C standard requires this.
6415         This works around a problem in the prototypes for
6416         g_signal_handler_find and g_signal_handlers_block_by_func, which
6417         use gpointer instead of GCallback.  Found by using gcc -pedantic.
6419 2016-03-18  Paul Eggert  <eggert@cs.ucla.edu>
6421         Port to GTK with strict C99 compiler
6423         * src/emacsgtkfixed.c: Use workaround for GNOME bug 683906 only
6424         in glib 2.35.6 and earlier, since the bug is fixed in 2.35.7.
6425         * src/emacsgtkfixed.c (EmacsFixedPrivate):
6426         * src/emacsgtkfixed.h (EmacsFixedClass):
6427         Remove duplicate typedef, which strict C99 does not allow (Bug#23003).
6429 2016-03-17  Anders Lindgren  <andlind@gmail.com>
6431         Avoid screen artifacts with new OS X visible bell after scrolling
6433         * src/nsterm.m (EmacsBell): Save NSView when displaying the
6434         visible bell and set `needsDisplay' when removed.
6435         (hide_bell): Trace.
6436         (ns_copy_bits): Trace.
6438 2016-03-17  Michael Albinus  <michael.albinus@gmx.de>
6440         Suppress some Tramp tests for OSX, do not merge with master
6442         * test/automated/tramp-tests.el (tramp--test-darwin-p): New defun.
6443         (tramp--test-utf8): Use it.  (Bug#22145)
6445 2016-03-17  Glenn Morris  <rgm@gnu.org>
6447         * lisp/progmodes/xref.el (xref-buffer-name, xref--window):
6448         Move definitions before use.
6450         * lisp/gnus/mm-decode.el (gnus-format-message): Autoload it.
6452         * lisp/mail/rmail.el (rmail-mime-entity-truncated): Declare.
6454 2016-03-17  Glenn Morris  <rgm@gnu.org>
6456         Address compilation warnings due to 2016-01-03 mml refactoring.
6458         * lisp/gnus/mml-sec.el (password-cache, mm-encode): Require.
6459         (message-options-get): Autoload.
6460         (message-options-set): Declare.
6461         (mml-secure-cache-passphrase, mml-secure-passphrase-cache-expiry):
6462         Simplify default value.
6463         * lisp/gnus/mml-smime.el (message-options-set): Remove declaration.
6464         * lisp/gnus/mml1991.el, lisp/gnus/mml2015.el:
6465         No longer a need for password-cache.
6467 2016-03-16  Stefan Monnier  <monnier@iro.umontreal.ca>
6469         * lisp/emacs-lisp/smie.el (smie-indent-keyword): Don't burp in strings
6471         (bug#22960).
6473 2016-03-16  Glenn Morris  <rgm@gnu.org>
6475         * lisp/dired-x.el (dired-omit-here-always): Correct error message
6476         for 2016-01-25 change.
6478         * lisp/dired-x.el (dired-omit-here-always): Replace undefined function
6479         removed 2016-01-30.
6481         * lisp/xml.el (xml-parse-tag-1): Replace undefined function.
6483 2016-03-16  Eli Zaretskii  <eliz@gnu.org>
6485         Avoid segfaults due to frame image cache being absent
6487         * src/image.c (cache_image): If the frame doesn't have an image
6488         cache, create it.  (Bug#23028)
6490 2016-03-16  Eli Zaretskii  <eliz@gnu.org>
6492         Improve documentation of glyphless-character display
6494         * doc/emacs/display.texi (Text Display): Document and index the
6495         'glyphless-char' face.
6497 2016-03-16  Dmitry Gutov  <dgutov@yandex.ru>
6499         Support safe navigation operator in non-SMIE indentation code
6501         * lisp/progmodes/ruby-mode.el (ruby-calculate-indent):
6502         Support safe navigation operator in non-SMIE indentation code.
6503         Cherry-picked from
6504         https://github.com/ruby/ruby/commit/68e16ddd7961b86e5013e62ae2954e88638de058.
6506 2016-03-16  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
6508         Move xsd:base64Binary decoding fix to debbugs.el 0.9.1
6510         * lisp/net/soap-client.el (soap-encode-xs-basic-type): Do not
6511         assume xsd:base64Binary values are UTF-8 strings.
6512         (soap-decode-xs-basic-type): Likewise.
6513         (soap-invoke): Document xsd:base64Binary handling.
6515 2016-03-15  Dmitry Gutov  <dgutov@yandex.ru>
6517         Fix Ruby's operator precedence
6519         * lisp/progmodes/ruby-mode.el (ruby-smie-grammar):
6520         Rearrange the smie-precs->prec2 form.
6522 2016-03-15  Dmitry Gutov  <dgutov@yandex.ru>
6524         (ruby-interpolation-inside-another-interpolation): New failing test
6526         * test/automated/ruby-mode-tests.el
6527         (ruby-interpolation-inside-another-interpolation):
6528         New failing test.
6530 2016-03-15  Paul Eggert  <eggert@cs.ucla.edu>
6532         Port to clang 3.7.0 on x86-64
6534         * configure.ac: Use AS_IF so that gl_WARN_ADD’s prerequisites are
6535         not done conditionally.  This helps clang, which needs
6536         -Wunknown-warning-option later when configured with warnings.
6537         * src/editfns.c (invalid_time): Now _Noreturn, since clang isn’t
6538         smart enough to figure this out on its own if warnings are enabled.
6539         (lisp_time_struct): Redo for clarity, and to pacify clang.
6540         * src/xfns.c (x_real_pos_and_offsets) [USE_XCB]: Don’t use
6541         uninitialized locals.  This avoids undefined behavior and pacifies
6542         clang.
6544 2016-03-15  Glenn Morris  <rgm@gnu.org>
6546         * test/automated/package-test.el (package-test-signed): Tweak skip
6547         condition, for hydra.
6549 2016-03-15  Paul Eggert  <eggert@cs.ucla.edu>
6551         Sync with gnulib
6553         This incorporates:
6554         2016-03-15 time_rz: port to clang -Wunused-const-variable
6555         2016-03-15 select: port more to Intel 2016.1.150 compiler
6556         * lib/sys_select.in.h, lib/time_rz.c: Copy from gnulib.
6558 2016-03-15  Eli Zaretskii  <eliz@gnu.org>
6560         Fix startup of "emacs -nw" on systems that CANNOT_DUMP
6562         * src/xdisp.c (syms_of_xdisp) <resize-mini-windows>: Initialize to
6563         nil.
6565         * lisp/loadup.el <resize-mini-windows>: Set to 'grow-only' after
6566         loading window.el.  (Bug#22975)
6568 2016-03-14  Dmitry Gutov  <dgutov@yandex.ru>
6570         Do not tokenize a comment before continuation as ';'
6572         * lisp/progmodes/ruby-mode.el (ruby-smie--implicit-semi-p):
6573         Account for a comment right after point.
6575 2016-03-14  Dmitry Gutov  <dgutov@yandex.ru>
6577         Don't misindent arguments of a method call inside continuation
6579         * lisp/progmodes/ruby-mode.el (ruby-smie-rules):
6580         Use smie-indent-virtual instead of smie-rule-parent (bug#23015).
6581         Simplify the traversal loop.
6583 2016-03-14  Stefan Monnier  <monnier@iro.umontreal.ca>
6585         * src/keyboard.c (echo_keystrokes_p): Don't test cursor_in_echo_area
6587         (read_key_sequence): Test it here, as before.
6588         (bug#22825).
6590 2016-03-14  Paul Eggert  <eggert@cs.ucla.edu>
6592         ASCII-only etc/NEWS etc.
6594         * etc/NEWS, nextstep/README: Revert the recently-added curved
6595         quotes, and stick to ASCII.  This typically involves replacing
6596         curved with straight quotes.  Since etc/NEWS is viewed so often by
6597         UTF-8-ignorant tools, rewrite its non-ASCII text to spell out
6598         Unicode, e.g., replace ‘‒’ with ‘U+2012 (FIGURE DASH)’.
6600 2016-03-14  Alan Mackenzie  <acm@muc.de>
6602         Fix a cacheing bug, which led to inordinately slow c-beginning-of-defun.
6604         * lisp/progmodes/cc-defs.el (c-self-bind-state-cache): New macro.
6606         * lisp/progmodes/cc-engine.el (c-ssb-lit-begin): Always call c-parse-state
6607         rather than just using the cache variable c-state-cache.
6608         (c-syntactic-skip-backward): Invoke c-self-bind-state-cache to isolate calls
6609         to c-parse-state from other uses of the parse state cache.
6611         * lisp/progmodes/cc-cmds.el (c-beginning-of-defun, c-end-of-defun): Invoke
6612         c-self-bind-state-cache around the processing, replacing flawed bindings of
6613         c-state-cache.
6615 2016-03-14  Alan Mackenzie  <acm@muc.de>
6617         Fix a cacheing bug, which led to inordinately slow c-beginning-of-defun.
6619         * lisp/progmodes/cc-defs.el (c-self-bind-state-cache): New macro.
6621         * lisp/progmodes/cc-engine.el (c-ssb-lit-begin): Always call c-parse-state
6622         rather than just using the cache variable c-state-cache.
6623         (c-syntactic-skip-backward): Invoke c-self-bind-state-cache to isolate calls
6624         to c-parse-state from other uses of the parse state cache.
6626         * lisp/progmodes/cc-cmds.el (c-beginning-of-defun, c-end-of-defun): Invoke
6627         c-self-bind-state-cache around the processing, replacing flawed bindings of
6628         c-state-cache.
6630 2016-03-14  Kaushal Modi  <kaushal.modi@gmail.com>
6632         Fix Isearch prompt when invoked with an argument
6634         * lisp/isearch.el (isearch--describe-regexp-mode): With
6635         `search-default-mode' set to nil, if user does C-u C-s, the minibuffer
6636         now displays "Regexp I-search: " again.  But if the user has set
6637         `search-default-mode' to t, and then does C-s, the minibuffer now
6638         displays "I-search: " because the default search mode is now regexp
6639         mode.  Comments have been added to explain the priority of conditions
6640         in the `cond' form.  (Bug#22991)
6642 2016-03-14  Cesar Quiroz  <cesar.quiroz@gmail.com>  (tiny change)
6644         Fix a typo in the Emacs manual
6646         * doc/emacs/maintaining.texi (VC Directory Commands): Fix a typo
6647         in a command name.
6649 2016-03-14  Paul Eggert  <eggert@cs.ucla.edu>
6651         Curved quotes in etc/NEWS etc.
6653         * etc/NEWS, nextstep/README: Prefer curved quotes in the
6654         recently-changed text documentation.  See:
6655         http://lists.gnu.org/archive/html/emacs-devel/2016-03/msg00860.html
6657 2016-03-14  Paul Eggert  <eggert@cs.ucla.edu>
6659         Fix some single quotes in documentation
6661         * doc/emacs/anti.texi (Antinews): Avoid confusion in info and PDF
6662         when documenting quoting styles.
6663         * etc/NEWS, nextstep/README: In these plain text files, quote
6664         'like this' consistently, rather than also (sometimes) ‘like this’
6665         or (more often) `like this'.
6667 2016-03-13  Dmitry Gutov  <dgutov@yandex.ru>
6669         Make lisp-completion-at-point's argument optional
6671         * lisp/progmodes/elisp-mode.el (lisp-completion-at-point): Make
6672         the argument optional, like it was before the rename.
6674 2016-03-13  Dmitry Gutov  <dgutov@yandex.ru>
6676         Tweak the left precedence of '=>'
6678         * lisp/progmodes/ruby-mode.el (ruby-smie-grammar): Tweak the left
6679         precedence of '=>', to improve indentation and sexp navigation.
6681 2016-03-13  Dmitry Gutov  <dgutov@yandex.ru>
6683         Indent '.' relative to the first sibling expression
6685         * lisp/progmodes/ruby-mode.el (ruby-smie-rules):
6686         Indent '.' relative to the first sibling expression, instead of the
6687         parent token (bug#17213).
6689 2016-03-13  Dmitry Gutov  <dgutov@yandex.ru>
6691         Make '.' associative, for easier sexp navigation
6693         * lisp/progmodes/ruby-mode.el (ruby-smie-grammar):
6694         Make '.' associative, for easier sexp navigation.
6696 2016-03-13  Phillip Lord  <phillip.lord@russet.org.uk>
6698         Revert "Simplify "Visit New File" to "New File""
6700         This reverts commit d457fd9dc782465e1547f74021390c9d5951d6af.
6702 2016-03-12  Phillip Lord  <phillip.lord@russet.org.uk>
6704         Simplify "Visit New File" to "New File"
6706         * doc/emacs/files.texi, lisp/menu-bar.el (menu-bar-file-menu),
6707           lisp/startup.el(normal-mouse-start-screen,
6708           normal-no-mouse-startup-screen): Change label "Visit New File" to "New
6709           File".
6711 2016-03-12  Eli Zaretskii  <eliz@gnu.org>
6713         Update Unicode notes for importing a new Unicode version
6715         * admin/notes/unicode: Mention the need to update otf-script-alist
6716         in fontset.el when importing data files from a new Unicode
6717         version.
6719 2016-03-12  Eli Zaretskii  <eliz@gnu.org>
6721         Import new data files from Unicode 9.0.0beta
6723         * admin/unidata/UnicodeData.txt:
6724         * admin/unidata/Blocks.txt:
6725         * admin/unidata/BidiMirroring.txt:
6726         * admin/unidata/BidiBrackets.txt: Update from Unicode 9.0.0beta.
6727         * admin/unidata/unidata-gen.el (unidata-gen-files): Bind
6728         'coding-system-for-read' to 'utf-8, as various Unicode data files
6729         now actually use non-ASCII characters.
6730         (unidata-setup-list, unidata-get-name): Support the new Tangut
6731         Ideographs block.
6733         * lisp/international/characters.el (standard-case-table): Add new
6734         characters from Unicode 9.0.0.
6735         (standard-category-table): Add Arabic block u+08A0..u+08FF.  Add
6736         Cyrillic Extended-C block.
6737         (char-width-table): Update ranges per Unicode 9.0.0.
6738         * lisp/international/fontset.el (script-representative-chars): Add
6739         new scripts defined by Unicode 9.0.0.
6740         (otf-script-alist): Add new OTF script tags.
6741         * lisp/international/mule-cmds.el (ucs-names): Update ranges per
6742         Unicode 9.0.0 additions.
6744 2016-03-12  Eli Zaretskii  <eliz@gnu.org>
6746         Avoid errors in forms-mode when default major mode is text
6748         * lisp/forms.el (forms-mode): Bind
6749         change-major-mode-with-file-name to nil when calling
6750         set-visited-file-name.  (Bug#22982)
6752 2016-03-12  Eli Zaretskii  <eliz@gnu.org>
6754         Avoid crashes at startup on systems that CANNOT_DUMP
6756         * src/xdisp.c (syms_of_xdisp) <redisplay--inhibit-bidi>: New
6757         boolean variable.
6758         (init_iterator, reseat_to_string)
6759         (Fcurrent_bidi_paragraph_direction)
6760         (Fbidi_find_overridden_directionality): Use
6761         redisplay--inhibit-bidi instead of purify-flag, to determine when
6762         it's safe to reorder bidirectional text.
6764         * lisp/loadup.el (redisplay--inhibit-bidi): Set to t at the
6765         beginning of the file.  Reset to nil when charprop.el is
6766         successfully loaded, or when we are going to dump, whichever
6767         happens last.  (Bug#22975)
6769 2016-03-12  Eli Zaretskii  <eliz@gnu.org>
6771         Fix documentation of seq.el functions
6773         * doc/lispref/sequences.texi (Sequence Functions): Fix typos.  Add
6774         cross-references.  Fix formatting.  (Bug#22992)
6776 2016-03-11  Dmitry Gutov  <dgutov@yandex.ru>
6778         Support Ruby 2.3.0's safe navigation operator
6780         * lisp/progmodes/ruby-mode.el (ruby-smie--forward-token)
6781         (ruby-smie--backward-token): Tokenize '&.' as '.'.
6782         (ruby-smie--implicit-semi-p): Check for possible '&' before '.'.
6784         * test/indent/ruby.rb: Add an example using safe navigation
6785         operator.  Fix a syntax error in existing example.
6787 2016-03-11  John Wiegley  <johnw@newartisans.com>
6789         Update Emacs manual section related to character folding
6791         * doc/emacs/search.texi: Character folding is not on by default.
6793 2016-03-11  Eli Zaretskii  <eliz@gnu.org>
6795         Update admin/notes/unicode
6797         * admin/notes/unicode: Update the list of files from the UCD we
6798         are using.  Mention the possible need to change 'ucs-names' when
6799         importing a new version of the Unicode Standard.
6801 2016-03-10  Dmitry Gutov  <dgutov@yandex.ru>
6803         Add symref-filepattern entries for c?perl-mode
6805         * lisp/cedet/semantic/symref/grep.el
6806         (semantic-symref-filepattern-alist): Add entries for perl-mode and
6807         cperl-mode.
6809 2016-03-10  Ken Raeburn  <raeburn@raeburn.org>
6811         Don't use XRANDR 1.3 extensions if the server doesn't support them.
6813         * src/xterm.h (struct x_display_info): Add fields to save XRANDR
6814         version number.
6815         * src/xfns.c (x_get_monitor_attributes): Save the version numbers
6816         after querying the X server.
6817         (x_get_monitor_attributes_xrandr): Don't use XRRGetOutputPrimary or
6818         XRRGetScreenResourcesCurrent if the server doesn't support at least
6819         RANDR version 1.3.  Conditionalize the code blocks on compiling
6820         against library version 1.3 or better, rather than feature tests for
6821         each function.
6822         * configure.ac: Stop testing for those two functions.
6824 2016-03-10  Paul Eggert  <eggert@cs.ucla.edu>
6826         Sync with gnulib
6828         This incorporates:
6829         2016-03-08 intprops: make .h file license match module
6830         2016-03-08 acl: fix missing return on Cygwin
6831         2016-03-05 extern-inline: port to PGI CC
6832         * doc/misc/texinfo.tex, lib/intprops.h, lib/set-permissions.c:
6833         * m4/extern-inline.m4:
6834         Copy from gnulib.
6836 2016-03-10  Paul Eggert  <eggert@cs.ucla.edu>
6838         Rework C source files to avoid ^(
6840         Work around Bug#22884 by rewording comments and strings to avoid ‘(’
6841         at the start of a line unless it starts a function.  This change
6842         is a short-term hack; in the longer run we plan to fix cc-mode’s
6843         performance for C files that have ‘(’ at the start of a line in a
6844         comment or string.
6846 2016-03-10  Eli Zaretskii  <eliz@gnu.org>
6848         By default, etags produces unqualified Perl tag names
6850         * lib-src/etags.c (Perl_functions): Produce unqualified names,
6851         unless -Q was specified.
6852         (print_help): Update the description of -Q.
6854         * doc/man/etags.1: Update the documentation of -Q.
6856         * test/etags/ETAGS.good_1:
6857         * test/etags/ETAGS.good_2:
6858         * test/etags/ETAGS.good_3:
6859         * test/etags/ETAGS.good_4:
6860         * test/etags/ETAGS.good_5:
6861         * test/etags/CTAGS.good: Adapt the expected test results to the
6862         changed Perl functionality.
6864 2016-03-10  Dmitry Gutov  <dgutov@yandex.ru>
6866         Indent methods with keyword names correctly
6868         * lisp/progmodes/ruby-mode.el (ruby-smie--at-dot-call):
6869         Rename to ruby-smie--before-method-name.  Now also check if we're
6870         after a 'def' keyword.  Update both callers.
6872 2016-03-10  Dmitry Gutov  <dgutov@yandex.ru>
6874         Propertize character literals and special global variables differently
6876         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize): Propertize
6877         character literals and global variables with special names with
6878         prefix and symbol syntax classes, for SMIE to tokenize them
6879         together automatically.
6880         (ruby-font-lock-keywords): Fix an old regression in highlighting
6881         character literals.
6883 2016-03-09  John Wiegley  <johnw@newartisans.com>
6885         Change how /etc/NEWS presents character folding
6887         * NEWS: Note that character folding is no longer the default.
6889 2016-03-09  John Wiegley  <johnw@newartisans.com>
6891         Revert "Revert "Backport: * lisp/isearch.el: Turn char-folding off by default""
6893         This reverts commit a91b4b51ddf2575d821adb8b84fdf32cff83886e.
6895 2016-03-09  Andreas Schwab  <schwab@linux-m68k.org>
6897         Properly handle lambda as read function (bug 22961)
6899         * src/lread.c (readchar): Be more strict about checking for
6900         string in cons for read_vector.
6901         (unreadchar): Likewise.
6903 2016-03-09  Dmitry Gutov  <dgutov@yandex.ru>
6905         Propertize operator symbol names with symbol syntax class
6907         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize):
6908         Do it here.
6909         (ruby-font-lock-keywords): Instead of handling them here.  Leave
6910         highlighting them to the "normal" matcher, because now we can.
6911         (ruby-smie--forward-token, ruby-smie--backward-token):
6912         Likewise, don't special-case operator symbols anymore.
6913         (ruby-smie--args-separator-p): Simplify the regexp, match operator
6914         names with \s_.
6915         (ruby-smie--implicit-semi-p): Handle the special cases of ? and =
6916         at EOL the same way: check if the character has been assigned the
6917         symbol syntax class by syntax-propertize.
6919 2016-03-09  Dmitry Gutov  <dgutov@yandex.ru>
6921         Stop recognizing :#{} as symbol in ruby-mode
6923         * lisp/progmodes/ruby-mode.el (ruby-font-lock-keywords): Remove
6924         the weird part that recognized colon followed by interpolation
6925         construct without quotes (e.g. ':#{abc}') as symbol, which is just a
6926         syntax error in any modern version of Ruby.  Fix nearby bug reference.
6928 2016-03-09  Dmitry Gutov  <dgutov@yandex.ru>
6930         Allow using the left shift operator without spaces on both sides
6932         * lisp/progmodes/ruby-mode.el (ruby-singleton-class-p): Rename to
6933         ruby-verify-heredoc, reverse the meaning of the return value, and
6934         short-circuit if preceded by a symbol not separated by whitespace.
6936         * test/automated/ruby-mode-tests.el (ruby-no-heredoc-left-shift)
6937         (ruby-no-heredoc-class-self): New tests.
6939 2016-03-08  Andreas Schwab  <schwab@linux-m68k.org>
6941         Properly handle unquoting in wdired (bug 22938)
6943         The recorded old names are not quoted, don't unquote them.
6945         * lisp/wdired.el (wdired-normalize-filename): Add argument
6946         unquotep, only unquote if non-nil.
6947         (wdired-get-filename): Don't unquote the old file name.
6948         (wdired-get-previous-link): Always unquote.
6950 2016-03-06  Dmitry Gutov  <dgutov@yandex.ru>
6952         Allow splat operator before percent literal
6954         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize):
6955         Allow splat operator before percent literal.
6957 2016-03-06  Dmitry Gutov  <dgutov@yandex.ru>
6959         Don't apply the return value of goto-char as syntax class
6961         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize): Don't
6962         apply the return value of goto-char as syntax class.
6964 2016-03-06  Dmitry Gutov  <dgutov@yandex.ru>
6966         Guard against nested percent literals
6968         * lisp/progmodes/ruby-mode.el
6969         (ruby-syntax-propertize-percent-literal):
6970         Don't check the syntax status.
6971         (ruby-syntax-propertize): Check it here.  And also guard against
6972         being in a larger percent literal.
6974         * test/automated/ruby-mode-tests.el
6975         (ruby-no-nested-percent-literals): New test.
6977 2016-03-06  Dmitry Gutov  <dgutov@yandex.ru>
6979         Recognize iuwu-mod after an escaped newline
6981         * lisp/progmodes/ruby-mode.el (ruby-smie--bosp): Check if the
6982         newline is escaped.
6983         (ruby-smie-rules): Indent iuwu-mod after an escaped newline
6984         correctly.
6986 2016-03-06  Andreas Schwab  <schwab@linux-m68k.org>
6988         Fix symbolic mode string conversion for s and t
6990         * lisp/files.el (file-modes-char-to-right): Fix values for ?s and
6991         ?t.
6992         (file-modes-symbolic-to-number): Default to a for ts permissions.
6994 2016-03-06  Eli Zaretskii  <eliz@gnu.org>
6996         Update 'ucs-names' database
6998         * lisp/international/mule-cmds.el (ucs-names): Update used and
6999         unused ranges from the latest UnicodeData.txt.
7001 2016-03-06  Eli Zaretskii  <eliz@gnu.org>
7003         Improve doc string of 'shell-command'
7005         * lisp/simple.el (shell-command): Mention that COMMAND is prompted
7006         for.  (Bug#22926)
7008 2016-03-06  Eli Zaretskii  <eliz@gnu.org>
7010         Make the code in movemail_strftime more general
7012         * lib-src/movemail.c (movemail_strftime): Transform the format
7013         string passed by the caller instead of using a separate format
7014         string.
7016 2016-03-06  Eli Zaretskii  <eliz@gnu.org>
7018         Speed up redisplay of binary files with long series of nulls
7020         * src/bidi.c (bidi_resolve_weak): Avoid entering a loop searching
7021         for a character needed for resolving the type of a series of BN
7022         and ET characters, as required by rule W5 of UAX#9, if the results
7023         of the resolution are known in advance, because we are at level
7024         zero, and the previous strong character was L.
7025         (bidi_resolve_neutral): Partially resurrect the optimization for a
7026         long series of control characters in an otherwise strictly L2R
7027         text.
7028         (bidi_level_of_next_char): Don't enter the loop that searches for
7029         a paragraph separator if the current character is already at base
7030         embedding level.  (Bug#22739)
7032 2016-03-05  Dmitry Gutov  <dgutov@yandex.ru>
7034         Remove the highlighting support for quoting 'like this' inside Lisp docstrings
7036         Remove the highlighting support for quoting 'like this' inside
7037         Lisp docstrings.  This part of
7038         c4151ebe15479de4c2e511b068cdf9af6a4576cf seems to have been
7039         unintentional, considering substitute-command-keys gives wrong
7040         output for such usage.
7041         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2)
7042         (lisp-cl-font-lock-keywords-2): Do not highlight text between two
7043         straight quotes as symbol.
7045 2016-03-05  Paul Eggert  <eggert@cs.ucla.edu>
7047         Restore leading space in movemail pop output
7049         * lib-src/movemail.c (movemail_strftime) [WINDOWSNT]: New function.
7050         (strftime) [WINDOWSNT]: New macro.
7051         (mbx_delimit_begin): Go back to previous version of this code,
7052         now that there’s a special-purpose WINDOWSNT implementation
7053         that should do the right thing.  That way, the output continues
7054         to use leading space rather than leading zero for day of month.
7056 2016-03-05  Eli Zaretskii  <eliz@gnu.org>
7058         Fix bidi-paragraph-direction in Rmail view buffer
7060         * lisp/mail/rmail.el (rmail-show-message-1): Reset
7061         bidi-paragraph-direction to nil before formatting the message for
7062         display.
7064 2016-03-05  Dmitry Gutov  <dgutov@yandex.ru>
7066         Don't misindent computed property generator methods
7068         * lisp/progmodes/js.el (js--looking-at-operator-p):
7069         Don't misindent computed property generator methods
7070         (https://github.com/mooz/js2-mode/issues/317).
7072 2016-03-05  Eli Zaretskii  <eliz@gnu.org>
7074         Fix mbox files produced by movemail on MS-Windows
7076         * lib-src/movemail.c (mbx_delimit_begin): Use portable strftime
7077         format specifiers, as at least the MS-Windows version of strftime
7078         doesn't support %e and %T.
7080 2016-03-04  Paul Eggert  <eggert@cs.ucla.edu>
7082         doc string file descriptor exhaustion fix
7084         * src/doc.c (get_doc_string): Move newly-added check to a better
7085         location (Bug#22814).
7087 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
7089         Fix Bug#22814
7091         * src/doc.c (get_doc_string): Raise an error in case too many
7092         files are open.  (Bug#22814)
7094 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
7096         Fix insertion of edited servers in the dribble file
7098         * lisp/gnus/gnus-srvr.el (gnus-server-update-server): Don't
7099         insert explicit newlines, because they're quoted (bug#22903).
7101         Backport:
7103         (cherry picked from commit ca4e30058eba0531f38fff75f14734acffab84ea)
7105 2016-03-04  Martin Rudalics  <rudalics@gmx.at>
7107         Fix previous fix of enlarge-/shrink-window
7109         * lisp/window.el (enlarge-window, shrink-window): Consistently
7110         signal user-error instead of error.  Resize minibuffer window by
7111         delta lines instead of pixels.  When a window cannot be resized,
7112         signal an error only when this function was invoked by a command
7113         in the enlarge-/shrink-window group (this restores the behavior
7114         before the fix of bug#22723 for the non-interactive case).
7116 2016-03-03  Artur Malabarba  <bruce.connor.am@gmail.com>
7118         * lisp/isearch.el (isearch-define-mode-toggle): Fix toggling logic
7120 2016-03-03  Mark Oteiza  <mvoteiza@udel.edu>
7122         Complete temperature units in calc-convert-temperature
7124         * lisp/calc/calc-units.el (calc-convert-temperature): Complete with
7125         temperature units in math-standard-units.
7127 2016-03-02  Dmitry Gutov  <dgutov@yandex.ru>
7129         Make sure to use case-sensitive search
7131         * lisp/progmodes/xref.el (xref-collect-references): Make sure to
7132         use case-sensitive search.
7134 2016-03-02  Ulf Jasper  <ulf.jasper@web.de>
7136         Prevent infinite loop on not-well-formed xml. (Bug#16344)
7138         * lisp/xml.el (xml-parse-tag-1): Prevent inifinite loop. (Bug#16344)
7139         * test/automated/xml-parse-tests.el (xml-parse-tests--bad-data): Add
7140           test cases for Bug#16344.
7142 2016-03-02  Alan Third  <alan@idiocy.org>
7144         Add the missing test case for the previous patch
7146         lisp/dabbrev.el (dabbrev--substitute-expansion): Return EXPANSION after
7147         any processing.
7148         lisp/dabbrev.el (dabbrev-expand): Set EXPANSION to the return value of
7149         DABBREV--SUBSTITUTE-EXPANSION.
7150         test/automated/dabbrev-tests.el (dabbrev-expand-test): Test for bug#1948.
7152 2016-03-02  Alan Third  <alan@idiocy.org>
7154         Use the correct dabbrev expansion
7156         lisp/dabbrev.el (dabbrev--substitute-expansion): Return EXPANSION after
7157         any processing.
7158         lisp/dabbrev.el (dabbrev-expand): Set EXPANSION to the return value of
7159         DABBREV--SUBSTITUTE-EXPANSION.
7160         test/automated/dabbrev-tests.el (dabbrev-expand-test): Test for bug#1948.
7162 2016-03-02  Nicolas Petton  <nicolas@petton.fr>
7164         Bump version to 25.0.92
7166         * README:
7167         * configure.ac:
7168         * msdos/sed2v2.inp: Bump version to 25.0.92.
7170 2016-03-02  Nicolas Petton  <nicolas@petton.fr>
7172         * etc/AUTHORS: Update the AUTHORS file
7174 2016-03-02  Nicolas Petton  <nicolas@petton.fr>
7176         authors.el updates
7178         * admin/authors.el (authors-ignored-files): Addition.
7180 2016-03-02  Michael Albinus  <michael.albinus@gmx.de>
7182         Fix Bug#22859
7184         * lisp/filenotify.el (file-notify-callback): Return a `deleted'
7185         event in case of kqueue and file1 is nil.  (Bug#22859)
7187 2016-03-01  Eli Zaretskii  <eliz@gnu.org>
7189         Fix reordering of bidi text in an isolate inside an override
7191         * src/bidi.c (bidi_resolve_explicit): Override the orig_type value
7192         of FSI with either LRI or RLI, as determined by the first strong
7193         directional character in the isolate.  This prevents failure to
7194         isolate when the FSI...PDI text is inside a directional override.
7195         (Bug#22786)
7197 2016-03-01  Alan Mackenzie  <acm@muc.de>
7199         Document c-guess-basic-syntax in the CC Mode manual.
7201         * doc/misc/cc-mode.texi (Syntactic Analysis): Document the function, adding
7202         pxrefs to Custom Line-Up and Other Indentation.
7203         (Custom Line-Up): Add a note on using c-guess-basic-syntax with a pxref to
7204         Syntactic Analysis.
7206 2016-03-01  Michael Albinus  <michael.albinus@gmx.de>
7208         Fix targets in test/automated/Makefile.in
7210         * test/automated/Makefile.in: Use $(SELECTOR_DEFAULT) also for
7211         empty target and target all.
7213 2016-03-01  Leo Liu  <sdl.web@gmail.com>
7215         Comment on last change to define-derived-mode
7217         * lisp/emacs-lisp/derived.el (define-derived-mode): Add comment.
7219 2016-03-01  Lars Ingebrigtsen  <larsi@gnus.org>
7221         Allow binding `url-mime-accept-string'
7223         * lisp/url/url-http.el (url-http): Allow binding
7224         `url-mime-accept-string' (bug#22855).
7226         Backport:
7228         (cherry picked from commit 144bb0cf322b9756d29def3e27a42303e2edce43)
7230 2016-03-01  Lars Ingebrigtsen  <larsi@gnus.org>
7232         Also allow setting the paragraph direction to nil
7234         * lisp/net/eww.el (eww-toggle-paragraph-direction): Also allow
7235         setting the paragraph direction to nil ("auto").
7237 2016-02-29  Anders Lindgren  <andlind@gmail.com>
7239         Made the new OS X visible bell more visible.
7241         * src/nsterm.m: (EmacsBell:init:) Scaled up the visible bell
7242           "caution" image five times, as the image in its original size
7243           was hard to see.
7245 2016-02-29  Lars Ingebrigtsen  <larsi@gnus.org>
7247         Use the correct background color when filling nested <divs>
7249         * lisp/net/shr.el (shr-face-background): Return the first
7250         background, because that's the one that's visible (bug#22680).
7252         Backport:
7254         (cherry picked from commit cad0bc70558f9c28c808711c5295dec9fc5ad6e5)
7256 2016-02-29  Lars Ingebrigtsen  <larsi@gnus.org>
7258         Make <div> in <li> not insert extra newlines
7260         * lisp/net/shr.el (shr-tag-div): Make <div> in <li> not insert
7261         extra newlines (bug#19587).
7263         Backport:
7265         (cherry picked from commit 379a846b8548dc32a9019ef0a37c02f62cd9bad1)
7267 2016-02-29  Dmitry Gutov  <dgutov@yandex.ru>
7269         Uncomment the next-error-function integration in xref
7271         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
7272         Uncomment the next-error-function integration
7273         (http://debbugs.gnu.org/cgi/bugreport.cgi?bug=20489#110).
7275 2016-02-29  Dmitry Gutov  <dgutov@yandex.ru>
7277         Remove the word "valid", to avoid ambiguity
7279         * doc/emacs/maintaining.texi (Identifier Search)
7280         (Looking Up Identifiers): Remove the word "valid" (bug#22692).
7282 2016-02-28  Michael Albinus  <michael.albinus@gmx.de>
7284         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
7286 2016-02-28  Michael Albinus  <michael.albinus@gmx.de>
7288         Set auto-revert-use-notify to nil in global-auto-revert-mode.  (Bug#22814)
7290         * etc/NEWS:
7291         * etc/PROBLEMS: Mention this.
7293         * lisp/autorevert.el (global-auto-revert-mode): Set
7294         `auto-revert-use-notify' to nil.  (Bug#22814)
7296 2016-02-28  Paul Eggert  <eggert@cs.ucla.edu>
7298         * etc/TODO: Minor quoting and grammar fixes.
7300 2016-02-28  Friedrich Beckmann  <friedrich.beckmann@gmx.de>  (tiny change)
7302         Fix ModelSim error parsing
7304         * lisp/progmodes/vhdl-mode.el (vhdl-compiler-alist): Fix
7305         ModelSim error parsing (bug#5768).
7307 2016-02-28  Lars Ingebrigtsen  <larsi@gnus.org>
7309         Make parse-time-string-chars faster
7311         * lisp/calendar/parse-time.el (parse-time-string-chars): Clean
7312         up the code (backport:).
7314 2016-02-28  Lars Ingebrigtsen  <larsi@gnus.org>
7316         Add a eww command to toggle paragraph direction
7318         * lisp/net/eww.el (eww-toggle-paragraph-direction): New
7319         command and keystroke.
7321         * doc/misc/eww.texi (Advanced): Mention the `D' command.
7323 2016-02-27  Glenn Morris  <rgm@gnu.org>
7325         * nextstep/WISHLIST: Merge into etc/TODO and remove.
7327         * etc/TODO: Merge in items from nextstep/WISHLIST.
7328         * nextstep/README: Update for this change.
7330 2016-02-27  Andreas Schwab  <schwab@linux-m68k.org>
7332         Fix char signedness issue in bidi code
7334         * src/dispextern.h (struct bidi_t): Change type of resolved_level
7335         and isolate_level to signed char.  (Bug#22830)
7337 2016-02-27  Andreas Schwab  <schwab@linux-m68k.org>
7339         * lib-src/pop.c (socket_connection): Fix format string.
7341 2016-02-27  Eli Zaretskii  <eliz@gnu.org>
7343         Avoid inflooping in thing-at-point-looking-at
7345         * lisp/thingatpt.el (thing-at-point-looking-at): Avoid inflooping
7346         with regular expressions whose matching doesn't move point.
7347         (Bug#22756)
7348         Describe the argument DISTANCE in the doc string.
7350 2016-02-27  Leo Liu  <sdl.web@gmail.com>
7352         * lisp/emacs-lisp/derived.el (define-derived-mode): Revert indent change.
7354 2016-02-26  Michael Albinus  <michael.albinus@gmx.de>
7356         etc/PROBLEMS: Mention problems with using file descriptors
7358         * etc/PROBLEMS: Mention problems with using file descriptors
7359         of kqueue file notification library.
7361 2016-02-26  Kaushal Modi  <kaushal.modi@gmail.com>
7363         * lisp/apropos.el (apropos-variable): Doc fix.  (Bug#22813).
7365 2016-02-25  Eli Zaretskii  <eliz@gnu.org>
7367         Remove unneeded workaround in xftfont.c
7369         * src/xftfont.c (xftfont_open): Remove "dirty workaround" for
7370         XftTextExtents8 behavior, as it is no longer needed.  Suggested by
7371         Fangwen Yu <yynyygy@gmail.com>.  (Bug#22383)
7373 2016-02-25  Stefan Monnier  <monnier@iro.umontreal.ca>
7375         * lisp/saveplace.el (save-place-local-mode): New minor mode
7377         (toggle-save-place): Define as obsolete alias.
7378         (save-place--setup-hooks): New function.
7379         (save-place-mode): Use it.
7381 2016-02-25  Eli Zaretskii  <eliz@gnu.org>
7383         Fix redisplay on a TTY after 'make-frame'
7385         * src/xdisp.c (clear_garbaged_frames): Don't clear/redraw a
7386         garbaged TTY frame if it is not the selected frame.  (Bug#22794)
7388 2016-02-25  Alan Mackenzie  <acm@muc.de>
7390         Make double-click-1 work with unbalanced parens in CC Mode.  Fixes bug#5560.
7392         * lisp/mouse.el (mouse-start-end): check the syntax of alleged parens with
7393         `syntax-after' to ensure syntax-table text properties are respected.
7395 2016-02-25  Magnus Henoch  <magnus.henoch@gmail.com>
7397         Input method polish-slash should not use keyboard translation
7399         * lisp/leim/quail/latin-pre.el ("polish-slash"): Input method
7400         polish-slash should not use keyboard translation (bug#19081).
7402 2016-02-25  Chris Feng  <chris.w.feng@gmail.com>
7404         Fix an assertion
7406         * src/dispnew.c (clear_glyph_matrix_rows): Test matrix->nrows == 0 (which
7407         implies start == 0) separately.
7409 2016-02-24  Eli Zaretskii  <eliz@gnu.org>
7411         Fix 'toggle-save-place'
7413         * lisp/saveplace.el (toggle-save-place): Set up hooks necessary to
7414         support save-place in the buffer.  Autoload the command.
7416 2016-02-24  Stefan Monnier  <monnier@iro.umontreal.ca>
7418         * src/keyboard.c: Don't inadvertently set immediate_echo (bug#22581)
7420         * src/keyboard.c (read_key_sequence): Don't inadvertently set
7421         immediate_echo when we don't want any echo-keystrokes.
7422         (echo_keystrokes_p): Move earlier.
7424 2016-02-24  Chris Zheng  <chriszheng99@gmail.com>  (tiny change)
7426         Minor fixes in calculator.el
7428         * lisp/calculator.el (calculator-mode-map): Bind `E' for
7429         `calculator-exp'.
7430         (calculator-last-input): Fix a bug with pressing F1.
7431         (Bug#20764)
7433 2016-02-24  Anders Lindgren  <andlind@gmail.com>
7435         Update HISTORY section in readme for the NextStep interface.
7437         * nextstep/README: Update HISTORY after suggestion
7438         from former maintainer Adrian Robert.
7440 2016-02-24  Eli Zaretskii  <eliz@gnu.org>
7442         Improve documentation of 'save-place-mode'
7444         * lisp/saveplace.el (toggle-save-place): Update the doc string wrt
7445         turning on 'save-place-mode' globally.
7447         * etc/NEWS: Mention the need to call 'save-place-mode' for turning
7448         on the mode in all buffers.
7450 2016-02-24  Chris Feng  <chris.w.feng@gmail.com>  (tiny change)
7452         Allocate glyph matrices for the initial frame
7454         * src/frame.c (make_initial_frame): Allocate glyph matrices (Bug#22787).
7456         * src/dispnew.c (clear_glyph_matrix_rows): matrix->nrows can be 0.
7458 2016-02-24  Lars Ingebrigtsen  <larsi@gnus.org>
7460         Fix white space in last checkin
7462 2016-02-24  Dima Kogan  <gnuplot@dima.secretsauce.net>
7464         Make `insert-pair' always leave the cursor where documented
7466         * lisp/emacs-lisp/lisp.el (insert-pair): The docstring of
7467         insert-pair states that after insertion, the point ends up
7468         after the opening character. This was not true if the pair was
7469         inserted to surround a region (bug#16949).
7471 2016-02-24  Kaushal Modi  <kaushal.modi@gmail.com>
7473         etc/NEWS: Mention the new second parameter to `package-install'
7475         * etc/NEWS: Mention the new second parameter to
7476         `package-install' (bug#22784).
7478 2016-02-24  John F. Trudeau  <JFTrudeau@aetna.com>  (tiny change)
7480         Highlight assignments in Makefiles more correctly
7482         * lisp/progmodes/make-mode.el (makefile-macroassign-regex):
7483         Highlight assignments preceded by a TAB character correctly
7484         (bug#20787).
7487         Backport:
7489         (cherry picked from commit bbd86c5642bd62c43d72391669f28eaa14459fd5)
7491 2016-02-23  Eli Zaretskii  <eliz@gnu.org>
7493         Improve documentation of focus-related hooks
7495         * doc/lispref/commands.texi (Focus Events): Mention focus-related
7496         hooks.  (Bug#21728)
7498 2016-02-23  Eli Zaretskii  <eliz@gnu.org>
7500         Further improve doc string of 'disable-point-adjustment'
7502         * src/keyboard.c (syms_of_keyboard): <disable-point-adjustment>
7503         <global-disable-point-adjustment>: Clarify doc strings.  (Bug#22771)
7505 2016-02-23  Michael Albinus  <michael.albinus@gmx.de>
7507         Further adaptions in file-notify-tests.el for w32notify
7509         * test/automated/file-notify-tests.el
7510         (file-notify--test-read-event-timeout, file-notify--test-timeout):
7511         Decrease values.
7512         (file-notify-test03-autorevert)
7513         (file-notify-test04-file-validity)
7514         (file-notify-test05-dir-validity): Run tests also for w32notify.
7515         (file-notify-test08-watched-file-in-watched-dir):
7516         Adapt expected events for w32notify.
7518 2016-02-23  Jan Tatarik  <jan.tatarik@gmail.com>
7520         Don't bug out on localised dates in gnus-icalendar
7522         * lisp/gnus/gnus-icalendar.el
7523         (gnus-icalendar-event:org-timestamp): Don't bug out on
7524         localised dates.
7526 2016-02-23  Drew Adams  <drew.adams@oracle.com>
7528         (ls-lisp-insert-directory): Make -B work
7530         * lisp/ls-lisp.el (ls-lisp-insert-directory): Make -B work
7531         (bug#20776).
7533         Backport:
7535         (cherry picked from commit ef52e66efd78aac4c4e5bd5e11870e5ba3b37a1e)
7537 2016-02-23  Vaidheeswaran C  <vaidheeswaran.chinnaraju@gmail.com>
7539         Make buttons in header lines work
7541         * lisp/help-mode.el (help-button-action): `help-xref-button' in
7542         header line doesn't work (bug#21024).
7544         Backport:
7546         (cherry picked from commit c11e565a6b6d09fa39d4c3ef65bef08190eaecc1)
7548 2016-02-23  Christopher Wellons  <wellons@nullprogram.com>
7550         Make setf for frame-height/width work again
7552         * lisp/emacs-lisp/cl-lib.el (frame-height): Make setf for
7553         frame-height/width work again (bug#21979).
7555 2016-02-23  Łukasz Stelmach  <stlman@poczta.fm>
7557         Encode header strings before printing
7559         * lisp/ps-print.el (ps-generate-header-line): Encode the
7560         header strings to avoid problems with non-ASCII headers
7561         (bug#22611).
7563         Backport:
7565         (cherry picked from commit 3cedbdcc71ebefc12bd20ec84f74251fe99ee7d0)
7567 2016-02-23  Nicolas Richard  <youngfrog@members.fsf.org>
7569         (cl-union): Do not ignore :test argument when lists are equal.
7571         * lisp/emacs-lisp/cl-seq.el (cl-union): Do not ignore :test argument when lists are equal.
7573         * test/automated/cl-seq-tests.el: New file (bug#22729).
7575 2016-02-23  Lars Ingebrigtsen  <larsi@gnus.org>
7577         Add `isearch' to `basic-faces'
7579         * doc/lispref/display.texi (Basic Faces): Mention the isearch
7580         and lazy-highlight faces.
7582         * lisp/replace.el (match): Add `isearch' to the `basic-faces'
7583         group, too (bug#22760).
7585 2016-02-23  Dmitry Gutov  <dgutov@yandex.ru>
7587         Make $, : and @ "prefix characters" in ruby-mode
7589         * lisp/progmodes/ruby-mode.el (ruby-mode-syntax-table): Change the
7590         syntax classes of $, : and @ to "prefix character"
7591         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00272.html).
7592         (ruby-syntax-propertize): Undo that specifically for colons
7593         followed by an opening paren or bracket.
7594         (ruby-font-lock-keyword-beg-re): Include colon character.
7595         (ruby-font-lock-keywords): Adjust the constants matcher for `:'
7596         not being a symbol constituent anymore.
7598 2016-02-23  Dmitry Gutov  <dgutov@yandex.ru>
7600         Make find-tag-default-bounds more strict
7602         * lisp/subr.el (find-tag-default-bounds): Delegate to
7603         bounds-of-thing-at-point (bug#22692).
7605 2016-02-22  Michael Albinus  <michael.albinus@gmx.de>
7607         Minor fixes in filenotify.el
7609         * lisp/filenotify.el (top): Require 'cl-lib.
7610         (file-notify--rm-descriptor)
7611         (file-notify--event-watched-file): Use cl-caadr.
7612         (file-notify-callback): Handle also `ignore' events from inotify.
7614 2016-02-22  Michael Albinus  <michael.albinus@gmx.de>
7616         Additional fixes for file notification
7618         * lisp/filenotify.el (top): Require 'cl when compiling.
7619         (file-notify--event-watched-file): New defun.
7620         (file-notify--rm-descriptor, file-notify-callback):
7621         Handle case of several monitors running in parallel.
7623         * test/automated/file-notify-tests.el
7624         (file-notify--test-event-test): Simplify test.
7625         (file-notify--test-with-events): Get rid of outer definition.
7626         Check also results of tests performed in callbacks.
7627         (file-notify-test02-events): No wrapping when calling
7628         `file-notify-rm-watch'.  No special checking for callback tests.
7629         (file-notify-test07-backup): Adapt expected events for gfilenotify.
7630         (file-notify-test08-watched-file-in-watched-dir): Improve.
7632 2016-02-22  Eli Zaretskii  <eliz@gnu.org>
7634         Fix documentation of 'global-disable-point-adjustment'
7636         * src/keyboard.c (syms_of_keyboard) <disable-point-adjustment>
7637         <global-disable-point-adjustment>: Doc fixes.  (Bug#22771)
7639 2016-02-22  Daiki Ueno  <ueno@gnu.org>
7641         Set file modes of pinentry socket for extra safety
7643         * lisp/net/pinentry.el: Require 'cl-lib for `cl-letf'.
7644         (pinentry-start): Change the file modes of the socket file to 0700.
7645         This is just for extra safety since the parent directory is already
7646         protected with `server-ensure-safe-dir'.
7648 2016-02-22  Daiki Ueno  <ueno@gnu.org>
7650         Clarify GnuPG version compatibility chapter
7652         * doc/misc/epa.texi (GnuPG version compatibility): Make the gpg-agent
7653         description a bit clearer.
7655 2016-02-22  Daiki Ueno  <ueno@gnu.org>
7657         Revert "Change the default socket location for pinentry"
7659         This reverts commit e34fbdee8aca84b98393b06b2450837d175999ca.
7660         It turned out that the address is fixed in Pinentry itself.
7662 2016-02-21  Dmitry Gutov  <dgutov@yandex.ru>
7664         Kill off xref--display-history
7666         Now that the core workflow keeps the xref window visible, there's
7667         less value in storing this history.  And it never was
7668         comprehensive enough to undo scrolling changes.
7669         * lisp/progmodes/xref.el (xref--display-history)
7670         (xref--save-to-history, xref-quit): Remove.
7671         (xref--show-pos-in-buf): Update accordingly.
7672         (xref--xref-buffer-mode-map): Remove xref-quit binding.
7674 2016-02-21  Dmitry Gutov  <dgutov@yandex.ru>
7676         Keep the xref buffer visible until the user quits it explicitly
7678         * lisp/progmodes/xref.el (xref--pop-to-location):
7679         Rename WINDOW argument to ACTION.
7680         (xref--with-dedicated-window): New macro.
7681         (xref--show-pos-in-buf): Rename from `xref--display-position'.
7682         Add and handle new argument, SELECTED.  Use the above macro.
7683         (xref--show-location): Add SELECTED argument.
7684         (xref-show-location-at-point): Make an effort to avoid the
7685         original window when showing the location.
7686         (xref-goto-xref): Don't quit the xref window (bug#20487 and
7687         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01133.html).
7688         (xref--query-replace-1): Use xref--with-dedicated-window as well.
7689         (xref--next-error-function): Call xref--show-location instead of
7690         xref--pop-to-location.
7691         (xref--show-xrefs): Rename WINDOW argument to DISPLAY-ACTION.
7692         Only pass that value to xref--pop-to-location.  Pass the current
7693         selected window to xref-show-xrefs-function as the `window'
7694         property.
7695         (xref--find-xrefs, xref--find-definitions): Rename WINDOW argument
7696         to DISPLAY-ACTION as well.
7698 2016-02-21  Daiki Ueno  <ueno@gnu.org>
7700         Change the default socket location for pinentry
7702         * lisp/net/pinentry.el: Require 'cl-lib for `cl-letf'.
7703         (pinentry--socket-dir): Change the default from /tmp/emacsXXX to
7704         ~/.emacs.d/pinentry.
7705         (pinentry-start): Change the file modes of the socket file to 0700.
7706         This is just for extra safety since the parent directory is already
7707         protected with `server-ensure-safe-dir'.
7709 2016-02-21  Daiki Ueno  <ueno@gnu.org>
7711         Mention how to enable pinentry feature
7713         * etc/NEWS: Mention "gpgconf --reload gpg-agent".
7714         * lisp/net/pinentry.el: Likewise.
7716 2016-02-21  Paul Eggert  <eggert@cs.ucla.edu>
7718         Sync with gnulib
7720         This incorporates:
7721         2016-02-10 stdalign: port to older HP and IBM cc
7722         * doc/misc/texinfo.tex, lib/stdalign.in.h: Copy from gnulib.
7724 2016-02-21  David Engster  <deng@randomsample.de>
7726         Remove `semanticdb-save-all-db-idle' from `auto-save-hook'
7728         * lisp/cedet/semantic/db-mode.el (semanticdb-hooks): Do not put
7729           `semanticdb-save-all-db-idle' into `auto-save-hook'. The latter is
7730           not an idle hook, so it's not appropriate to call it there. It will
7731           already be called in the `semantic-idle-work-core-handler', which
7732           runs when Emacs is actually idle.
7734 2016-02-21  David Engster  <deng@randomsample.de>
7736         Restore point when writing semantic table to disk
7738         * lisp/cedet/semantic/db-file.el (object-write): Wrap call to
7739           `semantic-fetch-tags' in `save-excursion', since it might move point
7740           in current buffer. (Bug #22287)
7742 2016-02-21  Daiki Ueno  <ueno@gnu.org>
7744         Mention pinentry.el in epa manual
7746         * doc/misc/epa.texi (GnuPG version compatibility): New chapter,
7747         describing the differences between three GnuPG branches, and how
7748         to enable pinentry.el.
7749         (Caching Passphrases): Add xref to the compatibility chapter.
7751 2016-02-21  Michael Albinus  <michael.albinus@gmx.de>
7753         Fix Bug#22736
7755         * lisp/filenotify.el (file-notify-callback): Use the proper
7756         descriptor when calling the callback.  (Bug#22736)
7758         * test/automated/file-notify-tests.el
7759         (file-notify--test-event-handler): Deactivate trace.
7760         (file-notify-test08-watched-file-in-watched-dir): Bind
7761         `file-notify--test-tmpfile' temporarily in `dir-callback'.
7763 2016-02-21  Wieland Hoffmann  <themineo@gmail.com>  (tiny change)
7765         Grammar fix in doc string
7767         * lisp/custom.el (defgroup): Grammar fix in doc string.
7769 2016-02-20  Daiki Ueno  <ueno@gnu.org>
7771         Naming fix for consistency
7773         * lisp/epg-config.el (epg-find-configuration): Rename from
7774         `epg-configuration-find' to be consistent with other epg-* functions.
7775         Change all callers.
7777 2016-02-20  Daiki Ueno  <ueno@gnu.org>
7779         Prefer customized value for GnuPG executable
7781         * lisp/epg-config.el (epg-configuration-find): Don't check GPG
7782         configuration if it is already set with custom.  (Bug#22747)
7784 2016-02-20  Eli Zaretskii  <eliz@gnu.org>
7786         Fix memory reservation on MS-Windows
7788         * src/w32heap.c (mmap_alloc): Reserve memory in 64KB granular
7789         units.  This avoids leaving gaps in reserved memory regions that
7790         no one can use, since memory reservation must produce 64KB-aligned
7791         addresses.  (Bug#22526)
7793 2016-02-20  Anders Lindgren  <andlind@gmail.com>
7795         Update NextStep readme and add wish list.
7797         * nextstep/README: Rewritten from scratch. New sections on
7798         "History", "Overview of Cocoa and Objective-C", "Guidelines",
7799         "Tracing Support", and "GNUStep". Expanded the "See Also" section.
7800         * nextstep/WISHLIST: New file containing list of issues and ideas
7801         associated with the NS port of Emacs.
7803 2016-02-20  Michael Albinus  <michael.albinus@gmx.de>
7805         Report also result in `file-notify--test-event-handler'
7807 2016-02-20  Michael Albinus  <michael.albinus@gmx.de>
7809         Improve file-notify-test08-watched-file-in-watched-dir
7811         * test/automated/file-notify-tests.el (file-notify--test-desc2):
7812         New variable.
7813         (file-notify--test-cleanup): Use it.
7814         (file-notify--test-event-handler): Enable trace.
7815         (file-notify-test08-watched-file-in-watched-dir): Tag it as
7816         :expensive-test.  Rewrite callbacks to use
7817         `file-notify--test-event-handler'.  Read events in loop.  Check
7818         `file-notify--test-results'.
7819         (file-notify-test08-watched-file-in-watched-dir): Fix docstring.
7821 2016-02-20  Stephen Berman  <stephen.berman@gmx.net>
7823         Fix todo-mode item date editing bugs
7825         * lisp/calendar/todo-mode.el (todo-edit-item--header): Prevent out of
7826         range error by making sure the value of the numerical month date
7827         component cannot be nil.  Prevent wrong type error on trying to edit
7828         day number in February by making sure numerical instead of string
7829         value of the year component is passed to todo-read-date.
7830         (todo-read-date): When using the numerical month date component make
7831         sure to use `*' for an arbitrary month instead of its numerical value.
7833 2016-02-20  Eli Zaretskii  <eliz@gnu.org>
7835         Fix "[:upper:]" for non-ASCII characters
7837         * src/regex.c (re_match_2_internal): Support [:upper:] and
7838         [:lower:] for non-ASCII characters.  (Bug#18150)
7840 2016-02-20  Lars Ingebrigtsen  <larsi@gnus.org>
7842         Allow customising the article mode cursor behavior
7844         * doc/misc/gnus.texi (HTML): Mention gnus-article-show-cursor.
7846         * lisp/gnus/gnus-art.el (gnus-article-show-cursor): New variable.
7847         (gnus-article-mode): Use it.
7849 2016-02-20  Ari Roponen  <ari.roponen@gmail.com>
7851         Use pop-to-buffer-same-window in woman.el
7853         * lisp/woman.el (woman-really-find-file): Work around going to
7854         the wrong buffer by using `pop-to-buffer-same-window' (bug#22332).
7855         (WoMan-find-buffer): Ditto.
7857 2016-02-20  Tassilo Horn  <tsdh@gnu.org>
7859         New filenotify test for bug#22736
7861         * test/automated/file-notify-tests.el
7862         (file-notify-test08-watched-file-in-watched-dir):
7863         (file-notify--test-desc1): New filenotify test for bug#22736
7865 2016-02-20  Marcin Borkowski  <mbork@mbork.pl>
7867         Report critical battery errors
7869         * lisp/battery.el (battery-pmset): Report critical battery
7870         errors (bug#18157).
7872 2016-02-19  Kaushal Modi  <kaushal.modi@gmail.com>  (tiny change)
7874         Make eww message toggling message clearer
7876         * lisp/net/eww.el (eww-toggle-fonts): Make the message
7877         clearer.
7879 2016-02-19  Mark Oteiza  <mvoteiza@udel.edu>
7881         * lisp/calc/calc-units.el (math-standard-units): Update to 2014 CODATA adjustment.
7883 2016-02-18  Martin Rudalics  <rudalics@gmx.at>
7885         Fix bugs in window resizing code
7887         * lisp/window.el (adjust-window-trailing-edge): Fix mismatched
7888         parenthesis.
7889         (shrink-window, enlarge-window): Fix bug#22723 where windows
7890         with preserved size would not get resized.  Also now signal an
7891         error when the window cannot be shrunk or enlarged as requested.
7893 2016-02-17  Eli Zaretskii  <eliz@gnu.org>
7895         Fix decoding DOS EOL in a unibyte buffer
7897         * src/coding.c (decode_eol): Loop over bytes, not characters.
7898         (Bug#5251)
7900 2016-02-17  Alan Mackenzie  <acm@muc.de>
7902         Correct c-parse-state cache manipulation error.
7904         * lisp/progmodes/cc-engine.el (c-invalidate-state-cache-1): Correct a
7905         comparison bound.  Amend comments.
7907 2016-02-17  Daiki Ueno  <ueno@gnu.org>
7909         Take advantage of new GnuPG version check function
7911         * lisp/emacs-lisp/package.el (epg-configuration-find): Declare.
7912         (package-refresh-contents): Use `epg-configuration-find' to check if EPG
7913         is usable.
7915 2016-02-17  Daiki Ueno  <ueno@gnu.org>
7917         Make GnuPG version check robuster
7919         We changed the default gpg program to "gpg2" from "gpg" in the commit
7920         f93d669a16bd3cb3f43f0c8cfd22fe18b627a6a1.  However, there are two
7921         maintained branches (2.0 and 2.1) and Emacs doesn't work well with 2.0
7922         series.  Check the actual version of "gpg2" at run time, and properly
7923         divert to "gpg" if necessary.
7924         * lisp/epg-config.el: Require 'cl-lib for `cl-destructuring-bind'.
7925         (epg-config--program-alist): New variable.
7926         (epg--configurations): New variable.
7927         (epg-configuration-find): New function.
7928         (epg-config--make-gpg-configuration): New function.
7929         (epg-config--make-gpgsm-configuration): New function.
7930         (epg-configuration): Mark as obsolete.
7931         * lisp/epg.el (epg-context): Use `epg-configuration-find'.
7933 2016-02-17  Paul Eggert  <eggert@cs.ucla.edu>
7935         Fix x-load-color-file pointer signedness
7937         * src/xfaces.c (Fx_load_color_file) [!HAVE_X_WINDOWS]:
7938         For sscanf and int *, use %d, not %u.
7939         Problem found on Ubuntu 15.10 x32, which lacks X support.
7941 2016-02-17  Paul Eggert  <eggert@cs.ucla.edu>
7943         * lisp/time-stamp.el (time-stamp-time-zone): Fix doc string punct.
7945 2016-02-16  Mark Oteiza  <mvoteiza@udel.edu>
7947         Follow convention for greek letter constants.
7949         * lisp/calc/calc-units.el (math-standard-units):
7950         Add "sigma" and alias σ to it.
7952 2016-02-16  Mark Oteiza  <mvoteiza@udel.edu>
7954         Add Stefan-Boltzmann constant to calc units table.
7956         * lisp/calc/calc-units.el (math-standard-units):
7957         Add Stefan-Boltzmann constant.
7959 2016-02-16  Mark Oteiza  <mvoteiza@udel.edu>
7961         * lisp/calc/calc-units.el (math-build-units-table-buffer): Use special-mode.
7963 2016-02-16  Glenn Morris  <rgm@gnu.org>
7965         Avoid loading cl-lib for term/xterm.elc, eg in -Q -nw.  (Bug#22669)
7967         * lisp/emacs-lisp/cl-generic.el (cl--generic-dispatchers):
7968         Prefill with relevant elements for term/xterm.
7970 2016-02-16  Tassilo Horn  <tsdh@gnu.org>
7972         Fix soffice UserInstallation-URL for Windows
7974         * lisp/doc-view.el (doc-view-odf->pdf-converter-soffice): Fix
7975         UserInstallation-URL when calling soffice on Windows.
7977 2016-02-16  Lars Ingebrigtsen  <larsi@gnus.org>
7979         Fix display of <pre> elements
7981         * lisp/net/eww.el (eww-display-html): Remove CRLF before
7982         parsing so that <pre> elements don't render with ^M at the end
7983         of the lines.
7985 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
7987         Minor fixes in global-auto-composition-mode
7989         * lisp/emacs-lisp/easy-mmode.el (easy-mmode-pretty-mode-name):
7990         Produce prettier names of globalized minor modes.
7991         * lisp/composite.el (global-auto-composition-mode): Make it a
7992         globalized mode.  (Bug#22682)
7994 2016-02-15  Alan Mackenzie  <acm@muc.de>
7996         Allow arithmetic operators inside C++ template constructs.
7998         Fixes debbugs #22486.  This corrects the previous patch with this message
7999         which was empty.
8001         * lisp/progmodes/cc-langs.el (c-multichar->-op-not->>-regexp): New language
8002         variable.
8003         (c-<>-notable-chars-re): New language variable.
8005         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur): User
8006         c-<>-notable-chars-re in place of the former fixed string in searching for
8007         places to stop and examine.
8008         Use c-multichar->-op-not->>-regexp to check that a found ">" is not part of a
8009         multichar operator in place of the former c->-op-without->-cont-regexp.
8010         Add code to skip forwards over a balanced parenthesized expression.
8012 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
8014         Avoid crashes in semi-malformed 'condition-case'
8016         * src/eval.c (internal_lisp_condition_case): Treat a handler
8017         '(nil)' as if it were '(nil nil)'.  (Bug#22675)
8019 2016-02-15  Alan Mackenzie  <acm@muc.de>
8021         Allow arithmetic operators inside C++ template constructs.
8023         Fixes debbugs #22486.
8025         * lisp/progmodes/cc-langs.el (c-multichar->-op-not->>-regexp): New language
8026         variable.
8027         (c-<>-notable-chars-re): New language variable.
8029         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur): User
8030         c-<>-notable-chars-re in place of the former fixed string in searching for
8031         places to stop and examine.
8032         Use c-multichar->-op-not->>-regexp to check that a found ">" is not part of a
8033         multichar operator in place of the former c->-op-without->-cont-regexp.
8034         Add code to skip forwards over a balanced parenthesized expression.
8036 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
8038         Fix regression with 'recent-keys' and keyboard macros
8040         * src/keyboard.c (record_char): Don't record in 'recent_keys'
8041         events that come from executing keyboard macros.  (Bug#22674)
8043 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
8045         Fix wording in a doc-view.el comment
8047         * lisp/doc-view.el (doc-view--current-cache-dir): Don't use
8048         "illegal" for something that is not against the law.
8050 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
8052         CONTRIBUTE cleanups and updates
8054         * CONTRIBUTE: Mention URLs and info nodes more consistently,
8055         avoiding possibly-confusing punctuation adjacent to a URL, and
8056         giving full shell commands for 'info'.  Start with a brief but
8057         complete how-to, for people who want to get started right away.
8058         Then briefly discuss how to join the development process in the
8059         typical order.  Omit needless words.  Update some of the
8060         now-obsolete file names, info node names, and quoting styles.
8061         Better document emacs-NN branches and how they are merged.
8062         * admin/notes/git-workflow: Change emacs-24 to emacs-25,
8063         and trunk to master.  This file still needs work.
8065 2016-02-14  Paul Eggert  <eggert@cs.ucla.edu>
8067         Port USE_STACK_LISP_OBJECTS fix to Clang
8069         * src/lisp.h (USE_STACK_LISP_OBJECTS): Default to false for Clang.
8070         Recent versions of Clang claim to be GCC 4.2.1 but do not have
8071         the GCC bug.
8073 2016-02-14  Paul Eggert  <eggert@cs.ucla.edu>
8075         Port to x86 GCC 4.3.1 and earlier
8077         This tries to port to x86 FreeBSD 9, where Emacs dumps core (Bug#22065).
8078         * src/lisp.h (USE_STACK_LISP_OBJECTS): Default to false
8079         for GCC 4.3.1 and earlier.
8081 2016-02-14  Eli Zaretskii  <eliz@gnu.org>
8083         Fix point movement under 'scroll-conservatively'
8085         * src/xdisp.c (redisplay_window): Correct a typo in computing the
8086         effective number of text lines in a window.  (Bug#22637)
8088 2016-02-14  Thomas Plass  <thomas.plass@arcor.de>
8090         Replace colon in file name (not legal on Windows)
8092         * lisp/doc-view.el (doc-view--current-cache-dir): Replace colon in file
8093         name (not legal on Windows). [tiny change]
8095 2016-02-14  Eli Zaretskii  <eliz@gnu.org>
8097         Fix a typo in edt.texi
8099         * doc/misc/edt.texi: Fix a typo in an email address.  Reported by
8100         "Herbert J. Skuhra" <herbert@mailbox.org>.
8102 2016-02-14  Eli Zaretskii  <eliz@gnu.org>
8104         Make 'mmap_realloc' on MS-Windows more reliable
8106         * src/w32heap.c (mmap_alloc): If reserving memory succeeds, but
8107         committing fails, return NULL.  Don't call GetLastError twice for
8108         the same API error.
8109         (mmap_realloc): Zero out MEMORY_BASIC_INFORMATION structures
8110         before calling VirtualQuery, to avoid using garbled values if the
8111         call fails.  If committing more pages from the same block fails,
8112         fall back on mmap_alloc + CopyMemory.  Enhance debugging printouts
8113         if the call to VirtualAlloc to commit more pages fails.
8114         (Bug#22526)
8116 2016-02-14  Oscar Fuentes  <ofv@wanadoo.es>
8118         Grep alias `all' shall not match parent directory
8120         * lisp/progmodes/grep.el (grep-files-aliases): Don't match parent
8121           directory for `all'. Fixes bug#22577
8123 2016-02-13  Nicolas Petton  <nicolas@petton.fr>
8125         Bump version to 25.0.91
8127         * README:
8128         * configure.ac:
8129         * msdos/sed2v2.inp: Bump version to 25.0.91.
8131 2016-02-13  Nicolas Petton  <nicolas@petton.fr>
8133         * etc/AUTHORS: Update the AUTHORS file
8135 2016-02-13  Glenn Morris  <rgm@gnu.org>
8137         * lisp/dired-aux.el: Require cl-lib.  (Bug#22613)
8139 2016-02-13  Eli Zaretskii  <eliz@gnu.org>
8141         Index tilde characters in names of backup files
8143         * doc/emacs/files.texi (Backup Names): Improve indexing.
8144         (Bug#22625)
8146 2016-02-13  Eli Zaretskii  <eliz@gnu.org>
8148         Document deprecation of hi-lock-mode's 'C-x w' bindings
8150         * doc/emacs/display.texi (Highlight Interactively): Deprecate the
8151         "C-x w" bindings of hi-lock-mode.
8153         * etc/NEWS: Mark the deprecation entry as documented.
8155 2016-02-13  Stefan Monnier  <monnier@iro.umontreal.ca>
8157         Announce that the `C-x w' bindings are deprecated
8159 2016-02-13  Paul Eggert  <eggert@cs.ucla.edu>
8161         Suppress GNUstep hardening
8163         Fedora 23 normally hardens GNUstep applications, which causes
8164         ‘./configure --with-ns’ to break Emacs’s funky way of undumping.
8165         Fix this by eliding the hardening options (Bug#22518).
8166         * src/Makefile.in (LIBS_GNUSTEP): Omit options like
8167         ‘-specs=/usr/lib/rpm/redhat/redhat-hardened-ld’.
8168         (GNU_OBJC_CFLAGS): Omit options like
8169         ‘-specs=/usr/lib/rpm/redhat/redhat-hardened-cc1’.
8171 2016-02-12  Eli Zaretskii  <eliz@gnu.org>
8173         Fix redisplay after a large insertion
8175         * src/xdisp.c (redisplay_internal): Don't accept the results of
8176         "optimization 3" if the cursor ends up in a partially visible
8177         glyph row.  (Bug22637)
8179 2016-02-12  Andreas Schwab  <schwab@linux-m68k.org>
8181         Revert "Fix gnus-group-get-new-news-this-group on group with closed server"
8183         This reverts commit 9dc77e37aa84c6df9b3ddb4609f3c09201b0580e.
8185                 * lisp/gnus/nnimap.el (nnimap-change-group): Revert last
8186                 change.  (Bug#22634)
8188 2016-02-11  Paul Eggert  <eggert@cs.ucla.edu>
8190         * lib-src/make-docfile.c: Include stdarg.h.
8192 2016-02-11  Alan Mackenzie  <acm@muc.de>
8194         Extend gpm-mouse-mode's doc string and doc to point out limitations.
8196         * lisp/t-mouse.el (gpm-mouse-mode): Extend doc string to indicate the
8197         inability to transfer text between Emacs and other programs which use GPM.
8199         * doc/emacs/frames.texi (Text-Only Mouse): Note the inability to transfer text
8200         between Emacs and other progrmas which use GPM.
8202 2016-02-11  Eli Zaretskii  <eliz@gnu.org>
8204         Revert "Backport: * lisp/isearch.el: Turn char-folding off by default"
8206         * lisp/isearch.el: Turn char-folding back oon by default.
8208         This reverts commit 12c50e82c9b432b2fc31f8fb2215f43ceea80822.
8210 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
8212         Revert "Support integer image rotation and respect EXIF rotations"
8214         This reverts commit 0f600496050bf435f55dc81056e06fcd45992dc8.
8216         This change does not work on Fedora.
8218 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
8220         Revert "Document EXIF image rotation"
8222         This reverts commit 10b8ed27ec91ff52f93eb0297dcc3abb214931aa.
8224         This change does not work on Fedora, for instance.
8226 2016-02-11  Paul Eggert  <eggert@cs.ucla.edu>
8228         Document OS X LANG default
8230         * doc/emacs/cmdargs.texi (General Variables):
8231         Document OS X Language and Region system preference.
8232         Suggested by Alan Third.
8234 2016-02-11  Alan Third  <alan@idiocy.org>
8236         Set locale when run from OS X GUI
8238         * src/emacs.c (main): Call ns_init_locale.
8239         * src/nsterm.m (ns_init_locale): Get locale from OS and set LANG.
8240         * src/nsterm.h: Include ns_init_locale.
8242 2016-02-10  Paul Eggert  <eggert@cs.ucla.edu>
8244         make-docfile cleanup for I/O, etc.
8246         * lib-src/make-docfile.c (progname, generate_globals, num_globals)
8247         (num_globals_allocated, globals): Now static.
8248         (generate_globals, struct rcsoc_state, read_c_string_or_comment):
8249         (write_c_args, scan_c_stream, search_lisp_doc_at_eol, scan_lisp_file):
8250         Use bool for boolean.
8251         (verror): New function.
8252         (fatal, error): Use it.  API is now like printf.  All callers changed.
8253         (main): Remove err_count local that was always 0.
8254         (main, scan_c_stream, scan_lisp_file): Check for I/O error.
8255         (scan_file, scan_c_file, scan_c_stream, scan_lisp_file):
8256         Return void, not 0.
8257         (put_char, scan_keyword_or_put_char, scan_c_file): Use char for byte.
8258         (scan_keyword_or_put_char): Check for missing ( and unexpected EOF.
8259         (close_emacs_globals): Use ptrdiff_t for index, not int.
8260         (scan_c_file, scan_lisp_file): Exit with failure if file cannot be
8261         opened, rather than diagnosing but exiting with status 0.
8262         (search_lisp_doc_at_eol): Don't worry about ungetc of EOF; it's
8263         portable now.
8265 2016-02-10  Paul Eggert  <eggert@cs.ucla.edu>
8267         Memory-management cleanup in make-docfile
8269         I compiled it with -fsanitize=address and fixed the leaks it detected.
8270         Also, I changed it to prefer signed to unsigned integer types,
8271         and to check for integer overflow.
8272         * lib-src/make-docfile.c:
8273         Include <stddef.h>, <stdint.h>, <intprops.h>, <min-max.h>.
8274         (memory_exhausted): New function.
8275         (xmalloc, xrealloc): Use it.
8276         (xmalloc, xrealloc, scan_file, struct rcsoc_state, write_c_args)
8277         (uncompiled, scan_lisp_file):
8278         Prefer signed integer types to unsigned.
8279         (xstrdup): Remove.  All uses removed.
8280         (num_globals, num_globals_allocated, write_globals, scan_c_stream):
8281         Use ptrdiff_t, not int, for indexes that in theory could exceed INT_MAX.
8282         (add_global): Use const to pacify --enable-gcc-warnings.
8283         Make a copy here, rather than relying on strdup calls later.
8284         (add_global, write_globals, scan_c_stream):
8285         Avoid integer overflow when calculating sizes.
8286         (write_globals, scan_c_stream, scan_lisp_file): Avoid memory leak.
8287         (scan_c_stream): Check for add_global failure.
8289 2016-02-10  Kevin Gallagher  <Kevin.Gallagher@boeing.com>
8291         Kevin Gallagher has new email address
8293         * lisp/emulation/edt.el:
8294         * lisp/emulation/edt-lk201.el:
8295         * lisp/emulation/edt-mapper.el:
8296         * lisp/emulation/edt-pc.el:
8297         * lisp/emulation/edt-vt100.el:
8298         * etc/edt-user.el:
8299         * doc/misc/edt.texi: Update Kevin Gallagher's email address.
8301 2016-02-10  Eli Zaretskii  <eliz@gnu.org>
8303         Improve doc strings of 'forward/backward-word-strictly'
8305         * lisp/simple.el (backward-word): Refer to 'backward-word-strictly'
8306         in the doc string.  Suggested by Glenn Morris <rgm@gnu.org>.
8307         * lisp/subr.el (forward-word-strictly, backward-word-strictly):
8308         Mention 'subword-mode' in the doc strings.
8310         * src/syntax.c (Fforward_word): Refer to 'forward-word-strictly'
8311         in the doc string.  (Bug#22560)
8313 2016-02-10  Michael Albinus  <michael.albinus@gmx.de>
8315         Describe Makefile test targets in test/README
8317         * CONTRIBUTE: Move Makefile test targets to test/README.
8319         * Makefile.in:
8320         * test/README: Describe Makefile test targets.
8322 2016-02-10  Artur Malabarba  <bruce.connor.am@gmail.com>
8324         Backport: * lisp/isearch.el: Turn char-folding off by default
8326         (search-default-mode): Set default value to nil.
8328 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
8330         Document EXIF image rotation
8332         * doc/lispref/display.texi (ImageMagick Images): Mention EXIF rotation.
8334 2016-02-10  Dima Kogan  <dima@secretsauce.net>
8336         Support integer image rotation and respect EXIF rotations
8338         * src/image.c (imagemagick_load_image): Allow integer rotations in
8339         addition to floating point rotations (bug#22591).
8340         * src/image.c (imagemagick_load_image): Images that have an
8341         orientation given in EXIF and have no explicit :rotation tag are now
8342         pre-rotated.  All information such as width/height is reported for the
8343         rotated image.
8345 2016-02-10  Matthew Carter  <m@ahungry.com>
8347         Quote table names for postgres listings (sql-mode)
8349         * lisp/progmodes/sql.el (sql-postgres-completion-object): Avoid passing
8350           unquoted table names to the completion list.
8352 2016-02-10  Juri Linkov  <juri@linkov.net>
8354         * lisp/replace.el (replace-match-maybe-edit): Make arg `backward' optional.
8356         Doc fix.
8357         (replace-search, replace-highlight): Make arg `backward' optional.
8358         (Bug#18388)
8360 2016-02-10  Juri Linkov  <juri@linkov.net>
8362         * lisp/simple.el (next-line-or-history-element): Reset temporary-goal-column.
8364         (previous-line-or-history-element): Reset temporary-goal-column.
8365         Use end-of-visual-line instead of line-end-position.  (Bug#22544)
8367 2016-02-10  Paul Eggert  <eggert@cs.ucla.edu>
8369         Suppress ACL ops if configured with --disable-acl
8371         Without this patch, some ACL operations were suppressed, but not all.
8372         * src/fileio.c [!USE_ACL]: Do not include sys/acl.h.
8373         (Ffile_acl, Fset_file_acl) [!USE_ACL]: Return nil in this case.
8375 2016-02-09  Katsumi Yamaoka  <yamaoka@jpl.org>
8377         Mention web bugs
8379         * doc/misc/emacs-mime.texi (Display Customization):
8380         Mention web bugs in the mm-html-blocked-images section.
8382 2016-02-09  Katsumi Yamaoka  <yamaoka@jpl.org>
8384         Make mm-html-blocked-images default to "" again
8386         * lisp/gnus/mm-decode.el (mm-html-blocked-images):
8387         Default to "" that blocks all external images.
8389         * doc/misc/emacs-mime.texi (Display Customization):
8390         Mention that mm-html-blocked-images defaults to "".
8392 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
8394         Minor alignas cleanup
8396         * src/lisp.h (alignas): Remove now-redundant #ifdef that was left
8397         over from the old way of doing things, before Bug#20862 was fixed.
8399 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
8401         Add lmalloc commentary and tweak laligned
8403         * src/alloc.c (laligned): Help compiler in a tiny way by putting
8404         the more-commonly-failing disjunct first.
8406 2016-02-09  Eli Zaretskii  <eliz@gnu.org>
8408         Clarify documentation of key binding conventions
8410         * doc/lispref/tips.texi (Key Binding Conventions): Clarify which
8411         "punctuation characters" are reserved after "C-c".  (Bug#22604)
8413 2016-02-09  Oscar Fuentes  <ofv@wanadoo.es>
8415         * etc/NEWS: mention the `vc-faces' customization group
8417 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
8419         Sync with gnulib
8421         This incorporates:
8422         2016-02-09 stdalign: port to clang 3.7.0
8423         2016-02-06 misc: port better to gcc -fsanitize=address
8424         * doc/misc/texinfo.tex, lib/stdalign.in.h, m4/acl.m4, m4/getgroups.m4:
8425         Copy from gnulib.
8427 2016-02-09  Michael Albinus  <michael.albinus@gmx.de>
8429         * CONTRIBUTE: Add more examples for $(SELECTOR) make variable.
8431 2016-02-09  Katsumi Yamaoka  <yamaoka@jpl.org>
8433         Make mm-html-inhibit-images and mm-html-blocked-images default to nil
8435         * lisp/gnus/mm-decode.el (mm-html-inhibit-images)
8436         (mm-html-blocked-images): Default to nil.
8438         * doc/misc/emacs-mime.texi (Display Customization): Mention that
8439         mm-html-inhibit-images and mm-html-blocked-images default to nil.
8441         * etc/NEWS (Gnus): Document mm-html-inhibit-images and
8442         mm-html-blocked-images.
8444 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
8446         Increase success rate of fallback lmalloc
8448         * src/alloc.c (lmalloc, lrealloc): Reallocate with (typically)
8449         larger and larger sizes, to increase the probability that
8450         the allocator will return a Lisp-aligned pointer.
8452 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
8454         Make backgrounds extend to the end of the lines in shr
8456         * lisp/net/shr.el (shr-face-background): Faces can also be on
8457         the form `(:background "#fff)' (bug#22547).
8459 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
8461         Make the `R' command get the correct relative <img>s
8463         * lisp/net/eww.el (eww-readable): Preserve the base URL so
8464         that image expansions are fetched from the right place (bug#22605).
8466         (cherry picked from commit 8722e849f75ceafb82a1c17105e8ab76077a8ebc)
8468         Backport:
8470 2016-02-09  Mike Kupfer  <m.kupfer@acm.org>
8472         Fix typos in emacs-mime.texi and gnus.texi
8474         * doc/misc/emacs-mime.texi (Display Customization):
8475         * doc/misc/gnus.texi (HTML): Fix typo.
8477 2016-02-09  Katsumi Yamaoka  <yamaoka@jpl.org>
8479         * doc/misc/emacs-mime.texi (Display Customization):
8480         Doc fix for mm-html-inhibit-images.
8482 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
8484         Fix message-cross-post-followup-to group names
8486         * lisp/gnus/message.el (message-cross-post-followup-to): Don't
8487         insert group names like "nntp+foo:zot", because those aren't valid.
8489 2016-02-09  David Edmondson  <dme@dme.org>
8491         Compare recipient and keys case-insensitively
8493         * lisp/gnus/mml2015.el: (mml-secure-check-user-id): When comparing a
8494         recipient address with that from a key, do so in a case insensitive
8495         manner (bug#22603).
8497 2016-02-08  Glenn Morris  <rgm@gnu.org>
8499         * lisp/gnus/mm-decode.el (mm-alist-to-plist): Doc fix.
8501 2016-02-08  Katsumi Yamaoka  <yamaoka@jpl.org>
8503         Refactor HTML images handling of Gnus and mm-* (a part of bug#21650)
8505         * doc/misc/emacs-mime.texi (Display Customization):
8506         Remove mm-inline-text-html-with-images; add documentations for
8507         mm-html-inhibit-images and mm-html-blocked-images.
8509         * lisp/gnus/gnus-art.el (gnus-article-show-images):
8510         No need to bind mm-inline-text-html-with-images.
8511         (gnus-bind-safe-url-regexp): Rename to gnus-bind-mm-vars.
8512         (gnus-bind-mm-vars): Rename from gnus-bind-safe-url-regexp;
8513         bind mm-html-inhibit-images and mm-html-blocked-images.
8514         (gnus-mime-view-all-parts, gnus-mime-view-part-internally)
8515         (gnus-mm-display-part, gnus-mime-display-single)
8516         (gnus-mime-display-alternative): Use gnus-bind-mm-vars.
8518         * lisp/gnus/mm-decode.el (mm-inline-text-html-with-images): Remove.
8519         (mm-html-inhibit-images, mm-html-blocked-images): New user options.
8520         (mm-shr): Bind shr-inhibit-images and shr-blocked-images with
8521         mm-html-inhibit-images and mm-html-blocked-images respectively
8522         instead of gnus-inhibit-images and gnus-blocked-images.
8524         * lisp/gnus/mm-view.el (mm-setup-w3m): Use mm-html-inhibit-images
8525         instead of mm-inline-text-html-with-images.
8527 2016-02-08  Paul Eggert  <eggert@cs.ucla.edu>
8529         Port to FreeBSD 11-CURRENT i386
8531         Problem reported by Herbert J. Skuhra in:
8532         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00354.html
8533         Instead of trying
8534         * src/alloc.c (lmalloc, lrealloc, laligned): New functions.
8535         (xmalloc, xzalloc, xrealloc, lisp_malloc): Use them.
8536         (__alignof__) [!__GNUC__ && !__alignof__]: New macro.
8537         (MALLOC_IS_GC_ALIGNED): New macro.
8538         * src/lisp.h (NONPOINTER_BITS): Remove.  All uses removed.
8539         No longer needed now that alloc.c uses lmalloc and lrealloc.
8541 2016-02-08  Michael Albinus  <michael.albinus@gmx.de>
8543         Some fixes in file-notify-tests.el
8545         * test/automated/file-notify-tests.el
8546         (file-notify--test-with-events-check)
8547         (file-notify--test-with-events-explainer): New defuns.
8548         (file-notify--test-with-events): Use it.
8549         (file-notify-test07-backup): Fix docstring.  Some of the
8550         backends fire two `changed' events.  Backup by rename doesn't
8551         work for kqueue.
8553 2016-02-07  Michael Albinus  <michael.albinus@gmx.de>
8555         Fix Bug#22557
8557         * lisp/filenotify.el (file-notify-callback): Do not send a
8558         `stopped' event in case of backup by renaming.  (Bug#22557)
8560         * test/automated/Makefile.in: Use $(SELECTOR_EXPENSIVE) for
8561         all targets but check and check-maybe.
8563         * test/automated/file-notify-tests.el
8564         (file-notify--test-read-event-timeout): New defconst.
8565         (file-notify--deftest-remote, file-notify--wait-for-events)
8566         (file-notify-test02-events)
8567         (file-notify-test04-file-validity)
8568         (file-notify-test06-many-events): Use it.
8569         (file-notify--test-cleanup): Make it more robust.  Delete also
8570         backup file.
8571         (file-notify-test07-backup): New test.
8573 2016-02-07  Paul Eggert  <eggert@cs.ucla.edu>
8575         Fix test for dladdr
8577         Problem reported by Andreas Schwab in:
8578         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00327.html
8579         * configure.ac (dladdr): Link with LIBMODULES when checking for
8580         this function.
8582 2016-02-07  Andreas Schwab  <schwab@linux-m68k.org>
8584         Fix gnus-group-get-new-news-this-group on group with closed server
8586         * lisp/gnus/nnimap.el (nnimap-change-group): Lookup server
8587         method and pass to nnimap-open-server.
8589 2016-02-07  Artur Malabarba  <bruce.connor.am@gmail.com>
8591         * lisp/comint.el (comint-prompt-read-only): Clean tabs in docstring
8593         While tabs in code are mostly fine because the Emacs sources have a
8594         .dir-locals file specifying tab-width, the same is not true of tabs in
8595         code examples inside docstrings.  The docstring is printed on a *Help*
8596         buffer, which can be created on any directory and won't necessarily have
8597         the same tab-width set.
8599 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
8601         Don't inloop gnus-uu-mark-thread on the last thread
8603         * lisp/gnus/gnus-uu.el (gnus-uu-mark-thread): Don't infloop on the
8604         final thread in the summary buffer (bug#16666).
8606 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
8608         Display non-ASCII group names better in prompts
8610         * lisp/gnus/gnus-sum.el (gnus-articles-to-read): To decode the
8611         group name, we have to do that before we remove the prefix.
8613 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
8615         Default to gpg2 instead of gpg
8617         * lisp/epg-config.el (epg-gpg-program): Prefer gpg2 over gpg, if
8618         it exists.  This fixes many problems with using the GPG
8619         authentication agent.
8621 2016-02-06  David Edmondson  <dme@dme.org>
8623         src/process.c Correctly convert AF_INET6 addresses
8625         * src/process.c (conv_lisp_to_sockaddr): AF_INET6 addresses are
8626         converted to a list of 16 bit quantities by
8627         conv_sockaddr_to_lisp(). conv_lisp_to_sockaddr() should follow the
8628         same scheme rather than expecting a (longer) list of 8 bit
8629         quantities.
8631         Backport:
8633         (cherry picked from commit 55ce3c30d617c38eb086d5ad4ffbd881c20c559c)
8635 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
8637         * lisp/isearch.el (isearch-define-mode-toggle): Improve logic
8639 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
8641         * lisp/menu-bar.el (menu-bar-options-menu): New search submenu
8643         (menu-bar-search-options-menu): New variable
8645 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
8647         * lisp/isearch.el (search-default-mode)
8649         (isearch-regexp-function): Improve docstrings.
8651 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
8653         * lisp/isearch.el: Rename search-default-regexp-mode to search-default-mode
8655         (search-default-mode): New variable.
8656         (isearch-mode, isearch-define-mode-toggle)
8657         (isearch--describe-regexp-mode): Update accordingly.
8658         * lisp/menu-bar.el (nonincremental-search-forward): Update accordingly.
8659         * etc/NEWS: Update accordingly.
8660         * doc/emacs/search.texi: Update accordingly.
8662 2016-02-06  Oscar Fuentes  <ofv@wanadoo.es>
8664         Use monitor's resolution for positioning tooltips
8666         * src/xfns.c (compute_tip_xy): Use the resolution of the monitor where
8667           the mouse pointer is to avoid placing the tooltip over the border of
8668           the monitor on multi-head displays. Fixes bug#22549.
8670 2016-02-06  Eli Zaretskii  <eliz@gnu.org>
8672         Fix file-notify-test on MS-Windows
8674         * test/automated/file-notify-tests.el (file-notify--test-timeout):
8675         Reduce w32notify timeout to 10 sec.
8676         (file-notify-test06-many-events): Call read-event after each
8677         rename, to keep the w32notify backend happy in batch mode.
8678         (Bug#22534)
8680 2016-02-06  Eli Zaretskii  <eliz@gnu.org>
8682         Fix issues found by auditing w32notify code
8684         * src/w32inevt.c (handle_file_notifications): Count the number of
8685         events to be returned.
8686         * src/w32notify.c (send_notifications): Don't copy to the file
8687         notification buffer more than it can hold.  (Bug#22534)
8689 2016-02-06  Eli Zaretskii  <eliz@gnu.org>
8691         Extend etags Ruby support for accessors
8693         * lib-src/etags.c (Ruby_functions): Support accessors defined with
8694         parentheses.  (Bug#22563)
8696         * test/etags/ruby-src/test1.ru (A::B): Add tests for accessors
8697         defined with parentheses.
8698         * test/etags/ETAGS.good_1:
8699         * test/etags/ETAGS.good_2:
8700         * test/etags/ETAGS.good_3:
8701         * test/etags/ETAGS.good_4:
8702         * test/etags/ETAGS.good_5:
8703         * test/etags/ETAGS.good_6:
8704         * test/etags/CTAGS.good: Adapt to changes in Ruby tests.
8706 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
8708         Update publicsuffix.txt.
8710         * etc/publicsuffix.txt: Updated from
8711         https://publicsuffix.org/list/public_suffix_list.dat.
8713 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
8715         Ensure that Gnus dribble handling allows removing entries
8717         * lisp/gnus/gnus-start.el (gnus-dribble-enter): Ensure that each
8718         entry is on a single line.
8720 2016-02-05  OGAWA Hirofumi  <hirofumi@mail.parknet.co.jp>  (tiny change)
8722         Be consistent when using encoded strings in nnimap data
8724         * lisp/gnus/nnimap.el (nnimap-encode-gnus-group): New function
8725         (nnimap-request-list): Use it.
8726         (nnimap-request-newgroups): Ditto.
8728 2016-02-05  OGAWA Hirofumi  <hirofumi@mail.parknet.co.jp>  (tiny change)
8730         Display the decoded Gnus group name
8732         * lisp/gnus/gnus-sum.el (gnus-summary-read-group-1): Use the
8733         decoded group name in the message.
8735 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
8737         Use completion-ignore-case instead of defining command
8739         * lisp/erc/erc.el (erc-mode): Set completion-ignore-case so
8740         that we get case-insensitive completion.
8741         (erc-completion-at-point): Remove.
8743 2016-02-05  Eli Zaretskii  <eliz@gnu.org>
8745         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
8747 2016-02-05  Michael Albinus  <michael.albinus@gmx.de>
8749         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
8751         Reduce the number of iterations to 250 in case of w32notify.
8753 2016-02-05  Eli Zaretskii  <eliz@gnu.org>
8755         Fix problems caused by new implementation of sub-word mode
8757         * lisp/subr.el (forward-word-strictly, backward-word-strictly):
8758         New functions.
8759         (word-move-empty-char-table): New variable.
8761         * etc/NEWS: Mention 'forward-word-strictly' and
8762         'backward-word-strictly'.
8764         * doc/lispref/positions.texi (Word Motion): Document
8765         'find-word-boundary-function-table', 'forward-word-strictly', and
8766         'backward-word-strictly'.  (Bug#22560)
8768         * src/syntax.c (syms_of_syntax)
8769         <find-word-boundary-function-table>: Doc fix.
8771         * lisp/wdired.el (wdired-xcase-word):
8772         * lisp/textmodes/texnfo-upd.el (texinfo-copy-node-name)
8773         (texinfo-copy-section-title, texinfo-start-menu-description)
8774         (texinfo-copy-menu-title, texinfo-specific-section-type)
8775         (texinfo-insert-node-lines, texinfo-copy-next-section-title):
8776         * lisp/textmodes/texinfo.el (texinfo-clone-environment)
8777         (texinfo-insert-@end):
8778         * lisp/textmodes/texinfmt.el (texinfo-format-scan)
8779         (texinfo-anchor, texinfo-multitable-widths)
8780         (texinfo-multitable-item):
8781         * lisp/textmodes/tex-mode.el (latex-env-before-change):
8782         * lisp/textmodes/flyspell.el (texinfo-mode-flyspell-verify):
8783         * lisp/skeleton.el (skeleton-insert):
8784         * lisp/simple.el (count-words):
8785         * lisp/progmodes/vhdl-mode.el (vhdl-beginning-of-libunit)
8786         (vhdl-beginning-of-defun, vhdl-beginning-of-statement-1)
8787         (vhdl-update-sensitivity-list, vhdl-template-block)
8788         (vhdl-template-break, vhdl-template-case, vhdl-template-default)
8789         (vhdl-template-default-indent, vhdl-template-for-loop)
8790         (vhdl-template-if-then-use, vhdl-template-bare-loop)
8791         (vhdl-template-nature, vhdl-template-procedural)
8792         (vhdl-template-process, vhdl-template-selected-signal-asst)
8793         (vhdl-template-type, vhdl-template-variable)
8794         (vhdl-template-while-loop, vhdl-beginning-of-block)
8795         (vhdl-hooked-abbrev, vhdl-port-copy, vhdl-hs-forward-sexp-func):
8796         * lisp/progmodes/verilog-mode.el (verilog-backward-sexp)
8797         (verilog-forward-sexp, verilog-beg-of-statement)
8798         (verilog-set-auto-endcomments, verilog-backward-token)
8799         (verilog-do-indent):
8800         * lisp/progmodes/vera-mode.el (vera-guess-basic-syntax)
8801         (vera-indent-block-closing):
8802         * lisp/progmodes/simula.el (simula-context)
8803         (simula-backward-up-level, simula-forward-down-level)
8804         (simula-previous-statement, simula-next-statement)
8805         (simula-skip-comment-backward, simula-calculate-indent)
8806         (simula-find-if, simula-electric-keyword):
8807         * lisp/progmodes/sh-script.el (sh-smie--rc-newline-semi-p):
8808         * lisp/progmodes/ruby-mode.el (ruby-smie--redundant-do-p)
8809         (ruby-smie--forward-token, ruby-smie--backward-token)
8810         (ruby-singleton-class-p, ruby-calculate-indent)
8811         (ruby-forward-sexp, ruby-backward-sexp):
8812         * lisp/progmodes/ps-mode.el (ps-run-goto-error):
8813         * lisp/progmodes/perl-mode.el (perl-syntax-propertize-function)
8814         (perl-syntax-propertize-special-constructs)
8815         (perl-backward-to-start-of-continued-exp):
8816         * lisp/progmodes/pascal.el (pascal-indent-declaration):
8817         * lisp/progmodes/octave.el (octave-function-file-p):
8818         * lisp/progmodes/mantemp.el (mantemp-insert-cxx-syntax):
8819         * lisp/progmodes/js.el (js--forward-function-decl):
8820         * lisp/progmodes/idlwave.el (idlwave-show-begin-check)
8821         (idlwave-beginning-of-block, idlwave-end-of-block)
8822         (idlwave-block-jump-out, idlwave-determine-class):
8823         * lisp/progmodes/icon.el (icon-is-continuation-line)
8824         (icon-backward-to-start-of-continued-exp, end-of-icon-defun):
8825         * lisp/progmodes/hideif.el (hide-ifdef-define):
8826         * lisp/progmodes/f90.el (f90-change-keywords):
8827         * lisp/progmodes/cperl-mode.el (cperl-electric-pod)
8828         (cperl-linefeed, cperl-electric-terminator)
8829         (cperl-find-pods-heres, cperl-fix-line-spacing)
8830         (cperl-invert-if-unless):
8831         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur):
8832         * lisp/progmodes/cc-align.el (c-lineup-java-inher):
8833         * lisp/progmodes/ada-mode.el (ada-compile-goto-error)
8834         (ada-adjust-case-skeleton, ada-create-case-exception)
8835         (ada-create-case-exception-substring)
8836         (ada-case-read-exceptions-from-file, ada-after-keyword-p)
8837         (ada-scan-paramlist, ada-get-current-indent, ada-get-indent-end)
8838         (ada-get-indent-if, ada-get-indent-block-start)
8839         (ada-get-indent-loop, ada-get-indent-type)
8840         (ada-search-prev-end-stmt, ada-check-defun-name)
8841         (ada-goto-decl-start, ada-goto-matching-start)
8842         (ada-goto-matching-end, ada-looking-at-semi-or)
8843         (ada-looking-at-semi-private, ada-in-paramlist-p)
8844         (ada-search-ignore-complex-boolean, ada-move-to-start)
8845         (ada-move-to-end, ada-which-function, ada-gen-treat-proc):
8846         * lisp/net/quickurl.el (quickurl-grab-url):
8847         * lisp/mail/sendmail.el (mail-do-fcc):
8848         * lisp/mail/rmail.el (rmail-resend):
8849         * lisp/mail/mailabbrev.el (mail-abbrev-complete-alias):
8850         * lisp/mail/mail-extr.el (mail-extract-address-components):
8851         * lisp/json.el (json-read-keyword):
8852         * lisp/files.el (insert-directory):
8853         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
8854         * lisp/completion.el (symbol-under-point, symbol-before-point)
8855         (symbol-before-point-for-complete, next-cdabbrev)
8856         (add-completions-from-c-buffer):
8857         * lisp/cedet/semantic/texi.el (semantic-up-context)
8858         (semantic-beginning-of-context):
8859         * lisp/cedet/semantic/bovine/el.el (semantic-get-local-variables):
8860         use 'forward-word-strictly' and 'backward-word-strictly' instead
8861         of 'forward-word' and 'backward-word'.
8863 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
8865         Fix doc string of tls-program
8867         * lisp/net/tls.el (tls-program): Document the %t parameter (bug#22559).
8869 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
8871         Restore window conf in nsm
8873         * lisp/net/nsm.el (nsm-query-user): Restore the window configuration.
8875         Backport:
8877 2016-02-05  Mark Oteiza  <mvoteiza@udel.edu>
8879         * etc/NEWS: Document new mpc.el features
8881 2016-02-04  Leo Liu  <sdl.web@gmail.com>
8883         * lisp/custom.el (defface): Revert indentation change.  (Bug#22524)
8885 2016-02-04  Alan Mackenzie  <acm@muc.de>
8887         Correctly fontify C++ initializations which "look like" functions.
8889         Fixes bug#7579.
8891         lisp/progmodes/cc-engine.el (c-forward-declarator): Add extra optional
8892         parameter to enable handling of "anonymous" declarators in declarations.
8894         lisp/progmodes/cc-fonts.el (c-font-lock-declarators): Check more rigorously
8895         whether a "(" opens a parameter list of a function, or an initialization of a
8896         variable.
8898 2016-02-04  Ulf Jasper  <ulf.jasper@web.de>
8900         Improve newsticker-treeview-selection-face
8902         * lisp/net/newst-treeview.el (newsticker-treeview-selection-face): Improve
8903         readability for dark background.
8905 2016-02-04  Eli Zaretskii  <eliz@gnu.org>
8907         Minor fix in tagging Ruby accessors by etags
8909         * lib-src/etags.c (Ruby_functions): Don't tag accessors whose
8910         names are not literal symbols.  (Bug#22241)
8912 2016-02-04  Paul Eggert  <eggert@cs.ucla.edu>
8914         Spelling fixes
8916 2016-02-04  Dmitry Gutov  <dgutov@yandex.ru>
8918         Remove 'def X' from the example
8920         * test/etags/ruby-src/test1.ru (A::B): Remove 'def X'
8921         (http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00167.html).
8922         * test/etags/CTAGS.good:
8923         * test/etags/ETAGS.good_1:
8924         * test/etags/ETAGS.good_2:
8925         * test/etags/ETAGS.good_3:
8926         * test/etags/ETAGS.good_4:
8927         * test/etags/ETAGS.good_5:
8928         * test/etags/ETAGS.good_6: Adjust accordingly.
8930 2016-02-04  Vasilij Schneidermann  <v.schneidermann@gmail.com>  (tiny change)
8932         Allow sending empty hidden values in eww
8934         * lisp/net/eww.el (eww-tag-input): Allow sending empty hidden
8935         values (bug#22388).
8937         (cherry picked from commit 5898da8210af7953e638ddf7821c05260979c3f0)
8939         Backport:
8941 2016-02-04  David Edmondson  <dme@dme.org>
8943         Make erc work better when encountering unknown prefix chars
8945         * lisp/erc/erc.el (erc-channel-receive-names): Output a warning
8946         instead of erroring out on unknown prefix chars (bug#22380).
8948 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
8950         Make erc completion case-insensitive again
8952         * lisp/erc/erc.el (erc-completion-at-point): Make erc completion
8953         case-insensitive again (bug#11360).
8955 2016-02-04  Carlos Pita  <carlosjosepita@gmail.com>  (tiny change)
8957         Make complection in erc use consistent casing
8959         * lisp/erc/erc-pcomplete.el (pcomplete-erc-all-nicks): Make
8960         case in the complection consistent (bug#18509).
8962 2016-02-04  Francis Litterio  <flitterio@gmail.com>
8964         Make /QUIT in erc more robust
8966         * lisp/erc/erc.el (erc-kill-query-buffers): Don't bug out if we're
8967         issuing /QUIT to disconnected servers (bug#22099).
8969 2016-02-04  Kevin Brubeck Unhammer  <unhammer@fsfe.org>  (tiny change)
8971         Make tracking faces in Emacs work more reliably
8973         * lisp/erc/erc-track.el (erc-faces-in): Always return lists of
8974         faces to avoid later ambiguity (bug#22424).
8976 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
8978         Make shr not bug out on images on non-graphical displays
8980         * lisp/net/shr.el (shr-put-image): Don't bug out on alt-less
8981         images on non-graphical displays (bug#22327).
8983 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
8985         Fix bookmark display widths
8987         * lisp/net/eww.el (eww-list-bookmarks): Pop to the buffer before
8988         preparing it so that the widths are computed correctly (bug#22328).
8990 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
8992         Fix typo in eww-make-unique-file-name
8994         * lisp/net/eww.el (eww-make-unique-file-name): Make this function
8995         actually work.
8997 2016-02-03  Lars Ingebrigtsen  <larsi@gnus.org>
8999         Make it possible to TAB to input fields
9001         * lisp/net/eww.el (eww-tag-input): Make it possible to TAB to
9002         input fields (bug#22540).
9004 2016-02-03  Lars Ingebrigtsen  <larsi@gnus.org>
9006         Insert complete alt texts when images are disabled
9008         * lisp/net/shr.el (shr-tag-img): When images are disabled, insert
9009         the complete alt/title string (bug#22293).
9011 2016-02-03  Lars Ingebrigtsen  <larsi@gnus.org>
9013         Allow eww text fields to grow
9015         * lisp/net/eww.el (eww-process-text-input): Allow text fields to
9016         grow when typing in stuff that's longer than the original width.
9018 2016-02-03  Dima Kogan  <dima@secretsauce.net>
9020         Make erc work when subword-mode is switched on
9022         * lisp/erc/erc-backend.el (erc-forward-word, erc-word-at-arg-p)
9023         (erc-bounds-of-word-at-point): New functions to do word-based
9024         things when subword-mode is switched on.
9026         * lisp/erc/erc-button.el (erc-button-add-nickname-buttons): Use them
9027         (bug#17558).
9029 2016-02-03  Teemu Likonen  <tlikonen@iki.fi>
9031         Fix IMAP doc example
9033         * doc/misc/gnus.texi (Client-Side IMAP Splitting): Fix example.
9035 2016-02-03  Paul Eggert  <eggert@cs.ucla.edu>
9037         Quoting fixes in doc strings and diagnostics
9039         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq, byte-compile-funcall):
9040         * lisp/gnus/mml-smime.el (mml-smime-get-dns-cert)
9041         (mml-smime-get-ldap-cert):
9042         Follow user style preference when quoting diagnostics.
9044 2016-02-03  Noam Postavsky  <npostavs@gmail.com>
9046         Fix warning message in hack-local-variables
9048         * lisp/files.el (hack-local-variables): use 'thisbuf' to reference
9049         the original buffer name in the warning message.  (Bug#21681)
9051 2016-02-03  Eli Zaretskii  <eliz@gnu.org>
9053         Etags: yet another improvement in Ruby tags
9055         * lib-src/etags.c (Ruby_functions): Handle continuation lines in
9056         Ruby accessor definitions.  (Bug#22241)
9058         * test/etags/ruby-src/test1.ru (A::B#X): Add some more tests for
9059         accessors and multiline definitions.
9060         * test/etags/ETAGS.good_1:
9061         * test/etags/ETAGS.good_2:
9062         * test/etags/ETAGS.good_3:
9063         * test/etags/ETAGS.good_4:
9064         * test/etags/ETAGS.good_5:
9065         * test/etags/ETAGS.good_6:
9066         * test/etags/CTAGS.good: Adapt to changes in Ruby tags.
9068 2016-02-03  Eli Zaretskii  <eliz@gnu.org>
9070         Fix x-popup-menu on TTYs without a mouse
9072         * src/menu.c (Fx_popup_menu): Be sure to initialize 'x' and 'y'
9073         for the TTY case without a mouse.  (Bug#22538)
9075 2016-02-03  Nicolas Petton  <nicolas@petton.fr>
9077         * lisp/emacs-lisp/map.el: Improvements to the docstring of the pcase macro
9079 2016-02-02  Lars Ingebrigtsen  <larsi@gnus.org>
9081         Use pop-to-buffer-same-window in eww
9083         * lisp/net/eww.el: pop-to-buffer-same-window throughout instead of
9084         switch-to-buffer (bug#22244).
9086 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
9088         * autogen.sh: Revert all recent changes.
9090 2016-02-02  Glenn Morris  <rgm@gnu.org>
9092         * make-dist: Updates related to nt/.
9094         * make-dist: Add modules/.
9096         * make-dist: Update for super-special file that can't live in etc/.
9098 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
9100         Fix failure to compile ns-win.el in parallel builds
9102         * src/Makefile.in ($(lispsource)/term/ns-win.elc): Add order-only
9103         dependency on $(lispsource)/international/charprop.el.
9104         (Bug#22501)
9106 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
9108         Fix names of tags generated for Ruby accessors
9110         * lib-src/etags.c (Ruby_functions): Don't include the leading
9111         colon ':' in tags for Ruby accessors and aliases.  (Bug#22241)
9113         * test/etags/ETAGS.good_1:
9114         * test/etags/ETAGS.good_2:
9115         * test/etags/ETAGS.good_3:
9116         * test/etags/ETAGS.good_4:
9117         * test/etags/ETAGS.good_5:
9118         * test/etags/ETAGS.good_6:
9119         * test/etags/CTAGS.good: Adapt to changes in Ruby tags.
9121 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
9123         Fix file-name recognition in 'etags'
9125         * lib-src/etags.c (get_language_from_filename): If FILE includes a
9126         leading directory, compare only its basename to the known file
9127         names in lang_names[].
9129         * test/etags/Makefile (RBSRC): Adapt to recent test1.ruby
9130         renaming.
9131         * test/etags/ETAGS.good_1:
9132         * test/etags/ETAGS.good_2:
9133         * test/etags/ETAGS.good_3:
9134         * test/etags/ETAGS.good_4:
9135         * test/etags/ETAGS.good_5:
9136         * test/etags/ETAGS.good_6:
9137         * test/etags/CTAGS.good: Adapt to changes in Ruby file names and
9138         to the results in Makefile due to the above etags.c fix.
9140 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
9142         Change Ruby file names and extensions recognized by 'etags'
9144         * lib-src/etags.c <Ruby_filenames>: New variable, holds names
9145         of Ruby files.
9146         <Ruby_suffixes>: Treat .rb, .ru, and .rbw as Ruby extensions.
9147         <lang_names>: Add Ruby_filenames to the Ruby entry.
9148         * test/etags/ruby-src/test1.ru: Renamed from test1.ruby.
9149         (Bug#22241)
9151 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
9153         More improvements for Ruby support in 'etags'
9155         * lib-src/etags.c (Ruby_functions): Tag Ruby accessors and
9156         alias_method.  Identify constants even if the assignment is not
9157         followed by whitespace.  (Bug#22241)
9159         * test/etags/ruby-src/test1.ru: Add tests for constants,
9160         accessors, and alias_method.
9161         * test/etags/ETAGS.good_1:
9162         * test/etags/ETAGS.good_2:
9163         * test/etags/ETAGS.good_3:
9164         * test/etags/ETAGS.good_4:
9165         * test/etags/ETAGS.good_5:
9166         * test/etags/ETAGS.good_6:
9167         * test/etags/CTAGS.good: Adapt to changes in Ruby tests.
9169 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
9171         Add --git-config option to autogen.sh
9173         * autogen.sh: New options --git-config, --help.
9174         (git_config): New shell var.  Alter function to respect this var.
9176 2016-02-02  Lars Ingebrigtsen  <larsi@gnus.org>
9178         Fix editing undo changes in eww fields
9180         * eww.el (eww-tag-form): Don't overwrite initial form data in text
9181         fields.
9182         (eww-process-text-input): Make `M-t' at the end of text fields work
9183         better (bug#19085).
9185 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
9187         Allow the user more control of popping up the eww window
9189         * eww.el (eww): Use pop-to-buffer-same-window (suggested by
9190         Michael Heerdegen) (bug#22244).
9192 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
9194         Make eww-browse-url with new-window parameter work again
9196         * eww.el (eww-browse-url): Stay in the same buffer if we're
9197         already in a eww mode buffer so that eww-browse-url with a
9198         new-window parameter works (bug#22244).
9200 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
9202         Clean up eww code slightly
9204         * eww.el (eww-browse-url): Clean up code slightly.
9206 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
9208         Don't insert nil faces in shr
9210         * shr.el (shr-insert-table): Don't add nil faces, because that
9211         will show up in *Messages* as "Invalid face reference: nil [32
9212         times]".
9214 2016-02-01  Glenn Morris  <rgm@gnu.org>
9216         Improve the custom type of some user options.
9218         * lisp/autoinsert.el (auto-insert-alist):
9219         * lisp/replace.el (query-replace-from-to-separator):
9220         * lisp/gnus/gnus-art.el (gnus-hidden-properties):
9221         * lisp/gnus/gnus-gravatar.el (gnus-gravatar-properties):
9222         * lisp/gnus/gnus-picon.el (gnus-picon-properties):
9223         * lisp/progmodes/prolog.el (prolog-keywords, prolog-types)
9224         (prolog-mode-specificators, prolog-determinism-specificators)
9225         (prolog-directives, prolog-program-name, prolog-program-switches)
9226         (prolog-consult-string, prolog-compile-string, prolog-eof-string)
9227         (prolog-prompt-regexp): Improve custom type.
9229 2016-02-01  Glenn Morris  <rgm@gnu.org>
9231         Mark some risky calendar variables.
9233         * lisp/calendar/cal-china.el (chinese-calendar-time-zone):
9234         Remove risky setting for deleted obsolete alias.
9235         (calendar-chinese-standard-time-zone-name)
9236         (calendar-chinese-daylight-saving-start)
9237         (calendar-chinese-daylight-saving-end):
9238         * lisp/calendar/calendar.el (calendar-iso-date-display-form)
9239         (calendar-european-date-display-form)
9240         (calendar-american-date-display-form, calendar-date-display-form):
9241         * lisp/calendar/diary-lib.el (diary-remind-message)
9242         (diary-header-line-format):
9243         * lisp/calendar/solar.el (calendar-time-display-form)
9244         (calendar-location-name): Mark as risky.
9246 2016-02-01  Simen Heggestøyl  <simenheg@gmail.com>
9248         Highlight two additional SCSS keywords
9250         * lisp/textmodes/css-mode.el (css-bang-ids): New defconst holding CSS
9251         identifiers on the form !foo.
9252         (scss-bang-ids): New defconst holding SCSS identifiers on the form
9253         !foo.
9254         (css--font-lock-keywords): Highlight the new SCSS bang identifiers in
9255         `font-lock-builtin-face'.
9257         * test/indent/css-mode.css: Add bang rule test case.
9259         * test/indent/scss-mode.scss: Add test cases for the introduced bang
9260         rules.
9262 2016-02-01  Karl Fogel  <kfogel@red-bean.com>
9264         Recommend enabling integrity-checking in git
9266         * admin/notes/git-workflow:  Recommend setting transfer.fsckObjects.
9268         This is related to the autogen.sh changes made by Paul Eggert in
9269         commit d766ca8f (2016-02-01) and commit cedd7cad (2016-02-01), and to
9270         my edits today to http://www.emacswiki.org/emacs/GitForEmacsDevs and
9271         to emacswiki.org/emacs/GitQuickStartForEmacsDevs.  See also the thread
9272         "Recommend these .gitconfig settings for git integrity." at
9273         https://lists.gnu.org/archive/html/emacs-devel/2016-01/threads.html#01802.
9275 2016-02-01  Martin Rudalics  <rudalics@gmx.at>
9277         Some corrections in Elisp manual
9279         * doc/lispref/buffers.texi (Read Only Buffers): Describe optional
9280         argument POSITION.
9281         * doc/lispref/debugging.texi (Error Debugging): `debug-on-signal'
9282         is an option.
9283         * doc/lispref/display.texi (Refresh Screen): Describe optional
9284         argument FRAME of `redraw-frame'.
9285         (Attribute Functions): Describe optional argument CHARACTER of
9286         `face-font'.
9287         (Defining Images): `image-load-path' is an option.
9288         (Beeping): `ring-bell-function' is an option.
9289         * doc/lispref/frames.texi (Size and Position): The PIXELWISE
9290         argument of `set-frame-size' is optional.
9291         (Raising and Lowering): The TERMINAL argument of `tty-top-frame'
9292         is optional.
9293         * doc/lispref/keymaps.texi (Controlling Active Maps): Fix doc of
9294         `set-transient-map'.
9295         * doc/lispref/minibuf.texi (Text from Minibuffer):
9296         `read-regexp-defaults-function' is an option.
9297         (Minibuffer Contents): `delete-minibuffer-contents' is a command.
9298         * doc/lispref/modes.texi (Mode Line Variables):
9299         `mode-line-position' and `mode-line-modes' are variables, not
9300         options.
9301         * doc/lispref/strings.texi (Creating Strings): The START argument
9302         of `substring' is optional.
9303         * doc/lispref/text.texi (Buffer Contents): Describe optional
9304         argument NO-PROPERTIES of `thing-at-point'.
9305         (User-Level Deletion): Both arguments of
9306         `delete-trailing-whitespace' are optional.
9307         (Margins): Use @key{RET} instead of @kbd{RET}.
9308         * doc/lispref/windows.texi (Display Action Functions): Write
9309         non-@code{nil} instead of non-nil.
9310         (Choosing Window Options): The WINDOW arg of
9311         `split-window-sensibly' is optional.
9312         (Choosing Window Options): Write non-@code{nil} instead of
9313         non-nil.
9314         (Window Start and End): Both args of `window-group-end' are
9315         optional.
9317         * src/buffer.c (Fbarf_if_buffer_read_only): Rename argument POS
9318         to POSITION to keep consisteny with doc-string.
9320 2016-02-01  Paul Eggert  <eggert@cs.ucla.edu>
9322         Chatter when autogen.sh changes Git configuration
9324         * autogen.sh (git_config): New function.  Use it instead of ‘git config’.
9326 2016-02-01  Kyle Meyer  <kyle@kyleam.com>
9328         * lisp/org/org-compat.el (org-font-lock-ensure): Fix bogus test (bug#22399)
9330 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
9332         Omit unnecessary history from Lisp intro
9334         * doc/lispintro/emacs-lisp-intro.texi (Review, Digression into C)
9335         (Conclusion): Reword so as not to talk about earlier versions
9336         of Emacs in what should be an intro.
9338 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
9340         * etc/HISTORY: Add some more history, plus git tags.
9342 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
9344         Improve elisp “Security Considerations” doc
9346         * doc/lispref/os.texi (Security Considerations):
9347         Mention call-process and rename-file as opposed to shell commands.
9348         Add some more cross-references.
9350 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
9352         autogen.sh now arranges for git to check hashes
9354         Suggested by Karl Fogel in:
9355         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01802.html
9356         * autogen.sh: Do "git config transfer.fsckObjects true".
9358 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
9360         Fix (c & 040) typo in emergency escapes
9362         * src/keyboard.c (handle_interrupt): Fix recently-introduced
9363         typo (040 should have been ~040) that silently suppressed
9364         auto-saves after emergency escapes.  Redo comparison to avoid
9365         similar problems.
9367 2016-01-31  Eli Zaretskii  <eliz@gnu.org>
9369         Fix display of overlay strings with 'display' and 'box' property
9371         * src/xdisp.c (get_next_display_element): Take the box face from
9372         display stack level that comes from a buffer, not an overlay
9373         string.  (Bug#22499)
9375 2016-01-31  Andreas Schwab  <schwab@linux-m68k.org>
9377         Fix imap-starttls-open
9379         * lisp/net/imap.el (imap-starttls-open): Log imap process
9380         output.  Call imap-parse-greeting.  (Bug#22500)
9382 2016-01-31  Andreas Schwab  <schwab@linux-m68k.org>
9384         Fix return value of imap-starttls-open
9386         * lisp/net/imap.el (imap-starttls-open): Fix return value.
9388 2016-01-31  John Wiegley  <johnw@newartisans.com>
9390         Correct reference to DARWIN_OS preprocessor symbol
9392         * src/alloc.c: Correct a preprocessor reference to DARWIN_OS, which may
9393           not be defined.
9395 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
9397         Spelling fix
9399         Spelling fixes
9401 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
9403         Pacify GCC on C library without glibc API
9405         Without this change, with --enable-gcc-warnings GCC would complain
9406         “error: redundant redeclaration of ‘aligned_alloc’”.
9407         * configure.ac: Simplify aligned_alloc testing.
9408         * src/alloc.c (aligned_alloc): Don’t use if DARWIN_OS,
9409         since the simplified configure.ac no longer checks for that.
9410         Don’t declare if HAVE_ALIGNED_ALLOC.
9411         Correct misspelling of HAVE_ALIGNED_ALLOC in ifdef.
9413 2016-01-30  Artur Malabarba  <bruce.connor.am@gmail.com>
9415         Backport: * lisp/files.el: Remove support for extra .dir-locals file
9417         (dir-locals-file-2, dir-locals--all-files): Remove.
9418         (dir-locals-collect-variables, dir-locals-file, dir-locals-find-file)
9419         (dir-locals-read-from-file, hack-dir-local-variables): Revert changes.
9421         * lisp/files-x.el (modify-dir-local-variable): Revert changes.
9423         * lisp/help-fns.el (describe-variable): Revert changes.
9425         * doc/emacs/custom.texi (Directory Variables): Revert changes.
9427         * etc/NEWS: Revert changes.
9429 2016-01-30  Glenn Morris  <rgm@gnu.org>
9431         * lisp/net/browse-url.el (browse-url-default-browser):
9432         Lower priority of non-free Chrome.
9434 2016-01-30  Glenn Morris  <rgm@gnu.org>
9436         Improve the custom type of some user options.
9438         * lisp/desktop.el (desktop-minor-mode-table):
9439         * lisp/man.el (Man-frame-parameters):
9440         * lisp/midnight.el (midnight-delay):
9441         * lisp/speedbar.el (speedbar-select-frame-method):
9442         * lisp/tooltip.el (tooltip-frame-parameters):
9443         * lisp/tree-widget.el (tree-widget-space-width):
9444         * lisp/type-break.el (type-break-keystroke-threshold):
9445         * lisp/woman.el (woman-imenu-generic-expression):
9446         * lisp/cedet/ede.el (ede-debug-program-function):
9447         * lisp/cedet/ede/project-am.el (project-am-debug-target-function):
9448         * lisp/emulation/viper-keym.el (viper-toggle-key):
9449         * lisp/erc/erc-networks.el (erc-server-alist):
9450         * lisp/gnus/message.el (message-deletable-headers, message-signature):
9451         * lisp/mail/mailalias.el (mail-directory-stream):
9452         * lisp/play/tetris.el (tetris-x-colors):
9453         * lisp/progmodes/gud.el (gud-tooltip-modes): Improve custom type.
9455 2016-01-30  Simen Heggestøyl  <simenheg@gmail.com>
9457         Highlight CSS variables with variable name face
9459         * lisp/textmodes/css-mode.el (css-nmstart-re): Don't match variables.
9460         (css--font-lock-keywords): Highlight variables in
9461         `font-lock-variable-name-face'.
9463 2016-01-30  Glenn Morris  <rgm@gnu.org>
9465         * lisp/gnus/gnus-kill.el (gnus-winconf-kill-file): Not user-serviceable.
9467 2016-01-30  Glenn Morris  <rgm@gnu.org>
9469         Mark some user options that can get evalled as risky.
9471         * lisp/allout.el (allout-title):
9472         * lisp/emacs-lisp/edebug.el (edebug-global-break-condition):
9473         * lisp/gnus/message.el (message-mailer-swallows-blank-line):
9474         * lisp/progmodes/gud.el (gud-tooltip-display):
9475         * lisp/vc/ediff-mult.el (ediff-default-filtering-regexp):
9476         Mark as risky.
9478 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
9480         Disable DebPrint in sys_read on MS-Windows
9482         * src/w32.c (sys_read): Disable a debugging print that is normal
9483         when non-blocking reads are retried.
9485 2016-01-30  Martin Rudalics  <rudalics@gmx.at>
9487         ;Fix ChangeLog entry
9489 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
9491         Fix typos in Introduction to Emacs Lisp manual
9493         * doc/lispintro/emacs-lisp-intro.texi (Emacs Initialization)
9494         (kill-new function, Digression into C)
9495         (Complete forward-sentence, Divide and Conquer, Find a File)
9496         (lengths-list-many-files, Columns of a graph, defcustom)
9497         (recursive-count-words): Fix typos.  Reported by Daniel Bastos
9498         <dbastos@toledo.com>.
9500 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
9502         Bump version to 25.0.90
9504         * README:
9505         * configure.ac:
9506         * msdos/sed2v2.inp: Bump version to 25.0.90.
9508 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
9510         * etc/AUTHORS: Update the AUTHORS file
9512 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
9514         Bump version to 25.0.90
9516         * README:
9517         * configure.ac:
9518         * msdos/sed2v2.inp: Bump version to 25.0.90.
9520 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
9522         * etc/AUTHORS: Update the AUTHORS file
9524 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
9526         authors.el updates
9528         * admin/authors.el (authors-renamed-files-alist): Additions.
9530 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
9532         Make it possible to run make change-history on emacs-25
9534         * Makefile.in: Check if the current branch is emacs-25 instead of
9535           master.
9537 2016-01-30  lu4nx  <lx@shellcodes.org>
9539         Support Go language in 'etags'
9541         * lib-src/etags.c <Ruby_help>: Fix documentation of Ruby tags.
9542         <Go_help>: New help.
9543         <Go_suffixes>: New variable.
9544         (Go_functions): New function.
9545         <lang_names>: Add entry for Go.  (Bug#22370)
9547         * doc/emacs/maintaining.texi (Tag Syntax): Document Go support.
9548         * doc/man/etags.1: Mention Go support.
9550         * etc/NEWS: Mention Go support.
9552         * test/etags/go-src/test.go:
9553         * test/etags/go-src/test1.go: New test files.
9554         * test/etags/Makefile (GOSRC): New variable.
9555         (SRCS): Add $(GOSRC).
9556         * test/etags/ETAGS.good_1:
9557         * test/etags/ETAGS.good_2:
9558         * test/etags/ETAGS.good_3:
9559         * test/etags/ETAGS.good_4:
9560         * test/etags/ETAGS.good_5:
9561         * test/etags/ETAGS.good_6:
9562         * test/etags/CTAGS.good: Adapt to addition of Go tests.
9564 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
9566         Improve Ruby support in 'etags'
9568         * lib-src/etags.c (Ruby_functions): Tag constants.  Don't tag
9569         singleton classes.  Remove class qualifiers from tags generated
9570         for method and constant names.  (Bug#22241)
9572         * doc/emacs/maintaining.texi (Tag Syntax): Mention that constants
9573         are tagged by etags in Ruby.
9575         * etc/NEWS: Mention that constants are tagged by etags in Ruby.
9577         * test/etags/ruby-src/test1.ru: Add more tests.
9578         * test/etags/ETAGS.good_1:
9579         * test/etags/ETAGS.good_2:
9580         * test/etags/ETAGS.good_3:
9581         * test/etags/ETAGS.good_4:
9582         * test/etags/ETAGS.good_5:
9583         * test/etags/ETAGS.good_6:
9584         * test/etags/CTAGS.good: Adapt to the changes in etags and in Ruby
9585         tests.
9587 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
9589         Adjust etags test results to changes in copyright years
9591         * test/etags/CTAGS.good:
9592         * test/etags/ETAGS.good_1:
9593         * test/etags/ETAGS.good_2:
9594         * test/etags/ETAGS.good_3:
9595         * test/etags/ETAGS.good_4:
9596         * test/etags/ETAGS.good_5:
9597         * test/etags/ETAGS.good_6: Adjust to shift in characters and
9598         in line numbers.
9600 2016-01-30  Andreas Schwab  <schwab@linux-m68k.org>
9602         Revert "Re-enable checks in member, memql, delete to complain about non-lists"
9604         This reverts commit f524e8b7f12d9b5a8b92084e5385429fe7b085b9.
9606 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
9608         Make it possible to run make change-history on emacs-25
9610         * Makefile.in: Check if the current branch is emacs-25 instead of
9611           master.
9613 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
9615         Don't fiddle with DEFAULT
9617         * lisp/progmodes/project.el (project--completing-read-strict):
9618         Don't change DEFAULT, whether is has any matches in
9619         COLLECTION, or not.
9621 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
9623         Document xwidget commands and functions
9625         * doc/lispref/display.texi (Xwidgets): New section, describes some
9626         of the xwidget primitives.
9627         * doc/lispref/display.texi (Display): Update the chapter menu.
9628         * doc/emacs/misc.texi (Embedded WebKit Widgets): New section.
9629         * doc/emacs/emacs.texi (Top): Update the master menu to include
9630         the xwidget node.
9632 2016-01-30  Lars Ingebrigtsen  <larsi@gnus.org>
9634         Build fix for shr.el
9636         * shr.el (seq): Require.
9638 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
9640         Improve project-find-file yet again!
9642         * lisp/progmodes/project.el (project--completing-read-strict):
9643         New function.
9644         (project-find-file-in): Use it.
9645         (project-file-completion-table): Move the default
9646         implementation inside the cl-defgeneric form.
9647         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01720.html)
9649 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
9651         Don't pass DIR to 'hg status'
9653         * lisp/vc/vc-hg.el (vc-hg-dir-status-files):
9654         Don't pass DIR to 'hg status' (bug#22481).
9656 2016-01-30  Stephen Leake  <stephen_leake@stephe-leake.org>
9658         Fix typo in previous commits
9660         * lisp/progmodes/project.el (project-find-file-in):
9661         * lisp/vc/vc-mtn.el (vc-mtn-find-ignore-file): Fix typo in previous
9662         commit.
9664 2016-01-30  Stephen Leake  <stephen_leake@stephe-leake.org>
9666         Improve project-find-file
9668         * lisp/progmodes/project.el (project-file-completion-table): New.
9669         (project-find-file, project-or-external-find-file): Default to filename
9670         at point.
9671         (project-file-completion-table): New, split out from
9672         project--find-file-in.
9673         (project-find-file-in): Renamed from project--find-file-in, use
9674         project-file-completion-table.
9676         * lisp/progmodes/xref.el (ede-minor-mode): New declaration.
9677         (xref--find-ignores-arguments): Add doc string.
9679 2016-01-30  Stephen Leake  <stephen_leake@stephe-leake.org>
9681         Implement vc-mtn-find-ignore-file, fix some doc strings
9683         * lisp/cedet/cedet-global.el (cedet-gnu-global-root): Improve doc string.
9685         * lisp/cedet/ede/locate.el (initialize-instance): Improve doc string.
9687         * lisp/vc/vc-git.el (vc-git-find-ignore-file): Fix doc string.
9689         * lisp/vc/vc-mtn.el (vc-mtn-find-ignore-file): New function.
9691 2016-01-29  Vincent Belaïche  <vincentb1@users.sourceforge.net>
9693         Correct a whole bunch of bugs coming with renamed cell relocation.
9695         This is the same change as commit on master branch. See
9696         http://git.savannah.gnu.org/cgit/emacs.git/commit/?id=badcd38aa86ed7973f2be2743c405710973a0bdd
9698         * lisp/ses.el (ses-localvars): rename variable
9699         `ses--renamed-cell-symb-list' into `ses--in-killing-named-cell-list'
9700         and adjust the comment about it.
9701         (ses-plist-delq): new defun.
9702         (ses--ses-buffer-list): new defvar.
9703         (ses--unbind-cell-name): new defun.
9704         (ses-relocate-symbol): Do not relocate symbol when it is a named cell.
9705         (ses-relocate-formula): Undo change of
9706         2011-12-27T19:30:39Z!vincentb1@users.sourceforge.net that was
9707         preventing relocation for named cell --- now doing this is delegated
9708         to function `ses-relocate-symbol'.
9709         (ses-relocate-range): In docstring, undo change of
9710         2016-01-03T07:31:52Z!johnw@newartisans.com, `ses-range' must remain
9711         lower case as it is not a variable.
9712         (ses-relocate-all): Cell name relocation : 1) check that cell is a
9713         renamed cell by testing `ses-cell' property to :ses-named, rather than
9714         comparing name to corresponding standard name. Set rowcol of renamed
9715         cell into the hashmap --- `ses-cell' property must not be used for
9716         that as the same name can be used for different locations in different
9717         SES sheets ; 2) use `local-variable-if-set-p' rather than `boundp' and
9718         `local-variable-p' to check if cell name is already in use in this
9719         sheet or needs initialization.
9720         (ses-relocate-all): Cell value relocation : 1) like for name
9721         relocation use the `ses-cell' property rather than comparing actual
9722         name to corresponding standard name. 2) Correct bug introduced in
9723         2011-12-27T19:30:39Z!vincentb1@users.sourceforge.net, as the test was
9724         made the other way round than the intention --- ie value relocation
9725         was disabled for standard cell, not for renamed cell as was the
9726         intention.
9727         (ses-relocate-all): Add loop for unbinding deleted renamed cells
9728         names.
9729         (ses-killbuffer-hook): new defun.
9730         (ses-mode): Add the ses--ses-buffer-list maintenance mechanism ---
9731         kill buffer hook, plus pushing current buffer if new in list.
9732         (ses-delete-row, ses-delete-column): Collect deleted renamed cells
9733         into `ses--in-killing-named-cell-list'.
9734         (ses-rename-cell): Remove update of variable
9735         `ses--renamed-cell-symb-list', this variable is renamed to
9736         `ses--in-killing-named-cell-list', and its setting is done in
9737         functions `ses-delete-row' and , `ses-delete-column' now.
9738         (ses-rename-cell): Make cell new name a buffer local variable.
9739         (ses-rename-cell): Change correction of
9740         2015-12-30T23:10:37Z!vincentb1@users.sourceforge.net concerning
9741         computation of the range over which `cursor-intangible' property was
9742         to be updated. This correction was ok for non spilling cells, but not
9743         for cells spilling over following blank cells. Simply use
9744         `next-single-property-change' rather than computing the end column
9745         from column widths.
9747 2016-01-29  Andreas Schwab  <schwab@linux-m68k.org>
9749         Re-enable checks in member, memql, delete to complain about non-lists
9751         * src/fns.c (Fmember, Fmemql, Fdelete): Revert 2007-10-16 change.
9753 2016-01-29  Martin Rudalics  <rudalics@gmx.at>
9755         Minor doc(-string) tweaks
9757         * lisp/window.el (window-in-direction): Fix doc-string typo.
9758         * doc/lispref/frames.texi (Frame Font): Mention canonical
9759         character width/height.
9760         * doc/lispref/windows.texi (Windows and Frames): Clarify
9761         handling of minibuffer window for `window-in-direction'.
9762         (Window Sizes): Minor tweaks in descriptions of
9763         `window-max-chars-per-line', `window-min-width' and
9764         `window-min-size'.
9765         (Deleting Windows): Minor tweak in `delete-window' description.
9766         (Selecting Windows): Clarify window use time description.
9767         (Cyclic Window Ordering): Minor tweak.
9768         (Switching Buffers): Clarify description of
9769         `switch-to-buffer-in-dedicated-window'.
9771 2016-01-29  Eli Zaretskii  <eliz@gnu.org>
9773         Minor improvements to 'pcase' documentation
9775         * doc/lispref/control.texi (Pattern matching case statement):
9776         Improve the documentation of 'pcase' per comments.  See two
9777         discussion threads on emacs-devel@gnu.org for the details:
9778         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01335.html
9779         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01336.html.
9781 2016-01-29  Glenn Morris  <rgm@gnu.org>
9783         Don't use eval to quieten prolog.el compilation.
9785         * lisp/progmodes/prolog.el (pltrace-on, pltrace-off): Declare.
9786         (prolog-enable-sicstus-sd, prolog-disable-sicstus-sd): Don't use eval.
9788 2016-01-29  Glenn Morris  <rgm@gnu.org>
9790         Mark some risky prolog variables.
9792         * lisp/progmodes/prolog.el (prolog-system-version)
9793         (prolog-keywords, prolog-types, prolog-mode-specificators)
9794         (prolog-determinism-specificators, prolog-directives)
9795         (prolog-program-name, prolog-program-switches)
9796         (prolog-consult-string, prolog-compile-string)
9797         (prolog-eof-string, prolog-prompt-regexp, prolog-help-function):
9798         Mark anything processed by prolog-find-value-by-system as risky.
9800 2016-01-28  Glenn Morris  <rgm@gnu.org>
9802         * lisp/custom.el (defcustom): Doc fix.
9804         * doc/lispref/customize.texi (Variable Definitions):
9805         Defcustom should always have a type.
9807 2016-01-28  Glenn Morris  <rgm@gnu.org>
9809         * lisp/cedet/semantic/db-file.el (semanticdb-persistent-path):
9810         Fix :type.
9812         * lisp/emacs-lisp/package.el (package-load-list): Improve :type.
9814 2016-01-28  Michael Albinus  <michael.albinus@gmx.de>
9816         Fix Bug#22452
9818         * lisp/net/tramp-adb.el (tramp-adb-maybe-open-connection):
9819         * lisp/net/tramp-gvfs.el (tramp-gvfs-maybe-open-connection):
9820         * lisp/net/tramp-sh.el (tramp-maybe-open-connection):
9821         * lisp/net/tramp-smb.el (tramp-smb-maybe-open-connection):
9822         Mark it as connected.
9824         * lisp/net/tramp.el (tramp-handle-file-remote-p): Check also, if
9825         connection property "connected" is set.  (Bug#22452)
9827 2016-01-27  Glenn Morris  <rgm@gnu.org>
9829         * lisp/xwidget.el (xwidget-query-on-exit-flag): Declare.
9831         * lisp/xwidget.el (xwidget-webkit-browse-url): Give explicit error
9832         if not compiled with xwidgets.
9834 2016-01-27  Paul Eggert  <eggert@cs.ucla.edu>
9836         C-u C-x = example doc fix
9838         * doc/emacs/mule.texi (International Chars):
9839         Adjust example to match current behavior of C-u C-x =.
9841 2016-01-27  Paul Eggert  <eggert@cs.ucla.edu>
9843         malloc.h hygiene
9845         This attempts to future-proof Emacs a bit against possible glibc
9846         changes, by having Emacs use <malloc.h> declarations rather than
9847         coding them up by hand.  Problem noted by Florian Weimer in:
9848         https://sourceware.org/ml/libc-alpha/2016-01/msg00777.html
9849         Implement this mainly by moving malloc.h-related functions from
9850         emacs.c (which does not include <malloc.h>) to alloc.c (which does).
9851         * src/alloc.c (my_heap_start) [DOUG_LEA_MALLOC || GNU_LINUX]:
9852         New function.
9853         The remaining changes to this file apply only if DOUG_LEA_MALLOC.
9854         (alloc_unexec_pre, alloc_unexec_post): New functions.
9855         (malloc_initialize_hook): Use my_heap_start and alloc_unexec_post.
9856         (__MALLOC_HOOK_VOLATILE): New macro, if not already defined.
9857         (__malloc_initialize_hook): Use it.
9858         (malloc_state_ptr, malloc_initialize_hook, __malloc_initialize_hook):
9859         Move here from ...
9860         * src/emacs.c: ... here.
9861         (malloc_get_state, malloc_set_state): Remove extern decls.
9862         (my_heap_start) [DOUG_LEA_MALLOC || GNU_LINUX]: Remove static var.
9863         All uses changed to similarly-named new function.
9864         (Fdump_emacs): Use new functions alloc_unexec_pre, alloc_unexec_post.
9865         * src/lisp.h (my_heap_start, alloc_unexec_pre, alloc_unexec_post):
9866         New decls.
9868 2016-01-26  Eli Zaretskii  <eliz@gnu.org>
9870         * doc/emacs/mark.texi (Using Region): Clarify wording.  (Bug#22467)
9872 2016-01-26  Paul Eggert  <eggert@cs.ucla.edu>
9874         Remove never-set var handle_user_signal_hook
9876         * src/keyboard.c, src/keyboard.h (handle_user_signal_hook):
9877         Remove never-set var.  All uses removed.
9879 2016-01-26  K. Handa  <handa@gnu.org>
9881         Backport:fix previous change of src/ftfont.c (ftfont_shape_by_flt)
9883         * src/ftfont.c (ftfont_shape_by_flt): Fix previous change.  Access the
9884         second glyph only when there are enough glyphs.
9886         (cherry picked from commit 9835757013569673854b692ccbb58bfb3c3ed1f7)
9888 2016-01-26  K. Handa  <handa@gnu.org>
9890         support rendering of wider range of combinging characters by ftfont backend
9892         * lisp/language/hebrew.el (hebrew-shape-gstring): If the font backend
9893         supports rendering of combining characters, call
9894         font-shape-gstring.
9896         * src/font.c (Ffont_get): Handle `combining-capability' property.
9897         (syms_of_font): New symbol ":combining-capability'.
9899         * src/font.h (struct font_driver): New member combining_capability.
9901         * src/ftfont.c: Include "category.h".
9902         (ftfont_driver): Initialize combining_capability to
9903         ftfont_combining_capability.
9904         (ftfont_shape_by_flt): If OTF is null, try to find a suitable
9905         FLT in advance.
9906         (ftfont_combining_capability): New function.
9908         (cherry picked from commit 536f48e9a2251b9e654ea974bd90ff2f40218753)
9910 2016-01-26  Anders Lindgren  <andlind@gmail.com>
9912         Fixed NextStep fullscreen issue (bug#22468)
9914         When in fullscreen mode, `[screen visibleFrame]' sometimes
9915         includes, sometimes excludes the menu bar. This could cause
9916         a frame to be placed too low when in fullscreen mode.
9918         * src/nsterm.m (ns_menu_bar_should_be_hidden): Trace.
9919         (constrain_frame_rect): New parameter, isFullscreen, when true don't
9920         query the height of the menu bar.
9921         (ns_constrain_all_frames): Pass `false' (isFullscreen) to
9922         `constrain_frame_rect'.
9923         ([EmacsView initFrameFromEmacs:]): Trace.
9924         ([EmacsView isFullscreen]): Trace.
9925         ([EmacsWindow constrainFrameRect:toScreen:]): Pass fullscreen
9926         state to `constrain_frame_rect'.
9928 2016-01-26  Artur Malabarba  <bruce.connor.am@gmail.com>
9930         * lisp/files.el: Use a fixed file name for the second dir-locals file
9932         (dir-locals-file): Revert to its original fixed value.
9933         (dir-locals-file-2): New const.
9934         (dir-locals--all-files): Don't use `file-name-all-completions'.
9935         Instead, just check for the 2 dir-locals files and return a list
9936         of the ones that exit (if any).
9938         * etc/NEWS: Document the change.
9940         * doc/emacs/custom.texi (Directory Variables): Document the change.
9942         * doc/lispref/variables.texi (Directory Local Variables): Update
9943         accordingly.
9945 2016-01-26  Artur Malabarba  <bruce.connor.am@gmail.com>
9947         * lisp/files-x.el (modify-dir-local-variable): Small rewrite
9949         Change a variable name to be more meaningful, and reorder some of
9950         the code with no change in behaviour.
9952 2016-01-26  Artur Malabarba  <bruce.connor.am@gmail.com>
9954         * lisp/files.el (dir-locals-find-file): Refactor return values
9956         Returning a cache remains unchanged, but the case of returning a
9957         file (or pattern) is now changed to return the contaning
9958         directory.
9960         (dir-locals-read-from-file): Rename to `dir-locals-read-from-dir'
9961         and make obsolete.
9962         (dir-locals-read-from-dir): Simplify accordingly.
9963         (hack-dir-local-variables): Simplify accordingly and rename a
9964         variable.
9966 2016-01-26  Glenn Morris  <rgm@gnu.org>
9968         * lisp/textmodes/flyspell.el (flyspell--prev-meta-tab-binding):
9969         Declare.
9971         * configure.ac (USE_CAIRO): Rename to more standard HAVE_CAIRO.
9973         * configure.ac (--with-cairo): Say it's experimental.
9975         * lisp/xwidget.el (xwidget-webkit-scroll-behavior):
9976         Rename using American spelling.  Update all uses.
9978 2016-01-26  Glenn Morris  <rgm@gnu.org>
9980         Yet more xwidget doc fixes.
9982         * lisp/xwidget.el (xwidget-webkit-scroll-behaviour)
9983         (xwidget-insert, xwidget-webkit-browse-url)
9984         (xwidget-webkit-scroll-up, xwidget-webkit-scroll-down)
9985         (xwidget-webkit-scroll-forward, xwidget-webkit-scroll-backward)
9986         (xwidget-webkit-insert-string, xwidget-webkit-show-named-element)
9987         (xwidget-webkit-show-id-element)
9988         (xwidget-webkit-show-id-or-named-element)
9989         (xwidget-webkit-adjust-size, xwidget-webkit-current-url)
9990         (xwidget-webkit-execute-script-rv)
9991         (xwidget-webkit-copy-selection-as-kill, xwidget-get)
9992         (xwidget-put):  Doc fixes.
9993         (xwidget-webkit-insert-string, xwidget-webkit-show-named-element)
9994         (xwidget-webkit-show-id-element)
9995         (xwidget-webkit-show-id-or-named-element): Prompt fixes.
9997 2016-01-25  Ted Zlatanov  <tzz@lifelogs.com>
9999         * lisp/gnus/gnus-art.el (gnus-blocked-images):
10000         Add explicit nil choice and tags.
10002 2016-01-25  Paul Eggert  <eggert@cs.ucla.edu>
10004         Spelling fixes
10006 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
10008         (font-lock-ensure-function): Fix bug#22399
10010         * lisp/font-lock.el (font-lock-ensure-function): Fix handling when
10011         font-lock-mode is not enabled (bug#22399).
10013 2016-01-25  Alan Mackenzie  <acm@muc.de>
10015         Expunge "allow" + infinitive from source and doc, part 2.
10017         Do the same for "permit", "enable", "prevent", and (where appropriate)
10018         "require".
10020         doc/misc/reftex.texi:
10021         doc/misc/url.texi:
10022         lib/get-permissions.c:
10023         lib/strftime.c:
10024         lisp/org/org-element.el:
10025         lisp/org/org-mobile.el:
10026         lisp/textmodes/reftex-vars.el:
10027         src/bidi.c:
10028         src/emacs.c:
10029         src/xdisp.c:
10030         test/etags/c-src/emacs/src/lisp.h:
10032         Expunge the likes of "This allows to do something" from the above files.
10034 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
10036         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-mode): Redundant line
10038         `special-mode' is already read-only.
10040 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
10042         * lisp/emacs-lisp/ert.el (ert--results-move): Change error to user-error
10044 2016-01-25  Paul Eggert  <eggert@cs.ucla.edu>
10046         Port "$@" to OpenIndiana ksh93
10048         In http://lists.gnu.org/archive/html/bug-autoconf/2015-12/msg00000.html
10049         Pavel Raiskup reports that ${1+"$@"} runs afoul of a bug in /bin/sh
10050         (derived from ksh 93t+ 2010-03-05).  ${1+"$@"} works around an ancient
10051         bug in long-dead shells, so remove the workaround.
10052         * admin/check-doc-strings, configure.ac, lib-src/rcs2log:
10053         Use plain "$@" rather than ${1+"$@"}.
10055 2016-01-25  Paul Eggert  <eggert@cs.ucla.edu>
10057         * src/xwidget.c (Fxwidget_set_adjustment): Fix doc string quoting typo.
10059 2016-01-25  Paul Eggert  <eggert@cs.ucla.edu>
10061         Improve wording for SMB support
10063         * doc/misc/tramp.texi (External methods): Improve and modernize
10064         wording for discussion of smbclient.  There is no longer any
10065         need to mention the laundry list of old MS Windows implementations
10066         of SMB and CIFS, nor to mention CIFS.  Also, give a URL for Samba.
10068 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
10070         Merge from gnulib
10072         This incorporates:
10073         2016-01-24 openat_proc_name: fix last '/' overwritten on OS/2 kLIBC
10074         2016-01-24 closedir, dirfd, opendir: port to OpenSolaris 5.10
10075         2016-01-15 detect utimes() correctly on OS/2 kLIBC
10076         2016-01-15 openat_proc_name: port to OS/2 kLIBC
10077         2016-01-14 stdint: check _INTPTR_T_DECLARED for intptr_t etc.
10078         2016-01-14 opendir, closedir, dirfd, fdopendir: port to OS/2 kLIBC
10079         2016-01-14 dup, dup2, fcntl: support a directory fd on OS/2 kLIBC
10080         2016-01-14 binary-io: don't put fd in binary mode if a console on EMX
10081         2016-01-14 sig2str: list all signals on FreeBSD >= 7
10082         2016-01-13 acl-permissions: port to USE_ACL==0 platforms
10083         2016-01-12 mktime: rename macro to avoid glibc clash
10084         2016-01-12 Port "$@" to OpenIndiana ksh93
10085         2016-01-12 Port Universal Time settings to strict POSIX
10086         * build-aux/gitlog-to-changelog, build-aux/update-copyright:
10087         * doc/misc/texinfo.tex, lib/acl-internal.c, lib/acl-internal.h:
10088         * lib/binary-io.h, lib/dirent.in.h, lib/dirfd.c, lib/dup2.c:
10089         * lib/fcntl.c, lib/fdopendir.c, lib/mktime.c, lib/openat-proc.c:
10090         * lib/sig2str.h, lib/stdint.in.h, m4/dirfd.m4, m4/dup2.m4:
10091         * m4/fcntl.m4, m4/utimes.m4:
10092         Copy from gnulib.
10093         * m4/gnulib-comp.m4: Regenerate.
10095 2016-01-24  Alan Mackenzie  <acm@muc.de>
10097         Expunge "allow" + infinitive without direct object from source and doc.
10099         Do the same for "permit", "enable", and "prevent".
10101         * doc/emacs/mule.texi:
10102         * doc/lispref/control.texi:
10103         * doc/lispref/display.texi:
10104         * doc/lispref/frames.texi:
10105         * doc/lispref/functions.texi:
10106         * doc/lispref/nonascii.texi:
10107         * doc/lispref/streams.texi:
10108         * doc/lispref/windows.texi:
10109         * doc/misc/dbus.texi:
10110         * doc/misc/eww.texi:
10111         * doc/misc/flymake.texi:
10112         * doc/misc/octave-mode.texi:
10113         * doc/misc/org.texi:
10114         * doc/misc/reftex.texi:
10115         * doc/misc/tramp.texi:
10116         * doc/misc/wisent.texi:
10117         * etc/NEWS:
10118         * lisp/autorevert.el:
10119         * lisp/cedet/mode-local.el:
10120         * lisp/cedet/semantic/senator.el:
10121         * lisp/cedet/semantic/wisent.el:
10122         * lisp/dos-fns.el:
10123         * lisp/frameset.el:
10124         * lisp/gnus/gnus-agent.el:
10125         * lisp/gnus/mm-util.el:
10126         * lisp/international/characters.el:
10127         * lisp/ldefs-boot.el:
10128         * lisp/mail/mailclient.el:
10129         * lisp/man.el:
10130         * lisp/mh-e/mh-search.el:
10131         * lisp/net/tramp-cmds.el:
10132         * lisp/net/tramp-gvfs.el:
10133         * lisp/org/org-crypt.el:
10134         * lisp/org/org-element.el:
10135         * lisp/org/org-feed.el:
10136         * lisp/org/org.el:
10137         * lisp/org/ox-ascii.el:
10138         * lisp/org/ox-icalendar.el:
10139         * lisp/org/ox-publish.el:
10140         * lisp/org/ox.el:
10141         * lisp/play/gamegrid.el:
10142         * lisp/play/gomoku.el:
10143         * lisp/progmodes/antlr-mode.el:
10144         * lisp/progmodes/python.el:
10145         * lisp/progmodes/vhdl-mode.el:
10146         * lisp/strokes.el:
10147         * lisp/textmodes/ispell.el:
10148         * lisp/tree-widget.el:
10149         * lisp/vc/pcvs.el:
10150         * lisp/window.el:
10151         * src/lisp.h:
10152         * src/w32.c:
10153         * src/w32heap.c:
10154         * src/w32term.c:
10155         * src/window.c:
10156         * src/xfaces.c:
10158         Replace solecisms like "This allow to do something" with a correct
10159         alternative, such as "This allow you to do something", "This allows
10160         something to be done" or "This allows the doing of something".
10162 2016-01-24  l3thal  <kwhite@gnu.org>
10164         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
10166 2016-01-24  Kelvin White  <kwhite@gnu.org>
10168         Add NEWS entry for asynchronous reconnect in ERC
10170 2016-01-24  l3thal  <kwhite@gnu.org>
10172         Add NEWS entry for asynchronous reconnect in ERC
10174 2016-01-24  Kelvin White  <kwhite@gnu.org>
10176         browse-url.el: Add 'google-chrome' to supported browsers.
10178 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
10180         Port Tramp manual to latest Texinfo
10182         Otherwise, 'make pdf' did not work (Bug#22416).
10183         * doc/misc/tramp.texi (xxx, yyy): Remove macros.
10184         (trampfn): Specialize to the case where METHOD is nonempty.
10185         The 2nd argument is now user@host, not 2nd user and 3rd host args.
10186         All uses changed.
10187         (trampf): New macro.
10189 2016-01-24  Lars Ingebrigtsen  <larsi@gnus.org>
10191         * eww.el (eww-render): Protect against empty content-types.
10193 2016-01-24  Nicolas Petton  <nicolas@petton.fr>
10195         authors.el updates
10197         * admin/authors.el (authors-ignored-files, authors-renamed-files-alist):
10198           Additions.
10200 2016-01-24  Dmitry Gutov  <dgutov@yandex.ru>
10202         Rename xref-query-replace to xref-query-replace-in-results
10204         * lisp/progmodes/xref.el(xref-query-replace):
10205         Rename to xref-query-replace-in-results.
10206         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01240.html)
10208         * lisp/progmodes/xref.el (xref--xref-buffer-mode-map):
10209         * lisp/dired-aux.el (dired-do-find-regexp-and-replace):
10210         * doc/emacs/dired.texi (Operating on Files):
10211         * doc/emacs/maintaining.texi (Xref Commands)
10212         (Identifier Search, Identifier Search): Update accordingly.
10214 2016-01-24  Dmitry Gutov  <dgutov@yandex.ru>
10216         Update cl-defgeneric and cl-defmethod docstrings
10218         * lisp/emacs-lisp/cl-generic.el: Remove outdated TODO item.
10219         (cl-defgeneric): Rename BODY to DEFAULT-BODY.
10220         (cl-defmethod): Mention that multiple dispatch arguments are
10221         allowed.  Document supported types.  (Bug#22336)
10223 2016-01-23  Dmitry Gutov  <dgutov@yandex.ru>
10225         Comment out next-error-function integration in xref
10227         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
10228         Comment out next-error-function integration
10229         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01286.html).
10231 2016-01-23  John Wiegley  <johnw@newartisans.com>
10233         Correct a use of "which" in intro.texi
10235 2016-01-23  Alan Mackenzie  <acm@muc.de>
10237         Distinguish the two meanings of Java's keyword "default".  Fixes bug #22358.
10239         * lisp/progmodes/cc-engine.el (c-guess-basic-syntax CASE 14): Check the
10240         context of case labels (including "default") more rigorously.
10241         (c-guess-basic-syntax CASE 15): Consequential amendment.
10243         * lisp/progmodes/cc-langs.el (c-modifier-kwds): Add "default" to Java's value.
10245 2016-01-23  Oscar Fuentes  <ofv@wanadoo.es>
10247         Don't operate on menu bar of nonexistent frame
10249         * src/xfns.c (Fx_hide_tip) [USE_LUCID]: Check that the current frame
10250         is valid before redisplaying its menu. Fixes bug#22438.
10252 2016-01-23  Anders Lindgren  <andlind@gmail.com>
10254         Unbreak the GNUstep build.
10256         * src/nsterm.m ([EmacsBell init]): In GNUstep, don't use the
10257         predefined "caution" image. Add trace.
10258         (x_set_window_size): Remove unused variables `cols' and `rows'.
10259         (ns_draw_fringe_bitmap): Exclude assignment of `fromRect' when
10260         GNUstep is used.
10261         ([EmacsView updateFrameSize:]): Remove unused variable `win'.
10262         ([EmacsWindow zoom:]): Remove unused variable `f'.
10264 2016-01-23  Eli Zaretskii  <eliz@gnu.org>
10265             John Wiegley  <johnw@gnu.org>
10266             Michael Heerdegen  <michael_heerdegen@web.de>
10268         Improve documentation of 'pcase'
10270         * doc/lispref/control.texi (Pattern matching case statement):
10271         Reorganize, expand, and improve wording.
10273         * etc/NEWS: Mention that 'pcase' changes are documented.
10275 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
10277         * etc/NEWS: Say that Cairo is experimental.
10279 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
10281         Report error for PNG under Cairo
10283         * src/image.c (lookup_rgb_color): Signal a file error instead
10284         of dumping core when mishandling an image.
10286 2016-01-23  Arash Esbati  <esbati@gmx.de>
10288         Delete a spurious backquote (tiny change)
10290         * lisp/textmodes/reftex-ref.el (reftex-label): Delete a
10291         spurious backquote which raises an error with emacs 25.
10293 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
10295         Pacify --enable-gcc-warnings --with-cairo
10297         Problem reported by Alexander Kuleshov in:
10298         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01289.html
10299         * src/gtkutil.c (xg_get_page_setup):
10300         Use switch rather than if-then-else.
10301         * src/image.c (COLOR_TABLE_SUPPORT):
10302         Define directly rather than via #define and optional later #undef.
10303         (lookup_rgb_color) [USE_CAIRO && ENABLE_CHECKING]:
10304         Crash when the pixel is undefined, as there is a genuine bug
10305         here (Bug#22442).
10306         * src/image.c (tiff_load, gif_load, svg_load_image)
10307         (x_kill_gs_process) [USE_CAIRO]:
10308         * src/xterm.c (x_draw_fringe_bitmap) [USE_CAIRO]:
10309         Omit unused locals, or move them to where they’re needed.
10310         (x_clear_area1): Now ATTRIBUTE_UNUSED.
10312 2016-01-23  Eli Zaretskii  <eliz@gnu.org>
10314         Update documentation for Dired search and replace
10316         * doc/emacs/dired.texi (Operating on Files): Update descriptions
10317         of 'A' and 'Q' now bound to 'dired-do-find-regexp' and
10318         'dired-do-find-regexp-and-replace'.
10320         * etc/NEWS: Mention xref-related changes in Dired.
10322 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
10324         Port recent xdisp.c fix to picky C compilers
10326         * src/xdisp.c (dump_glyph): Redo the call to fprintf to avoid
10327         putting #if inside the arguments to a standard function, which
10328         the C standard says has undefined behavior.
10330 2016-01-22  Alan Mackenzie  <acm@muc.de>
10332         Prevent spurious recognition of K&R argument declarations.  Fixes bug #2203
10334         * lisp/progmodes/cc-engine.el (c-forward-declarator): New function.
10335         (c-in-knr-argdecl): Before recognizing a K&R argument declaration, check it is
10336         contained in the preceding arg list.
10338         * lisp/progmodes/cc-fonts.el (c-font-lock-declarators): Use the new function
10339         `c-forward-declarator' in place of inline code.
10341 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
10343         Fix the build with --enable-checking=glyphs
10345         * src/xdisp.c (dump_glyph): Don't refer to glyph->u.xwidget in a
10346         build without xwidget support.
10348 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
10350         Document cl-generic.el
10352         * doc/lispref/functions.texi (Generic Functions): New section.
10353         (Bug#22336)
10354         (Functions): Update the chapter menu.
10355         * doc/lispref/elisp.texi: Update the master menu.
10357 2016-01-22  Paul Eggert  <eggert@cs.ucla.edu>
10359         xwidgets style cleanup
10361         Adjust the newly-added Xwidgets code so that it uses a more-typical
10362         Emacs style.  This should not affect behavior, except that in
10363         a few places it adds runtime checks that Lisp arguments are of
10364         the proper type, and in one place it uses more-precise arithmetic.
10365         * src/buffer.c, src/dispnew.c, src/emacs.c, src/emacsgtkfixed.c:
10366         * src/emacs.c, src/print.c, src/window.c, src/xdisp.c, src/xterm.c:
10367         Include xwidget.h unconditionally.
10368         * src/buffer.c (Fkill_buffer):
10369         * src/dispnew.c (update_window):
10370         * src/emacs.c (main):
10371         * src/print.c (print_object):
10372         * src/window.c (Fdelete_window_internal):
10373         * src/xdisp.c (handle_single_display_spec, push_it, pop_it)
10374         (get_next_element, set_iterator_to_next, next_element_from_xwidget)
10375         (dump_glyph, calc_pixel_width_or_height, BUILD_GLYPH_STRINGS_XW)
10376         (BUILD_GLYPH_STRINGS, x_produce_glyphs, get_window_cursor_type):
10377         * src/xterm.c (x_draw_glyph_string, x_draw_bar_cursor):
10378         Call xwidget functions and macros without worrying about
10379         HAVE_XWIDGETS when the code is a no-op on non-xwidget
10380         platforms.
10381         * src/dispextern.h (XWIDGET_GLYPH, struct glyph_string.xwidget)
10382         (IT_XWIDGET, GET_FROM_XWIDGET, struct it.u.xwidget)
10383         (struct it.xwidget):
10384         * src/lisp.h (PVEC_XWIDGET, PVEC_XWIDGET_VIEW):
10385         Always define.
10386         * src/emacsgtkfixed.h: Omit unnecessary comment.
10387         * src/keyboard.c: Fix spacing.
10388         * src/xdisp.c (BUILD_XWIDGET_GLYPH_STRING, produce_xwidget_glyph):
10389         Define to be a no-op if not HAVE_XWIDGETS.
10390         * src/xwidget.c: Include xwidget.h first (after config.h)
10391         to make sure that it can stand by itself.
10392         (Fmake_xwidget, Fxwidget_webkit_execute_script):
10393         Fix typo in doc string.
10394         (Fmake_xwidget): Check type of args.
10395         (Fmake_xwidget, offscreen_damage_event)
10396         (webkit_document_load_finished_cb, webkit_download_cb)
10397         (webkit_new_window_policy_decision_requested_cb)
10398         (webkit_navigation_policy_decision_requested_cb)
10399         (xwidget_osr_draw_cb, xwidget_osr_event_forward)
10400         (xwidget_osr_event_set_embedder, xwidget_init_view):
10401         Omit unnecessary casts.
10402         * src/xwidget.c (Fmake_xwidget, xwidget_hidden)
10403         (xwidget_show_view, xwidget_hide_view)
10404         (x_draw_xwidget_glyph_string, xwidget_start_redisplay, xwidget_touch)
10405         (xwidget_touched):
10406         * src/xwidget.h (struct xwidget.kill_without_query)
10407         (struct xwidget_view.redisplayed, struct xwidget_view.hidden):
10408         Use bool for boolean.
10409         * src/xwidget.c (store_xwidget_event_string, Fxwidget_size_request):
10410         Simplify by using list functions.
10411         (WEBKIT_FN_INIT): Omit unnecessary test for nil.
10412         (Fxwidget_resize): Check type of integer args
10413         before doing any work.  Check that they are nonnegative.
10414         (Fxwidget_set_adjustment): Check type of integer arg.
10415         Avoid redundant call to gtk_scrolled_window_get_vadjustment.
10416         Simplify.  Use double, not float.
10417         (Fxwidget_info, Fxwidget_view_info): Simplify by using CALLN.
10418         (valid_xwidget_spec_p): Simplify.
10419         (xwidget_spec_value): Omit unused arg FOUND.  All callers changed.
10420         * src/xwidget.h: Include lisp.h first, so that includers do
10421         not need to worry about doing that before including this file.
10422         Make this .h file safe to include even on non-HAVE_XWIDGETS
10423         configurations, to simplify the includers.
10424         (x_draw_xwidget_glyph_string, syms_of_xwidget, valid_xwidget_spec_p)
10425         (xwidget_end_redisplay, lookup_xwidget)
10426         (xwidget_view_delete_all_in_window, kill_buffer_xwidgets):
10427         Now a no-op if !HAVE_XWIDGETS, to simplify callers.
10428         (struct glyph_matrix, struct glyph_string, struct xwidget)
10429         (struct xwidget_view, struct window):
10430         New forward or incomplete decls, so that includers need not
10431         assume the corresponding .h files are already included, or that
10432         HAVE_XWIDGETS is defined.
10433         (struct xwidget_type, xwidget_from_id): Remove; unused.
10435 2016-01-22  Michael Albinus  <michael.albinus@gmx.de>
10437         Backport kqueue integration from master
10439         * configure.ac (--with-file-notification): Add kqueue.
10440         (top): Remove special test for "${HAVE_NS}" and
10441         ${with_file_notification}, this is handled inside gfilenotify
10442         tests.  Add kqueue tests.  Use NOTIFY_CFLAGS and NOTIFY_LIBS
10443         instead of library specific variables.  Add error message for
10444         gfile on Nextstep.
10446         * doc/lispref/os.texi (File Notifications): Add kqueue as backend.
10447         Fix some glitches in the example.
10449         * etc/NEWS: Mention kqueue.
10451         * lisp/filenotify.el (file-notify--library)
10452         (file-notify-descriptors, file-notify-callback)
10453         (file-notify-add-watch, file-notify-rm-watch)
10454         (file-notify-valid-p): Add kqueue support.
10455         (file-notify--rm-descriptor): Remove WHAT arg.
10457         * src/Makefile.in: Use NOTIFY_CFLAGS and NOTIFY_LIBS.
10459         * src/emacs.c (main): Call globals_of_kqueue and syms_of_kqueue.
10461         * src/inotify.c (inotifyevent_to_event): Extract file name from
10462         watch_object if the event doesn't provide it.
10463         (Finotify_add_watch): Add file name to watch_object.
10465         * src/keyboard.c (make_lispy_event): Check also for HAVE_KQUEUE.
10467         * src/kqueue.c: New file.
10469         * src/lisp.h: Declare extern globals_of_kqueue and syms_of_kqueue.
10471         * test/automated/file-notify-tests.el
10472         (file-notify--test-expected-events): Remove.
10473         (file-notify--test-cleanup): Do not set that variable.
10474         (file-notify--test-timeout) Use different timeouts for
10475         different libraries.
10476         (file-notify--test-library): New defun.
10477         (file-notify--test-event-test): Make stronger checks.
10478         (file-notify--test-with-events): EVENTS can also be a list of
10479         lists.  Flush outstanding events before running the body.
10480         Make timeout heuristically depend on the number of events.
10481         (file-notify-test01-add-watch, file-notify-test02-events)
10482         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
10483         Rewrite in order to call file monitors but directory monitors.
10484         (file-notify-test02-events, file-notify-test04-file-validity): Do
10485         not skip cygwin tests.  Add additional test for file creation.
10486         Adapt expected result for different backends.
10487         (file-notify-test03-autorevert): Some of the tests don't work for
10488         w32notify.
10489         (file-notify-test06-many-events): New test.
10491 2016-01-22  John Wiegley  <johnw@newartisans.com>
10493         Further corrections to the pcase docstring
10495 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
10497         * doc/emacs/anti.texi (Antinews): Rewrite for Emacs 25.
10499 2016-01-22  Stephen Leake  <stephen_leake@stephe-leake.org>
10501         In xref-collect-references, force backends to respect the 'dir' arg
10503         * lisp/progmodes/xref.el (xref-collect-references): Force symref backends
10504         to use `default-directory'.
10506 2016-01-22  John Wiegley  <johnw@newartisans.com>
10508         Minor correction to pcase docstring
10510 2016-01-22  John Wiegley  <johnw@newartisans.com>
10512         Write a new docstring for the pcase macro
10514         * lisp/emacs-lisp/pcase.el (pcase): Write a new docstring.
10516 2016-01-21  Stephen Berman  <stephen.berman@gmx.net>
10518         Avoid byte-compiler warning in todo-mode (bug#21953)
10520         * lisp/calendar/todo-mode.el (todo-convert-legacy-files): Add limit argument
10521         to looking-back to comply with advertised-calling-convention.
10523 2016-01-21  Stephen Berman  <stephen.berman@gmx.net>
10525         Fix desktop support in todo-mode and doc-view (bug#22377)
10527         * lisp/calendar/todo-mode.el (todo-restore-desktop-buffer):
10528         * lisp/doc-view.el (doc-view-restore-desktop-buffer): Return current buffer.
10530         * lisp/calendar/todo-mode.el (todo-modes-set-2):
10531         * lisp/doc-view.el (doc-view-mode): Set desktop-save-buffer unconditionally.
10533 2016-01-21  Paul Eggert  <eggert@cs.ucla.edu>
10535         No need to configure gobject-introspection
10537         It wasn’t needed for the recently-installed xwidget_mvp code; see:
10538         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01154.html
10539         * configure.ac (DOES_XWIDGETS_USE_GIR, GIR_REQUIRED, GIR_MODULES):
10540         (HAVE_GIR):
10541         * src/Makefile.in (GIR_LIBS, GIR_CFLAGS):
10542         Remove.  All uses removed.
10543         * configure.ac (emacs_config_features): Don’t worry about GIR.
10545 2016-01-20  Paul Eggert  <eggert@cs.ucla.edu>
10547         Don’t export C symbols not used elsewhere
10549         These were recently added, mostly as part of xwidget code.
10550         * src/emacsgtkfixed.c (emacs_fixed_get_type): Now static.
10551         (EMACS_FIXED, EMACS_FIXED_GET_CLASS):
10552         Now static functions here, not macros in emacsgtkfixed.h.
10553         * src/emacsgtkfixed.h (EMACS_TYPE_FIXED):
10554         Remove.  All uses replaced by definiens.
10555         (EMACS_FIXED, EMACS_FIXED_GET_CLASS):
10556         Remove; these are now static functions in emacsgtkfixed.c.
10557         (EMACS_FIXED_CLASS, EMACS_IS_FIXED, EMACS_IS_FIXED_CLASS):
10558         Remove; unused.
10559         (emacs_fixed_get_type): Remove decl; no longer extern.
10560         * src/xwidget.c (offscreen_damage_event)
10561         (webkit_mime_type_policy_typedecision_requested_cb)
10562         (webkit_new_window_policy_decision_requested_cb)
10563         (webkit_navigation_policy_decision_requested_cb)
10564         (xwidget_spec_value, xwidget_view_lookup)
10565         (xwidget_start_redisplay, xwidget_touch):
10566         Now static.
10567         * src/xwidget.h (xwidget_start_redisplay, xwidget_touch):
10568         Remove decls.
10570 2016-01-20  Dmitry Gutov  <dgutov@yandex.ru>
10572         Support squiggly heredocs in ruby-mode
10574         * lisp/progmodes/ruby-mode.el (ruby-here-doc-beg-re):
10575         Support squiggly heredocs added in Ruby 2.3.
10577         * test/indent/ruby.rb: Add squiggly example.
10579 2016-01-20  Glenn Morris  <rgm@gnu.org>
10581         * configure.ac (emacs_config_features): Remove WEBKIT.
10583 2016-01-20  Paul Eggert  <eggert@cs.ucla.edu>
10585         Port to platforms with gtk3 but not webkitgtk3
10587         I ran into this problem on my Fedora 23 installation;
10588         Emacs configured but did not build when --with-xwidgets was specified.
10589         * configure.ac (HAVE_WEBKIT, HAVE_GIR): Omit unnecessary initializations.
10590         (DOES_XWIDGETS_USE_GIR): New var.
10591         If --with-xwidgets is specified, report an error if not
10592         doable, to be consistent with the other --with options.
10593         Require webkitgtk3 to use Xwidgets, as the Xwidgets code does
10594         not work at all without webkitgtk3.  Simplify use of
10595         EMACS_CHECK_MODULES.  Output message about gobject
10596         introspection only if xwidgets are used.
10597         * etc/NEWS: Users need webkitgtk3, not merely webkit.
10598         * src/xwidget.c (syms_of_xwidget): Don’t worry about HAVE_WEBKIT_OSR,
10599         since this file is no longer compiled if webkitgtk3 is not available.
10601 2016-01-20  Eli Zaretskii  <eliz@gnu.org>
10603         Fix doc string of 'isearch-search-fun-function'
10605         * lisp/isearch.el (isearch-search-fun-function)
10606         (isearch-search-string): Doc fixes.  (Bug#22411)
10608 2016-01-20  Stefan Monnier  <monnier@iro.umontreal.ca>
10610         * lisp/xwidget.el: Nitpicks
10612         * lisp/xwidget.el (xwidget-log, xwidget-webkit-callback):
10613         Use with-current-buffer rather than save-excursion + set-buffer.
10615 2016-01-20  Glenn Morris  <rgm@gnu.org>
10617         Don't hard-code 1 as point-min.
10619         * lisp/image-mode.el (image-display-size):
10620         * lisp/xwidget.el (xwidget-webkit-last-session)
10621         (xwidget-webkit-current-session): Don't hard-code 1 as point-min.
10623 2016-01-20  Glenn Morris  <rgm@gnu.org>
10625         * lisp/xwidget.el: Add declarations to silence non-xwidget compilation.
10627 2016-01-20  Glenn Morris  <rgm@gnu.org>
10629         Trivial doc copyedits.
10631         * src/xwidget.c (Fmake_xwidget, Fget_buffer_xwidgets)
10632         (Fxwidget_webkit_get_title, Fxwidget_resize)
10633         (Fxwidget_set_adjustment, Fxwidgetp, Fxwidget_view_p)
10634         (Fxwidget_info, Fxwidget_view_lookup)
10635         (Fset_xwidget_query_on_exit_flag): Trivial doc copyedits.
10637 2016-01-20  Glenn Morris  <rgm@gnu.org>
10639         Avoid advising image-display-size for xwidgets.
10641         * lisp/xwidget.el (xwidget-image-display-size): Remove.
10642         (image-display-size): Remove advice.
10643         * lisp/image-mode.el (xwidget-info, xwidget-at): Declare.
10644         (image-display-size): Incorporate xwidget code directly.
10646 2016-01-20  Glenn Morris  <rgm@gnu.org>
10648         Avoid breaking non-xwidget Emacs that happen to load xwidget.el.
10650         * lisp/xwidget.el (window-configuration-change-hook)
10651         (kill-buffer-query-functions): Only modify these hooks if
10652         compiled with xwidget support.
10654 2016-01-20  Glenn Morris  <rgm@gnu.org>
10656         * lisp/xwidget.el (xwidget-webkit-scroll-behaviour): Fix custom spec.
10658 2016-01-19  Glenn Morris  <rgm@gnu.org>
10660         * configure.ac (WEBKIT, GIR, CAIRO): Use EMACS_CHECK_MODULES, not PKG_.
10662         * configure.ac (emacs_config_features): Add XWIDGETS, WEBKIT, GIR.
10664         * configure.ac (HAVE_WEBKIT_OSR): Remove broken, duplicated gtk3 test.
10666 2016-01-19  Katsumi Yamaoka  <yamaoka@jpl.org>
10668         * lisp/gnus/nnir.el (nnir-request-update-mark):
10669         Default to the original mark.
10670         cf. <http://thread.gmane.org/gmane.emacs.gnus.general/86583>
10671         and <http://thread.gmane.org/gmane.emacs.gnus.general/86640>
10673 2016-01-19  Glenn Morris  <rgm@gnu.org>
10675         * lisp/xwidget.el (report-xwidget-bug): Remove.
10677         (top-level): No longer require reporter.
10679 2016-01-19  Joakim Verona  <joakim@verona.se>
10680             Grégoire Jadi  <daimrod@gmail.com>
10682         Support for the new Xwidget feature.
10684         * configure.ac:
10685         (HAVE_XWIDGETS, WIDGET_OBJ, EMACS_CONFIG_FEATURES):
10686         * src/xterm.c (x_draw_glyph_string, x_draw_bar_cursor):
10687         * src/xdisp.c:
10688         (handle_display_spec, handle_single_display_spec, push_it)
10689         (pop_it, set_iterator_to_next, dump_glyph)
10690         (calc_pixel_width_or_height, fill_xwidget_glyph_string)
10691         (BUILD_XWIDGET_GLYPH_STRING, BUILD_GLYPH_STRINGS)
10692         (produce_xwidget_glyph, x_produce_glyphs)
10693         (get_window_cursor_type):
10694         * src/window.c (Fdelete_window_internal):
10695         * src/termhooks.h (e):
10696         * src/print.c (print_object):
10697         * src/lisp.h (ptrdiff_t):
10698         * src/keyboard.c (kbd_buffer_get_event, make_lispy_event)
10699         (syms_of_keyboard):
10700         * src/emacs.c (main):
10701         * src/dispnew.c (update_window, scrolling_window):
10702         * src/dispextern.h (g, i):
10703         * Makefile.in (XWIDGETS_OBJ, WEBKIT_CFLAGS, WEBKIT_LIBS)
10704         (GIR_LIBS, ALL_CFLAGS, base_obj, LIBES):
10705         * src/keyboard.c (kbd_buffer_get_event):
10706         * src/emacsgtkfixed.c (emacs_fixed_gtk_widget_size_allocate)
10707         (emacs_fixed_class_init): Add case for an xwidget view.
10709         * src/xwidget.c, src/xwidget.h, lisp/xwidget.el: New files for xwidgets
10712         Various improvements to the Xwidget feature.
10713         * src/xwidget.c:
10714         * src/emacsgtkfixed.c:
10715         * lisp/xwidget.el:
10717 2016-01-19  Eli Zaretskii  <eliz@gnu.org>
10719         Improve documentation of 'alist-get'
10721         * doc/lispref/variables.texi (Setting Generalized Variables): Add
10722         'alist-get' to the list of functions that can appear in PLACE
10723         argument of 'setf'.
10725 2016-01-19  Eli Zaretskii  <eliz@gnu.org>
10727         Minor copyedits of doc/emacs/maintaining.texi
10729         * doc/emacs/maintaining.texi (List Identifiers): More accurate
10730         description of "C-M-i" wrt tags tables.
10731         (Tags Tables): Move the definition of "tag" to a footnote.
10733 2016-01-19  Eli Zaretskii  <eliz@gnu.org>
10735         Unbreak the Cygwin-w32 build
10737         * src/w32fns.c (globals_of_w32fns): Move the initialization of
10738         resetstkoflw into a part that isn't compiled on Cygwin.
10739         (Bug#22403)
10741 2016-01-19  Lars Magne Ingebrigtsen  <larsi@gnus.org>
10743         * shr.el (shr-table-body): Allow tables to have text children.
10745 2016-01-19  Phillip Lord  <phillip.lord@russet.org.uk>
10747         Cope with multiple overlapping faces.
10749         * lisp/htmlfontify.el (hfy-face-to-style-i): Treat inheritance right to
10750           left.
10751           (hfy-face-resolve-face): Handle font specification as well as font
10752           name. Documentation update. (Bug#21990)
10754 2016-01-19  Paul Eggert  <eggert@cs.ucla.edu>
10756         Fix spurious escapes in describe-input-method
10758         Problem reported by Vincent Belaïche (Bug#22309).
10759         * lisp/international/mule-cmds.el (describe-language-environment):
10760         * lisp/international/quail.el (quail-help):
10761         Apply substitute-command-keys to doc strings before displaying them.
10763 2016-01-19  Paul Eggert  <eggert@cs.ucla.edu>
10765         Minor improvements to (random t) documentation
10767         * doc/lispref/numbers.texi (Random Numbers):
10768         * src/fns.c (Frandom):
10769         Omit unnecessary details about randomness fallback.
10770         Say that it is a fallback.
10772 2016-01-19  Dmitry Gutov  <dgutov@yandex.ru>
10774         Rename methods in Ruby etags example file
10776         * test/etags/ruby-src/test.rb: Rename the example methods to
10777         correspond to the common terminology used in Ruby.
10778         * test/etags/CTAGS.good:
10779         * test/etags/ETAGS.good_1:
10780         * test/etags/ETAGS.good_2:
10781         * test/etags/ETAGS.good_3:
10782         * test/etags/ETAGS.good_4:
10783         * test/etags/ETAGS.good_5:
10784         * test/etags/ETAGS.good_6: Adjust accordingly.
10786 2016-01-19  Dmitry Gutov  <dgutov@yandex.ru>
10788         Propertize backtick in 'def `(abc)' as symbol constituent
10790         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize):
10791         Propertize backtick in 'def `(abc)' as symbol constituent.
10792         (ruby-syntax-propertize-function):
10793         Rename to ruby-syntax-propertize.
10795 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
10797         Fix scrolling under scroll-preserve-screen-position on TTY
10799         * src/window.c (window_scroll_line_based): When setting point to
10800         preserve screen coordinates, don't let cursor enter either of the
10801         two scroll margins.  (Bug#22395)
10803 2016-01-18  Lars Magne Ingebrigtsen  <larsi@gnus.org>
10805         Fix shr table rendering of nested tables
10807         * shr.el (shr-table-body): Don't include all tbodies in nested
10808         tables in the levels above.
10810 2016-01-18  Dmitry Gutov  <dgutov@yandex.ru>
10812         * lisp/progmodes/project.el (project--read-regexp): Quote the identifier.
10814 2016-01-18  Dmitry Gutov  <dgutov@yandex.ru>
10816         Add xref-based replacements for Dired search commands
10818         * lisp/dired-aux.el (dired-do-find-regexp)
10819         (dired-do-find-regexp-and-replace): New commands.
10820         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00864.html
10822         * lisp/dired.el (dired-mode-map): Change bindings for `A' and
10823         `Q' to the new commands.
10825         * lisp/progmodes/xref.el (xref-query-replace)
10826         (xref-collect-matches): Add progress reporters.
10827         (xref--find-ignores-arguments): Return nil for zero ignores.
10828         (xref--show-xrefs): Add an optional argument.
10829         (xref-collect-matches): Drop the assert.  'find' accepts a
10830         regular file in place of directory argument, too.
10832 2016-01-18  Alan Mackenzie  <acm@muc.de>
10834         * doc/lispref/frames.texi (Position Parameters): Say they don't exist on TTYs.
10836 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
10838         Improve user documentation of Xref
10840         * doc/emacs/maintaining.texi (Xref, Find Identifiers)
10841         (Looking Up Identifiers, Identifier Search, List Identifiers):
10842         Adjudicate comments by Dmitry Gutov <dgutov@yandex.ru>.  See
10843         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00650.html
10844         for the details.
10846 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
10848         Fix scrolling under scroll-preserve-screen-position and margins
10850         * src/window.c (window_scroll_pixel_based): When setting point to
10851         preserve screen coordinates, don't let cursor enter either of the
10852         two scroll margins.  Fix incorrect usage of
10853         WINDOW_WANTS_HEADER_LINE_P and use WINDOW_HEADER_LINE_HEIGHT
10854         instead of CURRENT_HEADER_LINE_HEIGHT.  (Bug#22395)
10856 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
10858         Unbreak the MS-Windows build
10860         * src/sysdep.c (emacs_gnutls_global_init, gnutls_rnd): Disable for
10861         WINDOWSNT, to avoid link failure.  (Bug#22202)
10863 2016-01-18  Alan Mackenzie  <acm@muc.de>
10865         Desktop: protect users against inadvertant upgrading of desktop file.
10867         An upgraded (version 208) desktop file cannot be read in Emacs < 25.
10869         * etc/NEWS: Add an entry about upgrading a desktop file.
10871         * lisp/desktop.el (desktop-file-version): Amend doc string.
10872         (desktop-native-file-version, desktop-io-file-version): new variables.
10873         (desktop-clear): Set desktop-io-file-version to nil.
10874         (desktop-buffer-info): make the presence of the last item on the list
10875         conditional on (>= desktop-io-file-version 208).
10876         (desktop-save): Add extra parameter VERSION to take user's C-u or C-u C-u.
10877         Amend the doc string.  Add code to determine the output file version.
10878         (desktop-create-buffer): Set desktop-io-file-version to the input file's
10879         version.
10881 2016-01-18  Paul Eggert  <eggert@cs.ucla.edu>
10883         Initialize GnuTLS before calling gnutls_rnd
10885         * src/gnutls.c (emacs_gnutls_global_init): Now extern.
10886         Don’t set gnutls_global_initialized if gnutls_global_init fails.
10887         * src/sysdep.c: Include "gnutls.h", and <gnutls/crypto.h>
10888         if 2.12 or later, which has gnutls_rnd.
10889         (emacs_gnutls_global_init, gnutls_rnd): New fallback
10890         placeholder macros if before 2.12.
10891         (init_random): Initialize gnutls globals before trying to
10892         use gnutls_rnd.
10894 2016-01-18  Andreas Schwab  <schwab@linux-m68k.org>
10896         Don't use GnuTLS before it is initialized
10898                 * src/sysdep.c (init_random): Don't use gnutls_rnd.
10900 2016-01-17  Paul Eggert  <eggert@cs.ucla.edu>
10902         Port cleanup attribute to OpenBSD
10904         The OpenBSD C compiler issues false alarms about strcpy, strcat, and
10905         sprintf, and this messes up 'configure' when it tests for the cleanup
10906         attribute.  Work around the problem by using __has_attribute directly.
10907         Problem reported by Joakim Jalap (Bug#22385).
10908         * configure.ac: Don’t use AX_GCC_VAR_ATTRIBUTE.
10909         * m4/ax_gcc_var_attribute.m4: Remove.
10910         * src/conf_post.h (__has_attribute): Provide a substitute, for
10911         non-GCC or older GCC compilers.  All uses changed to assume
10912         the substitute.  Check for the cleanup attribute.
10913         * src/emacs-module.c (module_has_cleanup): Just use __has_attribute.
10915 2016-01-17  Paul Eggert  <eggert@cs.ucla.edu>
10917         Prefer GnuTLS when acquiring random seed
10919         This attempts to improve on the fix for Bug#22202.
10920         * configure.ac (HAVE_DEV_URANDOM): Remove.
10921         Check /dev/urandom existence at run time, not at build time,
10922         since the device could exist in the former but not the latter.
10923         * src/sysdep.c [HAVE_GNUTLS]: Include gnutls/gnutls.h.
10924         (gnutls_rnd) [GNUTLS_VERSION_NUMBER < 0x020c00]: New fallback macro.
10925         (random_seed): New typedef.
10926         (set_random_seed): New static function.
10927         (seed_random): Use them.
10928         (init_random): Use random_seed instead of uintmax_t, so as to
10929         not consume more entropy than needed.  Prefer gnutls_rnd if it
10930         works; this avoids a redundant open of /dev/urandom on
10931         GNU/Linux with modern GnuTLS.
10933 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10935         Improve documentation of dynamic modules
10937         * doc/lispref/loading.texi (How Programs Do Loading): Update the
10938         description of searching for files in 'load' when Emacs was built
10939         with support for dynamic modules.
10941 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10943         * INSTALL: Document --with-modules.
10945 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10947         Document 'function-put'
10949         * doc/lispref/symbols.texi (Symbol Plists): Document
10950         'function-put'.  Update documentation of 'function-get'.
10952 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10954         Document 'funcall-interactively'
10956         * doc/lispref/commands.texi (Interactive Call): Document
10957         'funcall-interactively'.
10958         * doc/lispref/functions.texi (Calling Functions): Mention
10959         'funcall-interactively' and provide a cross-reference.
10961 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10963         * doc/lispref/lists.texi (Association Lists): Document 'alist-get'.
10965         * doc/lispref/strings.texi (Text Comparison): Document 'string-greaterp'.
10967 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10969         Document renaming of selection-related functions
10971         * doc/lispref/frames.texi (Window System Selections): Rename "x-*"
10972         functions into the corresponding "gui-*" functions.  Make the
10973         description slightly less X-centric.
10975 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10977         * doc/lispref/macros.texi (Expansion): Document 'macroexpand-1'.
10979 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10981         Document 'define-inline'
10983         * doc/lispref/functions.texi (Defining Functions): Document
10984         'define-inline' and related macros.
10986         * lisp/emacs-lisp/inline.el (inline-letevals): Doc fix.
10988 2016-01-16  Artur Malabarba  <bruce.connor.am@gmail.com>
10990         * lisp/files.el (dir-locals--all-files): Respect absolute file-names
10992         * lisp/help-fns.el (describe-variable): Fix a left-over parenthesis
10994 2016-01-16  Artur Malabarba  <bruce.connor.am@gmail.com>
10996         * lisp/dired-x.el (dired-omit-here-always): Use add-dir-local-variable
10998         instead of manually writing a dir-locals file.
11000 2016-01-16  Artur Malabarba  <bruce.connor.am@gmail.com>
11002         * lisp/files.el (dir-locals--all-files): Use completion instead of wildcards
11004         (dir-locals-file)
11005         * lisp/files-x.el (modify-dir-local-variable)
11006         * lisp/dos-fns.el (dosified-file-name)
11007         * lisp/help-fns.el (describe-variable): Change accordingly.
11009 2016-01-16  Jussi Lahdenniemi  <jussi@aprikoodi.fi>  (tiny change)
11011         Fix incompatbilities with MS-Windows 2000 and older
11013         * src/w32.c <multiByteToWideCharFlags>: New global variable.
11014         (filename_to_utf16, filename_from_ansi, check_windows_init_file):
11015         Use it instead of the literal MB_ERR_INVALID_CHARS.
11016         (maybe_load_unicows_dll): Initialize multiByteToWideCharFlags as
11017         appropriate for the underlying OS version.  For details, see
11018         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00835.html.
11019         * src/w32.h: Declare multiByteToWideCharFlags.
11020         * src/w32fns.c (Fx_file_dialog, Fw32_shell_execute)
11021         (add_tray_notification): Use multiByteToWideCharFlags instead of
11022         the literal MB_ERR_INVALID_CHARS.
11023         (_resetstkoflw_proc): New typedef.
11024         (w32_reset_stack_overflow_guard): Call _resetstkoflw via a
11025         pointer, as this function is absent in msvcrt.dll shipped with W2K
11026         and older systems.
11028 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
11030         Mention in PROBLEMS an issue with MS-Windows NT4
11032         * etc/PROBLEMS (MS-Windows): Mention the problem with Shell32.dll
11033         on Windows NT4.  For the details, see
11034         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00835.html.
11036 2016-01-16  Jussi Lahdenniemi  <jussi@aprikoodi.fi>  (tiny change)
11038         Ensure 8-byte aligned memory allocation on MS-Windows 9X
11040         * src/w32heap.c (init_heap): Redirect malloc, realloc, and free to
11041         special functions on Windows 9X.  Refuse to dump Emacs on Windows 9X.
11042         (malloc_after_dump_9x, realloc_after_dump_9x)
11043         (free_after_dump_9x): New functions.  (Bug#22379)  See also
11044         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00852.html
11045         for more details about the original problem.
11047         * nt/inc/ms-w32.h (malloc_after_dump_9x, realloc_after_dump_9x)
11048         (free_after_dump_9x): Add prototypes.
11050 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
11052         Fix tests for active region in hideif.el
11054         * lisp/progmodes/hideif.el (hif-evaluate-macro, hide-ifdef-block): Use
11055         'use-region-p' to test whether to operate on region, instead of
11056         testing 'mark-active'.
11058 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
11060         Fix interactive specs in some hideif.el commands
11062         * lisp/progmodes/hideif.el (hif-evaluate-macro)
11063         (hide-ifdef-undef, show-ifdef-block): Don't use '(interactive "r")'
11064         in commands that should only act on the region if it's active.
11066 2016-01-15  Phillip Lord  <phillip.lord@russet.org.uk>
11068         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
11070 2016-01-15  Phillip Lord  <phillip.lord@russet.org.uk>
11072         Enable test selector from command line
11074         * test/automated/Makefile.in: Change variable manipulation to avoid
11075           over-writing selector.
11077 2016-01-15  Alan Mackenzie  <acm@muc.de>
11079         Don't confuse "::" with ":" when trying to parse member initializers.
11081         * lisp/progmodes/cc-engine.el (c-back-over-member-initializers): Check
11082         more robustly for ":" token when searching backwards for it.
11084         * lisp/progmodes/cc-langs.el (c-:$-multichar-token-regexp): New language
11085         variable.
11087 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
11089         Ensure positive number of glyphs for margins of positive width
11091         * src/dispnew.c (margin_glyphs_to_reserve): Always return a
11092         positive value when a non-zero width of the marginal area was
11093         requested.  (Bug#22356)
11095 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
11097         Fix crashes when mini-window has non-zero margins
11099         * src/window.c (resize_frame_windows): Use 'new_size' to set
11100         minibuffer window's 'total_cols' value, as 'size' might be in
11101         pixels.  (Bug#22356)
11103 2016-01-15  Alan Mackenzie  <acm@muc.de>
11105         In comment-dwim with style `extra-line', respect indent-tabs-mode.
11107         This fixes bug #22369.
11109         * lisp/newcomment.el (comment-make-bol-ws): New function.
11110         (comment-make-extra-lines): Use new function instead of a crude `make-string'.
11112 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
11114         Make 'random' seeds cryptographically secure if possible
11116         * configure.ac: Check for "/dev/urandom".
11118         * src/sysdep.c (init_random) [HAVE_DEV_URANDOM]: Read the stream
11119         for the seed from "/dev/urandom".
11120         [WINDOWSNT]: Obtain the stream for the seed from w32 APIs.
11121         * src/fns.c (Frandom): Update the doc string to indicate that
11122         system entropy is used when available.
11123         * src/w32.c: Include wincrypt.h.
11124         (w32_init_crypt_random, w32_init_random): New functions, use the
11125         CryptGenRandom API.
11126         (globals_of_w32): Initialize w32_crypto_hprov handle to zero.
11127         * src/w32.h (w32_init_random): Add prototype.
11129         * doc/lispref/numbers.texi (Random Numbers): Document more details
11130         about 't' as the argument to 'random'.
11132         * etc/NEWS: Mention that '(random t)' now uses a cryptographically
11133         strong seed if possible.
11135         (Bug#22202)
11137 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
11139         Unhide the --no-line-directive option to 'etags'
11141         * lib-src/etags.c (print_help): Un-undocument the --no-line-directive
11142         option.  (Bug#22306)
11144         * doc/man/etags.1: Document the --no-line-directive option.
11146 2016-01-15  Alan J Third  <alan@idiocy.org>  (tiny change)
11148         Fix picture-mode wrt double-width characters
11150         * lisp/textmodes/picture.el (picture-insert): Check the width of
11151         the character being replaced, not just that of the replacement.
11152         (Bug#1808)
11154 2016-01-15  Eric Abrahamsen  <eric@ericabrahamsen.net>
11156         Honor docstring of gnus-group-get-new-news
11158         * lisp/gnus/gnus-start.el (gnus-get-unread-articles): If the prefix arg is t,
11159         but non-numeric, unconditionally consider all groups to need updating.
11161 2016-01-14  Simen Heggestøyl  <simenheg@gmail.com>
11163         Disallow parenthesis in non-pseudo CSS selectors
11165         * lisp/textmodes/css-mode.el (css--font-lock-keywords): Disallow
11166         parenthesis in selectors except for in the function notation that
11167         might appear right after a pseudo-class.
11168         * test/indent/scss-mode.scss: Add a test for it.
11170 2016-01-14  Katsumi Yamaoka  <yamaoka@jpl.org>
11172         * lisp/gnus/nntp.el (nntp-request-newgroups): Simplify
11174 2016-01-14  Michael Albinus  <michael.albinus@gmx.de>
11176         check-maybe shall run only default tests
11178         * test/automated/Makefile.in (check, check-expensive): Depend on
11179         mostlyclean.
11180         (check-maybe): Re-run only default tests.
11181         (check-doit): Use code of check-maybe.
11182         (mostlyclean): Move *.log files away.
11184 2016-01-14  Mark Oteiza  <mvoteiza@udel.edu>
11186         * lisp/thingatpt.el (thing-at-point-uri-schemes): Add "magnet:"
11188 2016-01-14  Dmitry Gutov  <dgutov@yandex.ru>
11190         Un-obsolete tags-loop-continue
11192         * lisp/progmodes/etags.el (tags-loop-continue): Un-obsolete.
11193         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00682.html
11195 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
11197         Document obsoletion of 'intangible' and 'point-entered/left'
11199         * doc/lispref/text.texi (Special Properties): Document the new
11200         properties 'cursor-intangible' and 'cursor-sensor-functions'.
11201         Document the obsolete status of 'intangible', 'pointer-left',
11202         and 'point-entered' properties, and of 'inhibit-point-motion-hooks'.
11203         * doc/lispref/display.texi (Overlay Properties): Document that
11204         'intangible' overlay property is obsolete.
11206         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor-mode): Doc fix.
11208 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
11210         Updater documentation of 'looking-back'
11212         * doc/lispref/searching.texi (Regexp Search): Update documentation
11213         of 'looking-back'.  Fix markup.
11215 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
11217         Document 'pre-redisplay-functions'
11219         * doc/lispref/hooks.texi (Standard Hooks):
11220         * doc/lispref/display.texi (Forcing Redisplay): Document
11221         'pre-redisplay-functions'.
11223 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
11225         Document the new deafault value of 'load-read-function'
11227         * doc/lispref/loading.texi (How Programs Do Loading): Document the
11228         change in the default value of 'load-read-function'.
11230 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
11232         Document 'bufferpos-to-filepos' and 'filepos-to-bufferpos'
11234         * doc/lispref/nonascii.texi (Text Representations): Document
11235         'bufferpos-to-filepos' and 'filepos-to-bufferpos'.
11237 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
11239         Document the new prefix-command hooks
11241         * doc/lispref/hooks.texi (Standard Hooks): Document
11242         `prefix-command-echo-keystrokes-functions' and
11243         `prefix-command-preserve-state-hook'.
11245 2016-01-13  Paul Eggert  <eggert@cs.ucla.edu>
11247         Fix one more misuse of time-stamp-time-zone
11249         * test/etags/html-src/softwarelibero.html: Use "UTC0" rather
11250         than the unportable "GMT" for time zone.
11252 2016-01-13  Paul Eggert  <eggert@cs.ucla.edu>
11254         Fix NNTP NEWGROUPS off-by-a-few-hours bug
11256         * lisp/gnus/nntp.el (nntp-request-newgroups): Format string
11257         in Universal Time, since we’re telling the server “GMT”.
11259 2016-01-13  Paul Eggert  <eggert@cs.ucla.edu>
11261         Update publicsuffix.txt from upstream
11263         * etc/publicsuffix.txt: Update from
11264         https://publicsuffix.org/list/effective_tld_names.dat
11265         dated 2016-01-12 11:52:01 UTC.
11267 2016-01-13  Glenn Morris  <rgm@gnu.org>
11269         Fix some declarations.
11271         * lisp/descr-text.el (internal-char-font):
11272         * lisp/cedet/mode-local.el (xref-item-location):
11273         * lisp/gnus/mml-smime.el (epg-key-sub-key-list)
11274         (epg-sub-key-capability, epg-sub-key-validity):
11275         * lisp/international/mule-util.el (internal-char-font):
11276         Fix declarations.
11278 2016-01-13  Glenn Morris  <rgm@gnu.org>
11280         Fix some custom types.
11282         * lisp/gnus/gnus-fun.el (gnus-x-face-omit-files, gnus-face-omit-files):
11283         * lisp/gnus/gnus.el (gnus-valid-select-methods):
11284         * lisp/mail/rmail.el (rmail-get-coding-function):
11285         * lisp/net/newst-treeview.el (newsticker-groups-filename):
11286         * lisp/progmodes/hideif.el (hide-ifdef-exclude-define-regexp):
11287         * lisp/textmodes/tildify.el (tildify-space-predicates):
11288         * lisp/url/url-tramp.el (url-tramp-protocols):
11289         Fix custom types.
11291 2016-01-13  Glenn Morris  <rgm@gnu.org>
11293         Add some missing version tags.
11295         * lisp/electric.el (electric-quote-comment)
11296         (electric-quote-string, electric-quote-paragraph):
11297         * lisp/epg-config.el (epg-gpgconf-program):
11298         * lisp/rect.el (rectangle-preview):
11299         * lisp/emacs-lisp/check-declare.el (check-declare-ext-errors):
11300         * lisp/emacs-lisp/package.el (package-selected-packages)
11301         (package-hidden-regexps):
11302         * lisp/erc/erc.el (erc-network-hide-list, erc-channel-hide-list):
11303         * lisp/eshell/em-term.el (eshell-destroy-buffer-when-process-dies):
11304         * lisp/gnus/mml-sec.el (mml1991-signers, mml2015-signers)
11305         (mml-smime-signers, mml1991-encrypt-to-self, mml2015-encrypt-to-self)
11306         (mml-smime-encrypt-to-self, mml2015-sign-with-sender)
11307         (mml-smime-sign-with-sender, mml2015-always-trust)
11308         (mml-secure-fail-when-key-problem, mml-secure-key-preferences):
11309         * lisp/net/browse-url.el (browse-url-conkeror-new-window-is-buffer)
11310         (browse-url-conkeror-arguments):
11311         * lisp/net/newst-reader.el (newsticker-download-logos):
11312         * lisp/progmodes/gud.el (gud-guiler-command-name):
11313         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
11314         * lisp/progmodes/project.el (project-vc):
11315         * lisp/progmodes/python.el (python-indent-guess-indent-offset-verbose)
11316         (python-shell-remote-exec-path, python-shell-first-prompt-hook)
11317         (python-shell-completion-native-disabled-interpreters)
11318         (python-shell-completion-native-enable)
11319         (python-shell-completion-native-output-timeout)
11320         (python-shell-completion-native-try-output-timeout):
11321         * lisp/progmodes/xref.el (xref):
11322         * lisp/term/screen.el (xterm-screen-extra-capabilities):
11323         * lisp/term/xterm.el (xterm-max-cut-length):
11324         Add missing version tags.
11326 2016-01-13  Glenn Morris  <rgm@gnu.org>
11328         * test/automated/core-elisp-tests.el
11329         (core-elisp-tests-1-defvar-in-let): Add a custom type.
11331 2016-01-13  Glenn Morris  <rgm@gnu.org>
11333         * src/buffer.c (syms_of_buffer) <major-mode>: Doc fix.
11335         Remove comments that do not apply since 2005-08-09.  (Bug#22349)
11337 2016-01-12  Paul Eggert  <eggert@cs.ucla.edu>
11339         Merge from gnulib
11341         This mostly just changes "UTC" to "UTC0" for POSIX conformance.
11342         It also updates to the latest version of texinfo.tex.
11343         * build-aux/gitlog-to-changelog, build-aux/move-if-change:
11344         * build-aux/update-copyright, doc/misc/texinfo.tex:
11345         Update from gnulib.
11347 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
11349         Update documentation of 'process-running-child-p'
11351         * doc/lispref/processes.texi (Input to Processes): Document the
11352         changes in return value of 'process-running-child-p'.
11354 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
11356         Update documentation of 'deactivate-mark'.
11358         * doc/lispref/markers.texi (The Mark): Document that
11359         'deactivate-mark' is now buffer-local when set.
11361 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
11363         Update documentation of 'completion-table-dynamic'
11365         * doc/lispref/minibuf.texi (Programmed Completion): Document the
11366         new optional argument to 'completion-table-dynamic'.
11368 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
11370         Document changes in 'read-buffer' and 'read-buffer-function'
11372         * doc/lispref/minibuf.texi (High-Level Completion): Document the
11373         4th argument to 'read-buffer' and 'read-buffer-function'.
11375 2016-01-12  Paul Eggert  <eggert@cs.ucla.edu>
11377         Fix time-stamp-time-zone bugs introduced in July
11379         This fixes a bug introduced when the July changes to
11380         format-time-string installed, as the changes were not
11381         correctly handled in this module (Bug#22302).
11382         Also, document time stamp time zones.
11383         * lisp/time-stamp.el (time-stamp-time-zone): Document values better.
11384         (time-stamp--format): New private function.
11385         (time-stamp-string, time-stamp-string-preprocess)
11386         (time-stamp-do-number): Use it.
11387         * doc/emacs/files.texi (Time Stamps): Mention time zones.
11388         * doc/misc/autotype.texi (Timestamps): Document time-stamp-time-zone.
11390 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
11392         Make piping to subprocesses more robust on MS-Windows
11394         * src/w32.c (sys_write): Don't write to a pipe more stuff than its
11395         buffer can hold.  Don't return -1 if something has been written to
11396         the pipe.  Zero out 'errno' before calling '_write', to avoid
11397         returning a stale value.  (Bug#22344)
11398         * src/w32proc.c (syms_of_ntproc) <w32-pipe-buffer-size>: New variable.
11399         * src/w32.c (pipe2): Use it to request a user-defined size for the
11400         pipe being created.
11402         * etc/NEWS: Mention 'w32-pipe-buffer-size'.
11404         * doc/emacs/msdos.texi (Windows Processes): Document
11405         'w32-pipe-buffer-size'.
11407 2016-01-11  Dmitry Gutov  <dgutov@yandex.ru>
11409         test/automated/vc-hg.el: Support out-of-tree build
11411         * test/automated/vc-hg.el
11412         (vc-hg-annotate-extract-revision-at-line-with-filename)
11413         (vc-hg-annotate-extract-revision-at-line-with-both):
11414         Don't refer to source-directory.
11415         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00755.html
11417 2016-01-11  Michael Albinus  <michael.albinus@gmx.de>
11419         Minor change in tramp-tests.el
11421         * test/automated/tramp-tests.el (tramp-test29-vc-registered):
11422         Use `dired-uncache' instead of a Tramp internal function.
11424 2016-01-11  Peter Feigl  <peter.feigl@nexoid.at>
11426         * etc/HELLO: Add Armenian and Mongolian greetings.
11428         (Bug#22346)
11430 2016-01-11  Alan Mackenzie  <acm@muc.de>
11432         Java Mode: Fontify identifiers in the presence of annotations.
11434         * lisp/progmodes/cc-engine.el (c-forward-annotation): Tidy up the coding:
11435         Don't move point when the defun fails.
11436         (c-forward-decl-or-cast-1): Correct a usage of match data.
11438         * lisp/progmodes/cc-fonts.el (c-font-lock-maybe-decl-faces): Remove.
11439         (c-font-lock-declarations): Use the new c-maybe-decl-faces in place of the
11440         removed variable.
11442         * lisp/progmodes/cc-langs.el (c-maybe-decl-faces): New language variable.
11444 2016-01-11  Eli Zaretskii  <eliz@gnu.org>
11446         Avoid an infloop when we run out of memory
11448         * src/alloc.c (garbage_collect_1): Don't bother saving and
11449         restoring the echo-area message if we are GC'ing after running out
11450         of memory.  This avoids an infloop due to repeated attempts to
11451         allocate memory for the cons cell needed to save the message,
11452         which signals the memory-full error, which attempts to save the
11453         echo-area message, which signals memory-full again, etc.
11455 2016-01-11  Eli Zaretskii  <eliz@gnu.org>
11457         Avoid unnecessary failures of auto-saving after fatal error
11459         * src/w32.c (map_w32_filename): Avoid non-trivial system calls for
11460         the benefit of FAT volumes if we are called as part of shutting
11461         down due to a fatal error, which probably means we are trying to
11462         auto-save the session.
11463         * src/lread.c (check_obarray): Don't bother making the obarray
11464         valid if we are shutting down due to a fatal error.  This avoids
11465         interfering with auto-saving the crashed session.
11467 2016-01-11  Paul Eggert  <eggert@cs.ucla.edu>
11469         Simplify HAVE_MODULES use in mark_maybe_pointer
11471         * src/alloc.c (HAVE_MODULES): Now a constant 0 if not defined,
11472         so that later code can use 'if' rather than '#ifdef'.
11473         (mark_maybe_pointer): Simplify based on HAVE_MODULES now
11474         always working.
11476 2016-01-11  Paul Eggert  <eggert@cs.ucla.edu>
11478         Revert attempt to use 'noexcept' in typedef
11480         This use of 'noexcept' runs afoul of the C++11 standard.
11481         Problem reported by Philipp Stephani in:
11482         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00706.html
11483         * src/emacs-module.c (emacs_finalizer_function):
11484         Move this typedef here ...
11485         * src/emacs-module.h: ... from here, and use only the C
11486         version of the typedef.  The typedef is now private since it
11487         is never used in the .h file now and anyway it seemed to be
11488         causing more confusion than it cured.
11489         (make_user_ptr, get_user_finalizer, set_user_finalizer):
11490         Open-code the type instead.
11492 2016-01-10  Eli Zaretskii  <eliz@gnu.org>
11494         Update documentation of 'indirect-function'
11496         * doc/lispref/eval.texi (Function Indirection): Update the
11497         documentation of 'indirect-function'.
11499 2016-01-10  Eli Zaretskii  <eliz@gnu.org>
11501         Update documentation for obsoleting 'syntax-begin-function'
11503         * doc/lispref/syntax.texi (Position Parse): Undocument
11504         'syntax-begin-function' that is now obsolete.
11506 2016-01-10  Eli Zaretskii  <eliz@gnu.org>
11508         Document new features if Eshell
11510         * doc/misc/eshell.texi (Input/Output): Document the new
11511         '#<bufname>' syntax.
11512         (Input/Output): Document 'eshell-destroy-buffer-when-process-dies'.
11513         Disable "Key Index" generation, as there are no @kindex entries in
11514         this manual.
11516 2016-01-10  Michael Albinus  <michael.albinus@gmx.de>
11518         Handle too long commands in Tramp
11520         * lisp/net/tramp-sh.el (tramp-sh-handle-make-symbolic-link)
11521         (tramp-do-file-attributes-with-ls): Send sequence of commands, in
11522         order to not exceed shell command line limit.
11524         * test/automated/tramp-tests.el (tramp--test-darwin-p): Remove.
11525         (tramp--test-utf8): Include Arabic file name, again.
11527 2016-01-10  Paul Eggert  <eggert@cs.ucla.edu>
11529         * .gitattributes: *.cur and *.pif are binary files too.
11531 2016-01-10  Stefan Monnier  <monnier@iro.umontreal.ca>
11533         * src/alloc.c (mark_maybe_pointer): HAVE_MODULES may be undefined
11535 2016-01-10  Stefan Monnier  <monnier@iro.umontreal.ca>
11537         * lisp/progmodes/sh-script.el (sh-smie-sh-rules): Improve indentation inside $(...)
11539         * lisp/progmodes/sh-script.el (sh-smie-sh-rules): Improve indentation
11540         within $(...).
11541         * test/indent/shell.sh: Add corresponding test.
11543 2016-01-10  Stefan Monnier  <monnier@iro.umontreal.ca>
11545         * src/alloc.c (mark_maybe_pointer): Also check wide-int's emacs_value
11547         (mark_memory): Simplify loop.  Don't assume a pointer-sized word can be
11548         cast to Lisp_Object.
11550 2016-01-10  Dmitry Gutov  <dgutov@yandex.ru>
11552         Use short date for 'hg annotate', and output the author
11554         * lisp/vc/vc-hg.el (vc-hg-annotate-command):
11555         Change '-d' to '-dq'.  (Bug#21805)
11556         (vc-hg-annotate-switches): Default to "-u" "--follow".
11557         (vc-hg-annotate-re): Update to recognize the short date format
11558         and the optional username.
11559         (vc-hg-annotate-time)
11560         (vc-hg-annotate-extract-revision-at-line): Update accordingly.
11562         * test/automated/vc-hg.el: New file.
11564 2016-01-10  Paul Eggert  <eggert@cs.ucla.edu>
11566         Spelling fix
11568 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
11570         Document user-level functions in project.el
11572         * lisp/progmodes/project.el (project-find-file)
11573         (project-or-external-find-file): Add doc strings.
11575 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
11577         Document the user-level features of the Xref package
11579         * doc/emacs/maintaining.texi (Maintaining): Add a list of
11580         described features.
11581         (Xref): New section, made out of thoroughly rewritten "Tags"
11582         section.
11583         (Find Identifiers, Looking Up Identifiers, Xref Commands)
11584         (Identifier Search, List Identifiers): New subsections,
11585         incorporating the old tags commands and the new xref commands.
11586         (Tags Tables, Tag Syntax, Create Tags Table, Etags Regexps):
11587         Section and subsections demoted to a lower level.
11588         * doc/emacs/search.texi (Search):
11589         * doc/emacs/windows.texi (Pop Up Window):
11590         * doc/emacs/frames.texi (Creating Frames):
11591         * doc/emacs/programs.texi (Imenu, Symbol Completion):
11592         * doc/emacs/building.texi (Grep Searching):
11593         * doc/emacs/dired.texi (Operating on Files):
11594         * doc/emacs/glossary.texi (Glossary): All references to tags changed.
11596 2016-01-09  Stefan Monnier  <monnier@iro.umontreal.ca>
11598         * doc/lispref/loading.texi: Add `define-type' entry for load-history
11600         * doc/lispref/loading.texi (Where Defined): Remove incorrect
11601         cl-defmethod description, and add missing define-type entry.
11603 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
11605         Improve doc strings and prompts in xref.el
11607         * lisp/progmodes/xref.el (xref-backend-functions)
11608         (xref-find-definitions): Doc fixes.
11609         (xref-query-replace): Doc fix.  Improve prompts for arguments.
11611 2016-01-09  Alan Mackenzie  <acm@muc.de>
11613         Allow the use of `font-lock-extend-region-multiline' in CC Mode.
11615         * lisp/progmodes/cc-mode.el (c-font-lock-init): Remove
11616         `font-lock-extend-regions-wholelines' from
11617         `font-lock-extend-region-functions' rather than setting the latter to
11618         nil.
11620 2016-01-09  Michael Albinus  <michael.albinus@gmx.de>
11622         Fix coding system for Tramp on OS X.
11624         * lisp/net/tramp-compat.el: Require ucs-normalize.
11626         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
11627         Set coding system to `utf-8-hfs' for Mac OS X.
11629         * test/automated/tramp-tests.el (tramp-test29-vc-registered):
11630         Flush directory properties when needed.
11631         (tramp--test-utf8): Include Chinese file name, again.
11633 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
11635         Update 'load-history' docs
11637         * doc/lispref/loading.texi (Where Defined): Update the list of
11638         forms in 'load-history' by adding the forms created for the
11639         'cl-generic' generics.  (Bug#21422)
11641 2016-01-09  Paul Eggert  <eggert@cs.ucla.edu>
11643         Fix (error ...) error
11645         Problem reported by Glenn Morris in:
11646         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00561.html
11647         * lisp/vc/add-log.el (change-log-goto-source): Fix typos
11648         introduced in my Aug 28 change, where I got confused by the
11649         two meanings of (error ...).
11651 2016-01-08  Alan Mackenzie  <acm@muc.de>
11653         Correctly analyze brace arguments in templated C++ function declarations.
11655         * lisp/progmodes/cc-defs.el (c-go-list-forward, c-go-list-backward): add
11656         POS and LIMIT parameters, like the other c-go-list-* functions have.
11658         * lisp/progmodes/cc-engine.el (c-restore-<>-properties): Check backwards
11659         for a ?\( rather than a ?<.  (c-looking-at-inexpr-block): Handle names
11660         followed by template specifiers.
11662 2016-01-08  Glenn Morris  <rgm@gnu.org>
11664         * lisp/cedet/mode-local.el (describe-function-orig-buffer): Declare.
11666         * lisp/ffap.el (ffap-latex-mode): Avoid free variable.
11668 2016-01-08  Mark Oteiza  <mvoteiza@udel.edu>
11670         * lisp/play/dunnet.el (dun-fix-screen): Avoid `end-of-buffer`.
11672 2016-01-08  Alan Mackenzie  <acm@muc.de>
11674         Respect fontification region calculated by major mode.  Fixes bug #22316.
11676         * lisp/font-lock.el (font-lock-extend-jit-lock-region-after-change): when a
11677         fontification region has been calculated by a function on
11678         font-lock-extend-after-change-region-function use this region rather than
11679         changing the end position to somewhere else.
11681 2016-01-08  Eli Zaretskii  <eliz@gnu.org>
11683         Improve documentation of Delete Selection mode
11685         * lisp/delsel.el (delete-selection-mode)
11686         (delete-selection-helper): Update and expand the doc strings.
11687         (Bug#22296)
11689         * doc/emacs/mark.texi (Using Region): Document the behavior of
11690         delete commands in Delete Selection mode.  (Bug#22296)
11692         * doc/lispref/markers.texi (The Mark): Document how to add the
11693         support for Delete Selection mode to Lisp programs. (Bug#22296)
11695 2016-01-08  Dmitry Gutov  <dgutov@yandex.ru>
11697         Fix two project-find-file issues
11699         * lisp/progmodes/project.el (project--value-in-dir):
11700         Temporarily set enable-local-variables to :all.
11701         (project-find-file, project-or-external-find-file):
11702         All autoloads.
11703         (project--find-file-in): Require xref.
11705 2016-01-08  Eli Zaretskii  <eliz@gnu.org>
11707         Clarify doc string of 'dired-current-directory'
11709         * lisp/dired.el (dired-current-directory): Doc fix: clarify that
11710         the return value might not end in a slash when called with the
11711         optional argument non-nil.  (Bug#6273)
11713 2016-01-08  Eli Zaretskii  <eliz@gnu.org>
11715         Use the face of preceding text for displaying the ellipsis
11717         * src/xdisp.c (setup_for_ellipsis): Use the face of the preceding
11718         text in it->saved_face_id for displaying the ellipsis, and ignore
11719         the face, if any, of the invisible text.  (Bug#22320)
11721 2016-01-08  Michael Albinus  <michael.albinus@gmx.de>
11723         Suppress Chinese file name test for OSX in tramp-tests.el
11725         * test/automated/tramp-tests.el (tramp--test-utf8):
11726         Remove instrumentation.  Suppress Chinese file name test for OSX.
11728 2016-01-08  Glenn Morris  <rgm@gnu.org>
11730         * admin/admin.el (set-version): Also handle the NEWS file.
11732 2016-01-08  Dmitry Gutov  <dgutov@yandex.ru>
11734         apropos-library: Skip obvious duplicates; don't error on generics
11736         * lisp/apropos.el (apropos-library): Skip "was an autoload"
11737         entries, to avoid obvious duplicates.  For each cl-defmethod
11738         entry, take just its function symbol (bug#21422).
11740 2016-01-07  Dmitry Gutov  <dgutov@yandex.ru>
11742         Add project-find-file and project-or-external-find-file
11744         * lisp/minibuffer.el (completion-category-defaults):
11745         Add `project-file' category.
11747         * lisp/progmodes/project.el (project-find-file)
11748         (project-or-external-find-file): New commands.
11749         (project--find-file-in): New private function.
11751         * lisp/progmodes/xref.el (xref-collect-matches): Use
11752         `expand-file-name' on DIR, to expand the tildes.
11753         (xref--find-ignores-arguments): Extract from
11754         `xref--rgrep-command'.
11756 2016-01-07  Leo Liu  <sdl.web@gmail.com>
11758         Add defvar-local to lisp-imenu-generic-expression
11760         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression): Add
11761           defvar-local.
11763 2016-01-07  Leo Liu  <sdl.web@gmail.com>
11765         Revert commit b1e3d14845517bfa9fa5d6d3840f3ab3160306fd
11767         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
11768           Don't declare (indent 1).
11770 2016-01-07  Glenn Morris  <rgm@gnu.org>
11772         * lisp/emacs-lisp/autoload.el (autoload-find-destination): Doc fix.
11774 2016-01-07  Glenn Morris  <rgm@gnu.org>
11776         * lisp/emacs-lisp/autoload.el (autoload-find-destination):
11778         Avoid specifying the length of a time object (it has not been "2"
11779         for some time).
11781 2016-01-06  Andreas Schwab  <schwab@linux-m68k.org>
11783         Properly encode/decode base64Binary data in SOAP
11785                 * lisp/net/soap-client.el (soap-encode-xs-basic-type): Encode
11786                 base64Binary value as utf-8.
11787                 (soap-decode-xs-basic-type): Decode base64Binary value as utf-8.
11789 2016-01-06  Eli Zaretskii  <eliz@gnu.org>
11791         Obey coding-system-for-write when writing stdout/stderr in batch
11793         * src/print.c (printchar_to_stream):
11794         * src/xdisp.c (message_to_stderr): If coding-system-for-write has
11795         a non-nil value, use it to encode output in preference to
11796         locale-coding-system.  See the discussions in
11797         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00048.html
11798         for the details.
11800         * doc/lispref/os.texi (Terminal Output): Document how to send
11801         non-ASCII text via 'send-string-to-terminal'.
11802         (Batch Mode): Document how text written to standard streams is
11803         encoded.  Fix inaccuracy regarding which output streams are used
11804         by output functions in batch mode.
11806 2016-01-06  Xue Fuqiao  <xfq.free@gmail.com>
11808         * doc/misc/efaq.texi (Packages that do not come with Emacs):
11809         Update the URI of MELPA and marmalade-repo.  Reported by CHENG Gao
11810         <chenggao@royau.me> in
11811         https://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00390.html.
11813 2016-01-06  Maksim Golubev  <maksim.golubev72@gmail.com>  (tiny change)
11815         * lisp/progmodes/opascal.el (opascal-mode-syntax-table):
11817         Fix backslash.  (Bug#22224)
11819 2016-01-06  Federico Beffa  <beffa@ieee.org>  (tiny change)
11821         * lisp/progmodes/xscheme.el (xscheme-prompt-for-expression-exit):
11823         Make it actually work.  (Bug#22265)
11825 2016-01-05  Alan Mackenzie  <acm@muc.de>
11827         Remove function wrongly on AWK Mode value of context fontification hook.
11829         * lisp/progmodes/cc-langs.el (c-before-context-fontification-functions):
11830         swap order of entries so that awk's entry isn't superseded by the default.
11832         * lisp/progmodes/cc-mode.el (c-before-context-fl-expand-region): Correct
11833         to handle nil value of c-before-context-fontification-functions.
11835 2016-01-05  Paul Eggert  <eggert@cs.ucla.edu>
11837         * src/buffer.c: Stick with ASCII in doc string.
11839 2016-01-05  Paul Eggert  <eggert@cs.ucla.edu>
11841         Reword transient-mark-mode doc string
11843         * src/buffer.c (syms_of_buffer): Reword doc string to avoid confusion.
11844         The value 'lambda (literally) can be interpreted as (quote lambda),
11845         which is not intended here; we want just the lambda symbol.
11847 2016-01-05  Eli Zaretskii  <eliz@gnu.org>
11849         Update doc string of 'selective-display'
11851         * src/buffer.c (syms_of_buffer) <selective-display>: Say that
11852         using it with the value of 't' is obsolete.  (Bug#1092)
11854 2016-01-05  Alan Mackenzie  <acm@muc.de>
11856         Make C++ buffers writeable when writing their initial text properties.
11858         This is a correction to yesterday's CC Mode patch.
11860         * lisp/progmodes/cc-engine.el (c-before-change-check-<>-operators): Put
11861         c-save-buffer-state around the function rather than a mere `let'.
11863 2016-01-05  Michael Albinus  <michael.albinus@gmx.de>
11865         Additional changes for "make check-expensive"
11867         * CONTRIBUTE : Encourage use of ":tags '(:expensive-test)".
11868         Explain make target `check-expensive'.
11870         * etc/NEWS: Mention new make target `check-expensive'.
11872         * test/automated/Makefile.in (check-doit): New target.
11873         (check, check-expensive): Use it.
11875 2016-01-04  Alan Mackenzie  <acm@muc.de>
11877         Apply text properties for <, > in new after-change function (C++ Java Modes).
11879         These are category/syntax-table properties to give < and > paren syntax.
11880         Also apply certain `c-type' text properties to the insides of <..> constructs
11881         to ensure that identifiers contained by them get fontified.  This patch fixes
11882         bug #681.
11884         * lisp/progmodes/cc-cmds.el (c-electric-lt-gt): Reformulate due to new
11885         after-change action.
11887         * lisp/progmodes/cc-engine.el (c-before-change-check-<>-operators): Expand
11888         change region to include <s and >s which might not be already marked as
11889         parens, rather than just when paren text properties are removed.
11890         (c-restore-<>-properties): New after-change function, which applies text
11891         properties marking < and > with paren syntax.
11893         * lisp/progmodes/cc-fonts.el (c-font-lock-declarations): Ensure `c-type'
11894         properties are applied to the interiors of <...> constructs, to ensure
11895         fontification of identifiers there.
11897         * lisp/progmodes/cc-langs.el (c-before-font-lock-functions): Add
11898         c-restore-<>-properties to this list for C++ and Java.
11900         * lisp/progmodes/cc-mode.el (c-common-init): When invoking
11901         c-before-font-lock-functions, exclude c-restore-<>-properties from the
11902         functions invoked.
11903         (c-before-change): Initialize c-new-BEG/END here (rather than c-after-change)
11904         to allow modification by before-change functions.
11905         (c-after-change): Amend c-new-END here, rather than initializing it and
11906         c-new-BEG.
11908 2016-01-04  Michael Albinus  <michael.albinus@gmx.de>
11910         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
11912 2016-01-04  Michael Albinus  <michael.albinus@gmx.de>
11914         Introduce check-expensive tests.
11916         * Makefile.in (check-expensive):
11917         * test/automated/Makefile.in (check-expensive): New target.
11919         * test/automated/auto-revert-tests.el
11920         (auto-revert-test01-auto-revert-several-files):
11921         * test/automated/file-notify-tests.el (file-notify--deftest-remote):
11922         * test/automated/tramp-tests.el (tramp-test26-process-file)
11923         (tramp-test27-start-file-process, tramp-test28-shell-command)
11924         (tramp-test29-vc-registered)
11925         (tramp-test31-special-characters-with-stat)
11926         (tramp-test31-special-characters-with-perl)
11927         (tramp-test31-special-characters-with-ls)
11928         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
11929         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
11930         (tramp-test35-unload): Tag the tests as :expensive-test.
11932 2016-01-04  Lars Magne Ingebrigtsen  <larsi@gnus.org>
11934         shr-tag-video bug fix
11936         * shr.el (shr-tag-video): Protect against the `poster' being
11937         empty.
11939 2016-01-04  Michael Albinus  <michael.albinus@gmx.de>
11941         Minor fixes in tramp-tests.el
11943         * test/automated/tramp-tests.el (tramp-test26-process-file):
11944         Move point properly.
11945         (tramp-test29-vc-registered): Work with relative file names.
11947 2016-01-04  Eli Zaretskii  <eliz@gnu.org>
11949         Ensure redisplay when 'truncate-lines' is set
11951         * lisp/frame.el (redisplay--variables): Add 'truncate-lines'.
11952         (Bug#22303)
11954 2016-01-04  Eli Zaretskii  <eliz@gnu.org>
11956         Fix a doc string of 'transient-mark-mode'
11958         * src/buffer.c (syms_of_buffer) <transient-mark-mode>: Prevent
11959         "lambda" in doc string from becoming a link to lambda expressions.
11961 2016-01-04  Eli Zaretskii  <eliz@gnu.org>
11963         MS-Windows followup to latest gnulib update
11965         * nt/gnulib.mk (EXTRA_DIST): Add ignore-value.h.
11967 2016-01-04  Paul Eggert  <eggert@cs.ucla.edu>
11969         Spelling fix
11971 2016-01-04  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
11973         Do secure signed Bcc handling
11975         * lisp/gnus/message.el (message-send): Do secure signed Bcc handling
11976         (bug#18718).
11978 2016-01-04  Paul Eggert  <eggert@cs.ucla.edu>
11980         Avoid stdio in SIGINT handler
11982         * admin/merge-gnulib (GNULIB_MODULES): Add ignore-value.
11983         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
11984         * lib/ignore-value.h: New file, from gnulib.
11985         * src/keyboard.c: Include it.
11986         (write_stdout, read_stdin): New functions.
11987         (handle_interrupt): Use them instead of printf and getchar,
11988         and avoid fflush when handling signals.
11990 2016-01-04  Paul Eggert  <eggert@cs.ucla.edu>
11992         * doc/misc/texinfo.tex: Revert unwanted copyright change.
11994 2016-01-03  Artur Malabarba  <bruce.connor.am@gmail.com>
11996         * lisp/align.el (align): Simplify a lambda
11998         * lisp/align.el (align): Fix arg order in call to `align-region'
12000 2016-01-03  Eli Zaretskii  <eliz@gnu.org>
12002         Fix compilation next-error in buffers with selective-display
12004         * lisp/progmodes/compile.el (compilation-beginning-of-line): New
12005         function.
12006         (compilation-internal-error-properties)
12007         (compilation-next-error-function, compilation-set-window): Use
12008         it.  (Bug#1092)
12010 2016-01-03  Lars Magne Ingebrigtsen  <larsi@gnus.org>
12012         * lisp/net/nsm.el (nsm-check-protocol): Fix typo in the message.
12014 2016-01-03  Lars Magne Ingebrigtsen  <larsi@gnus.org>
12016         Add SHA1 warnings for high network security settings
12018         * lisp/net/nsm.el (nsm-check-protocol): When using high security, warn
12019         about SHA1 certificates, which are now believed to be open to
12020         spoofing.
12022 2016-01-03  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
12024         Refactor mml-smime.el, mml1991.el, mml2015.el
12026         (Maybe this is the last merge from Gnus git to Emacs git)
12028         Cf. discussion on ding mailing list, messages in
12029         <http://thread.gmane.org/gmane.emacs.gnus.general/86228>.
12030         Common code from the three files mml-smime.el, mml1991.el, and
12031         mml2015.el is moved to mml-sec.el.  Auxiliary functions are added
12032         to gnus-util.el.
12034         The code is supported by test cases with necessary test keys.
12036         Documentation in message.texi is updated.
12038         * doc/misc/message.texi (Security, Using S/MIME):
12039         Update for refactoring mml-smime.el, mml1991.el, mml2015.el.
12040         (Using OpenPGP): Rename from "Using PGP/MIME"; update contents.
12041         (Passphrase caching, Encrypt-to-self, Bcc Warning): New sections.
12043         * lisp/gnus/gnus-util.el (gnus-test-list, gnus-subsetp, gnus-setdiff):
12044         New functions.
12046         * lisp/gnus/mml-sec.el: Require gnus-util and epg.
12047         (epa--select-keys): Autoload.
12048         (mml-signencrypt-style-alist, mml-secure-cache-passphrase): Doc fix.
12049         (mml-secure-openpgp-signers): New user option;
12050         make mml1991-signers and mml2015-signers obsolete aliases to it.
12051         (mml-secure-smime-signers): New user option;
12052         make mml-smime-signers an obsolete alias to it.
12053         (mml-secure-openpgp-encrypt-to-self): New user option;
12054         make mml1991-encrypt-to-self and mml2015-encrypt-to-self obsolete
12055         aliases to it.
12056         (mml-secure-smime-encrypt-to-self): New user option;
12057         make mml-smime-encrypt-to-self an obsolete alias to it.
12058         (mml-secure-openpgp-sign-with-sender): New user option;
12059         make mml2015-sign-with-sender an obsolete alias to it.
12060         (mml-secure-smime-sign-with-sender): New user option;
12061         make mml-smime-sign-with-sender an obsolete alias to it.
12062         (mml-secure-openpgp-always-trust): New user option;
12063         make mml2015-always-trust an obsolete alias to it.
12064         (mml-secure-fail-when-key-problem, mml-secure-key-preferences):
12065         New user options.
12066         (mml-secure-cust-usage-lookup, mml-secure-cust-fpr-lookup)
12067         (mml-secure-cust-record-keys, mml-secure-cust-remove-keys)
12068         (mml-secure-add-secret-key-id, mml-secure-clear-secret-key-id-list)
12069         (mml-secure-cache-passphrase-p, mml-secure-cache-expiry-interval)
12070         (mml-secure-passphrase-callback, mml-secure-check-user-id)
12071         (mml-secure-secret-key-exists-p, mml-secure-check-sub-key)
12072         (mml-secure-find-usable-keys, mml-secure-select-preferred-keys)
12073         (mml-secure-fingerprint, mml-secure-filter-keys)
12074         (mml-secure-normalize-cust-name, mml-secure-select-keys)
12075         (mml-secure-select-keys-1, mml-secure-signer-names, mml-secure-signers)
12076         (mml-secure-self-recipients, mml-secure-recipients)
12077         (mml-secure-epg-encrypt, mml-secure-epg-sign): New functions.
12079         * lisp/gnus/mml-smime.el: Require epg;
12080         refactor declaration and autoloading of epg functions.
12081         (mml-smime-use): Doc fix.
12082         (mml-smime-cache-passphrase, mml-smime-passphrase-cache-expiry):
12083         Obsolete.
12084         (mml-smime-get-dns-cert, mml-smime-get-ldap-cert):
12085         Use format instead of gnus-format-message.
12086         (mml-smime-epg-secret-key-id-list): Remove variable.
12087         (mml-smime-epg-passphrase-callback, mml-smime-epg-find-usable-key)
12088         (mml-smime-epg-find-usable-secret-key): Remove functions.
12089         (mml-smime-epg-sign, mml-smime-epg-encrypt): Refactor.
12091         * lisp/gnus/mml1991.el (mml1991-cache-passphrase)
12092         (mml1991-passphrase-cache-expiry): Obsolete.
12093         (mml1991-epg-secret-key-id-list): Remove variable.
12094         (mml1991-epg-passphrase-callback, mml1991-epg-find-usable-key)
12095         (mml1991-epg-find-usable-secret-key): Remove functions.
12096         (mml1991-epg-sign, mml1991-epg-encrypt): Refactor.
12098         * lisp/gnus/mml2015.el (mml2015-cache-passphrase)
12099         (mml2015-passphrase-cache-expiry): Obsolete.
12100         (mml2015-epg-secret-key-id-list): Remove variable.
12101         (mml2015-epg-passphrase-callback, mml2015-epg-check-user-id)
12102         (mml2015-epg-check-sub-key, mml2015-epg-find-usable-key)
12103         (mml2015-epg-find-usable-secret-key): Remove functions.
12104         (mml2015-epg-decrypt, mml2015-epg-clear-decrypt, mml2015-epg-sign)
12105         (mml2015-epg-encrypt): Refactor.
12107 2016-01-02  Glenn Morris  <rgm@gnu.org>
12109         * lisp/progmodes/fortran.el (fortran-make-syntax-propertize-function):
12111         Explicitly ignore case.  (Bug#22262)
12113 2016-01-02  Stefan Monnier  <monnier@iro.umontreal.ca>
12115         (semantic-symref-derive-find-filepatterns): Return a list
12117         * lisp/cedet/semantic/symref/grep.el
12118         (semantic-symref-derive-find-filepatterns): Return a list.
12119         (semantic-symref-perform-search): Quote the result here once and for all.
12121 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
12123         Fix xref-find-references on MS-Windows
12125         * lisp/cedet/semantic/symref/grep.el
12126         (semantic-symref-derive-find-filepatterns): Use
12127         'shell-quote-argument' instead of manually quoting in a way that
12128         only works with Posix shells.  (Bug#22289)
12130 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
12132         Document new features of tildify-mode
12134         * lisp/textmodes/tildify.el (tildify-foreach-ignore-environments)
12135         (tildify-mode): Spelling fixes in doc strings.
12137         * etc/NEWS: Reformat the tildify-mode entry.
12139 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
12141         Document new features of Whitespace mode
12143         * doc/emacs/display.texi (Useless Whitespace): Document
12144         'whitespace-toggle-options' and the new 'big-indent' style.
12145         Document 'whitespace-big-indent-regexp'.  Document the Global
12146         Whitespace mode.
12148 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
12150         Improve documentation of new Hide-IfDef features
12152         * etc/NEWS: Expand and reword Hide-IfDef section.
12154 2016-01-02  Leo Liu  <sdl.web@gmail.com>
12156         Fix regression in font-locking cl-assert and cl-check-type
12158         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2): Fix
12159           el-errs-re.
12161 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
12163         Spelling and grammar fixes
12165 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
12167         Fix copyright years by hand
12169         These are dates that admin/update-copyright did not update, or
12170         updated incorrectly.
12172 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
12174         Update copyright year to 2016
12176         Run admin/update-copyright.
12178 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
12180         Merge from gnulib
12182         This mostly just updates copyright dates of gnulib files.
12183         It also updates to the latest version of texinfo.tex.
12185 2015-12-31  Mark Oteiza  <mvoteiza@udel.edu>
12187         lisp/emacs-lisp/chart.el (chart-new-buffer): Move to silence byte compiler.
12189 2015-12-31  Mark Oteiza  <mvoteiza@udel.edu>
12191         Port chart.el methods to cl-generic.
12193         cl-call-next-method cannot be used inside EIEIO's defmethod.
12194         * lisp/emacs-lisp/chart.el: Require cl-generic at compile time.
12195         * lisp/emacs-lisp/chart.el (initialize-instance, chart-draw):
12196         (chart-draw-title, chart-size-in-dir, chart-draw-axis):
12197         (chart-axis-draw, chart-translate-xpos, chart-translate-ypos):
12198         (chart-translate-namezone, chart-draw-data, chart-add-sequence):
12199         (chart-trim, chart-sort): Use cl-defmethod instead of defmethod.
12201 2015-12-31  Brian Burns  <bburns.km@gmail.com>
12203         Add nt/INSTALL.W64 build instructions
12205         * nt/INSTALL.W64: New file.
12206         * nt/INSTALL: Point to INSTALL.W64 for 64-bit build instructions.
12208 2015-12-31  Joakim Jalap  <joakim.jalap@fastmail.com>
12210         Add new input method 'programmer-dvorak'
12212         * lisp/leim/quail/programmer-dvorak.el ("programmer-dvorak"): New
12213         input method.
12215         * etc/NEWS: Mention it.
12217 2015-12-31  Eli Zaretskii  <eliz@gnu.org>
12219         Allow to invoke original M-TAB binding in 'flyspell-prog-mode'
12221         * lisp/textmodes/flyspell.el (flyspell-prog-mode): Record the
12222         original M-TAB binding in a buffer-local variable.
12223         (flyspell-auto-correct-word): Invoke the original binding of M-TAB
12224         if that is recorded, when point is in a place where flyspell
12225         should not be active (e.g., because the user turned on
12226         'flyspell-prog-mode').  (Bug#18533)
12228 2015-12-31  Eli Zaretskii  <eliz@gnu.org>
12230         Fix EWW rendering of long RTL lines
12232         * lisp/net/shr.el (shr-insert-document): Undo any previous hscroll
12233         of the selected window before filling its lines.  (Bug#22250)
12235 2015-12-31  Vincent Belaïche  <vincentb1@users.sourceforge.net>
12237         fix  bug#21054
12239         * lisp/ses.el (ses-check-curcell): Call `ses-set-curcell' unconditionally
12241 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12243         Clean up cairo printing code
12245         * src/gtkutil.c (xg_get_page_setup): Use listn.
12246         * src/xfns.c (Fx_export_frames, Fx_print_frames_dialog): Doc fix.  Use
12247         decode_window_system_frame and FRAME_VISIBLE_P.
12248         (Fx_print_frames_dialog): Use redisplay_preserve_echo_area instead
12249         of Fdisplay.
12250         * src/xterm.c (x_cr_export_frames): Use redisplay_preserve_echo_area
12251         instead of Fdisplay.  Temporarily unblock_input around QUIT.
12253 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12255         Move variables to inner loop, preparing for Mac port merge
12257         * src/keyboard.c (command_loop_1): Move variables `cmd',
12258         `keybuf', and `i' to inner loop.
12260 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12262         Add handle_user_signal_hook
12264         * src/keyboard.h (handle_user_signal_hook): New declaration.
12265         * src/keyboard.c (handle_user_signal_hook): New variable.
12266         (handle_user_signal): Call it.
12268 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12270         Avoid writing to purespace
12272         * src/alloc.c (Fmake_string): Don't write to empty string contents.
12273         (allocate_vector): Don't write to empty vector size.
12274         * src/character.h (CHECK_CHARACTER_CAR, CHECK_CHARACTER_CDR):
12275         Don't call unnecessary XSETCAR or XSETCDR.
12276         * src/lisp.h (STRING_SET_UNIBYTE, STRING_SET_MULTIBYTE): Don't
12277         write to empty string size_byte.
12279 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12281         Remove unused variable
12283         * lisp/international/mule-cmds.el: Remove unused variable
12284         `mac-system-coding-system'.
12286 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12288         * configure.ac: Find libxml2 headers in Xcode SDK dir on Darwin.
12290 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12292         Use posix_openpt instead of openpty on Darwin
12294         * configure.ac (PTY_ITERATION, FIRST_PTY_LETTER, PTY_OPEN)
12295         (PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF): Remove
12296         Darwin-specific definitions.  Use posix_openpt instead.
12298 2015-12-30  Shakthi Kannan  <shakthimaan@gmail.com>
12300         Document support for ':documentation' in Lisp mode
12302         * lisp/emacs-lisp/lisp-mode.el (lisp-string-in-doc-position-p)
12303         (lisp-string-after-doc-keyword-p)
12304         (lisp-font-lock-syntactic-face-function): Add doc strings.
12306 2015-12-30  Shakthi Kannan  <shakthimaan@gmail.com>
12308         Document new features of TeX mode
12310         * doc/emacs/text.texi (TeX Print): Document
12311         'tex-print-file-extension'.
12312         * doc/emacs/programs.texi (Misc for Programs): Document support
12313         for Prettify Symbols mode in TeX mode.
12315 2015-12-30  Eli Zaretskii  <eliz@gnu.org>
12317         Clarify docs of hscroll in RTL text
12319         * doc/lispref/windows.texi (Horizontal Scrolling): Clarify the
12320         meaning of a window's horizontal scroll amount for RTL paragraphs.
12322 2015-12-30  Eli Zaretskii  <eliz@gnu.org>
12324         Fix rendering of HTML pages that use character composition
12326         * src/indent.c (Fvertical_motion): Fix the case when point starts
12327         in the middle of a composition, as in shr-vertical-motion.
12328         (Bug#22250)
12330 2015-12-30  Eli Zaretskii  <eliz@gnu.org>
12332         Avoid some compiler warnings in w32.c
12334         * src/w32.c (codepage_for_filenames, crlf_to_lf)
12335         (ansi_encode_filename, socket_to_fd, sys_write)
12336         (check_windows_init_file): Avoid compiler warnings about
12337         differences in pointer signedness.
12339 2015-12-30  Dmitry Gutov  <dgutov@yandex.ru>
12341         Undo ill-advised change
12343         * lisp/progmodes/xref.el (xref-collect-matches): Undo
12344         ill-advised change.  The hits come in the order that `find'
12345         produces them in, which isn't alphabetical.
12347 2015-12-30  Dmitry Gutov  <dgutov@yandex.ru>
12349         Unbreak completion in python-mode buffers
12351         * lisp/progmodes/python.el (python-shell-completion-at-point):
12352         Unbreak in python-mode buffers.
12354 2015-12-29  Eli Zaretskii  <eliz@gnu.org>
12356         Fix typos in CC Mode manual
12358         * doc/misc/cc-mode.texi (c-offsets-alist, Style Variables): Fix
12359         typos.  (Bug#22267)
12361 2015-12-29  Eli Zaretskii  <eliz@gnu.org>
12363         Avoid assertion violations in compact_font_cache_entry
12365         * src/alloc.c (compact_font_cache_entry): Don't use VECTORP to
12366         avoid assertion violation in ASIZE.  (Bug#22263)
12368 2015-12-29  Eli Zaretskii  <eliz@gnu.org>
12370         Fix filling text with bidirectional characters in shr.el
12372         * lisp/net/shr.el (shr-insert-document): Bind
12373         bidi-display-reordering to nil while filling lines.  This is
12374         required for when a line includes characters whose bidi
12375         directionality is opposite to the base paragraph direction,
12376         because columns are counted in the logical order.  (Bug#22250)
12378 2015-12-29  Martin Rudalics  <rudalics@gmx.at>
12380         * src/xfns.c (x_create_tip_frame): Process alpha parameter.
12382 2015-12-29  Michael Albinus  <michael.albinus@gmx.de>
12384         Sync with Tramp 2.2.13
12386         * doc/misc/trampver.texi: Change version to "2.2.13.25.1".
12388         * lisp/net/tramp-compat.el (tramp-compat-delete-dups):
12389         Use `tramp-compat-funcall'.
12391         * lisp/net/tramp-gvfs.el (tramp-gvfs-parse-device-names):
12392         Make `split-string' call compatible with older Emacsen.
12394         * lisp/net/trampver.el: Change version to "2.2.13.25.1".
12396 2015-12-29  Lambda Coder  <sjLambda@gmail.com>
12398         * doc/misc/tramp.texi: Editorial revisions to the Tramp manual
12400 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
12402         Mention that tls.el is secure by default, and will fail
12404 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
12406         Make tls.el use trustfiles by default
12408         * lisp/net/tls.el (tls-program): Add a certfile by default (bug#21227).
12409         (open-tls-stream): Insert the trustfile by looking at
12410         `gnutls-trustfiles'.
12412 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
12414         Refactor out gnutls-trustfiles
12416         * lisp/net/gnutls.el (gnutls-trustfiles): Refactor out for reuse by tls.el.
12418 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
12420         Remove --insecure from gnutls-cli invocation
12422         * tls.el (tls-program): Default to using secure TLS
12423         connections (bug#19284).
12425 2015-12-29  Paul Eggert  <eggert@cs.ucla.edu>
12427         Spelling fix
12429 2015-12-29  Paul Eggert  <eggert@cs.ucla.edu>
12431         Port report-emacs-bug to deterministic builds
12433         * lisp/mail/emacsbug.el (report-emacs-bug): Future-proof the
12434         recent "built on" change to deterministic builds where
12435         emacs-build-system will be nil.  See:
12436         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg01369.html
12438 2015-12-29  Jose A. Ortega Ruiz  <jao@gnu.org>  (tiny change)
12440         Fix URL auth error message
12442         * lisp/url/url-http.el (url-http-handle-authentication): Make the error
12443         message more correct (bug#20069).
12445 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
12447         shr link traversal fixup
12449         * shr.el (shr-next-link): Don't bug out on adjacent links.
12451         Backport:
12453         (cherry picked from commit 1efc5f8b09273c359683ce13be95fb5df7a84311)
12455 2015-12-28  Tom Tromey  <tom@tromey.com>
12457         set :safe on css-indent-offset
12459         * lisp/textmodes/css-mode.el (css-indent-offset): Add :safe 'integerp.
12461 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
12463         * eww.el (eww-mode): Remove superfluous bidi reset.
12465 2015-12-28  James Stout  <james.wolf.stout@gmail.com>  (tiny change)
12467         Make chunked encoding trailer detection more compliant
12469         * lisp/url/url-http.el
12470         (url-http-chunked-encoding-after-change-function): Make
12471         trailer detection more compliant (bug#16345).
12473 2015-12-28  Martin Rudalics  <rudalics@gmx.at>
12475         Fix Bug#10873 in `report-emacs-bug'
12477         * lisp/mail/emacsbug.el (report-emacs-bug): If
12478         `report-emacs-bug-no-explanations' is nil, make sure we can show
12479         mail and warnings buffer on this frame (Bug#10873).
12481 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
12483         Always reset the bidi direction
12485         * eww.el (eww-display-html): Always reset the bidi direction
12486         to `left-to-right' (bug#22257).
12488 2015-12-28  Alan Mackenzie  <acm@muc.de>
12490         Allow line comments ending with escaped NL to be continued to the next line.
12492         Use this in C, C++, and Objective C Modes.  Fixes bug#22246
12494         * src/syntax.c (comment-end-can-be-escaped): New buffer local variable.
12495         (forw-comment, back-comment): On encountering an end of comment character,
12496         test whether it is escaped when `comment-end-can-be-escaped' is non-nil.
12498         * doc/lispref/syntax.texi (Control Parsing): Describe
12499         `comment-end-can-be-escaped'.
12501         * etc/NEWS (Lisp Changes): Describe `comment-end-can-be-escaped'.
12503         * lisp/progmodes/cc-langs.el: New c-lang-setvar `comment-end-can-be-escaped'.
12505 2015-12-28  Dmitry Gutov  <dgutov@yandex.ru>
12507         Rename project-library-roots to project-external-roots
12509         * lisp/progmodes/project.el (project-library-roots): Rename to
12510         project-external-roots.
12511         (project-library-roots-function): Rename to
12512         project-vc-external-roots-function.  Only use it in the VC
12513         backend, for now.  Update project-external-roots accordingly.
12514         (project-vc-library-roots): Remove.
12515         (project-or-libraries-find-regexp):
12516         Rename to project-or-external-find-regexp.
12518         * lisp/progmodes/elisp-mode.el (elisp-library-roots):
12519         Rename to elisp-load-path-roots.
12521         * lisp/progmodes/etags.el (etags-library-roots): Remove.  Use
12522         an anonymous function for the default value of
12523         project-vc-external-roots-function.
12525 2015-12-27  Deniz Dogan  <deniz@dogan.se>
12527         Clear erc user list upon disconnection
12529         * lisp/erc/erc-backend.el (erc-process-sentinel): Clear channel user
12530         lists upon disconnection.  This prevents invalid channel
12531         user lists when reconnecting (bug#10947).
12533 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
12535         Don't bug out in erc after waking from sleep
12537         * lisp/erc/erc-backend.el (erc-server-send-ping): If the server has
12538         closed connection, this may already have been detected and
12539         `erc-server-last-received-time' has been set to nil (bug#13608).
12541 2015-12-27  David Edmondson  <dme@dme.org>
12543         Proxy error in erc with multiple clients
12545         * lisp/erc/erc.el (erc-channel-receive-names): Fix errors
12546         generated when multiple IRC clients talk to a single IRC proxy
12547         (bug#19034).
12549         Backport:
12551         (cherry picked from commit 507e98a54d1aa37823c64993d6b59257a82fe8f4)
12553 2015-12-27  Dima Kogan  <dima@secretsauce.net>
12555         Ensure that we don't have several timers in erc
12557         * lisp/erc/erc-backend.el (erc-server-setup-periodical-ping): Checks
12558         for existing timers in the alist before adding new ones.  If a
12559         timer already exists, it is cancelled and
12560         overwritten. (bug#19292).
12562 2015-12-27  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
12564         Fix mml-sec build warnings
12566         * lisp/gnus/mml-sec.el: Fix warnings by adding autoloads
12567         (bug#18718).
12569         Backport:
12571         (cherry picked from commit 3603097f62f5f4aa5451716e9ac380161f6829e2)
12573 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
12575         Don't insert erc logs at the end
12577         * lisp/erc/erc-log.el (erc-log-setup-logging): Insert the previous log
12578         at the start of the buffer, not at the end (bug#20496).
12580 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
12582         (eww-setup-buffer): Restore left-to-right defaults
12584         * eww.el (eww-setup-buffer): Restore left-to-right defaults.
12586         Backport:
12588         (cherry picked from commit 96c874b96b617c124d500a94de761a61f2a08685)
12590 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
12592         Don't join erc channels doubly
12594         * lisp/erc/erc-join.el (erc-autojoin-channels): Don't join channels
12595         more than once (if you have several nicks) (bug#20695).
12597 2015-12-27  Eli Zaretskii  <eliz@gnu.org>
12599         Avoid leaving "ghost" of mouse pointer on MS-Windows
12601         * src/w32term.c (frame_set_mouse_pixel_position):
12602         * src/w32fns.c (Fw32_mouse_absolute_pixel_position): Momentarily
12603         disable "mouse trails" when moving the mouse pointer.  (Bug#22247)
12604         * src/w32term.c (frame_set_mouse_pixel_position): Include
12605         w32common.h.
12607 2015-12-27  Krzysztof Jurewicz  <krzysztof.jurewicz@gmail.com>  (tiny change)
12609         Fix auth source lookups from erc with port numbers
12611         * lisp/erc/erc.el (erc-open): `auth-source' wants strings, not port
12612         numbers (bug#20541).
12614 2015-12-27  Fran Litterio  <flitterio@gmail.com>
12616         Run erc-kill-channel-hook always on exit
12618         * lisp/erc/erc.el (erc-kill-buffer-function): Run erc-kill-channel-hook
12619         when erc-kill-queries-on-quit is set (bug#21187).
12621 2015-12-27  Paul Eggert  <eggert@cs.ucla.edu>
12623         Spelling fix
12625         * test/automated/url-parse-tests.el:
12626         (url-generic-parse-url/same-document-reference):
12627         Rename from url-generic-parse-url/same-decument-reference.
12629 2015-12-27  Paul Eggert  <eggert@cs.ucla.edu>
12631         Reword initial *scratch* for brevity, appearance
12633         * lisp/startup.el (initial-scratch-message):
12634         Reword to avoid apostrophes, and to make it shorter.
12635         See the thread starting in:
12636         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg01241.html
12638 2015-12-26  Leo Liu  <sdl.web@gmail.com>
12640         Add ert-deftest to lisp-mode.el
12642         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression,
12643           lisp-el-font-lock-keywords-1): Add ert-deftest.
12645 2015-12-26  Lars Ingebrigtsen  <larsi@gnus.org>
12647         Mark imap changes as not needing doc changes
12649         * lisp/net/imap.el (imap-ssl-open): Remove
12651 2015-12-26  Lars Ingebrigtsen  <larsi@gnus.org>
12653         Use built-in encryption in imap.el
12655         * lisp/net/imap.el (imap-ssl-program): Remove (bug#21134).
12656         (imap-starttls-open): Use open-network-stream instead of starttls.el.
12657         (imap-tls-open): Use open-network-stream instead of tls.el.
12659 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12661         Don't try using /bin/sh in artist.el on MS-Windows
12663         * lisp/textmodes/artist.el (artist-figlet-get-font-list-windows):
12664         New function.
12665         (artist-figlet-choose-font): Use it on MS-Windows and MS-DOS.
12666         (Bug#20167)
12668 2015-12-26  Wolfgang Jenkner  <wjenkner@inode.at>
12670         Always define gmalloc etc. in src/gmalloc.c
12672         This is a work-around to prevent the compiler from using semantic
12673         knowledge about malloc for optimization purposes.  E.g., gcc 5.2
12674         with -O2 replaces most of calloc's definition by a call to calloc;
12675         see Bug#22085.
12676         * src/gmalloc.c [!HYBRID_MALLOC] (malloc, realloc, calloc)
12677         (aligned_alloc, free): Do not undef.  Instead, define these as
12678         functions (perhaps renamed to gmalloc etc.) in terms of gmalloc etc.
12680 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12682         Fix documentation of browse-url browser-related functions
12684         * lisp/net/browse-url.el (browse-url)
12685         (browse-url-default-browser, browse-url-default-windows-browser)
12686         (browse-url-default-macosx-browser, browse-url-chromium)
12687         (browse-url-kde, browse-url-text-xterm): Clarify the usage of ARGS
12688         and NEW-WINDOW arguments in these functions.  (Bug#19421)
12690 2015-12-26  Paul Eggert  <eggert@cs.ucla.edu>
12692         Propagate Bug#14412 fix to backtrace_eval_unrewind
12694         * src/eval.c (unbind_to): Redo so that the FALLTHROUGH!! comment
12695         becomes accurate again. This shouldn’t affect behavior.
12696         (backtrace_eval_unrewind): Apply the recent unbind_to fix here, too.
12698 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12700         Don't produce non-ASCII characters in *scratch*
12702         * lisp/startup.el (initial-scratch-message): Quote apostrophes to
12703         avoid producing non-ASCII characters in the *scratch* buffer's
12704         commentary.
12706 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12708         Document changes in 'compare-windows'
12710         * lisp/vc/compare-w.el (compare-windows-removed)
12711         (compare-windows-added): Doc fix.
12713         * doc/emacs/files.texi (Comparing Files): Document the changes in
12714         window selection by 'compare-windows'.
12716 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12718         Document 'vc-annotate-background-mode'
12720         * doc/emacs/maintaining.texi (Old Revisions): Document
12721         'vc-annotate-background-mode'.
12723 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12725         Document 'vc-region-history'
12727         * doc/emacs/maintaining.texi (VC Change Log): Document
12728         'vc-region-history'.
12730 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12732         Improve documentation of 'vc-push'
12734         * doc/emacs/maintaining.texi (Pulling / Pushing): Expand and
12735         improve the documentation of 'vc-push'.
12737         * lisp/vc/vc.el (vc-pull, vc-push): Doc fix.
12739 2015-12-26  Alain Schneble  <a.s@realize.ch>
12741         Include the tests for the URL parsing fixes
12743 2015-12-26  Alain Schneble  <a.s@realize.ch>
12745         Make relative URL parsing and resolution consistent with RFC 3986 (bug#22044)
12747         * test/automated/url-parse-tests.el: Add tests covering url-generic-parse-url.
12748         * test/automated/url-expand-tests.el: Add tests covering url-expand-file-name.
12749         * lisp/url/url-parse.el (url-generic-parse-url): Keep empty fragment
12750         information in URL-struct.
12751         * lisp/url/url-parse.el (url-path-and-query): Do not artificially turn empty
12752         path and query into nil path and query, respectively.
12753         * lisp/url/url-expand.el (url-expander-remove-relative-links): Do not turn
12754         empty path into an absolute ("/") path.
12755         * lisp/url/url-expand.el (url-expand-file-name): Properly resolve
12756         fragment-only URIs. Do not just return them unchanged.
12757         * lisp/url/url-expand.el (url-default-expander): An empty path in the relative
12758         reference URI should not drop the last segment.
12760         Backport:
12762         (cherry picked from commit b792ecea1715e080ad8e232d3d154b8a25d2edfb)
12764 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12766         Document 'url-user-agent'.
12768         * lisp/url/url-http.el (url-user-agent): Move from here...
12769         * lisp/url/url-vars.el (url-user-agent): ...to here.  This is to
12770         keep all the URL defcustoms in one place, and also have it defined
12771         whenever the URL library is loaded.
12773         * doc/misc/url.texi (Customization): Document 'url-user-agent'.
12775 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12777         Document protocols supported by URL library via Tramp
12779         * doc/misc/url.texi (Tramp): New node, describes the URL schemes
12780         supported via Tramp.
12781         (Supported URL Types, file/ftp, rlogin/telnet/tn3270): Mention
12782         Tramp.
12784 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12786         Document changes in Shell-script mode
12788         * lisp/progmodes/sh-script.el (sh-mode, sh-set-shell): Document
12789         the 'sh-shell' file-local variable.
12790         (top level): Add an auto-load form to avoid byte-compiler warning
12791         about 'comint-send-string'.
12793 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12795         Fix documentation of 'ses-define-local-printer'
12797         * doc/misc/ses.texi (Printer functions): Fix whitespace between
12798         sentences and punctuation.  Add an index entry for
12799         'ses-define-local-printer'.
12801 2015-12-26  Shakthi Kannan  <shakthimaan@gmail.com>
12803         Document 'ert-summarize-tests-batch-and-exit'
12805         * doc/misc/ert.texi (Running Tests in Batch Mode): Document
12806         'ert-summarize-tests-batch-and-exit'.
12808 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12810         Avoid assertion violation in unbind_to
12812         * src/eval.c (unbind_to) <SPECPDL_LET>: Avoid assertion violation
12813         if we get here with an object that is not a symbol.  (Bug#14412)
12815 2015-12-25  Andreas Schwab  <schwab@linux-m68k.org>
12817         Don't treat /foo/bar:mumble as ange-ftp address
12819                 * lisp/net/browse-url.el (browse-url-filename-alist): Match colons
12820                 only in the first component.  (bug#5362)
12822 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12824         Follow <meta> redirects in eww
12826         Merge conflict, but I think I resolved it.
12828             Follow meta refresh tags in eww
12830             * eww.el (eww-tag-meta): Follow meta refresh tags (bug#22234).
12832         Backport:
12834 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12836         Allow http://user:pass@foo/ URLs again
12838         * lisp/url/url-auth.el (url-basic-auth): Allow explicit
12839         user/passwords in URLs (bug#19046).
12841         Backport:
12843         (cherry picked from commit b563715a2db265517d5a77f165a42afa1e233fdd)
12845 2015-12-25  Samer Masterson  <samer@samertm.com>
12847         Autoload url-insert-buffer-contents
12849         * lisp/url/url-handlers.el: Add autoload cookie so that
12850         `package-list-packages' doesn't bug out (bug#21927) (tiny change)
12852         Backport:
12854         (cherry picked from commit 7a7b5b492ff9929eecd90c4564db6fbf3b192323)
12856 2015-12-25  Eli Zaretskii  <eliz@gnu.org>
12858         Make sure *scratch* etc. use forward slashes in its default-directory
12860         * lisp/startup.el (normal-top-level): On MS-Windows, convert
12861         backslashes to forward slashes while decoding default-directory
12862         of the initially-created buffers.
12864 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12866         More eww file name coding fixes
12868         * eww.el (eww-decode-url-file-name): Use the base coding
12869         system to check for encodability.
12871         Backport:
12873         (cherry picked from commit a8627008abe4ab339df19b417776da28b3ce0fc7)
12875 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12877         Always save eww history
12879         * eww.el (eww-setup-buffer): Always save history, even when
12880         called from outside the eww buffer (bug#19638).
12882         Backport:
12884         (cherry picked from commit 2a0f18d9b6ce0ccce3d9c4a4a3b5743bae71b41e)
12886 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12888         Default web pages to right-to-left
12890         * eww.el (eww-mode): Most web pages are left-to-right, so make
12891         that the default (bug#19801).
12893         * shr.el (shr-tag-html): Respect "dir" attributes
12894         (left-to-right, right-to-left).
12896         Backport:
12898         (cherry picked from commit 9e089ec8a380ec3758fcf1564c5f86dc92c68c2a)
12900 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12902         Make toggling checkboxes work again
12904         * eww.el (eww-update-field): Make toggling checkboxes work
12905         again (bug#21881).
12907         Backport:
12909         (cherry picked from commit 5e56f606952e5e81b4d3a93ea70e791b74b33041)
12911 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12913         Don't store cookies with empty names
12915         * lisp/url/url-cookie.el (url-cookie-store): Refuse to store
12916         cookies with empty names (bug#21936).
12918         Backport:
12920         (cherry picked from commit 9f0fd7cb1aec3eb9e2e0f7b8854c30870286d96c)
12922 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12924         Stop rendering HTML before specdlr exhaustion
12926         Fixes: 22117
12928         * shr.el (shr-descend): Stop rendering before we run out of
12929         specpdl room (bug#22117).
12931         Backport:
12933         (cherry picked from commit 248da292fe46224b0b5a79b632c89cf4de2c2081)
12935 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12937         Use cl-reduce, not reduce.
12939         Backport:
12941         (cherry picked from commit fe4606f93b91ff3d046aee0cf21ecc277af7a786)
12943 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12945         Allow several <tbody> tags in shr
12947         * shr.el (shr-table-body): New function to find the real body
12948         of a table.
12949         (shr-tag-table): Use it to render several <tbody> tags in a
12950         table (bug#22170).
12952         Backport:
12954         (cherry picked from commit cdaf33029d6620073833876d76056045ecfbc7c4)
12956 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12958         Make prettier unique file names in eww
12960         (eww-make-unique-file-name): Make unique file names by making
12961         files like foo(2).jpg instead of foo(1)(2).jpg.
12963         Backport:
12965         (cherry picked from commit edfdd0a6cbdfa9e5e4bd0553e2b489401ca39266)
12967 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12969         Decode hex-encoded URLs before using them as file names
12971         * eww.el (eww-decode-url-file-name): New function.
12972         (eww-download-callback): Use it to decode file names before
12973         saving them.
12975         Backport:
12977         (cherry picked from commit af22a010d87516c2a646572fb27512c03057784f)
12979 2015-12-25  Ashish SHUKLA  <ashish.is@lostca.se>
12981         Add FreeBSD cert bundle
12983         * doc/misc/emacs-gnutls.texi (Help For Users): Document
12984         FreeBSD bundle.
12986         * lisp/net/gnutls.el (gnutls-trustfiles): Add FreeBSD cert bundle.
12988         Backport:
12990         (cherry picked from commit 60c0f1a18ad88d6dc1a8f4ee5d9d18940eaeb6f7)
12992 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12994         Ignore invalid SVG images
12996         * shr.el (shr-tag-svg): Ignore SVG images that have no width
12997         or height, because these can't be displayed by ImageMagick,
12998         anyway.
13000         Backport:
13002         (cherry picked from commit 821107d53c2e390240d25c036b99ebbf9b4a93b6)
13004 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
13006         shr table rendering fix
13008         * shr.el (shr-tag-table): Allow rendering body-less tables
13009         that have headers.
13011         Backport:
13013         (cherry picked from commit b05471e42c17e02c56c87d7599ada0c124a5fe09)
13015 2015-12-25  Eli Zaretskii  <eliz@gnu.org>
13017         Restore info about the build host in bug reports
13019         * lisp/mail/emacsbug.el (report-emacs-bug): Report the system on
13020         which Emacs was built.  This is important information for
13021         investigating bug reports reported by users who don't build their
13022         Emacs.
13024 2015-12-25  Eli Zaretskii  <eliz@gnu.org>
13026         Fix bootstrap broken by changes related to OS X file-name encoding
13028         * lisp/international/ucs-normalize.el (eval-when-compile): Make
13029         sure char-code-property-alist includes elements that allow access
13030         to 'decomposition' and 'canonical-combining-class' Unicode
13031         properties, as compiling ucs-normalize.el requires that.
13032         * lisp/loadup.el (featurep 'ns): Load ucs-normalize and ns-win
13033         only of charprop.el was already loaded.
13035         * src/Makefile.in ($(lispsource)/international/ucs-normalize.elc):
13036         New order-only dependency.
13038 2015-12-25  Leo Liu  <sdl.web@gmail.com>
13040         * lisp/ido.el (ido-add-virtual-buffers-to-list): Use bookmark-get-filename.
13042 2015-12-25  Michael Albinus  <michael.albinus@gmx.de>
13044         Make tramp-test29-vc-registered more robust
13046         * test/automated/tramp-tests.el (tramp-test29-vc-registered):
13047         Move `bzr' case down.  Skip test when `vc-create-repo' fails.
13048         Remove instrumentation.
13050 2015-12-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
13052         * lisp/term/x-win.el (x-gtk-stock-map): Fix typo.
13054 2015-12-24  Katsumi Yamaoka  <yamaoka@jpl.org>
13056         Fix `gnus-union' so as to behave like `cl-union'
13058         * lisp/gnus/gnus-group.el (gnus-group-prepare-flat):
13059         Make gnus-union use `equal' to compare items in lists.
13061         * lisp/gnus/gnus-util.el (gnus-union):
13062         Make it behave like cl-union partially.
13064 2015-12-23  Paul Eggert  <eggert@cs.ucla.edu>
13066         Fix dired.c typo with ptrdiff_t vs Lisp_Object
13068         * src/dired.c (file_name_completion): Don't assume Lisp_Object is
13069         an integer type, fixing a problem introduced in the recent fix for
13070         Bug#22169.
13072 2015-12-23  Eli Zaretskii  <eliz@gnu.org>
13074         Document default process sentinel more prominently
13076         * doc/lispref/processes.texi (Asynchronous Processes): Mention the
13077         defaults for process filter and sentinel.  Provide cross-references.
13078         (Process Information): Provide cross-references to where filters
13079         and sentinels are described.
13080         (Filter Functions): Add an index entry for "default filter".
13081         (Sentinels): Add a few status messages not documented previously.
13082         Resolve the "killed" confusion.  Document and describe the default
13083         sentinel.  (Bug#22220)
13085 2015-12-23  Eli Zaretskii  <eliz@gnu.org>
13087         Fix file-name completion on OS X
13089         * src/dired.c (file_name_completion): Reject false matches due to
13090         file-name-coding-systems that decompose characters when encoding
13091         file names, by comparing decoded file names as well.  (Bug#22169)
13092         (syms_of_dired) <Qdecomposed_characters>: New DEFSYM.
13094         * lisp/international/ucs-normalize.el (utf-8-hfs): Give it a
13095         non-nil 'decomposed-characters' property.
13097 2015-12-23  Anders Lindgren  <andlind@gmail.com>
13099         File-name completion of non-ASCII characters on OS X (bug#22169)
13101         The coding system `utf-8-nfd', locally defined in ns-win.el,
13102         didn't provide a :pre-write-conversion method, causing file name
13103         completion of non-ASCII characters to fail.  Solved by using the
13104         `utf-8-hfs' coding system provided by `ucs-normalize'.
13106         * lisp/loadup.el: Load international/ucs-normalize (when building
13107         for ns).
13109         * lisp/term/ns-win.el (utf-8-nfd): Made `utf-8-nfd' as alias for
13110         `utf-8-hfs' and removed the old implementation.  Set `utf-8-hfs'
13111         as the file name coding system.
13113         * src/nsfns.m (ns-convert-utf8-nfd-to-nfc): Removed.
13115 2015-12-23  Tom Tromey  <tom@tromey.com>
13117         Fix bug #18588 by making bug-reference-bug-regexp more lenient
13119         * lisp/progmodes/bug-reference.el (bug-reference-bug-regexp): Accept
13120         "bug NNNN".  (Bug #18588)
13122 2015-12-23  Tom Tromey  <tom@tromey.com>
13124         add some cl-* aliases to lisp-mode imenu
13126         * (lisp-imenu-generic-expression): Add cl-define-compiler-macro,
13127         cl-defgeneric, and cl-defmethod.
13129 2015-12-22  Tom Tromey  <tom@tromey.com>
13131         Make a variable buffer-local
13133         * lisp/generic-x.el (generic-rul-mode-setup-function): Make
13134         font-lock-syntax-table buffer-local.  (Bug #21627)
13136 2015-12-22  Eli Zaretskii  <eliz@gnu.org>
13138         Fix decoding of text in URLs retrieved by EWW
13140         * lisp/net/eww.el (eww-render): Pass 'charset' to
13141         'eww-display-raw'.  Use the value of 'last-coding-system-used', if
13142         non-nil, to set 'buffer-file-coding-system' of the buffer where we
13143         show the URL.
13144         (eww-display-html, eww-display-raw): Decode the text correctly,
13145         using the charset found in the headers, and defaulting to UTF-8.
13146         If the user told us to use a specific encoding, override the
13147         charset from the headers.  (Bug#22222)
13149 2015-12-22  Alan Mackenzie  <acm@muc.de>
13151         Fix a coding error in c-forward-<>-arglist-recur.  Fixes bug#22156
13153         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur): Remove unused
13154         variable `tmp'.
13155         After a failed search for a matching ">", restore point before continuing.
13157 2015-12-22  Michael Albinus  <michael.albinus@gmx.de>
13159         Instrument Tramp tests
13161         * test/automated/tramp-tests.el (tramp-test29-vc-registered)
13162         (tramp--test-utf8): Instrument tests.
13164 2015-12-22  Martin Rudalics  <rudalics@gmx.at>
13166         Fix `display-buffer' call in `display-message-or-buffer' (Bug#22221)
13168         * lisp/simple.el (display-message-or-buffer): Call
13169         `display-buffer' with ACTION instead of NOT-THIS-WINDOW
13170         (Bug#22221).
13172 2015-12-22  Juri Linkov  <juri@linkov.net>
13174         * lisp/saveplace.el (toggle-save-place, save-place-to-alist)
13176         (save-places-to-alist, save-place-dired-hook):
13177         Check for dired-subdir-alist.  (Bug#19851)
13179 2015-12-21  Paul Eggert  <eggert@cs.ucla.edu>
13181         Add FIXME comment re stack overflow and modules
13183 2015-12-21  Paul Eggert  <eggert@cs.ucla.edu>
13185         Revert some recent emacs-module commentary
13187         Most of the recently-added commentary was incorrect, due to the
13188         possibility of stack overflow.
13190 2015-12-21  Paul Eggert  <eggert@cs.ucla.edu>
13192         Spelling fix: prefer "cooperate" to "co-operate"
13194 2015-12-21  Paul Eggert  <eggert@cs.ucla.edu>
13196         Port undo fixes to -fno-common
13198         Port recent fix for Bug#21968 to platforms like 'gcc -fno-common'.
13199         * src/keyboard.c, src/keyboard.h (point_before_last_command_or_undo)
13200         (buffer_before_last_command_or_undo):
13201         Declare in keyboard.h, and define in keyboard.c,
13202         instead of assuming the traditional Unix relaxed ref-def linkage.
13204 2015-12-20  Philipp Stephani  <phst@google.com>
13206         Improve commentary for emacs-module.c
13208         * src/lisp.h: Document emacs-module.c assumptions about EQ and NILP.
13209         * src/emacs-module.c (module_non_local_exit_get): Document that we
13210         cannot use the current implementation.
13211         (module_is_not_nil, module_eq): Document assumptions about EQ and
13212         NILP.
13214 2015-12-20  Michael Albinus  <michael.albinus@gmx.de>
13216         Suppress test on Mac OS X
13218         * test/automated/tramp-tests.el (tramp--test-darwin-p): New defun.
13219         (tramp--test-utf8): Use it.
13221 2015-12-20  Alan Mackenzie  <acm@muc.de>
13223         Merge branch 'scratch/follow' into emacs-25
13225         This allows Isearch, etc., to work well when Follow Mode is active.
13227 2015-12-19  Michael Albinus  <michael.albinus@gmx.de>
13229         * lisp/net/tramp-sh.el (tramp-get-ls-command-with-w-option): Improve check.
13231 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13233         Fix last commit
13235         * doc/emacs/rmail.texi (Rmail Deletion): Document new behavior of 'u'
13236         with numeric argument.
13238 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13240         Document new features of Rmail
13242         * doc/emacs/rmail.texi (Rmail Summary Edit, Rmail Deletion):
13243         Document new behavior of 'd' and 'C-d' with numeric argument.
13244         (Rmail Display): Document the rendering of HTML MIME parts.
13246 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13248         Improve documentation of new cl-lib functions
13250         * doc/misc/cl.texi (Predicates on Numbers, Numerical Functions):
13251         Fix wording.
13253 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13255         Document the new feature of 'minibuffer-with-setup-hook'
13257         * lisp/files.el (minibuffer-with-setup-hook): Clarify how FUN is
13258         added to `minibuffer-setup-hook'.
13260 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13262         Document new features of Font Lock
13264         * doc/lispref/modes.texi (Other Font Lock Variables): Document
13265         'font-lock-flush-function' and 'font-lock-ensure-function'.
13266         (Font Lock Basics): Document the basic fontification functions
13267         referenced in "Other Font Lock Variables".
13269         * lisp/font-lock.el (font-lock-flush, font-lock-ensure): Doc fix.
13271 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13273         Document new features of Rectangle mode
13275         * doc/emacs/killing.texi (Rectangles): Document "C-x C-x" in
13276         rectangle-mark-mode.
13278 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13280         Manual followup to last change
13282         * doc/lispref/display.texi (Displaying Messages): Sync with the
13283         doc string.  (Bug#22210)
13285 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13287         Clarify doc string of 'display-message-or-buffer'
13289         * lisp/simple.el (display-message-or-buffer): Doc fix.  Suggested
13290         by Sebastian Wiesner <swiesner@lunaryorn.com>.  (Bug#22210)
13292 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13294         * doc/emacs/emacs.texi (Top): Update top-level menus.
13296         * doc/lispref/elisp.texi (Top): Update top-level menus.
13298 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13300         Document how to avoid file-local variables that aren't
13302         * doc/emacs/custom.texi (Specifying File Variables): Describe how
13303         to prevent Emacs from interpreting unrelated text as file-local
13304         variables.  (Bug#22166)
13306 2015-12-19  Dave Thomas  <dave@pragprog.org>  (tiny change)
13308         Fix a typo in eterm-color's termcap entry
13310         * lisp/term.el (term-termcap-format): Fix a typo in the "ue="
13311         entry.  (Bug#22184)
13313 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13315         Allow 'browse-url-emacs' visit non-existent URLs
13317         * lisp/url/url-handlers.el (url-insert-file-contents): Don't
13318         signal an error if VISIT is non-nil, to more faithfully emulate
13319         the behavior of 'insert-file-contents'.  (Bug#22160)
13321 2015-12-19  Paul Eggert  <eggert@cs.ucla.edu>
13323         Remove SunOS 4.x cruft
13325         Support for SunOS 4.x was removed in Emacs 23 but some cruft was left behind.
13326         * lib-src/pop.c [sun]: Remove no-longer-needed include.
13327         * lwlib/xlwmenu.c (SUNSO41): Remove.
13329 2015-12-19  Paul Eggert  <eggert@cs.ucla.edu>
13331         Merge from gnulib
13333         This mostly commentary fixes.
13334         * doc/misc/texinfo.tex, lib/intprops.h: Copy from gnulib.
13335         * lib/gnulib.mk: Regenerate with new gnulib-tool.
13337 2015-12-18  Michael Albinus  <michael.albinus@gmx.de>
13339         Minor fixes in Tramp
13341         * lisp/net/tramp-sh.el (tramp-do-file-attributes-with-ls):
13342         Reorder ls arguments.
13344         * lisp/net/tramp.el (tramp-dissect-file-name): Fix docstring.
13346 2015-12-18  Michael Albinus  <michael.albinus@gmx.de>
13348         Make tramp a built-in package
13350         * lisp/finder.el (finder-compile-keywords): Update
13351         `package--builtins' also when Version: keyword is available.
13353         * lisp/net/trampver.el: Add Version: keyword.
13354         (tramp-version): Change it to "2.2.13.25.1", in order to be
13355         compatible with `version-to-list'.
13357 2015-12-18  Lele Gaifax  <lele@metapensiero.it>
13359         * etc/tutorials/TUTORIAL.it: Update and fix typos.
13361 2015-12-18  Alan Mackenzie  <acm@muc.de>
13363         Rename `recenter-group' to `recenter-window-group'
13365         * doc/lispref/windows.texi (Textual Scrolling)
13366         * lisp/window.el (top level, recenter-group)
13367         * lisp/follow.el (follow-mode)
13368         * lisp/isearch.el (isearch-back-into-window): Rename `recenter-group' to
13369         `recenter-window-group' and `recenter-group-function' to
13370         `recenter-window-group-function'.
13372 2015-12-18  Eli Zaretskii  <eliz@gnu.org>
13374         Fix vertical-motion in tabulated-list mode
13376         * src/indent.c (Fvertical_motion): When moving from line beginning
13377         to point under line truncation, assume overshoot by one line only
13378         if point actually lies beyond the window's right margin.
13379         (Bug#22194)
13381 2015-12-18  Martin Rudalics  <rudalics@gmx.at>
13383         Don't have help functions call x-display-pixel-width/-height on ttys
13385         * lisp/help.el (temp-buffer-max-height, temp-buffer-max-width):
13386         Don't call x-display-pixel-width/-height on ttys.
13388 2015-12-18  Dmitry Gutov  <dgutov@yandex.ru>
13390         Use 'hg id' in vc-hg-previous-revision
13392         * lisp/vc/vc-hg.el (vc-hg-previous-revision):
13393         Use 'hg id' to retrieve it (bug#22032).
13395 2015-12-17  Alan Mackenzie  <acm@muc.de>
13397         * lisp/follow.el (follow-sit-for): Remove (it's redundant).
13399 2015-12-17  Eli Zaretskii  <eliz@gnu.org>
13401         Fix a typo in the Emacs manual
13403         * doc/emacs/trouble.texi (Sending Patches): Fix a typo.  Reported
13404         by Lele Gaifax <lele@metapensiero.it>.  (Bug#22193)
13406 2015-12-17  Eli Zaretskii  <eliz@gnu.org>
13408         Fix parsing netrc entries with ports
13410         * lisp/gnus/auth-source.el (auth-source-ensure-strings): Don't
13411         make a list out of 't'.  (Bug#22188)
13413         * test/automated/auth-source-tests.el
13414         (auth-source-test-netrc-parse-entry): New test.
13416 2015-12-17  Paul Eggert  <eggert@cs.ucla.edu>
13418         Fix typo in Doug Lea malloc configure log
13420         * configure.ac (emacs_cv_var_doug_lea_malloc):
13421         Fix typo that confused the log output of 'configure'.
13423 2015-12-16  Nicolas Petton  <nicolas@petton.fr>
13425         * etc/NEWS: Mention the new pcase patterns `seq' and `map'.
13427 2015-12-16  Alan Mackenzie  <acm@muc.de>
13429         * etc/NEWS: Move entry on pcase to correct section
13431         (Accidentally omitted from previous commit)
13433 2015-12-16  Alan Mackenzie  <acm@muc.de>
13435         Add documentation for changes to Show Paren mode.
13437         * lisp/paren.el (show-paren-highlight-openparen): Enhance doc string.
13439         * doc/emacs/programs.texi (Matching): Add descriptions of some pertinent user
13440         options, including the new show-paren-when-point-inside-paren and
13441         show-paren-when-point-in-periphery.
13443         * etc/NEWS (.. Specialized Modes ...): Add an entry for Show Paren mode.
13444         Move an entry on pcase to the Lisp Changes section.
13446 2015-12-16  Eli Zaretskii  <eliz@gnu.org>
13448         Document Eldoc changes
13450         * doc/emacs/programs.texi (Lisp Doc): Document Global Eldoc mode.
13452 2015-12-16  Eli Zaretskii  <eliz@gnu.org>
13454         Fix invocation of Python and Guile interpreters from gdb-mi
13456         * lisp/progmodes/gdb-mi.el (gdb-control-commands-regexp): Add
13457         commands for interactive Python and Guile interpreters.
13458         (gdb-send): Recognize various ways of exiting from Python and
13459         Guile interpreters and returning to GDB.  For details, see
13460         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00693.html
13461         and http://stackoverflow.com/questions/31514741.
13463 2015-12-16  Paul Eggert  <eggert@cs.ucla.edu>
13465         Remove attempt to use C11 threads
13467         C11 threads are not needed for Emacs now, and their use is causing
13468         hassles on FreeBSD 10.x.  Problem reported by Ashish SHUKLA in:
13469         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00648.html
13470         * configure.ac: Do not check for C11 threads. Remove unnecessary
13471         fiddling with CPPFLAGS when configuring pthreads.
13472         * src/emacs-module.c (main_thread, check_main_thread)
13473         (module_init): Do not worry about C11 threads.
13475 2015-12-15  Michael Albinus  <michael.albinus@gmx.de>
13477         Set utf8 encoding with stty in Tramp
13479         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
13480         Move up uname check.  Handle Mac OS X eol encoding.  Set utf8
13481         encoding with stty.
13483 2015-12-15  Alan Mackenzie  <acm@muc.de>
13485         Tidy up documentation associated with window groups.
13487         * doc/lispref/windows.texi (Basic Windows): Add an @anchor for "Window
13488         Groups".  Correct example function to `window-group-start'.
13489         (Window Start and End, Textual scrolling): Point to the new anchor.  State
13490         that (most of) the args in window group functions have the same meaning as for
13491         the corresponding window primitives.
13493         * doc/lispref/positions.texi (Screen Lines).  Same as above.
13495 2015-12-15  Michael Albinus  <michael.albinus@gmx.de>
13497         Complete last commit
13499         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
13500         Move uname check up.  Handle Mac OS X eol encoding.
13502 2015-12-15  Michael Albinus  <michael.albinus@gmx.de>
13504         Handle Mac OS X eol encoding in Tramp
13506         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
13507         Handle Mac OS X eol encoding.
13509 2015-12-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
13511         Fix variable name typo in compute_tip_xy
13513         * src/w32fns.c (compute_tip_xy):
13514         * src/xfns.c (compute_tip_xy): Modify *root_x instead of *root_y
13515         when `right' is integer.
13517 2015-12-14  foudfou  <foudil.newbie+git@gmail.com>
13519         * lisp/ibuffer.el: Add ability to (un-)mark or delete buffers in the region.
13521 2015-12-14  Tassilo Horn  <tsdh@gnu.org>
13523         Revert "Fix rx matcher overflow without limiting"
13525         This reverts commit fe27e037663d36be3e5741c2ce86ab4ee8017db1.
13527 2015-12-14  Alan Mackenzie  <acm@muc.de>
13529         Ispell: Bind isearch-regexp-function to nil around call to isearch..-new-loop
13531         * lisp/textmodes/ispell.el (ispell-highlight-spelling-error-overlay): bind
13532         isearch-regexp-function to nil around call to isearch-lazy-highligh-new-loop.
13534 2015-12-14  Tassilo Horn  <tsdh@gnu.org>
13536         Fix rx matcher overflow without limiting
13538         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Improve last
13539         change to the regexp without imposing a limit on the length of the
13540         options.
13542 2015-12-14  Alan Mackenzie  <acm@muc.de>
13544         Enhance ispell-skip-region-alist by generating part of it at runtime.
13546         * lisp/textmodes/ispell.el (ispell--\\w-filter, ispell--make-\\w-expression)
13547         (ispell--make-filename-or-URL-re): New functions which generate a regexp.
13548         (ispell-skip-region-alist): Remove the bit that matches a filename/URL, etc.
13549         (ispell-begin-skip-region-regexp, ispell-skip-region-list, ispell-message):
13550         Include the result of ispell--make-filename-or-URL-re in regexps.
13552 2015-12-14  Glenn Morris  <rgm@gnu.org>
13554         * build-aux/gitlog-to-emacslog: Ignore more pointless merge commits.
13556 2015-12-14  Alan Mackenzie  <acm@muc.de>
13558         Replace GROUP argument in six window primitives by new functions.
13560         * doc/lispref/windows.texi (Window Start and End, Textual Scrolling)
13561         * doc/lispref/positions.texi (Screen Lines): Remove optional GROUP argument
13562         from description of six window functions.  Add in description of new functions
13563         window-group-start, window-group-end, set-window-group-start,
13564         pos-visible-in-window-group-p, recenter-group and move-to-window-group-line,
13565         together with the six variables indirecting to the pertinent group
13566         functions.
13568         * src/window.c
13569         * src/keyboard.c: Revert the commit from 2015-11-11 12:02:48, in so far as it
13570         applies to these two files, which added the GROUP argument to six window
13571         primitives.
13573         * lisp/follow.el (follow-mode): Use updated variable names for the indirected
13574         functions.
13576         * lisp/isearch.el (isearch-update, isearch-done, isearch-string-out-of-window)
13577         (isearch-back-into-window, isearch-lazy-highlight-new-loop)
13578         (isearch-lazy-highlight-search, isearch-lazy-highlight-update): Replace calls
13579         to window primitives (e.g. window-start) with a GROUP argument by calls to
13580         new functions (e.g. window-group-start).
13582         * lisp/ispell.el (ispell-command-loop): Replace call to
13583         pos-visible-in-window-p with pos-visible-in-window-group-p.
13585         * lisp/window.el (window-group-start, window-group-end)
13586         (set-window-group-start, recenter-group, pos-visible-in-window-group-p)
13587         (selected-window-group, move-to-window-group-line): New functions.
13588         (window-group-start-function, window-group-end-function)
13589         (set-window-group-start-function, recenter-group-function)
13590         (pos-visible-in-window-group-p-function, selected-window-group-function)
13591         (move-to-window-group-line-function): New variables.
13593 2015-12-14  Vitorio Miguel  <vdrbandeiras@gmail.com>  (tiny change)
13595         * etc/tutorials/TUTORIAL.pt_BR: Fix a typo.  (Bug#22165)
13597 2015-12-13  Eli Zaretskii  <eliz@gnu.org>
13599         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
13601 2015-12-13  Tassilo Horn  <tsdh@gnu.org>
13603         Improve regex to not trigger stack overflow
13605         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Improve regex in
13606         order not to trigger a stack overflow in regex matcher with unbalanced
13607         brackets (bug#22146).
13609 2015-12-13  Eli Zaretskii  <eliz@gnu.org>
13611         Fix visiting files with raw-text
13613         * src/fileio.c (Finsert_file_contents): Fix setting buffer unibyte
13614         when some stuff was actually read.  (Bug#22162)
13616 2015-12-13  Tassilo Horn  <tsdh@gnu.org>
13618         Fix regex matching keyval labels
13620         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Fix regexp
13621         matching keyval labels.
13623 2015-12-13  Michael Albinus  <michael.albinus@gmx.de>
13625         * lisp/ido.el (ido-file-name-all-completions-1): Do not raise an error
13627         ... in case of Tramp.  (Bug#20821)
13629 2015-12-13  Paul Eggert  <eggert@cs.ucla.edu>
13631         Fix performance regression with gcc -O0
13633         This fixes the smaller performance hit that I noted in:
13634         https://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00357.html
13635         * src/alloc.c (macro_XPNTR_OR_SYMBOL_OFFSET, macro_XPNTR):
13636         * src/puresize.h (puresize_h_PURE_P)
13637         (puresize_h_CHECK_IMPURE):
13638         New macros, with the old contents of the functions.
13639         * src/alloc.c (XPNTR_OR_SYMBOL_OFFSET, XPNTR):
13640         * src/puresize.h (PURE_P, CHECK_IMPURE):
13641         Use the new macros.  Also macros, if DEFINE_KEY_OPS_AS_MACROS.
13642         * src/conf_post.h (ATTRIBUTE_UNUSED):
13643         * src/lisp.h (DEFINE_KEY_OPS_AS_MACROS): New macros.
13645 2015-12-12  Artur Malabarba  <bruce.connor.am@gmail.com>
13647         * lisp/emacs-lisp/package.el (package-unpack): Security check
13649         Check that we received the package we were offered.
13651 2015-12-12  Artur Malabarba  <bruce.connor.am@gmail.com>
13653         * lisp/emacs-lisp/package.el (package--compile): Don't activate
13655         `package-unpack' takes care of all activations now (other than
13656         `package-initialize).  `package--compile' now only compiles.
13658 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
13660         Document the new bindings of <UP> and <DOWN> in the minibuffer
13662         * doc/emacs/mini.texi (Minibuffer History): Describe the new
13663         bindings of <UP> and <DOWN> in the minibuffer.
13665 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
13667         Document new features of Ido
13669         * doc/misc/ido.texi (Misc): Document 'C-S-b'.
13671 2015-12-12  Martin Rudalics  <rudalics@gmx.at>
13673         Fix frame height calculations with added menu bar on Windows (Bug#22105)
13675         * doc/lispref/frames.texi (Parameter Access): Mention pitfalls
13676         when simultaneously specifying multiple parameters for
13677         `modify-frame-parameters' that all may change the frame's size.
13678         * src/w32fns.c (x_set_menu_bar_lines): Don't set
13679         windows_or_buffers_changed here.
13680         (my_create_tip_window, Fx_show_tip): Call AdjustWindowRect
13681         with third argument false.
13682         * src/w32menu.c (set_frame_menubar): Set
13683         windows_or_buffers_changed here.
13684         * src/w32term.c (x_set_window_size): Determine third argument of
13685         AdjustWindowRect from whether the frame has a menu bar and not
13686         from whether it wants one.
13688 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
13690         Document the change in interactive shell mode
13692         * doc/emacs/misc.texi (Interactive Shell): Document that the
13693         '*shell*' buffer by default displays in a new window.
13695 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
13697         Document new features of package.el
13699         * doc/emacs/package.texi (Package Menu): Document the 'external'
13700         status and the new menu commands.
13701         (Package Installation): Document archive priorities.
13703         * lisp/emacs-lisp/package.el (package-archive-priorities): Doc fix.
13704         (package-menu-hide-low-priority): Doc fix.
13706 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
13708         Update and document new features of xterm support
13710         * doc/emacs/frames.texi (Text-Only Mouse): Document that
13711         track-mouse is supported by newer xterm versions.
13713 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
13715         Document new features of Prettify Mode
13717         * doc/emacs/programs.texi (Misc for Programs): Document
13718         'prettify-symbols-compose-predicate' and
13719         'prettify-symbols-unprettify-at-point'.
13721         * lisp/progmodes/prog-mode.el (prettify-symbols-alist)
13722         (prettify-symbols-default-compose-p)
13723         (prettify-symbols-compose-predicate)
13724         (prettify-symbols--compose-symbol): Doc fixes.
13726 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
13728         Document multi-mode indentation facilities
13730         * doc/lispref/text.texi (Mode-Specific Indent): Document
13731         'prog-indentation-context', 'prog-first-column', and 'prog-widen'.
13733         * lisp/progmodes/prog-mode.el (prog-indentation-context)
13734         (prog-widen): Doc fixes.
13736 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
13738         Document 'vc-refresh-state'
13740         * doc/emacs/maintaining.texi (Version Control): Document
13741         'vc-refresh-state'.
13743         * lisp/vc/vc-hooks.el (vc-refresh-state): Doc fix.
13745 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
13747         Fix echo for "C-u"
13749         * src/keyboard.c (command_loop_1): Undo last change.  It caused
13750         duplicate echo of C-u.  (Bug#22107)
13752 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
13754         Avoid errors when creating files under SVN in new directory
13756         * lisp/vc/vc-svn.el (vc-svn-registered): Use
13757         file-accessible-directory-p, to avoid cd'ing to a non-existing
13758         directory, which signals an error on some systems.  (Bug#21984)
13759         (vc-svn-checkin): Call log-edit-extract-headers with 2 arguments.
13760         Use declare-function to avoid byte-compiler warnings.
13762 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
13764         Improve Lua support in etags
13766         * lib-src/etags.c (Lua_functions): Skip spaces before looking for
13767         "function".
13769         * etc/NEWS: Mention improved Lua support by 'etags'.
13771         * test/etags/lua-src/test.lua (test): Add tests for indented
13772         function definitions.
13773         * test/etags/ETAGS.good_1:
13774         * test/etags/ETAGS.good_2:
13775         * test/etags/ETAGS.good_3:
13776         * test/etags/ETAGS.good_4:
13777         * test/etags/ETAGS.good_5:
13778         * test/etags/ETAGS.good_6:
13779         * test/etags/CTAGS.good: Adapt to the modified Lua tests.
13781 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
13783         Fix 'this-command-keys' wrt prefix argument
13785         * src/keyboard.c (command_loop_1): Restore the feature whereby C-u
13786         was part of this-command-keys, but not of this-single-command-keys.
13787         (Bug#22107)
13789         * lisp/simple.el (internal-echo-keystrokes-prefix): Add
13790         commentary about the function's return value.
13792 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
13794         * lisp/files.el (load-library): Doc fix.  (Bug#22140)
13796 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
13798         Improve and document Ruby support in 'etags'
13800         * lib-src/etags.c (Ruby_suffixes): Add ".ruby".
13801         (Ruby_functions): Support "module" and overloaded operators.
13802         (Ruby_help): Mention "module".
13804         * test/etags/ruby-src/test.rb:
13805         * test/etags/ruby-src/test1.ru: New files.
13806         * test/etags/Makefile (RBSRC): New tests.
13807         (SRCS): Add ${RBSRC}.
13808         * test/etags/ETAGS.good_1:
13809         * test/etags/ETAGS.good_2:
13810         * test/etags/ETAGS.good_3:
13811         * test/etags/ETAGS.good_4:
13812         * test/etags/ETAGS.good_5:
13813         * test/etags/ETAGS.good_6:
13814         * test/etags/CTAGS.good: Adapt to the new Ruby tests.
13816         * doc/man/etags.1: Mention Ruby support.
13817         * etc/NEWS: Mention Ruby support.
13819 2015-12-11  Xi Lu  <lx@shellcodes.org>
13821         Initial support for Ruby in 'etags'
13823         * lib-src/etags.c <Ruby_suffixes>: New variable.
13824         (lang_names): Add an entry for Ruby.
13825         (Ruby_functions): New function.  (Bug#22116)
13827 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
13829         Clarify documentation of 'modify-frame-parameters'
13831         * doc/lispref/frames.texi (Parameter Access): Clarify what "ignored
13832         PARMs" mean for 'modify-frame-parameters'.
13834         * src/frame.c (Fmodify_frame_parameters): Clarify what "ignored
13835         PARMs" mean for this function.  (Bug#22104)
13837 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
13839         Fix setting buffer unibyte when reading from a device
13841         * src/fileio.c (Finsert_file_contents): Call Fset_buffer_multibyte
13842         to make a (possibly non-empty) buffer unibyte.  (Bug#22096)
13844 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
13846         Clarify documentation of 'values'
13848         * doc/lispref/eval.texi (Eval): Clarify that 'values' are not
13849         updated by any evaluation commands in 'lisp-interaction-mode'.
13850         (Bug#22056)
13852 2015-12-11  Anders Lindgren  <andlind@gmail.com>
13854         Fixed subversion vc error when opening file in new directory (bug#21984).
13856         * lisp/vc/vc-svn.el (vc-svn-registered): Check if directory exists.
13858 2015-12-09  Eli Zaretskii  <eliz@gnu.org>
13860         Yet another fix for when point ends up in invisible text
13862         * src/xdisp.c (redisplay_window): When someone forced
13863         window-start, and honoring that failed to show the cursor, try
13864         moving out of invisible text, before falling back to the middle of
13865         the window.  (Bug#22098)
13867 2015-12-09  Michael Albinus  <michael.albinus@gmx.de>
13869         Fix error in Tramp perl script for cygwin
13871         * lisp/net/tramp-sh.el (tramp-perl-file-truename): Do not raise an
13872         error if file doesn't exist.
13874 2015-12-09  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
13876         Remove font workaround for limited outdated versions
13878         * src/macfont.m (mac_font_descriptor_get_adjusted_weight): Remove
13879         workaround for HiraginoSans-W7 on OS X 10.11 and 10.11.1.
13881 2015-12-09  Anders Lindgren  <andlind@gmail.com>
13883         Don't add "." to load path (bug#21104)
13885         When configured with --enable-locallisppath=no, which is the
13886         default for OS X, the load-path incorrectly was populated with ".".
13888         * src/lread.c (init_lread): Don't call `decode_env_path' when
13889         PATH_SITELOADSEARCH is empty.
13891 2015-12-08  Artur Malabarba  <bruce.connor.am@gmail.com>
13893         * lisp/emacs-lisp/package.el (package--with-response-buffer):
13895         Search for the blank-line in the right buffer.
13897 2015-12-08  Glenn Morris  <rgm@gnu.org>
13899         * test/automated/simple-test.el (undo-auto-boundary-timer): Update
13900         for recent change.
13902 2015-12-08  Glenn Morris  <rgm@gnu.org>
13904         Fix some display-warning usage.
13906         * lisp/files.el (hack-local-variables, hack-dir-local-variables):
13907         * lisp/calendar/diary-lib.el (diary-include-files, diary-sexp-entry):
13908         * lisp/calendar/holidays.el (calendar-holiday-list):
13909         * lisp/mail/rmailout.el (rmail-output-read-file-name):
13910         Fix display-warning usage.
13912 2015-12-08  Glenn Morris  <rgm@gnu.org>
13914         * lisp/calendar/cal-html.el: Require diary-lib.
13916         (cal-html-list-diary-entries): Handle no diary.  (Bug#21994)
13918 2015-12-08  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
13920         Add Obsolete-since header to eudcb-ph.el
13922         * lisp/obsolete/eudcb-ph.el: Add Obsolete-since header.
13924 2015-12-07  Paul Eggert  <eggert@cs.ucla.edu>
13926         Spelling fixes
13928         * doc/misc/calc.texi (Predefined Units): Use the bland modern
13929         scientific style for spelling the units “ampere” and
13930         “angstrom” rather than the older style “Ampere” and
13931         “Ångstrom”.  The latter spelling was wrong anyway (it should
13932         have been “Ångström”).
13933         * lisp/emacs-lisp/ert.el (ert--explain-equal-rec):
13934         Fix misspelling of ‘atom’ in code.
13936 2015-12-07  Eli Zaretskii  <eliz@gnu.org>
13938         Improve documentation of kill commands
13940         * lisp/simple.el (region-extract-function, delete-backward-char)
13941         (delete-forward-char, kill-region, copy-region-as-kill)
13942         (kill-ring-save): Better document the optional argument REGION in
13943         the doc strings.  Mention in the doc strings that text put in the
13944         kill-ring can be filtered by 'filter-buffer-substring'.
13946         * doc/lispref/text.texi (Kill Functions): Mention that functions
13947         described in this subsection can filter text they put in the
13948         kill-ring.  Add a cross-reference to "Buffer Contents" and an
13949         index entry.  Document the optional argument 'region' and its
13950         effect.
13951         (Bug#21315)
13953 2015-12-07  Alan Mackenzie  <acm@muc.de>
13955         Further progress making Isearch, Ispell, Replace work with Follow Mode.
13957         * lisp/follow.el: (follow-mode): Remove references to sit*-for-function, which
13958         no longer exists.  Add follow-post-command-hook to  three special purpose
13959         hooks at setup, and remove them at tear down.
13961         * lisp/isearch.el: (isearch-update): invoke isearch-update-post-hook before
13962         isearch-lazy-highlight-new-loop.
13963         (isearch-lazy-highlight-new-loop): Restore this function to what it previously
13964         was, merging the functionality of isearch-lazy-highlight-maybe-new-loop into
13965         it.
13966         (isearch-lazy-highlight-maybe-new-loop): function removed.
13968         * lisp/replace.el: (replace-update-post-hook): New hook variable.
13969         (perform-replace): Add second (nil) argument to looking-back.  Invoke
13970         replace-update-post-hook before calling replace-highlight.
13972         * lisp/textmodes/ispell.el: (ispell-update-post-hook): New hook variable.
13973         (ispell-command-loop): invoke ispell-update-post-hook.  Add GROUP argument to
13974         call of pos-visible-in-window-p.
13975         (ispell-display-buffer): Place *Choices* window at the top of the last window
13976         in a window group.
13978 2015-12-07  Alan Mackenzie  <acm@muc.de>
13980         Amend doc of `mapconcat': it can take sequences, not merely strings.
13982         * doc/lispref/functions.texi (Mapping Functions): Amend the doc of `mapconcat'
13983         to say that SEPARATOR and the results from FUNCTION may be any character
13984         sequences, not just strings.  Add an @xref to "Sequences Arrays Vectors".
13986 2015-12-07  Michael Albinus  <michael.albinus@gmx.de>
13988         Fix an utf8 problem for Tramp on BSD
13990         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
13991         Make lax check for utf8.
13992         (tramp-get-remote-locale): Add "en_US.UTF-8" as candidate.
13994 2015-12-07  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
13996         Make eudcb-ph.el obsolete
13998         * doc/misc/eudc.texi: Bump version to 1.40.0.
13999         Remove PH/QI sections and mentions.
14000         * lisp/obsolete/eudcb-ph.el: Make obsolete.
14001         * lisp/net/eudc-vars.el (eudc-known-protocols): Remove ph.
14002         (eudc-ph-bbdb-conversion-alist): Make obsolete.
14003         * etc/NEWS: Mention this.  (Bug#21191)
14005 2015-12-07  Paul Eggert  <eggert@cs.ucla.edu>
14007         Remove overenthusiastic eassert
14009         * src/lisp.h (XSYMBOL): Remove eassert incorrectly added in
14010         previous change.  It breaks on MS-Windows --with-wide-int.
14011         Problem reported by Eli Zaretskii in:
14012         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00275.html
14014 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
14016         Pacify gcc -Wparentheses
14018         * src/xdisp.c (row_containing_pos): Reparenthesize.
14020 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
14022         Port mod-test to 32-bit Emacs --without-wide-int
14024         * modules/mod-test/test.el (mod-test-sum-test):
14025         Bring back the 2**29 tests, but port them to 32-bit Emacs
14026         --without-wide-int.
14028 2015-12-06  Michael Albinus  <michael.albinus@gmx.de>
14030         Fix minor Tramp problems found on BSD
14032         * lisp/net/tramp-sh.el (tramp-perl-file-truename): Do not append
14033         trailing slash.  Quote apostrophes.
14034         (tramp-sh-handle-file-truename): Do not append trailing slash in
14035         the "ls" case.
14036         (tramp-get-ls-command-with-w-option): New defun.
14037         (tramp-do-file-attributes-with-ls)
14038         (tramp-do-directory-files-and-attributes-with-stat): Use it.
14040         * test/automated/tramp-tests.el
14041         (tramp-test31-special-characters-with-perl)
14042         (tramp-test31-special-characters-with-ls)
14043         (tramp-test32-utf8-with-perl, tramp-test32-utf8-with-ls):
14044         Suppress also readlink.
14046 2015-12-06  Eli Zaretskii  <eliz@gnu.org>
14048         Fix cursor display when invisible text is at line beginning
14050         * src/xdisp.c (redisplay_window): When scrolling fails to show
14051         point, prefer using the desired matrix if possible for finding the
14052         fallback glyph row for displaying the cursor.  (Bug#22098)
14053         (row_containing_pos): Exit the loop as soon as we hit the first
14054         disabled glyph row.  Otherwise we risk accessing garbled data and
14055         departing to the no-no land.
14057 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
14059         Improve module interface when WIDE_EMACS_INT
14061         * src/emacs-module.c (plain_values): New constant.
14062         (module_nil): Now a constant.
14063         (Finternal_module_call, value_to_lisp_bits, lisp_to_value_bits)
14064         (syms_of_module): Use if, not #ifdef, so that both sides are
14065         checked at compile-time, and so that GCC doesn’t complain
14066         about an unused var in the typical case.  Also, depend on
14067         plain_values, not on WIDE_EMACS_INT; the code shouldn’t assume
14068         that WIDE_EMACS_INT implies !USE_LSB_TAG.
14069         (value_to_lisp_bits, lisp_to_value_bits): New functions.
14070         Sign-extend integers rather than zero-extending them, as small
14071         negative integers are more likely.
14072         (value_to_lisp, lisp_to_value): Rewrite in terms of the new *_bits
14073         functions.
14074         (HAVE_STRUCT_ATTRIBUTE_ALIGNED): Define to 0 if not already defined.
14075         (mark_modules): Remove.  All uses removed.
14076         (lisp_to_value): Don’t assume Fcons returns a pointer aligned
14077         to GCALIGNMENT.
14078         (syms_of_module): Check that module_nil converts to Qnil.
14079         * src/lisp.h (lisp_h_XSYMBOL, XSYMBOL): Use signed conversion, since
14080         we prefer signed to unsigned when either will do.
14081         (TAG_PTR): Sign-extend pointers when USE_LSB_TAG, as this is
14082         a bit better for emacs-module.c.
14084 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
14086         Port mod-test to x86-64 GNU/Linux running 32-bit
14088         * modules/mod-test/test.el (mod-test-sum-test):
14089         Don’t attempt to match descriptions to operating systems.
14090         It didn’t work on Fedora x86-64 running a 32-bit executable,
14091         and it’s not worth the trouble anyway.
14092         Port to 32-bit platforms by removing an assumption about
14093         fixnum widths.
14095 2015-12-06  Michael Albinus  <michael.albinus@gmx.de>
14097         Fix auto-revert-tests.el when filenotify isn't used
14099         * test/automated/auto-revert-tests.el (auto-revert--wait-for-revert):
14100         Make it working also when filenotify isn't used.
14102 2015-12-06  Juri Linkov  <juri@linkov.net>
14104         * lisp/textmodes/ispell.el (ispell-highlight-spelling-error-overlay):
14106         Let-bind isearch-regexp-function to nil.  (Bug#22097)
14108 2015-12-05  Artur Malabarba  <bruce.connor.am@gmail.com>
14110         * lisp/emacs-lisp/package.el: Don't install bad signatures (bug#22089)
14112         (package--with-response-buffer): NOERROR and ERROR-FORM only
14113         handle connection errors.
14114         (bad-signature): New error type.
14115         (package--check-signature-content): Use it.
14116         (package--check-signature): Properly distinguish connection errors
14117         from bad-signature errors.  Do the check for
14118         `package-check-signature' `allow-unsigned' here instead of forcing
14119         the callbacks to do it.  Add a new argument, UNWIND.
14120         (package--download-one-archive, package-install-from-archive):
14121         Update usage of `package--check-signature'.
14123 2015-12-05  Ulf Jasper  <ulf.jasper@web.de>
14125         Fix Bug#22092.
14127         * lisp/calendar/icalendar.el (icalendar--get-unfolded-buffer):
14128           Clean up inconsistent line endings. (Bug#22092)
14129           (icalendar--clean-up-line-endings): New.
14130         * test/automated/icalendar-tests.el (icalendar-real-world): Add test
14131           for Bug#22092.
14133 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
14135         Document 'bookmark-set-no-overwrite'
14137         * doc/emacs/regs.texi (Bookmarks): Document the new command
14138         'bookmark-set-no-overwrite' and its keybinding.
14140 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
14142         Document new binding of 'mouse-buffer-menu'
14144         * doc/emacs/buffers.texi (Buffer Menus): 'mouse-buffer-menu' is
14145         now also on C-F10.
14147 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
14149         Initial documentation of dynamic modules
14151         * doc/lispref/loading.texi (Dynamic Modules): New section with
14152         initial documentation for dynamic modules.
14153         * doc/lispref/elisp.texi (Top): Add "Dynamic Modules" to the
14154         detailed menu
14156         * etc/NEWS: Fix typos in dynamic modules' entry.
14158 2015-12-05  Artur Malabarba  <bruce.connor.am@gmail.com>
14160         Remove copyright statements from trivial test files
14162 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
14164         Add "Preliminaries" section to etc/DEBUG
14166         * etc/DEBUG: Add the "Preliminaries" section for GDB beginners.
14167         Most of the content was suggested by Phillip Lord
14168         <phillip.lord@russet.org.uk>.  Remove the section about debugging
14169         with the Visual Studio, as building Emacs with the Microsoft
14170         compilers is no longer supported.  Minor fixes in some other
14171         sections.
14173 2015-12-05  Alex Dunn  <dunn.alex@gmail.com>  (tiny change)
14175         Improve parsing of version strings
14177         * lisp/subr.el (version-regexp-alist): Allow "." as priority separator
14178         (version-to-list): More helpful error messages.
14179         (version-to-list): ".5" is valid (update docstring).  Make
14180         "22.8X3" invalid, as the doc string says.
14182         * test/automated/subr-tests.el (ert-test-version-parsing): New
14183         tests for version string processing.
14185 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
14187         Fix documentation of 'undo' changes
14189         * doc/lispref/text.texi (Undo): Minor wording changes.  Use US
14190         English conventions for spelling and whitespace between sentences.
14192         * etc/NEWS: Fix wording and spelling of undo-related entries.
14193         Mark them as documented.
14195 2015-12-05  Glenn Morris  <rgm@gnu.org>
14197         * lisp/net/net-utils.el: Small improvements.
14199         (net-utils--executable-find-sbin): New function.
14200         (ifconfig-program): Check sbin directories.
14201         Fallback to "ip".  (Bug#22091)
14202         (ifconfig-program-options): Check the actual program in use.
14203         (arp-program): Check sbin directories.
14205 2015-12-04  (tiny change) Arash Esbati  <esbati@gmx.de>  (tiny change)
14207         Fix wrong-type-argument integer-or-marker-p nil error
14209         * lisp/textmodes/reftex-auc.el (reftex-what-index-tag):
14210         Fix (wrong-type-argument integer-or-marker-p nil) error (bug#22077).
14212 2015-12-04  Alan Mackenzie  <acm@muc.de>
14214         Merge branch 'scratch/follow' of /home/acm/emacs/emacs.git/emacs-25 into scratch/follow
14216         Merge necessitated by a rebase operation.
14218 2015-12-04  Alan Mackenzie  <acm@muc.de>
14220         lisp/isearch.el: Eliminate macro isearch-call-message, replacing with funcall.
14222 2015-12-04  Alan Mackenzie  <acm@muc.de>
14224         First commit to scratch/follow.  Make Isearch work with Follow Mode, etc.
14226         doc/lispref/window.texi (Basic Windows): Add paragraph defining "Group of
14227         Windows" and new @defun selected-window-group.
14228         (Window Start and End): Describe new &optional parameter GROUP and
14229         ...-group-function for window-start, window-end, set-window-start, and
14230         pos-visible-in-window-p.
14231         (Textual Scrolling) Describe the same for recenter.
14232         doc/lispref/positions.texi (Screen Lines): Describe the same for
14233         move-to-window-line.
14235         src/window.c (Fwindow_start, Fwindow_end, Fset_window_start)
14236         (Fpos_visible_in_window_p, Frecenter, Fmove_to_window_line): To each, add ar
14237         new optional parameter "group".  At the beginning of each, check whether the
14238         corresponding ...-group-function is set to a function, and if so execute this
14239         function in place of the normal processing.
14240         (syms_of_window): Define symbols for the six new variables below.
14241         (window-start-group-function, window-end-group-function)
14242         (set-window-start-group-function, recenter-group-function)
14243         (pos-visible-in-window-p-group-function, move-to-window-line-group-function):
14244         New permanent local buffer local variables.
14245         src/keyboard.c (Fposn_at_point): Add extra parameter in call to
14246         Fpos_visible_in_window_p.
14248         lisp/window.el (selected-window-group-function): New permanent local buffer
14249         local variable.
14250         (selected-window-group): New function.
14252         lisp/follow.el (follow-mode): Set the ...-group-function variables at mode
14253         enable, kill them at mode disable.  Add/remove follow-after-change to/from
14254         after-change-functions.
14255         (follow-start-end-invalid): New variable.
14256         (follow-redisplay): Manipulate follow-start-end-invalid.
14257         (follow-after-change, follow-window-start, follow-window-end)
14258         (follow-set-window-start, follow-pos-visible-in-window-p)
14259         (follow-move-to-window-line, follow-sit-for): New functions.
14261         lisp/isearch.el (isearch-call-message): New macro.
14262         (isearch-update, with-isearch-suspended, isearch-del-char)
14263         (isearch-search-and-update, isearch-ring-adjust): Invoke above new macro.
14264         (with-isearch-suspended): Rearrange code such that isearch-call-message is
14265         invoked before point is moved.
14266         (isearch-message): Add comment about where point must be at function call.
14267         (isearch-search): Remove call to isearch-message.
14268         (isearch-lazy-highlight-window-group): New variable.
14269         (isearch-lazy-highlight-new-loop): Unconditionally start idle timer.  Move
14270         the battery of tests to ...
14271         (isearch-lazy-highlight-maybe-new-loop): New function, started by idle timer.
14272         Note: (sit-for 0) is still called.
14273         (isearch-lazy-highlight-update): Check membership of
14274         isearch-lazy-highlight-window-group.  Don't set the `window' overlay
14275         property.
14276         (isearch-update, isearch-done, isearch-string-out-of-window)
14277         (isearch-back-into-window, isearch-lazy-highlight-maybe-new-loop)
14278         (isearch-lazy-highlight-search, isearch-lazy-highlight-update)
14279         (isearch-lazy-highlight-update): Call the six amended primitives (see
14280         src/window.c above) with the new `group' argument set to t, to cooperate
14281         with Follow Mode.
14283 2015-12-04  Stefan Monnier  <monnier@iro.umontreal.ca>
14285         * lisp/emacs-lisp/ert.el: Prefer pcase over cl-typecase
14287         * lisp/emacs-lisp/ert.el (ert--should-error-handle-error)
14288         (ert--explain-format-atom, ert--explain-equal-rec)
14289         (ert--print-backtrace, ert-test-result-type-p, ert-select-tests)
14290         (ert--insert-human-readable-selector): Prefer pcase over cl-typecase.
14292 2015-12-04  Artur Malabarba  <bruce.connor.am@gmail.com>
14294         * lisp/character-fold.el: Remove special case-folding support
14296         (character-fold-to-regexp): Remove special code for
14297         case-folding.  Char-fold search still respects the
14298         `case-fold-search' variable (i.e., f matches F).  This only
14299         removes the code that was added to ensure that f also matched
14300         all chars that F matched.  For instance, after this commit, f
14301         no longer matches 𝔽.
14303         This was necessary because the logic created a regexp with
14304         2^(length of the string) redundant paths.  So, when a very
14305         long string "almost" matched, Emacs took a very long time to
14306         figure out that it didn't.  This became particularly relevant
14307         because isearch's lazy-highlight does a search bounded by (1-
14308         match-end) (which, in most circumstances, is a search that
14309         almost matches).  A recipe for this can be found in bug#22090.
14311 2015-12-04  Stefan Monnier  <monnier@iro.umontreal.ca>
14313         * lisp/emacs-lisp/cl-macs.el (character): Can't be negative
14315         Fixes (bug#21701)
14317 2015-12-04  Daiki Ueno  <ueno@gnu.org>
14319         lisp/gnus/qp.el: Don't replace "from " at bol
14321         * lisp/gnus/qp.el (quoted-printable-encode-region): Bind `case-fold-search'
14322         to nil when looking for "^From ".  Problem reported by Simon Josefsson.
14324 2015-12-03  Phillip Lord  <phillip.lord@russet.org.uk>
14326         Externalize some symbols in undo-auto
14328          * doc/lispref/text.texi: Update symbols.
14329          * lisp/simple.el (undo-auto--amalgamate,
14330            undo-auto--current-boundary-timer): Make symbols public.
14331          * src/cmds.c (Fself_insert_command,Fdelete_char): Call
14332            updated symbol.
14334 2015-12-03  Stefan Monnier  <monnier@iro.umontreal.ca>
14336         * lisp/emacs-lisp/smie.el (smie-next-sexp): Fix BOB "token"
14338 2015-12-03  Michael Albinus  <michael.albinus@gmx.de>
14340         Some error message improvements in tramp-sh.el
14342         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
14343         Suppress error messages for "mesg" and "biff" calls.
14344         (tramp-get-remote-path): Ignore errors when expanding
14345         `tramp-own-remote-path'.  Raise a warning instead.
14347 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
14349         Document 'nacl' value for 'system-type'
14351         * doc/lispref/os.texi (System Environment): Document the 'nacl'
14352         value of 'system-type'.
14354 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
14356         Document 'window-max-chars-per-line'
14358         * doc/lispref/windows.texi (Window Sizes): Document
14359         'window-max-chars-per-line'.
14361 2015-12-03  Artur Malabarba  <bruce.connor.am@gmail.com>
14363         Fix some file headers for the purpose of `package--builtins'
14365         * lisp/emacs-lisp/cl-preloaded.el
14366         * lisp/emacs-lisp/eieio-compat.el
14367         * lisp/net/sasl-scram-rfc.el: Add a "Package:" header
14369         * lisp/ielm.el: Fix summary line.
14371 2015-12-03  Artur Malabarba  <bruce.connor.am@gmail.com>
14373         * lisp/emacs-lisp/package.el (package-unpack): Load before compiling
14375         Reload any previously loaded package files before compiling
14376         the package (also reload the same files after compiling).
14377         This ensures that we have the most recent definitions during
14378         compilation, and avoids generating bad elc files when a macro
14379         changes and it is used in a different file from the one it's
14380         defined in.
14382 2015-12-03  Artur Malabarba  <bruce.connor.am@gmail.com>
14384         * lisp/emacs-lisp/package.el: Refactor package activation code
14386         (package-activate): Move code that activates dependencies into
14387         package-activate-1.
14388         (package--load-files-for-activation): New function.
14389         (package-activate-1): Add code for (optionally) activating
14390         dependencies, and move file-loading code into
14391         `package--load-files-for-activation'.
14393 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
14395         Document new font-related functionality
14397         * doc/lispref/display.texi (Low-Level Font): Document
14398         'default-font-width', 'default-font-height', 'window-font-width',
14399         and 'window-font-height'.
14401         * etc/NEWS: Move entries for 'default-font-width',
14402         'default-font-height', 'window-font-width', and 'window-font-height'
14403         to their place and mark them documented.
14405 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
14407         Fix documentation and implementation of 'directory-name-p'
14409         * lisp/files.el (directory-name-p): Modify to recognize
14410         backslashes on MS-Windows and MS-DOS.  Adjust the doc string
14411         accordingly.  Use '=', not char-equal, for comparison, as
14412         letter-case cannot possibly be an issue here.
14414         * doc/lispref/files.texi (Directory Names): Move the documentation
14415         of directory-name-p here from "Relative File Names".  Update the
14416         description per the changes in implementation.
14418         * etc/NEWS: Move the entry for 'directory-name-p' to its proper
14419         place and mark it documented.
14421 2015-12-02  Eli Zaretskii  <eliz@gnu.org>
14423         Minor copyedit in Emacs manual
14425         * doc/emacs/search.texi (Lax Search): Make wording about character
14426         folding by default less definitive.  (Bug#22043)
14428 2015-12-02  Eli Zaretskii  <eliz@gnu.org>
14430         More emacs-module.c fixes for wide ints
14432         * src/emacs-module.c (value_to_lisp) [WIDE_EMACS_INT]: Use
14433         unsigned data types to manipulate pointers, to avoid sign
14434         extension coming after us with a vengeance.
14436         * modules/mod-test/test.el (mod-test-sum-test): Add tests for
14437         Emacs with wide ints that verify integer values near the critical
14438         value that requires us to switch to a cons cell.
14440 2015-12-02  Stephen Leake  <stephen_leake@stephe-leake.org>
14442         Fix bug#22069 in cl-generic.el
14444         * lisp/emacs-lisp/cl-generic.el (cl-no-method): Remove %S; this string is
14445         not run thru `format'.
14447 2015-12-02  Dmitry Gutov  <dgutov@yandex.ru>
14449         APPEND etags--xref-backend to xref-backend-functions
14451         * lisp/progmodes/xref.el (xref-backend-functions):
14452         Use APPEND when adding the default element
14453         (http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00061.html).
14455 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
14457         More accurate documentation of lax whitespace matching
14459         * lisp/isearch.el (isearch-forward-word, isearch-forward-symbol)
14460         (word-search-backward, word-search-forward)
14461         (word-search-backward-lax, word-search-forward-lax): Mention in
14462         doc strings that toggling lax whitespace matching has no effect on
14463         these commands.
14465         * doc/emacs/search.texi (Word Search, Symbol Search): Clarify that
14466         lax whitespace matching has no effect on these commands.
14468 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
14470         Fix emacs-module.c for wide ints
14472         * src/emacs-module.c (lisp_to_value): Compare the produced value
14473         with the original Lisp object, not with the one potentially
14474         converted into a Lisp_Cons.  Fixes assertion violations when
14475         working with integers larger than fit into a 32-bit value.
14477         * modules/mod-test/test.el (mod-test-sum-test): Add tests for
14478         large integers, to test --with-wide-int.
14480 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
14482         Document 'directory-files-recursively'
14484         * lisp/files.el (directory-files-recursively): Doc fix.  Rename
14485         the argument MATCH to REGEXP, to be more explicit about its form.
14487         * doc/lispref/files.texi (Contents of Directories): Improve the
14488         documentation of 'directory-files-recursively'.  Add
14489         cross-references.
14491         * etc/NEWS: Move the entry for 'directory-files-recursively' to
14492         its place and mark it documented.
14494 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
14496         Document 'inhibit-read-only' property
14498         * doc/lispref/text.texi (Special Properties): Describe the new
14499         'inhibit-read-only' text property.  Add cross-reference to where
14500         read-only buffers are described.
14501         * doc/lispref/buffers.texi (Read Only Buffers): Mention that
14502         'inhibit-read-only' property exempts text from being read-only.
14503         Add cross-reference to "Special Properties".
14505         * etc/NEWS: Move the entry about 'inhibit-read-only' property to
14506         its place and mark it documented.
14508 2015-12-01  Artur Malabarba  <bruce.connor.am@gmail.com>
14510         * lisp/emacs-lisp/package.el: Update header comments
14512 2015-12-01  Artur Malabarba  <bruce.connor.am@gmail.com>
14514         * lisp/character-fold.el: Add back multi-char matching
14516         (character-fold-to-regexp): Uncomment recently commented code
14517         and make the algorithm "dummer" by not checking every possible
14518         combination.  This will miss some possible matches, but it
14519         greatly reduces regexp size.
14521         * test/automated/character-fold-tests.el
14522         (character-fold--test-fold-to-regexp): Comment out test of
14523         functionality no longer supported.
14525 2015-12-01  Xue Fuqiao  <xfq.free@gmail.com>
14527         * doc/emacs/ack.texi (Acknowledgments): Update.
14529 2015-12-01  Michael Albinus  <michael.albinus@gmx.de>
14531         Check `file-remote-p' over absolute files names in files.el
14533         * lisp/files.el (directory-files-recursively)
14534         (get-free-disk-space): Check `file-remote-p' over absolute files names.
14536 2015-12-01  Andreas Schwab  <schwab@linux-m68k.org>
14538                 * src/lread.c (syms_of_lread): Doc fix.
14540 2015-12-01  Dmitry Gutov  <dgutov@yandex.ru>
14542         Don't mistake certain JS method calls for keywords
14544         * lisp/progmodes/js.el (js--ctrl-statement-indentation):
14545         Braceless keyword can't come after a period (bug#22063).
14547 2015-12-01  David Reitter  <david.reitter@gmail.com>
14549         Read frame_title_format from buffer-local variable for NS port
14551         * src/nsfns.m (x_implicitly_set_name): Read frame-title-format and
14552         icon-title-format variables from buffer in appropriate window.
14553         (Bug#22048)
14555 2015-12-01  Juri Linkov  <juri@linkov.net>
14557         * lisp/replace.el (occur-engine): Count matches in empty lines.
14559         (Bug#22062)
14561 2015-11-30  Aurélien Aptel  <aurelien.aptel@gmail.com>
14563         * src/emacs-module.h: Fix finalizer typedef for C++11
14565         C++11 standard doesn't allow exception-specification in typedef.
14566         The workaround is to declare a dummy function prototype and use
14567         decltype on it.
14569 2015-11-30  Eli Zaretskii  <eliz@gnu.org>
14571         Fix last change
14573         * src/emacs-module.c (lisp_to_value, value_to_lisp)
14574         [WIDE_EMACS_INT]: Avoid compiler warnings.
14576 2015-11-30  Stefan Monnier  <monnier@iro.umontreal.ca>
14578         Rely on conservative stack scanning to find "emacs_value"s
14580         * src/emacs-module.c (struct emacs_value_tag)
14581         (struct emacs_value_frame, struct emacs_value_storage): Remove.
14582         (value_frame_size): Remove constant.
14583         (struct emacs_env_private): Use Lisp_Object for non_local_exit info.
14584         (lisp_to_value): Remove first arg.
14585         (module_nil): New constant.
14586         Use it instead of NULL when returning an emacs_value.
14587         (module_make_function): Adjust to new calling convention of
14588         Qinternal_module_call.
14589         (DEFUN): Receive args in an array rather than a list.
14590         Use SAFE_ALLOCA rather than xnmalloc.  Skip the lisp_to_value loop when
14591         we don't have WIDE_EMACS_INT.  Adjust to new type of non_local_exit info.
14592         (module_non_local_exit_signal_1, module_non_local_exit_throw_1):
14593         Adjust to new type of non_local_exit info.
14594         (ltv_mark) [WIDE_EMACS_INT]: New constant.
14595         (value_to_lisp, lisp_to_value): Rewrite.
14596         (initialize_frame, initialize_storage, finalize_storage): Remove functions.
14597         (allocate_emacs_value): Remove function.
14598         (mark_modules): Gut it.
14599         (initialize_environment): Don't initialize storage any more.
14600         Keep the actual env object on Vmodule_environments.
14601         (finalize_environment): Don't finalize storage any more.
14602         (syms_of_module): Initialize ltv_mark and module_nil.
14604         * src/emacs-module.h (emacs_value): Make it more clear that this type
14605         is really opaque, including the fact that NULL may not be valid.
14607         * modules/mod-test/mod-test.c (Fmod_test_signal, Fmod_test_throw):
14608         Don't assume that NULL is a valid emacs_value.
14610 2015-11-30  Eli Zaretskii  <eliz@gnu.org>
14612         Yet another doc improvement for search commands
14614         * doc/emacs/search.texi (Word Search, Symbol Search)
14615         (Regexp Search): Document commands that don't support lax
14616         whitespace matching or character folding.
14617         (Nonincremental Search): Mention the search commands that can be
14618         invoked from the menu bar.
14620         * lisp/isearch.el (isearch-define-mode-toggle-word)
14621         (isearch-define-mode-toggle-symbol)
14622         (isearch-define-mode-toggle-character-fold): Note in the doc
14623         string that turning these on exits the regexp mode.
14624         (isearch-forward-regexp, isearch-forward-word)
14625         (isearch-forward-symbol, isearch-backward-regexp)
14626         (word-search-backward, word-search-forward)
14627         (word-search-backward-lax, word-search-forward-lax): State in the
14628         doc string which commands don't support character folding and/or
14629         lax-whitespace matching.
14631 2015-11-30  Martin Rudalics  <rudalics@gmx.at>
14633         Run `window-size-change-functions' also when reading from minibuffer
14635         * src/xdisp.c (redisplay_internal): Run `window-size-change-functions'
14636         also when reading from minibuffer.
14638 2015-11-30  Ulf Jasper  <ulf.jasper@web.de>
14640         Fix scrambling of html-rendered item buffers
14642         * lisp/net/newst-treeview.el (newsticker--treeview-render-text): Fix
14643           scrambling of contents by wrapping call to html-renderer in
14644           save-selected-window.
14646 2015-11-30  Paul Eggert  <eggert@cs.ucla.edu>
14648         Fix font typo in previous doc fix.
14650 2015-11-30  Paul Eggert  <eggert@cs.ucla.edu>
14652         A bit more security doc, esp. file local vars
14654         * doc/emacs/emacs.texi (Top):
14655         * doc/emacs/misc.texi (Miscellaneous Commands):
14656         Refer to new Host Security section.
14657         (Host Security): New section.
14658         * doc/lispref/os.texi (Security Considerations):
14659         Mention file local variables.
14661 2015-11-30  Artur Malabarba  <bruce.connor.am@gmail.com>
14663         * lisp/character-fold.el: Comment out branching code
14665         (character-fold-to-regexp): Comment out code that uses multi-char
14666         table.  The branching caused by this induces absurdly long regexps,
14667         up to 10k chars for as little as 25 input characters.
14669 2015-11-30  Paul Eggert  <eggert@cs.ucla.edu>
14671         Spelling and grammar fixes
14673 2015-11-30  Dmitry Gutov  <dgutov@yandex.ru>
14675         Make lisp-completion-at-point a wrapper instead of an alias
14677         * lisp/progmodes/elisp-mode.el (lisp-completion-at-point):
14678         Turn into an obsolete wrapper around elisp-completion-at-point
14679         (bug#20455).
14681 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
14683         * lisp/isearch.el (isearch-search-fun-default): Nicer error
14685         message when the search fails.
14687 2015-11-29  Dmitry Gutov  <dgutov@yandex.ru>
14689         Update menu-bar-goto-uses-etags-p for the current xref API
14691         * lisp/menu-bar.el (menu-bar-goto-uses-etags-p): Consult
14692         xref-backend-functions, instead of now-nonexistent
14693         xref-find-function.
14695 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
14697         * lisp/isearch.el (isearch-define-mode-toggle): Advertise binding
14699 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
14701         * lisp/menu-bar.el: Use folding in searches
14703         (nonincremental-search-forward): Use `isearch-search-fun-default'
14704         to determine the search function.
14705         (nonincremental-search-backward)
14706         (nonincremental-repeat-search-forward)
14707         (nonincremental-repeat-search-backward): Use it.
14709 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
14711         * lisp/menu-bar.el (menu-bar-goto-uses-etags-p): Fix a warning
14713 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
14715         * lisp/character-fold.el (character-fold-to-regexp): Be careful
14717         not to return huge regexps.
14719 2015-11-29  Eli Zaretskii  <eliz@gnu.org>
14721         Improve documentation of string-collate-* functions
14723         * doc/lispref/strings.texi (Text Comparison): Improve wording and
14724         indexing of 'string-collate-equalp' and 'string-collate-lessp'.
14726         * etc/NEWS: Move the entry of 'string-collate-equalp' and
14727         'string-collate-lessp' to "Lisp Changes" section and mark it as
14728         documented.
14730 2015-11-29  Eli Zaretskii  <eliz@gnu.org>
14732         Document truncate-string-ellipsis
14734         * doc/lispref/display.texi (Size of Displayed Text): Document
14735         'truncate-string-ellipsis'.
14737         * lisp/international/mule-util.el (truncate-string-ellipsis): Doc fix.
14738         (truncate-string-to-width): Mention in the doc string that the
14739         default for ELLIPSIS comes from 'truncate-string-ellipsis'.
14741         * etc/NEWS: Move the 'truncate-string-ellipsis' entry to the "Lisp
14742         Changes" section.
14744 2015-11-29  Eli Zaretskii  <eliz@gnu.org>
14746         Fix confusion wrt character folding in the Emacs manual
14748         * doc/emacs/search.texi (Nonincremental Search, Regexp Search):
14749         Document that invoking search-forward/backward and
14750         re-search-forward/backward supports only case folding, but not the
14751         rest of the lax-search features.  Reported by Mike Kupfer
14752         <m.kupfer@acm.org>.
14754 2015-11-29  Ken Brown  <kbrown@cornell.edu>
14756         Update mod-test-sum-test
14758         * modules/mod-test/test.el (mod-test-sum-test): Update to
14759         accommodate the lack of dladdr on Cygwin.
14761 2015-11-29  Alan Mackenzie  <acm@muc.de>
14763         Byte compiler: Catch missing argument to `funcall'.  Fixes bug#22051.
14765         * lisp/emacs-lisp/bytecomp.el (byte-compile-funcall): When there's no argument
14766         to `funcall', (i) Output an error message; (ii) Generate code to signal a
14767         `wrong-number-of-arguments' error.
14769 2015-11-29  Martin Rudalics  <rudalics@gmx.at>
14771         * lisp/window.el (split-window): Don't sanitize sizes when SIZE is non-nil.
14773 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
14775         * lisp/character-fold.el (character-fold-to-regexp)
14777         Warn about using long strings.
14779         * test/automated/character-fold-tests.el
14780         (character-fold--test-lax-whitespace)
14781         (character-fold--test-consistency): Reduce string size for tests.
14783 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14785         Document renaming of x-select-enable-* variables
14787         * doc/emacs/killing.texi (Clipboard): Rename
14788         x-select-enable-clipboard to select-enable-clipboard and
14789         x-select-enable-primary to select-enable-primary.  Update index
14790         entries.
14792         * etc/NEWS: Mark entry as documented.
14794 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14796         Document the shorthand hints displayed by M-x
14798         * doc/emacs/m-x.texi (M-x): Document the numeric meaning of
14799         suggest-key-bindings.  Document the shorthand hints for commands
14800         that have no key bindings.  Document that M-x completion ignores
14801         obsolete commands.
14803         * etc/NEWS: Move the M-x entry to "Editing Changes" and mark it as
14804         documented.
14806 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14808         Update docs of character folding
14810         * doc/emacs/search.texi (Lax Search): Update the description of
14811         character folding for the latest changes.
14813 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
14815         * lisp/character-fold.el: Also play nice with case-folding
14817         (character-fold-to-regexp): Take `case-fold-search' into account.
14819 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
14821         * lisp/character-fold.el: Add support for multi-char matches
14823         (character-fold-table): Now has an extra-slot. This is a second
14824         char-table that holds multi-character matches.  See docstring for
14825         details.
14826         (character-fold-to-regexp): Can build branching regexps when a
14827         character's entry the extra slot of `character-fold-table' matches the
14828         characters that succeed it.
14830 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
14832         * lisp/character-fold.el: Code simplifications
14834         (character-fold-table): Reduce the scope of a variable.
14835         (character-fold-to-regexp): Change logic to work directly on the
14836         input string.  It's a little easier to understand, probably
14837         faster, and sets us up for implementing multi-char matches.
14839         * test/automated/character-fold-tests.el
14840         (character-fold--test-fold-to-regexp): New test.
14842 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14844         Document changes in "C-h l"
14846         * doc/emacs/help.texi (Misc Help): Document the changes in "C-h l".
14848         * etc/NEWS: mark "C-h l" changes as documented.
14850 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14852         Finalize documentation of 'custom-prompt-customize-unsaved-options'
14854         * doc/emacs/custom.texi (Saving Customizations): Index the new
14855         function 'custom-prompt-customize-unsaved-options'.
14857         * etc/NEWS: Mention when 'custom-prompt-customize-unsaved-options'
14858         is useful.
14860 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14862         Document 'comment-line'
14864         * doc/emacs/programs.texi (Comment Commands): Document
14865         'comment-line'.
14867         * etc/NEWS: Move the entry for 'comment-line' into "Editing Changes".
14869 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14871         Document new checkdoc features
14873         * doc/lispref/tips.texi (Tips, Library Headers): Document the
14874         keyword-checking features of checkdoc and the commands
14875         'checkdoc-file' and 'checkdoc-current-buffer'.
14877         * etc/NEWS: Move the checkdoc-related entries to their own
14878         section.
14880 2015-11-28  Philipp Stephani  <p.stephani2@gmail.com>
14882         Simplify the prologue of emacs-module.c functions
14884         * src/emacs-module.c (MODULE_FUNCTION_BEGIN): New macro.
14885         (module_make_global_ref)
14886         (module_free_global_ref, module_make_function, module_funcall)
14887         (module_intern, module_type_of, module_extract_integer)
14888         (module_make_integer, module_extract_float, module_make_float)
14889         (module_copy_string_contents, module_make_string)
14890         (module_make_user_ptr, module_get_user_ptr, module_set_user_ptr)
14891         (module_get_user_finalizer, module_set_user_finalizer)
14892         (module_vec_set, module_vec_get, module_vec_size): Use new helper
14893         macro MODULE_FUNCTION_BEGIN.
14895 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14897         Don't reject module calls with no arguments
14899         * src/emacs-module.c (Finternal_module_call): Allow ARGLIST be nil.
14901 2015-11-28  Philipp Stephani  <p.stephani2@gmail.com>
14903         Make module-call be visible from Lisp
14905         * src/emacs-module.c (module_make_function): Use internal--module-call.
14906         (Finternal_module_call): Renamed from Fmodule_call.  Add safety
14907         checks.
14908         (syms_of_module): DEFSYM save-value-p and save-pointer-p.  Do
14909         defsubr internal--module-call.
14911 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14913         Add etags tests for the recent Lua-related bugfix
14915         * test/etags/lua-src/test.lua: New file, tests the issues raised
14916         by bug#21934.
14917         * test/etags/Makefile (LUASRC): Add test.lua.
14918         * test/etags/ETAGS.good_1:
14919         * test/etags/ETAGS.good_2:
14920         * test/etags/ETAGS.good_3:
14921         * test/etags/ETAGS.good_4:
14922         * test/etags/ETAGS.good_5:
14923         * test/etags/ETAGS.good_6:
14924         * test/etags/CTAGS.good: Adapt to the new Lua test.  Also, an old
14925         regression fix, resolved around 25 May 2015, required changes to
14926         the "good" ETAGS files.
14928 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14930         Fix Lua tags when a function name includes '.' or ':'
14932         * lib-src/etags.c (Lua_functions): Add a tag for the last element
14933         of a function name after a dot or a colon.  (Bug#21934)
14935 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14937         Improve documentation of search and replace commands
14939         * doc/emacs/search.texi (Replacement and Lax Matches): Document
14940         which commands are affected by 'replace-character-fold'.
14941         (Lax Search): Add a cross reference to "Replacement and Lax
14942         Matches".  Improve wording.  Fix lost extra whitespace.
14943         (Search Customizations): Improve wording.  (Bug#22036)
14944         See also comments in
14945         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02376.html.
14947         * lisp/replace.el (query-replace, query-replace-regexp)
14948         (query-replace-regexp-eval, replace-string, replace-regexp):
14949         Mention 'replace-character-fold' in the doc strings.
14951 2015-11-28  Paul Eggert  <eggert@cs.ucla.edu>
14953         Fix minor problems found by static checking
14955         * src/undo.c (prepare_record): Add proper prototype for C.
14957 2015-11-27  Stefan Monnier  <monnier@iro.umontreal.ca>
14959         * src/emacs-module.c (struct env_storage): Delete
14961         (struct emacs_runtime_private): Keep an emacs_env instead.
14962         (Fmodule_load, Fmodule_call): Declare emacs_env_private separately.
14963         (initialize_environment): Split the arg in two.  Adjust all callers.
14964         Only store the private part in Vmodule_environments.
14965         (finalize_environment): Change the arg to only be the private env.
14966         Adjust all callers.
14968 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
14970         Improve documentation of 'replace-character-fold'
14972         * lisp/replace.el (replace-character-fold): Clarify which commands
14973         are affected by this variable.
14975 2015-11-27  Mark Oteiza  <mvoteiza@udel.edu>
14977         Backport: Add interactive seek command.
14979         * lisp/mpc.el (mpc-cmd-seekcur): New function.
14980         (mpc-seek-current): New command.
14981         (mpc-mode-menu): Add entry for mpc-seek-current
14982         (mpc-mode-map): Bind mpc-seek-current to "g"
14984 2015-11-27  Dmitry Gutov  <dgutov@yandex.ru>
14986         Autoload etags when using its xref backend
14988         * lisp/progmodes/xref.el (xref--etags-backend):
14989         Rename to etags--xref-backend.  Move to etags.el.  Autoload.
14990         (Bug#22026)
14992 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
14994         * lisp/character-fold.el: Allow complex chars to match their decomposition
14996         (character-fold-table): When a character's decomposition does not
14997         involve a formatting tag (i.e., if it has an "exact" description via
14998         other characters), then this character is allowed to match the
14999         decomposition.
15001 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
15003         * lisp/character-fold.el: More descriptive variable names
15005         (character-fold-table): Rename a lot of the lexical variables to
15006         make the code easier to read.
15008 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
15010         * lisp/isearch.el: Ensure we still support `isearch-new-word'
15012         (isearch-new-regexp-function): Define variable.
15013         (isearch-new-word): Define as an obsolete alias. (Bug#22018)
15015 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
15017         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
15019 2015-11-27  Lee Bochicchio  <lboc.home@gmail.com>
15021         * test/automated/abbrev-tests.el: Define more tests
15023         (abbrev-table-name-test, kill-all-abbrevs-test)
15024         (clear-abbrev-table-test): New tests.
15026 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
15028         Add module tests for wrong-type-argument
15030         * modules/mod-test/test.el (mod-test-sum-test): Add tests for
15031         wrong-type-argument.
15033 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
15035         Improve handling of signals and 'throw' in modules
15037         * src/emacs-module.c: Add commentary explaining how to write
15038         functions in this file.
15039         (module_make_global_ref, module_free_global_ref)
15040         (module_non_local_exit_signal, module_non_local_exit_throw)
15041         (module_make_function, module_funcall, module_intern)
15042         (module_type_of, module_is_not_nil, module_eq)
15043         (module_extract_integer, module_make_integer)
15044         (module_extract_float, module_make_float)
15045         (module_copy_string_contents, module_make_string)
15046         (module_make_user_ptr, module_get_user_ptr, module_set_user_ptr)
15047         (module_get_user_finalizer, module_set_user_finalizer)
15048         (module_vec_set, module_vec_get, module_vec_size)
15049         (module_non_local_exit_signal_1, module_non_local_exit_throw_1):
15050         Do nothing and return with failure indication immediately, if some
15051         previous module call signaled an error or wants to throw.  See
15052         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02133.html
15053         for the relevant discussions.
15055 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
15057         Add ':version' tag to 'checkdoc-package-keywords-flag'
15059         * lisp/emacs-lisp/checkdoc.el (checkdoc-package-keywords-flag):
15060         Add a ':version' tag.
15062 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
15064         Improve documentation of 'eval-buffer' and 'eval-region'
15066         * src/lread.c (Feval_buffer, Feval_region): Doc fixes.  (Bug#22023)
15068         * doc/lispref/eval.texi (Eval): Mention narrowing to clarify
15069         "accessible portion of buffer".
15071 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
15073         Unbreak the Cygwin w32 build
15075         * src/emacs.c (main): Call w32_init_main_thread in the Cygwin w32
15076         build as well.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
15078 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
15080         Improve commentary in character-fold.el
15082         * lisp/character-fold.el (character-fold-to-regexp): Move detailed
15083         description from commit log message to comments.  (Bug#22019)
15085 2015-11-26  Alan Mackenzie  <acm@muc.de>
15087         Byte Compiler: generate code to adjust stack count after call to `signal'.
15089         Corrects change from earlier today.
15091         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): supply the current value of
15092         `byte-compile--for-effect' as argument to `byte-compile-form'.
15094 2015-11-26  Eli Zaretskii  <eliz@gnu.org>
15096         Improve commentary of prepare_to_modify_buffer_1
15098         * src/insdel.c (prepare_to_modify_buffer_1): Mention in commentary
15099         that this function runs Lisp.  Suggested by Richard Stallman
15100         <rms@gnu.org>.
15102 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
15104         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
15106 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
15108         Fix regression after merge.
15110          * src/undo.c (prepare_record): Remove call to run_undoable_change.
15112 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
15114         After delete, record point location in undo.
15116         Addresses Bug #21968.
15118                 * lisp/simple.el (undo-auto--add-boundary): Clean up code to
15119                 better support intercalating calls.
15120                 * src/keyboard.c, src/keyboard.h (command_loop_1): Store value of
15121                 point and current buffer before each command.
15122                 * src/undo.c (record_point): Now only record the point.
15123                 * src/undo.c (prepare_record): Functionality removed form
15124                 record_point.
15125                 * src/undo.c (record_delete): Check if point needs recording.
15126                 * src/undo.c (undo-boundary): Record value of point before each
15127                 boundary.
15128                 * test/automated/simple-test.el: New tests.
15130         Conflicts:
15131                 src/undo.c
15133 2015-11-26  Eli Zaretskii  <eliz@gnu.org>
15135         Fix compiler warnings in w32.c
15137         * src/w32.c (sys_socket): In case of error, use -1 as return
15138         value, not INVALID_SOCKET, which causes compiler warnings.
15139         (maybe_load_unicows_dll): Cast the return value of GetProcAddress
15140         to the appropriate function signature, to avoid compiler errors.
15141         Reported by Andy Moreton <andrewjmoreton@gmail.com>.  (Bug#21953)
15143 2015-11-26  Dmitry Gutov  <dgutov@yandex.ru>
15145         Check if the file exists on disk before producing the revert diff
15147         * lisp/vc/vc-dispatcher.el (vc-buffer-sync): Check if the file
15148         exists on disk (bug#20558).
15150 2015-11-26  Alan Mackenzie  <acm@muc.de>
15152         Byte compiler: on setq with an odd number of arguments, generate a `signal'
15154         * lisp/emacs-lisp/cconv.el (cconv-convert): Don't transform `setq' form when
15155         it has an odd number of arguments, to allow bytecomp to handle the error.
15157         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): In a `setq' form with an
15158         odd number of arguments, generate a `signal' instead of the normal code.
15160 2015-11-26  Dmitry Gutov  <dgutov@yandex.ru>
15162         Use find-tag-default for xref-backend-identifier-at-point
15164         * lisp/progmodes/etags.el (find-tag-tag)
15165         (tags-completion-at-point-function): Extract common code as
15166         find-tag--default.
15167         (xref-backend-identifier-at-point): Define in terms of the new
15168         function.
15170 2015-11-26  Paul Eggert  <eggert@cs.ucla.edu>
15172         * src/undo.c (record_property_change): Remove now-unused local.
15174 2015-11-25  Phillip Lord  <phillip.lord@russet.org.uk>
15176         run_undoable_changes now called from insdel.
15178         The original calls from inside undo.c are not always at a safe position
15179         to call lisp, as they originate in varied positions within insdel.c.
15180         Calling them directly from prepare_to_modify_buffer_1 ensures that they
15181         are always run at the same point.
15183          * src/undo.c (run_undoable_changes,syms_of_undo): Remove function
15184          and symbol used.
15185          * src/insdel.c (run_undoable_changes): Add function and symbol.
15187 2015-11-25  Eli Zaretskii  <eliz@gnu.org>
15189         Improve and update documentation of search commands
15191         * doc/emacs/search.texi (Lax Search): Renamed from "Search Case";
15192         all references changed.  Move the description of lax-whitespace
15193         here.  Add description of the new character folding features and
15194         additional customizable options.
15195         (Isearch Yank): Move before "Error in Search".
15196         (Basic Isearch): Improve wording.  Add index entries.  Add short
15197         description of how to abandon search, making this subsection a
15198         complete introduction to search basics.
15199         (Repeat Isearch): Add index entries.  Describe additional
15200         customizable options.  Describe mouse clicks.
15201         (Isearch Yank): Add index entries.  Describe mouse-2 click in echo
15202         area.  Describe more customizable options.
15203         (Error in Isearch): Add index entries.
15204         (Special Isearch): Move actual description of some isearch
15205         commands to other sections, leaving here just the summary of the
15206         commands.  Add command that toggles character folding.  Describe
15207         commands, like "C-h C-h", that were previously omitted for some
15208         reason.
15209         (Not Exiting Isearch): Describe search-exit-option.  Add index
15210         entries.
15211         (Word Search): Describe eww-search-word and eww-search-prefix.
15212         (Symbol Search): Add index entries.
15213         (Regexp Search): Describe regexp-search-ring-max.
15214         (Replacement and Lax Matches): Renamed from "Replacement and
15215         Case"; all references changed.  Describe lax-whitespace matching
15216         in replace commands and related options.  Describe character
15217         folding in replace commands and related options.
15218         (Query Replace): Describe query-replace-from-to-separator and the
15219         new history features.  Add index entries for highlighted text.
15220         Describe query-replace-skip-read-only.  Describe more keys
15221         accepted by query-replace.
15222         (Other Repeating Search): More index entries for Occur.  Describe
15223         list-matching-lines-default-context-lines.
15224         (Search Customizations): New section, documents customizable
15225         options that were not documented until now.
15226         * doc/emacs/glossary.texi (Glossary): Add "Case Folding" and
15227         "Character Folding".
15229         * etc/NEWS: Move search- and replace-related entries to a single
15230         parent section.
15232         * lisp/replace.el (query-replace-show-replacement): Doc fix.
15233         * lisp/isearch.el (search-nonincremental-instead)
15234         (isearch-hide-immediately): Doc fixes.
15236 2015-11-25  Katsumi Yamaoka  <yamaoka@jpl.org>
15238         Remove nnml-retrieve-groups that is unnecessary and somewhat problematic
15240         * lisp/gnus/nnml.el (nnml-retrieve-groups): Remove.  See:
15241         <http://thread.gmane.org/gmane.emacs.gnus.general/86308> and
15242         <http://thread.gmane.org/gmane.emacs.gnus.general/86321>
15244 2015-11-25  Paul Eggert  <eggert@cs.ucla.edu>
15246         Fix module_format_fun_env when dynlib_addr fails
15248         * src/emacs-module.c (module_format_fun_env):
15249         exprintf doesn’t support %p, so use %x.  Reported by Eli Zaretskii in:
15250         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02122.html
15252 2015-11-25  Paul Eggert  <eggert@cs.ucla.edu>
15254         Disambiguate variable help a bit better
15256         * lisp/help-fns.el (describe-variable): Quote the
15257         variable’s value if it is a symbol other than t or nil.
15258         See: T.V Raman in:
15259         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02147.html
15261 2015-11-25  Dmitry Gutov  <dgutov@yandex.ru>
15263         Pass SVN commit message through log-edit-extract-headers
15265         * lisp/vc/vc-svn.el (vc-svn-checkin): Pass COMMENT through
15266         log-edit-extract-headers (bug#18954).
15268 2015-11-24  Alan Mackenzie  <acm@muc.de>
15270         CC Mode: Eliminate compiler warning messages.
15272         * lisp/progmodes/cc-mode.el (top level): remove compile time declaration of
15273         `font-lock-syntactic-keywords' (which CC Mode doesn't use).
15274         * lisp/progmodes/cc-awk.el (awk-mode-syntax-table)
15275         (c-awk-set-syntax-table-properties): Clarify comments about
15276         `font-lock-syntactic-keywords'.
15278         * lisp/progmodes/cc-bytecomp.el (cc-bytecomp-load): Create a dummy declaration
15279         of this before the real (interpreted) one, to satisfy the byte compiler.
15281 2015-11-24  Simen Heggestøyl  <simenheg@gmail.com>
15283         Extend the test suite for json.el
15285         * lisp/json.el (json-plist-p): Clarify docstring.
15287         * test/automated/json-tests.el (json-tests--with-temp-buffer): New
15288         macro.
15289         (test-json-join, test-json-alist-p)
15290         (test-json-plist-p, test-json-advance, test-json-peek)
15291         (test-json-pop, test-json-skip-whitespace)
15292         (test-json-read-keyword, test-json-encode-keyword)
15293         (test-json-read-number, test-json-encode-number)
15294         (test-json-read-escaped-char, test-json-read-string)
15295         (test-json-encode-string, test-json-encode-key)
15296         (test-json-new-object, test-json-add-to-object)
15297         (test-json-read-object, test-json-encode-list)
15298         (test-json-read-array, test-json-encode-array)
15299         (test-json-read, test-json-read-from-string)
15300         (test-json-encode): New tests.
15301         (json-read-simple-alist): Merged into `test-json-read-object'.
15302         (json-encode-string-with-special-chars): Merged into
15303         `test-json-encode-string'.
15304         (json-read-string-with-special-chars): Split into
15305         `test-json-encode-string' and `test-json-read-from-string'.
15307 2015-11-24  Anders Lindgren  <andlind@gmail.com>
15309         Fixed bug#18283: Enable applescript in NextStep.
15311         * nextstep/templates/Info.plist.in: Set NSAppleScriptEnabled to YES.
15313 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
15315         Allow completion on dynamic module files in load-library
15317         * lisp/files.el (load-library): Bind completion-ignored-extensions
15318         to nil, to allow completion on dynamic modules typed as file
15319         names.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
15321 2015-11-24  Alan Mackenzie  <acm@muc.de>
15323         CC Mode: eliminate almost all byte compilation warnings
15325         * lisp/progmodes/cc-bytecomp.el (cc-bytecomp-noruntime-functions): Remove.
15326         (cc-require): Remove the crude hack that saved and restored
15327         byte-compile-noruntime-functions.
15328         (cc-conditional-require, cc-conditional-require-after-load): New macros.
15330         * lisp/progmodes/cc-defs.el (top level): Reformulate code which loaded
15331         cc-fix.el using the new macros in cc-bytecomp.el.
15333         * lisp/progmodes/cc-langs.el (c++-template-syntax-table)
15334         (c-no-parens-syntax-table): Add extra "(eval ..)"s around "'(lambda ..)"
15335         forms to remove the superflous quotes.
15337 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
15339         Add one more mod-test test
15341         * modules/mod-test/test.el (mod-test-sum-test): Test the error
15342         signaled when the function is invoked with a wrong number of
15343         arguments.
15345 2015-11-24  Philipp Stephani  <phst@google.com>
15347         * modules/mod-test/mod-test.c (Fmod_test_sum): Verify there are 2 args.
15349 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
15351         Implement dynlib_addr for MS-Windows
15353         * src/dynlib.c [WINDOWSNT]: Include w32common.h.
15354         <g_b_init_get_module_handle_ex> [WINDOWSNT]: New static variable.
15355         (GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS)
15356         (GET_MODULE_HANDLE_EX_FLAG_UNCHANGED_REFCOUNT) [WINDOWSNT]: Define
15357         if undefined.
15358         (dynlib_reset_last_error): Reset g_b_init_get_module_handle_ex to
15359         zero.
15360         (dynlib_addr) [WINDOWSNT]: Non-trivial implementation to report
15361         the full file name of the module for a given address.
15363 2015-11-24  Alan Mackenzie  <acm@muc.de>
15365         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
15367 2015-11-24  Alan Mackenzie  <acm@muc.de>
15369         Squashed commit of the following:
15371         commit e1ecf76585bef2eb87995f7a7f92cc12003a6f70
15372         Author: Alan Mackenzie <acm@muc.de>
15373         Date:   Tue Nov 24 16:50:09 2015 +0000
15375             Byte compile: minor amendments.
15377             * lisp/emacs-lisp/bytecomp.el (byte-compile-initial-macro-environment):
15378             add a comment to explain the binding of variables around a subsidiary
15379             compilation.
15380             (byte-compile-new-defuns): Amend the doc string.
15382         commit c537bfed1dda1593d218956ff00c6105a3ff0316
15383         Author: Alan Mackenzie <acm@muc.de>
15384         Date:   Sat Nov 21 18:43:57 2015 +0000
15386             Byte compiler: fix spurious warnings "might not be defined at runtime".
15388             Also initialize byte-compile-noruntime-functions between runs.
15390             * lisp/emacs-lisp/bytecomp.el (byte-compile-new-defuns): New variable.
15391             (byte-compile-initial-macro-environment): For eval-when-compile: bind
15392             byte-compile-unresolved-functions and byte-compile-new-defuns around
15393             byte-compile-top-level, to prevent spurious entries being made.
15394             (byte-compile-warn-about-unresolved-functions): Check whether function is
15395             in byte-compile-new-defuns before emitting a warning about it.
15396             (byte-compile-from-buffer): Initialize new variable and
15397             byte-compile-noruntime-functions to nil.
15398             (byte-compile-file-form-require): record all new functions defined by a
15399             `require' in byte-compile-new-defuns.
15400             (byte-compile-file-form-defmumble): record the new alias in
15401             byte-compile-new-defuns.
15403 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
15405         Fix crash at startup related to GC of font entities
15407         * src/font.h (GC_FONT_SPEC_P, GC_FONT_ENTITY_P)
15408         (GC_FONT_OBJECT_P, GC_XFONT_SPEC, GC_XFONT_ENTITY)
15409         (GC_XFONT_OBJECT): New macros, for use in garbage collector.
15410         * src/alloc.c (compact_font_cache_entry, compact_font_caches):
15411         Don't ifdef away font cache compaction on NT_GUI, as the problems
15412         which led to that seem to have been solved.
15413         (compact_font_cache_entry): Use GC_FONT_SPEC_P, GC_XFONT_SPEC,
15414         GC_XFONT_ENTITY, and GC_XFONT_OBJECT, instead of their non-GC_
15415         cousins.  (Bug#21999)
15417 2015-11-24  Alan Mackenzie  <acm@muc.de>
15419         Byte compile: Output an error, not a warning, for odd number of args to setq
15421         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): Amend.
15423 2015-11-24  Ken Raeburn  <raeburn@raeburn.org>
15425         Fix kbd_buffer iteration loop in readable_events
15427         * src/keyboard.c (readable_events): Wrap the event pointer back to the
15428         start of the kbd_buffer array inside the top of the loop instead of
15429         right before checking the loop condition, since kbd_fetch_ptr and
15430         kbd_store_ptr point past the end of the array to mean that element 0
15431         is next. (bug#21935)
15433 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
15435         Improve text-quoting-style doc again
15437         * doc/lispref/help.texi (Keys in Documentation):
15438         Omit overkill discussion of ‘setq’.  Mention Emacs versions
15439         where ‘grave’ style was standard.
15441 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
15443         Improve text-quoting-style doc
15445 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
15447         Simplify module_make_function
15449         * src/emacs-module.c (module_make_function):
15450         Simplify by calling build_unibyte_string.
15452 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
15454         Port better to FreeBSD’s dlfunc vs dlsym
15456         This avoids warnings when converting between void * and
15457         function pointers, which strict C11 does not allow.
15458         * configure.ac (dlfunc): Check for existence.
15459         * src/dynlib.c (dlfunc) [!HAVE_DLFUNC]: New macro.
15460         (dynlib_func): New function.
15461         * src/dynlib.h (dynlib_function_ptr, dynlib_func): New decls.
15462         * src/emacs-module.c (Fmodule_load): Use dynlib_func, not
15463         dynlib_sym, for function pointers.
15465 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
15467         Simplify use of emacs_finalizer_function type
15469         * src/emacs-module.h (emacs_finalizer_function):
15470         Now EMACS_NOEXCEPT.  All users simplified to omit EMACS_NOEXCEPT.
15471         (struct emacs_env_25): Use emacs_finalizer_function where applicable.
15473 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
15475         module_format_fun_env fixes
15477         * src/doprnt.c (exprintf) [HAVE_MODULES]: Also define in this case.
15478         * src/emacs-module.c (module_format_fun_env):
15479         Convert path and sym to UTF-8.
15480         Don’t use VLAs, as the C11 standard says they’re optional,
15481         and anyway they can cause core dumps with large allocations.
15482         Use exprintf rather than snprintf, as exprintf handles arbitrarily
15483         long strings.  Simplify the code a bit.
15485 2015-11-23  Dmitry Gutov  <dgutov@yandex.ru>
15487         Don't use package-user-dir in elisp-library-roots if it's not bound
15489         * lisp/progmodes/elisp-mode.el (elisp-library-roots): Don't
15490         use package-user-dir if it's not bound (bug#19759).
15492 2015-11-23  Anders Lindgren  <andlind@gmail.com>
15494         New visible-bell for NextStep (OS X El Capitan compatible).
15496         Instead of inverting a rectangle in the middle of the frame, use
15497         the standard NextStep image "caution", represented using an
15498         warning sign with an exclamation mark.  (Bug#21662)
15500         Implemented based on a suggestion drafted by Mustafa Kocaturk.
15502         * src/nsterm.m (EmacsBell): New class for managing the caution
15503         image.  Support multiple active bells, the image is removed once
15504         all bells have timed out.
15505         (ns_timeout): Removed, no longer used.
15506         (ns_ring_bell): Reimplemented to use EmacsBell.
15508 2015-11-23  Johan Bockgård  <bojohan@gnu.org>
15510         * lisp/emacs-lisp/nadvice.el (add-function): Fix debug spec.
15512         (remove-function): Ditto. (Bug#20376)
15514 2015-11-23  Mark Oteiza  <mvoteiza@udel.edu>
15516         * lisp/leim/quail/tamil-dvorak.el: Add necessary escapes.
15518 2015-11-23  Eli Zaretskii  <eliz@gnu.org>
15520         Improve how non-ASCII strings are accepted from modules
15522         * src/emacs-module.c (module_make_function, module_make_string):
15523         Build a unibyte Lisp string and then decode it by UTF-8, instead
15524         of building a multibyte string without decoding.  This is more
15525         tolerant to deviations from UTF-8.
15527 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
15529         Port recent module changes to pickier compilers
15531         * src/emacs-module.c (module_make_function)
15532         (module_make_string): Add casts to fix pointer signedness issues.
15534 2015-11-23  Philipp Stephani  <phst@google.com>
15536         Fix how strings are accepted from modules
15538         * src/emacs-module.c (module_make_function, module_make_string): Use
15539         make_multibyte_string.
15540         (module_copy_string_contents): Encode before reading the byte
15541         size.  Return false if and only if an error occurred.
15543 2015-11-23  Eli Zaretskii  <eliz@gnu.org>
15545         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
15547 2015-11-23  Shakthi Kannan  <shakthimaan@gmail.com>
15549         Add the tamil-dvorak input method
15551         * lisp/leim/quail/tamil-dvorak.el: New file.  (Bug#21768)
15553         * etc/NEWS: Mention the new input method.
15555 2015-11-23  Martin Rudalics  <rudalics@gmx.at>
15557         Move setting FRAME_WINDOW_SIZES_CHANGED to resize_frame_windows.
15559         * src/frame.c (adjust_frame_size): Don't set
15560         FRAME_WINDOW_SIZES_CHANGED here ...
15561         * src/window.c (resize_frame_windows): ... but here, as suggested
15562         by Stefan Monnier.  Also remove some dead code along the way.
15564 2015-11-23  Alan Mackenzie  <acm@muc.de>
15566         * etc/NEWS (Incompatible Lisp Changes): Also `setf' needs an even # of args.
15568 2015-11-23  Alan Mackenzie  <acm@muc.de>
15570         Signal an error when `setf' gets an odd number of arguments.
15572         * lisp/emacs-lisp/gv.el (setf): Amend.
15574 2015-11-23  Stefan Monnier  <monnier@iro.umontreal.ca>
15576         * lisp/emacs-lisp/smie.el (smie-backward-sexp): Handle BOB better.
15578 2015-11-23  Alan Mackenzie  <acm@muc.de>
15580         * etc/NEWS (Incompatible Lisp Changes): Document new restriction on `setq'.
15582 2015-11-23  Alan Mackenzie  <acm@muc.de>
15584         Expunge occurrences of `setq' with an odd number of arguments.
15586         * lisp/apropos.el (apropos-documentation):
15587         * lisp/obsolete/complete.el (PC-include-file-all-completions):
15588         * lisp/progmodes/compile.el (compilation-goto-locus):
15589         * lisp/vc/vc-cvs.el (vc-cvs-parse-root): (twice)
15590         Insert missing nil at end of `setq' forms.
15592         * lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-autoload): Remove an
15593         erroneous trailing variable name from a setq, thus allowing a compilation
15594         properly to track functions not defined at runtime.
15596 2015-11-23  John Wiegley  <johnw@newartisans.com>
15598         Add a note about a questionable use of bool in xdisp.c
15600 2015-11-23  Alan Mackenzie  <acm@muc.de>
15602         Issue a warning from the byte compiler on a malformed `setq' form.
15604         Partly fixes bug#20241.
15605         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): Issue a warning when a
15606         `setq' form with an odd number of arguments is compiled.
15608 2015-11-23  Alan Mackenzie  <acm@muc.de>
15610         Don't let cconv_convert insert a nil argument into a `setq' form.
15612         Fixes bug#21983.
15613         * lisp/emacs-lisp/cconv.el (cconv-convert): Don't silently insert a nil last
15614         argument into a `setq' when there're an odd number of args.  This enables the
15615         byte compiler to issue a message in this case.
15617 2015-11-23  Alan Mackenzie  <acm@muc.de>
15619         Signal an error when `setq' has an odd number of arguments.  Fixes bug#20241.
15621         * src/eval.c (Fsetq): Signal an error on an odd number of arguments.
15622         (syms_of_eval): Add a DEFSYM for Qsetq.
15624 2015-11-23  Martin Rudalics  <rudalics@gmx.at>
15626         * doc/lispref/windows.texi (Window Sizes): Fix indices and references.
15628         * src/frame.c (adjust_frame_size): Set FRAME_WINDOW_SIZES_CHANGED (Bug#21975).
15630 2015-11-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
15632         Add EUDC BBDB 3 entry in NEWS
15634         * NEWS: Mention EUDC BBDB backend support for BBDB 3.
15636 2015-11-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
15638         Improve EUDC to BBDB 3 export
15640         * lisp/net/eudc-vars.el (eudc-ldap-bbdb-conversion-alist): Change phone
15641         entry to single item.  Add company conversion.
15642         * lisp/net/eudc-export.el (eudc-bbdbify-company): New function.
15643         (bbdb-parse-phone): Declare function.
15644         (eudc-bbdbify-phone): Add BBDB 3 support.
15645         (Bug#21971)
15647 2015-11-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
15649         Add BBDB 3 support for EUDC export
15651         * lisp/net/eudc.el: Add bbdb-version defvar.
15652         (eudc--using-bbdb-3-or-newer-p): New function.
15653         * lisp/net/eudc-export.el (eudc-create-bbdb-record): Add support for
15654         bbdb-create-internal argument list changes introduced in BBDB 3.
15655         * lisp/net/eudcb-bbdb.el: Remove bbdb-version defvar.
15656         (eudc-bbdb-field): Call eudc--using-bbdb-3-or-newer-p.
15657         (Bug#21971)
15659 2015-11-22  Eli Zaretskii  <eliz@gnu.org>
15661         Allow loading modules by 'load-file'
15663         * src/lread.c (Fload): Call 'unbind_to' with 'Fmodule_load' as the
15664         2nd arg, to avoid the "binding stack not balanced" error.
15665         (syms_of_lread) <module-file-suffix>: New Lisp variable.
15667         * lisp/files.el (module-file-suffix): Declare.
15668         (load-file): Remove 'module-file-suffix' from
15669         'completion-ignored-extensions', to allow completion on modules.
15671         * etc/NEWS: Mention 'module-file-suffix'.
15673 2015-11-22  Eli Zaretskii  <eliz@gnu.org>
15675         Fix unoptimized builds
15677         * src/lisp.h (XTYPE): Move before XSYMBOL, to fix unoptimized
15678         builds.
15680 2015-11-22  Dmitry Gutov  <dgutov@yandex.ru>
15682         Work around the asynchronous-empty-diff problem
15684         * lisp/vc/vc-rcs.el (vc-rcs-diff):
15685         * lisp/vc/vc-mtn.el (vc-mtn-diff):
15686         * lisp/vc/vc-hg.el (vc-hg-diff):
15687         * lisp/vc/vc-git.el (vc-git-diff): Ignore the ASYNC argument,
15688         do a synchronous process call (bug#21969).
15690 2015-11-22  Karl Fogel  <kfogel@red-bean.com>
15692         Finish excising electric indent from `open-line'
15694         * lisp/simple.el (open-line): Remove INTERACTIVE argument.
15696         * test/automated/simple-test.el (open-line-indent, open-line-hook):
15697           Adjust accordingly.
15699         This change finishes what my commit of Thu Nov 19 17:32:37 2015 -0600
15700         (git commit c59353896) started.  It turns out that having INTERACTIVE
15701         cause `post-self-insert-hook' to run (via `newline') meant `open-line'
15702         still had the electric indent behavior, as `post-self-insert-hook'
15703         normally contains `electric-indent-post-self-insert-function' ever
15704         since `electric-indent-mode' has been on by default.  Tracing the code
15705         change in `open-line' is mildly twisty, because Artur Malabarba's
15706         earliest two commits of 24 Oct 2015 first removed the `interactive'
15707         form entirely (git commit 6939896e2) and then restored it with the new
15708         extra "p" already added (git commit bd4f04f86), such that there is no
15709         single-commit diff in which one sees the second "p" appear.  Thus this
15710         change is effectively a reversion of parts of each of those commits.
15712         This could close bug#21884, at least until further discussion.
15714 2015-11-22  Dmitry Gutov  <dgutov@yandex.ru>
15716         Adhere closer to the "implicit tag name" definition
15718         * lisp/progmodes/etags.el (etags-tags-completion-table):
15719         Adhere closer to the "implicit tag name" definition.  Simplify
15720         the regexp.  Search for the explicit tag name first, and when
15721         not found, search locally for the implicit one.  (Bug#21934)
15723 2015-11-22  Stefan Monnier  <monnier@iro.umontreal.ca>
15725         Unrevert most of regexp reentrancy abort patch
15727         The problem was in:
15728           * src/syntax.c (update_syntax_table_forward): Propertize even when truncated
15729         which is hence not unreverted.
15730         The rest is:
15731         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
15732         (UPDATE_SYNTAX_TABLE_FAST): Re-introduce.
15733         All callers in regex.c changed back to the _FAST versions.
15735         * test/automated/message-mode-tests.el: Tweak the test to rely on auto
15736         propertization in backward-sexp.
15738 2015-11-21  Paul Eggert  <eggert@cs.ucla.edu>
15740         Revert regexp reentrancy abort patch
15742         Although the patch does fix Bug#21688 and prevents a core dump,
15743         it also makes the message-mode-propertize test fail; see:
15744         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01667.html
15745         Perhaps someone else can come up with a better fix some day.
15746         * src/syntax.c (update_syntax_table_forward):
15747         Propertize even when truncated.
15748         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
15749         (UPDATE_SYNTAX_TABLE_FAST): Remove.
15750         All callers changed back to the non-_FAST versions.
15752 2015-11-21  Paul Eggert  <eggert@cs.ucla.edu>
15754         Add a few safety checks when ENABLE_CHECKING
15756         This was motivated by the recent addition of module code,
15757         which added some ENABLE_CHECKING-enabled checks that are
15758         useful elsewhere too.
15759         * src/alloc.c (compact_font_cache_entry):
15760         * src/fns.c (sweep_weak_table):
15761         * src/lread.c (oblookup):
15762         Use gc_asize rather than doing it by hand.
15763         * src/emacs-module.c (module_make_global_ref)
15764         (module_free_global_ref, module_vec_size):
15765         Omit assertions that lisp.h now checks.
15766         * src/lisp.h (XFASTINT, ASIZE): In functional implementations,
15767         check that the result is nonnegative.  Use eassume, as this
15768         info can help a bit when optimizing production code.
15769         (XSYMBOL) [!USE_LSB_TAG]: Assert that argument is a symbol,
15770         to be consistent with the USE_LSB_TAG case.
15771         (gc_asize): New function, when ASIZE is needed in the gc.
15772         (gc_aset): Use it.
15773         (HASH_TABLE_P): Move definition up, so that it can be used ...
15774         (XHASH_TABLE): ... here, to assert that the arg is a hash table.
15776 2015-11-21  Eli Zaretskii  <eliz@gnu.org>
15778         Simplify recording of main thread's ID on MS-Windows
15780         * src/w32term.c (w32_initialize):
15781         * src/w32console.c (initialize_w32_display):
15782         * src/w32fns.c (globals_of_w32fns): Don't record the main thread
15783         ID independently for each type of session (GUI, TTY, batch).
15784         * src/w32term.c (w32_init_main_thread): New function, records the
15785         main thread's thread ID.
15786         * src/w32term.h: Add prototype for w32_init_main_thread.
15787         * src/emacs.c (main) [WINDOWSNT]: Call w32_init_main_thread.
15789         * src/emacs-module.c [WINDOWSNT]: Rename main_thread_id to
15790         main_thread, for consistency with other threading libraries.  All
15791         users changed.  Include w32term.h.
15792         (check_main_thread) [WINDOWSNT]: Simplify the test: no need to
15793         make sure the main thread is alive, as we hold a handle on it
15794         opened by w32_init_main_thread.
15795         (module_init) [WINDOWSNT]: Reuse the thread ID recorded by
15796         w32_init_main_thread, instead of calling the requisite APIs once
15797         more.
15799 2015-11-21  Mark Oteiza  <mvoteiza@udel.edu>
15801         Backport: Fix issue where a new tempfile was created every refresh
15803         * lisp/mpc.el (mpc-format): Leave dir as relative path
15805 2015-11-21  Eli Zaretskii  <eliz@gnu.org>
15807         Call 'window-size-change-functions' for mini-windows
15809         * src/window.c (grow_mini_window, shrink_mini_window): Set the
15810         frame's 'window_sizes_changed' flag.
15811         * src/xdisp.c (redisplay_internal): Call the hooks on
15812         'window-size-change-functions' if the call to 'echo_area_display'
15813         sets the frame's 'window_sizes_changed' flag.
15814         (syms_of_xdisp) <window-size-change-functions>:
15815         Update doc string to indicate the mini-window resizes trigger a
15816         call to the hooks, and don't promise that will happen "before
15817         redisplay".  (Bug#19576, Bug#21333)
15819         * doc/lispref/windows.texi (Window Hooks): Update the description
15820         of 'window-size-change-functions'.
15822 2015-11-21  Eli Zaretskii  <eliz@gnu.org>
15824         Improve documentation of dynamic modules
15826         * src/fns.c (Frequire): Doc fix to include the dynamic module
15827         support.
15828         * src/lread.c (Fload, Vload_suffixes): Doc fixes to include the
15829         dynamic module support.
15830         (Fload): Treat the module suffix the same as '*.el' and '*.elc'
15831         wrt the MUST-SUFFIX argument.
15833         * etc/NEWS: Expand documentation of dynamically loaded modules.
15835 2015-11-21  Philipp Stephani  <phst@google.com>  (tiny change)
15837         Initial documentation for dynamic modules
15839         * etc/NEWS: Mention the new support for dynamically loaded modules.
15841 2015-11-21  Dmitry Gutov  <dgutov@yandex.ru>
15843         Add xref--etags-backend to xref-backing-functions using add-hook
15845         * lisp/progmodes/xref.el (xref-backend-functions): Move the
15846         default value into a separate `add-hook' call (bug#21964).
15848         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
15849         Don't declare the xref-backend-functions variable.
15850         It doesn't make any difference.
15852 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
15854         Fix double-decrement bug when freeing global refs
15856         * src/emacs-module.c (module_free_global_ref): Add a FIXME
15857         comment about error reporting.  Fix a recently-introduced typo
15858         that double-decremented the refcount.
15860 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
15862         Declare emacs_module_init in the module API
15864         * src/emacs-module.h (emacs_module_init): New decl.
15865         Without it, GCC might complain about a module that defines
15866         emacs_module_init without using it.  This also checks the
15867         API better.
15869 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
15871         Fix module test to use ptrdiff_t nargs too
15873         * modules/mod-test/mod-test.c (Fmod_test_return_t)
15874         (Fmod_test_sum, Fmod_test_signal, Fmod_test_throw)
15875         (Fmod_test_non_local_exit_funcall, Fmod_test_globref_make)
15876         (Fmod_test_string_a_to_b, Fmod_test_userptr_make)
15877         (Fmod_test_userptr_get, Fmod_test_vector_fill)
15878         (Fmod_test_vector_eq): Arg counts are ptrdiff_t, not int.
15879         (finalizer): Remove; no longer used.
15881 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
15883         Fix reindent-introduced typo in module code
15885         * src/emacs-module.c (MODULE_SETJMP_1): Fix typo that I
15886         introduced while reindenting the code earlier, and add a
15887         comment explaining the unusual use of do-while here.
15889 2015-11-20  Anders Lindgren  <andlind@gmail.com>
15891         Fixed bug#19576: `write-file' saves wrong buffer.
15893         If a function on the hook `window-size-change-functions' doesn't
15894         restore the current buffer, functions that save and restore the
15895         current window configuration (like `y-or-no-p') could silently
15896         change the current buffer.  When `write-file' asked the user
15897         confirmation to overwrite a file, `y-or-no-p' changed the current
15898         buffer, and the wrong buffer was saved to the file.
15900         * lisp/follow.el (follow-windows-start-end): Call `select-frame'
15901         using the `norecord' parameter.
15902         (follow-window-size-change): Restore current buffer. Call
15903         `select-frame' using the `norecord' parameter. Cleanup.
15905 2015-11-20  John Wiegley  <johnw@newartisans.com>
15907         Correct a documentation error in frames.texi
15909 2015-11-20  Stephen Leake  <stephen_leake@stephe-leake.org>
15911         * lisp/cedet/mode-local.el: Delete obsolete comment
15913 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
15915         Module function arg counts are ptrdiff_t, not int
15917         * src/emacs-module.c (struct module_fun_env)
15918         (module_make_function, module_funcall, Fmodule_call):
15919         * src/emacs-module.h (struct emacs_runtime, struct emacs_env_25):
15920         Use ptrdiff_t, not int, for arg counts.
15921         * src/emacs-module.c (module_make_function): Don’t bother
15922         checking arity against MOST_POSITIVE_FIXNUM, as that’s
15923         unnecessary here.  Make the checking clearer by negating it.
15924         (module_make_function, Fmodule_call): No need to use xzalloc
15925         since the storage doesn’t need to be cleared.
15926         (module_funcall): Don’t use VLA, since C11 doesn’t guarantee support
15927         for it, and many implementations are buggy with large VLAs anyway.
15928         Use SAFE_ALLOCA_LISP instead.
15929         (module_vec_set): Don’t crash if i < 0.
15930         (module_vec_get): Don’t crash if i < MOST_NEGATIVE_FIXNUM.
15931         (module_vec_set, module_vec_get): Do fixnum checks only when
15932         i is out of array bounds, for efficiency in the usual case.
15933         (Fmodule_load): Simplify fixnum range check.
15934         (Fmodule_call): Simplify arity check.  Use xnmalloc to detect
15935         integer overflow in array allocation size.
15937 2015-11-20  Eli Zaretskii  <eliz@gnu.org>
15939         Minor improvements in module test
15941         * modules/mod-test/mod-test.c: Include stdlib.h, to avoid warnings
15942         about missing prototype of malloc.
15943         * modules/mod-test/Makefile (CFLAGS): Add -std=gnu99, to avoid
15944         compiler warnings.
15946 2015-11-20  Eli Zaretskii  <eliz@gnu.org>
15948         Improve MS-Windows implementation in dynlib.c
15950         * src/dynlib.c [WINDOWSNT]: Include errno.h, lisp.h, and w32.h.
15951         No need to include windows.h, as w32.h already does that.
15952         <dynlib_last_err>: New static variable.
15953         (dynlib_reset_last_error): New function.
15954         (dynlib_open): Convert forward slashes to backslashes.  Convert
15955         file names from UTF-8 to either UTF-16 or the current ANSI
15956         codepage, and call either LoadLibraryW or LoadLibraryA.  If the
15957         argument is NULL, return a handle to the main module, like
15958         'dlopen' does.  Record the error, if any, for use by dynlib_error.
15959         (dynlib_sym): Check the handle for validity. Record the error, if
15960         any, for use by dynlib_error.
15961         (dynlib_error): Call w32_strerror to produce the error string, and
15962         zero out the last error code, like dlerror does.
15963         (dynlib_close): Check the handle for validity.  Record the error,
15964         if any, for use by dynlib_error.  Don't call FreeLibrary with a
15965         handle for the main module.
15966         * src/w32.c (globals_of_w32): Call dynlib_reset_last_error.
15968 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
15970         Include-file tweaks for modules
15972         * src/dynlib.c, src/emacs-module.c: Include <config.h> first.
15973         * src/dynlib.h: Do not include config.h.
15974         It’s every .c file’s responsibility to include config.h first.
15975         * src/emacs-module.c: Include emacs-module.h immediately after
15976         config.h, to test that emacs-module.h doesn’t depend on
15977         include files other than config.h.
15979 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
15981         Simplify push_handler and profile its malloc
15983         * src/lisp.h (PUSH_HANDLER): Remove.
15984         All callers changed to use push_handler directly.
15985         * src/eval.c (internal_condition_case)
15986         (internal_condition_case_1, internal_condition_case_2)
15987         (internal_condition_case_n):
15988         Use same pattern as for other invokers of push_handler.
15989         (push_handler, push_handler_nosignal): Use call-by-value
15990         instead of call-by-reference.  All uses changed.
15991         (push_handler): Simplify by rewriting in terms of
15992         push_handler_nosignal.
15993         (push_handler_nosignal): Profile any newly allocated memory.
15995 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
15997         * src/emacs-module.h: Include stddef.h, not stdlib.h.
15999 2015-11-20  Juanma Barranquero  <lekktu@gmail.com>
16001         Discover repository version in linked worktrees (bug#21930)
16003         * lisp/version.el (emacs-repository--version-git-1): Do not assume
16004         HEAD is at .git/HEAD, it can also be at .git/worktrees/<branch>/HEAD.
16005         (emacs-repository-get-version): Grok linked worktrees when EXTERNAL
16006         is nil too.
16008 2015-11-20  Juri Linkov  <juri@linkov.net>
16010         * lisp/replace.el (occur-regexp-descr): New function.
16011         (occur-1, occur-engine): Use it.
16013         * lisp/isearch.el (isearch-occur): Propertize regexp with
16014         isearch-string and isearch-regexp-function-descr for
16015         occur-regexp-descr to display the correct description
16016         message in the header (bug#21176, bug#21180).
16018 2015-11-20  Karl Fogel  <kfogel@red-bean.com>
16020         Revert `open-line' electric-indent sensitivity
16022         * lisp/simple.el (open-line): Remove electric indent code.
16023           (electric-indent-just-newline): Don't declare.
16025         * test/automated/simple-test.el (open-line-indent): Adjust test.
16027         This partly reverts Artur Malabarba's change that added electric
16028         indent sensitivity to `open-line' (Oct 24 22:26:27 2015 +0100, git
16029         commit bd4f04f86), and adjusts a new test he added right afterwards
16030         (Sat Oct 24 23:43:06 2015 +0100, git commit 207f235e3) accordingly.
16031         However, the new INTERACTIVE argument to `open-line', which he also
16032         added in the first commit, is not reverted here.
16034         See the thread "Questioning the new behavior of `open-line'." on the
16035         Emacs Devel mailing list, and in particular this message:
16037           From: Artur Malabarba
16038           Subject: Re: Questioning the new behavior of `open-line'.
16039           To: Karl Fogel
16040           Cc: David Kastrup, Pierpaolo Bernardi, emacs-devel
16041           Date: Wed, 18 Nov 2015 21:03:58 +0000
16042           Message-ID: \
16043             <CAAdUY-KN06pvCMy5bt3+Buk3yeKjf6n9iB2FaSTTOPpCqPwyhA@mail.gmail.com>
16045           https://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01707.html
16047 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
16049         Omit unnecessary clear in Fmodule_load
16051         * src/emacs-module.c (Fmodule_load):
16052         Simplify and avoid unnecessary initialization of priv member to 0.
16054         * src/emacs-module.c: (module_vec_set, module_vec_get, module_vec_size)
16056 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
16058         Prefer signed integer types in module code
16060         Generally speaking, at the C level the Emacs source code prefers
16061         signed types like ‘ptrdiff_t’ to unsigned types like ‘size_t’,
16062         partly to avoid the usual signedness confusion when comparing values.
16063         Change the module API to follow this convention.
16064         Use ‘int’ for small values that can’t exceed INT_MAX.
16065         * modules/mod-test/mod-test.c (Fmod_test_globref_make)
16066         (Fmod_test_string_a_to_b, Fmod_test_vector_fill)
16067         (Fmod_test_vector_eq):
16068         * src/emacs-module.c (struct emacs_value_frame)
16069         (module_make_global_ref, module_free_global_ref)
16070         (module_copy_string_contents, module_make_string)
16071         (module_vec_set, module_vec_get, module_vec_size):
16072         * src/emacs-module.h (struct emacs_runtime, struct emacs_env_25):
16073         * src/lread.c (suffix_p):
16074         Prefer signed to unsigned integer types.
16076 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
16078         Omit ‘const’ on locals
16080         Remove ‘const’ qualifier from locals that were newly added.
16081         We don’t normally bother declaring locals with ‘const’ even
16082         though they are not modified, for the same reason we don’t
16083         bother declaring them with ‘register’ even though their
16084         addresses are not taken; the advantage in compile-time
16085         checking isn’t worth the loss of readability.
16086         * modules/mod-test/mod-test.c (Fmod_test_non_local_exit_funcall)
16087         (Fmod_test_vector_fill, Fmod_test_vector_eq):
16088         * src/emacs-module.c (MODULE_SETJMP_1)
16089         (module_make_global_ref, module_free_global_ref)
16090         (module_non_local_exit_get, module_make_function)
16091         (module_extract_integer, module_extract_float)
16092         (module_get_user_ptr, module_set_user_ptr)
16093         (module_get_user_finalizer, module_set_user_finalizer)
16094         (module_vec_get, Fmodule_call)
16095         (module_non_local_exit_signal_1)
16096         (module_non_local_exit_throw_1, lisp_to_value)
16097         (finalize_storage, allocate_emacs_value, mark_modules)
16098         (module_handle_signal, module_handle_throw)
16099         (module_format_fun_env):
16100         * src/eval.c (push_handler, push_handler_nosignal)
16101         (init_handler):
16102         * src/lread.c (suffix_p):
16103         Omit unnecessary ‘const’.
16105 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
16107         Prefer intmax_t to int64_t in module code
16109         * modules/mod-test/mod-test.c (sum, Fmod_test_sum):
16110         * src/emacs-module.c (module_extract_integer)
16111         (module_make_integer):
16112         * src/emacs-module.h (struct emacs_env_25):
16113         Prefer intmax_t to int64_t.  This doesn’t change the generated
16114         code on any of the machines Emacs currently ports to, but it’s
16115         at least in theory more future-proof as C99 doesn’t guarantee
16116         that int64_t exists.
16118 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
16120         Rename module.c to emacs-module.c, etc.
16122         * src/emacs-module.c: Rename from src/module.c.
16123         * src/emacs-module.h: Rename from src/module.h.
16124         All uses changed.
16126 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
16128         Fix minor module problems found by static checking
16130         * src/dynlib.c (dynlib_close): #ifdef out for now, as it’s not used.
16131         * src/eval.c, src/lisp.h (lisp_eval_depth): Now static.
16132         * src/emacs-module.c (Fmodule_load): Fix pointer signedness bug.
16133         (Fmodule_call): Tell GCC that the default case is unreachable.
16135 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
16137         Style fixes for indenting etc. in module code
16139         This is mostly indenting and spacing changes.  Also, remove
16140         some unnecessary static decls instead of bothering to reindent them.
16141         * src/emacs-module.h (EMACS_EXTERN_C_BEGIN): Remove, and do this inline,
16142         as most other Emacs files do for this sort of thing.
16144 2015-11-19  Eli Zaretskii  <eliz@gnu.org>
16146         Minor improvements in modules testing Makefile
16148         * modules/mod-test/Makefile (EMACS, SO): New variables.
16149         (CFLAGS): When SO = dll, don't use -fPIC.
16150         (check): New target, runs the test.
16152 2015-11-19  Eli Zaretskii  <eliz@gnu.org>
16154         * .gitignore: Add "*.dll".
16156 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
16158         Migrate modules/.gitignore into .gitignore
16160         * .gitignore: Add former contents of modules/.gitignore.
16161         * modules/.gitignore: Remove.
16163 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
16165         Add copyright notices to module code
16167         Put them in the usual format for GNU Emacs copyright notices.
16169 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
16171         Rename emacs_module.h to module.h
16173         * src/module.h: Rename from src/emacs_module.h.
16174         All uses changed.
16176 2015-11-19  Juanma Barranquero  <lekktu@gmail.com>
16178         * src/module.c (Fmodule_load): Remove unused vars `doc_name', `args'
16180         * src/lread.c (Fload): Remove unused variable `size'
16182 2015-11-19  Alan Mackenzie  <acm@muc.de>
16184         src/keyboard.c (pre-command-hook): Fix typo in doc string: "pre" -> "post".
16186 2015-11-19  Dmitry Gutov  <dgutov@yandex.ru>
16188         Prioritize looking inside vc-parent-buffer over log-view-mode fallback
16190         * lisp/vc/vc.el (vc-deduce-fileset): Prioritize looking inside
16191         vc-parent-buffer over log-view-mode fallback (bug#21955).
16193 2015-11-18  Alan Mackenzie  <acm@muc.de>
16195         lisp/isearch.el: Eliminate macro isearch-call-message, replacing with funcall.
16197 2015-11-18  Ken Brown  <kbrown@cornell.edu>
16199         * configure.ac (LIBMODULES): Don’t define on Cygwin
16201 2015-11-18  Eli Zaretskii  <eliz@gnu.org>
16203         Fix MS-Windows build --with-modules
16205         * src/module.c: Reformat copyright commentary.
16206         (module_vec_get): Use explicit cast to size_t to avoid compiler
16207         warning in 32-bit builds.
16208         (check_main_thread) [WINDOWSNT]: Fix letter-case in Windows APIs.
16209         Compare thread IDs directly, as GetThreadId is not available
16210         before Windows Vista.
16211         (check_main_thread) [WINDOWSNT]: Duplicate the thread handle
16212         without using APIs and constants not available on XP and older
16213         systems.  Obtain and store the thread ID as well.
16215 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
16216             Philipp Stephani  <phst@google.com>
16218         Add dynamic module test and helper script
16220         Add 'modhelp.py' script (python2) to automate module testing and
16221         module generation.
16223         To build and test all modules in the modules/ dir
16224           $ ./modhelp.py test
16226         To generate a module from template code (good starting point)
16227           $ ./modhelp init mynewtestmodule
16229         See the script -h option for more documentation.
16231         * modules/modhelp.py: New module helper script.
16232         * modules/mod-test/Makefile: New file. Makefile for the test module.
16233         * modules/mod-test/mod-test.c: New file. Test module source file.
16234         * modules/mod-test/test.el: New file. ert test suite for the test module.
16235         * modules/.gitignore: New file. Local .gitignore file.
16237 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
16239         Make 'Fload' look for modules
16241         'Fload' can now load dynamic modules. This also makes 'require' work.
16243         * src/lread.c:
16244           (suffix_p): New function.
16245           (Fload): Use 'suffix_p'.  Call 'Fmodule_load' when we try to load a file
16246           with a module suffix.
16247           (syms_of_lread): Append module suffix to 'Vload_suffixes'.
16249 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
16250             Philipp Stephani  <phst@google.com>
16252         Add dynamic module module support
16254         * configure.ac: Add '--with-modules' option.  Conditionally add
16255           dynlib.o and module.o to the list of objects.  Add any system
16256           specific flags to the linker flags to support dynamic libraries.
16257         * m4/ax_gcc_var_attribute.m4: Add autoconf extension to test gcc
16258           attributes.
16259         * src/Makefile.in: Conditionally add module objects and linker flags.
16260         * src/alloc.c (garbage_collect_1): protect module local values from
16261           GC.
16262         * src/lisp.h: Add 'module_init' and 'syms_of_module' prototypes.
16263         * src/emacs-module.h: New header file included by modules.  Public
16264           module API.
16265         * src/emacs-module.c: New module implementation file.
16267 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
16269         Add new User Pointer (User_Ptr) type
16271         * src/lisp.h: Add new Lisp_Misc_User_Ptr type.
16272         (XUSER_PTR): New User_Ptr accessor.
16273         * src/alloc.c (make_user_ptr): New function.
16274         (mark_object, sweep_misc): Handle Lisp_Misc_User_Ptr.
16275         * src/data.c (Ftype_of): Return 'user-ptr' for user pointer.
16276         (Fuser-ptrp): New user pointer type predicate function.
16277         (syms_of_data): New 'user-ptrp', 'user-ptr' symbol.  New 'user-ptrp'
16278         subr.
16279         * src/print.c (print_object): Add printer for User_Ptr type.
16281 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
16282             Philipp Stephani  <phst@google.com>
16284         Add portable layer for dynamic loading
16286         * src/dynlib.h: New file.
16287         * src/dynlib.c: New file.
16289 2015-11-18  Philipp Stephani  <phst@google.com>
16291         Add catch-all & no-signal version of PUSH_HANDLER
16293         Ground work for modules. Add a non-signaling version of PUSH_HANDLER and
16294         a new "catch-all" handler type.
16296         * src/eval.c (init_handler, push_handler, push_handler_nosignal): New
16297           functions.
16298         * src/fns.c (hash_remove_from_table): Expose function public.
16299         * src/lisp.h: New handler type, define macro to push_handler call.
16301 2015-11-18  Ken Brown  <kbrown@cornell.edu>
16303         Silence byte-compiler warning
16305         * lisp/server.el (server-process-filter): Silence byte-compiler
16306         warning.
16308 2015-11-18  Paul Eggert  <eggert@cs.ucla.edu>
16310         Quote symbols in docstrings using `'
16312         Be more systematic about quoting symbols `like-this' rather than
16313         `like-this or 'like-this' in docstrings.  This follows up Artur
16314         Malabarba's email in:
16315         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01647.html
16317 2015-11-18  Peder O. Klingenberg  <peder@klingenberg.no>
16319         Fix savegames in dunnet
16321         * lisp/play/dunnet.el (dun-rot13): Use the standard rot13-region instead
16322           of separate implementation.
16324 2015-11-18  Artur Malabarba  <bruce.connor.am@gmail.com>
16326         * lisp/emacs-lisp/package.el (package--with-response-buffer):
16328         Ensure we're at the start of the buffer before searching for
16329         the end of headers.
16331 2015-11-18  Xue Fuqiao  <xfq.free@gmail.com>
16333         * admin/release-process: Improve wording.
16335 2015-11-18  Xue Fuqiao  <xfq.free@gmail.com>
16337         Backport: * CONTRIBUTE: Remove information about feature freeze.
16339         (cherry picked from commit ae0653b5ab9ee223751ec389b87011963e1cbbef)
16341 2015-11-18  Xue Fuqiao  <xfq.free@gmail.com>
16343         Backport: Document the release process
16345         * admin/notes/versioning: Add information about RC releases.
16346         * admin/release-process: Document the release process.
16347         * admin/authors.el (authors-ignored-files):
16348         * admin/README: Change FOR-RELEASE to release-process.
16349         * CONTRIBUTE:
16350         * admin/notes/bugtracker: Don't mention FOR-RELEASE.
16352         (cherry picked from commit 9a4aa0f5945a03611ae29c516025dbd353bd26ab)
16354 2015-11-18  Xue Fuqiao  <xfq.free@gmail.com>
16356         Backport: * admin/release-process: Rename from admin/FOR-RELEASE.
16358         (cherry picked from commit f8cc14b59700e51a4e31139c0a65c8154995e055)
16360 2015-11-18  Xue Fuqiao  <xfq.free@gmail.com>
16362         Backport: Mention CONTRIBUTE in README
16364         Mention CONTRIBUTE in README, since it was moved from etc/ to root.
16365         * etc/TODO: Remove the reference to `etc/CONTRIBUTE'.
16366         * README: Mention CONTRIBUTE.
16368         (cherry picked from commit ed2e7e20ae0945288c98091f308f5460c3453873)
16370 2015-11-18  Paul Eggert  <eggert@cs.ucla.edu>
16372         Fix docstring quoting problems with ‘ '’
16374         Problem reported by Artur Malabarba in:
16375         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01513.html
16376         Most of these fixes are to documentation; many involve fixing
16377         longstanding quoting glitches that are independent of the
16378         recent substitute-command-keys changes.  The changes to code are:
16379         * lisp/cedet/mode-local.el (mode-local-augment-function-help)
16380         (describe-mode-local-overload):
16381         Substitute docstrings before displaying them.
16382         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
16383         Quote the generated docstring for later substitution.
16385 2015-11-17  Eli Zaretskii  <eliz@gnu.org>
16387         Improve configure --help text for wide ints
16389         * configure.ac (wide-int): Clarify user-level advantages and
16390         disadvantages.
16392 2015-11-17  Stephen Leake  <stephen_leake@stephe-leake.org>
16394         Improve doc string
16396         * lisp/progmodes/xref.el (xref-backend-references): Improve doc string.
16398 2015-11-17  Paul Eggert  <eggert@cs.ucla.edu>
16400         eval_sub followed dangling pointer when debugging
16402         Problem reported by Pip Cet (Bug#21245).
16403         This bug could occur in eval_sub if the C compiler reused
16404         storage associated with the ‘argvals’ local after ‘argvals’
16405         went out of scope, and if the Elisp debugger stopped on Elisp
16406         function exit and accessed ‘argvals’.  It could also occur if
16407         a variadic function was called with so many arguments (over
16408         2048 args on x86-64) that SAFE_ALLOCA_LISP called malloc, then
16409         SAFE_FREE freed the arguments, then the memory manager used
16410         the storage for other purposes, then the debugger accessed the
16411         arguments.
16412         * src/eval.c (eval_sub): Declare ‘argvals’ at top level of
16413         function body.  Simplify local decls.
16414         When allocating args via SAFE_ALLOCA, call
16415         debugger before invoking SAFE_FREE, as the debugger needs
16416         access to the args.
16417         (eval_sub, apply_lambda): Rework to avoid need for
16418         set_backtrace_debug_on_exit hack.  This is cleaner,
16419         and should work better with buggy custom debuggers.
16421 2015-11-17  Daiki Ueno  <ueno@gnu.org>
16423         * lisp/image-mode.el: Support encrypted file
16425         (image-toggle-display-image): Read content from the buffer instead
16426         of the file, if the buffer holds a decrypted data.  (Bug#21870)
16428 2015-11-17  Paul Eggert  <eggert@cs.ucla.edu>
16430         ELF unexec: align section header
16432         This ports the recent unexelf.c changes to Fedora x86-64
16433         when configured with GCC’s -fsanitize=undefined option.
16434         * src/unexelf.c (unexec): Align new_data2_size to a multiple
16435         of ElfW (Shdr)’s alignment, so that NEW_SECTION_H returns a
16436         pointer aligned appropriately for its type.
16438 2015-11-17  Andreas Schwab  <schwab@linux-m68k.org>
16440         Do more checks on bytecode objects (Bug#21929)
16442         * src/eval.c (funcall_lambda): Check size of compiled function
16443         object.
16444         (Ffetch_bytecode): Likewise.
16446 2015-11-16  Johan Bockgård  <bojohan@gnu.org>
16448         pcase.el: Fix edebugging of backquoted cons patterns
16450         * lisp/emacs-lisp/pcase.el (pcase-QPAT): Fix edebugging of backquoted
16451         cons patterns. (Bug#21920)
16453 2015-11-16  Paul Eggert  <eggert@cs.ucla.edu>
16455         Improve fix for regex reentrancy abort
16457         Suggested by Stefan Monnier (Bug#21688).
16458         * src/syntax.c (update_syntax_table_forward):
16459         Remove recently-added PROPERTIZE arg, and assume it is true.
16460         All callers changed.
16461         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
16462         Invoke update_syntax_table directly.
16464 2015-11-16  Artur Malabarba  <bruce.connor.am@gmail.com>
16466         * lisp/faces.el (faces--attribute-at-point): Use `face-list-p'
16468         * lisp/emacs-lisp/package.el (package--with-response-buffer): Missing require
16470         * lisp/emacs-lisp/nadvice.el (add-function): Escape quote
16472 2015-11-16  Vasily Korytov  <vasily.korytov@yahoo.com>
16474         Recognize .rbw and .pyw files (bug#18753)
16476         * lisp/progmodes/python.el (auto-mode-alist):
16477         Recognize .pyw files.
16479         * lisp/progmodes/ruby-mode.el (auto-mode-alist):
16480         Recognize .rbw files.
16482 2015-11-16  Dmitry Gutov  <dgutov@yandex.ru>
16484         Fix ruby-mode auto-mode-alist entry
16486         * lisp/progmodes/ruby-mode.el (auto-mode-alist): Add grouping
16487         around the extensions (bug#21257).
16489 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
16491         Fix etags completion near eob
16493         * lisp/progmodes/etags.el (tags-completion-at-point-function):
16494         Use `goto-char', to avoid the end-of-buffer error (bug#20061).
16496 2015-11-15  Alan Mackenzie  <acm@muc.de>
16498         De-pessimize detection of C++ member initialization lists.
16500         list/progmodes/cc-engine.el (c-back-over-list-of-member-inits): New macro.
16501         (c-back-over-member-initializers): Reformulate such that c-at-toplevel-p
16502         is only called when a construct "looks right" rather than continually.
16503         (c-guess-basic-syntax, CASE 5R): Add a check for the mode being C++ Mode.
16505 2015-11-15  Artur Malabarba  <bruce.connor.am@gmail.com>
16507         Backport: * lisp/emacs-lisp/package.el: Fix a decoding issue.
16509         * lisp/url/url-handlers.el (url-insert-file-contents): Move some code to
16510         `url-insert-buffer-contents'.
16511         (url-insert-buffer-contents): New function
16513         (package--with-response-buffer): Use `url-insert-buffer-contents'.
16514         The previous code had some issues with decoding. Refactoring that
16515         function allows us to use the decoding from url-handlers while still
16516         treating both sync and async requests the same.
16518 2015-11-15  Stephen Leake  <stephen_leake@stephe-leake.org>
16520         Improve a few doc strings, comments
16522         * lisp/cedet/cedet-global.el (cedet-gnu-global-expand-filename):
16523         * lisp/cedet/ede/locate.el (ede-locate-base):
16524         * lisp/cedet/semantic/symref.el (semantic-symref-calculate-rootdir):
16525         * src/fns.c (Fdelq): Improve doc string.
16527         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions): Add FIXME.
16529 2015-11-15  Anders Lindgren  <andlind@gmail.com>
16531         Enhance NSTRACE (trace output for NextStep).
16533         Trace can be disabled for groups of functions. By default, event
16534         functions and functions that generate lots of output are disabled.
16536         Trace output of Objective-C functions now use the "[ClassName
16537         parameter:]" form.
16539         * src/nsterm.h (NSTRACE_ALL_GROUPS, NSTRACE_GROUP_EVENTS)
16540         (NSTRACE_GROUP_UPDATES, NSTRACE_GROUP_FRINGE, NSTRACE_GROUP_COLOR)
16541         (NSTRACE_GROUP_GLYPHS, NSTRACE_GROUP_FOCUS): New macros,
16542         controlling in which function groups trace should be active.
16543         (NSTRACE_WHEN): Support for silencing a function, this also
16544         silencing all called functions.
16545         (NSTRACE_UNSILENCE): New macro, used to re-enable trace.
16546         (NSTRACE_FMT_FSTYPE, NSTRACE_ARG_FSTYPE): New macros, used to
16547         print the full screen state in NSTRACE functions.
16549         * src/nsterm.m (nstrace_depth, nstrace_num): Made volatile as they
16550         can be accessed from multiple threads.
16551         (nstrace_enabled_global): New variable, when FALSE, trace is
16552         silenced.
16553         (nstrace_restore_global_trace_state): New function, used to
16554         restore `nstrace_enabled_global' at end of block.
16555         ([EmacsView setFrame:], [EmacsWindow setFrame:display:])
16556         ([EmacsWindow setFrame:display:animation:])
16557         ([EmacsWindow setFrameTopLeftPoint:]): New functions, print trace
16558         and call corresponding super function.
16559         (Many functions): Add or enhance trace output.
16561         * src/nsimage.m (ns_image_from_file): Enhanced trace output.
16563         * src/nsfns.m (x_set_tool_bar_lines): Add trace output.
16565         * src/nsmenu.m ([EmacsToolbar setVisible:]): New function, print trace
16566         and call corresponding super function.
16568 2015-11-15  Anders Lindgren  <andlind@gmail.com>
16570         Fixed a toolbar related issue on OS X.
16572         Earlier, when toggling the tool-bar in a maximized frame, the
16573         frame size didn't match the number of text lines, leaving an
16574         unused area at the bottom of the frame.
16576         * src/nsfns.m (x_set_tool_bar_lines): Exit maximized and full height
16577         fullscreen modes when tool bar is disabled.
16579 2015-11-15  Anders Lindgren  <andlind@gmail.com>
16581         Fixed OS X 10.6.8 build issue (bug#21862).
16583         * src/nsterm.h (EmacsView): Add missing declarations.
16584         * src/nsterm.m ([EmacsView windowDidBecomeKey]): New method, like
16585         the standard method but without the notification parameter.
16586         Intended to be used for direct calls.
16587         ([EmacsView windowDidEnterFullScreen]): Call the non-notification
16588         version of `windowDidBecomeKey'. Made the notification method call
16589         the non-notification method instead of the vice versa.
16590         (NSWindowDidEnterFullScreenNotification): Deleted, no longer
16591         needed.
16593 2015-11-15  Artur Malabarba  <bruce.connor.am@gmail.com>
16595         * lisp/faces.el (faces--attribute-at-point): Fix an issue
16597         Previous code would signal an error when the face at point was
16598         a manually built list of attributes such as '(:foregroud "white").
16600         * test/automated/faces-tests.el (faces--test-color-at-point): Add a test
16602 2015-11-15  Paul Eggert  <eggert@cs.ucla.edu>
16604         Fix regex abort when it tries to reenter itself
16606         Problem reported by Ken Raeburn.
16607         Solution suggested by Stefan Monnier (Bug#21688).
16608         * src/regex.c (re_match_2_internal):
16609         Use new _FAST functions to avoid regex code reentering itself.
16610         * src/syntax.c (update_syntax_table_forward): New arg PROPERTIZE.
16611         All callers changed.
16612         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST)
16613         (UPDATE_SYNTAX_TABLE_FAST): New inline functions.
16615 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
16617         Improve Ruby 1.9-style keyword keys highlighting
16619         * lisp/progmodes/ruby-mode.el (ruby-font-lock-keywords):
16620         Handle required keyword arguments (bug#21367).
16621         And highlight the colon together with the name.
16623 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
16625         Unify the absolutely equal xref-backend-references implementations
16627         * lisp/progmodes/elisp-mode.el (xref-backend-references):
16628         Remove.
16630         * lisp/progmodes/etags.el (xref-backend-references):
16631         Remove.
16633         * lisp/progmodes/xref.el (xref-backend-references):
16634         Define the default implementation.
16636 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
16638         Update project-find-regexp for the new xref API
16640         * lisp/progmodes/project.el (project--read-regexp):
16641         Update to use the new xref API methods.
16643         * lisp/progmodes/xref.el (xref-find-backend): Autoload.
16645 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
16647         Fix replacing a match with a shorter string
16649         In effect, partially reverting fe973fc.
16651         * lisp/progmodes/xref.el (xref-query-replace): Store the end
16652         of each match as a marker again, instead of length.
16653         (xref--query-replace-1): Update accordingly.
16655 2015-11-14  Artur Malabarba  <bruce.connor.am@gmail.com>
16657         * lisp/progmodes/xref.el (xref-pop-marker-stack): Downgrade errors
16659         Signal user-errors instead.
16661 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
16663         Document 'describe-symbol'
16665         * doc/emacs/help.texi (Help Summary): Mention "C-h o".
16666         (Name Help): Document "C-h o" and describe-symbol.
16668         * lisp/help-fns.el (describe-symbol): Doc fix.
16670 2015-11-14  Paul Eggert  <eggert@cs.ucla.edu>
16672         Change test name to avoid spellcheck issue.
16674 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
16676         Avoid signaling an error in 'describe-symbol'
16678         * lisp/help-fns.el (describe-symbol): Avoid errors when the symbol
16679         exists as a function/variable/face/etc., but is undocumented.
16681         * test/automated/help-fns.el (help-fns-test-describe-symbol): New
16682         test.
16684 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
16686         * INSTALL (--with-cairo): Document this new configure option.
16688 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
16690         Document that GNU Make >= 3.81 is required to build Emacs
16692         * doc/lispref/internals.texi (Building Emacs): Document that GNU
16693         Make 3.81 or later is now required.
16695 2015-11-14  Artur Malabarba  <bruce.connor.am@gmail.com>
16697         Backport: * lisp/emacs-lisp/package.el: Refactor -with-work-buffer-async.
16699         (package--with-work-buffer-async): Reimplement as
16700         `package--with-response-buffer'.
16701         (package--with-work-buffer): Mark obsolete.
16702         (package--with-response-buffer): New macro. This is a more self
16703         contained and less contrived version of
16704         `package--with-work-buffer-async'.  It uses keyword arguments,
16705         doesn't have async on the name, doesn't fallback on
16706         `package--with-work-buffer', and has _much_ simpler error
16707         handling.  On master, this macro will soon be part of another
16708         library (either standalone or inside url.el), which is why this
16709         commit is not to be merged back.
16711         (package--check-signature, package--download-one-archive)
16712         (package-install-from-archive, describe-package-1): Use it.
16714         (package--download-and-read-archives): Let
16715         `package--download-one-archive' take care of calling
16716         `package--update-downloads-in-progress'.
16718 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
16720         * CONTRIBUTE (Branches): Improve wording for back-ported commits.
16722 2015-11-14  Dmitry Gutov  <dgutov@yandex.ru>
16724         Merge branch 'master' into emacs-25
16726 2015-11-14  Dmitry Gutov  <dgutov@yandex.ru>
16728         Use generic dispatch for xref backends
16730         * lisp/progmodes/xref.el (xref-backend-functions):
16731         New variable.
16732         (xref-find-function): Remove.
16733         (xref-find-backend)
16734         (xref--etags-backend): New functions.
16735         (xref-identifier-at-point-function)
16736         (xref-identifier-completion-table-function): Remove.
16737         (xref-backend-definitions, xref-backend-references)
16738         (xref-backend-apropos, xref-backend-identifier-at-point)
16739         (xref-backend-identifier-completion-table):
16740         New generic functions.
16742         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
16743         Add `elisp--xref-backend' to the beginning of
16744         `xref-backend-functions', locally.  Delete references to
16745         removed functions and vars.
16746         (elisp-xref-find): Remove.
16747         (elisp--xref-backend): New function.
16748         (elisp--xref-find-references, elisp--xref-find-apropos)
16749         (elisp--xref-identifier-completion-table):
16750         Turn into appropriately named generic methods.
16752         * lisp/progmodes/etags.el (etags-xref-find): Remove.
16753         (xref-backend-identifier-completion-table)
16754         (xref-backend-references, xref-backend-definitions)
16755         (xref-backend-apropos): New generic methods.
16757 2015-11-14  Juri Linkov  <juri@linkov.net>
16759         Support rectangular regions for more commands
16761         * lisp/simple.el (region-extract-function): Handle the arg
16762         value ‘bounds’.
16763         (region-insert-function): New function.
16764         (shell-command-on-region): Add arg ‘region-noncontiguous-p’.
16765         If non-nil, operate on multiple chunks.
16766         (region-noncontiguous-p): New function.
16768         * lisp/rect.el: Add function rectangle--insert-region
16769         around region-insert-function.
16770         (extract-rectangle-bounds): New function.
16771         (rectangle--extract-region): Handle the arg value ‘bounds’.
16772         (rectangle--insert-region): New function.
16774         * lisp/emulation/cua-rect.el: Add function cua--insert-rectangle
16775         around region-insert-function.
16776         (cua--extract-rectangle-bounds): New function.
16777         (cua--rectangle-region-extract): Handle the arg value ‘bounds’.
16779         * lisp/replace.el (query-replace, query-replace-regexp): Add arg
16780         ‘region-noncontiguous-p’.  Use ‘use-region-p’.
16781         (query-replace-regexp-eval, map-query-replace-regexp)
16782         (replace-string, replace-regexp): Use ‘use-region-p’.
16783         (keep-lines, flush-lines, how-many): Use ‘use-region-p’.
16784         (perform-replace): Add arg ‘region-noncontiguous-p’.
16785         If non-nil, operate on multiple chunks.
16787         * src/casefiddle.c (Fdowncase_region): Add arg ‘region-noncontiguous-p’.
16788         If non-nil, operate on multiple chunks.  (Bug#19829)
16790 2015-11-14  Dmitry Gutov  <dgutov@yandex.ru>
16792         Handle multiple matches on the same line; add highlighting
16794         * lisp/progmodes/xref.el (xref-location-marker): Interpret the
16795         column value in characters.
16796         (xref--collect-matches): Rename from `xref--collect-match'.
16797         Search for all matches in the hit line.  Add `highlight' face to
16798         the matched region in the summary.  Update both callers.
16800 2015-11-14  Dmitry Gutov  <dgutov@yandex.ru>
16802         Replace xref-match-bounds with xref-match-length
16804         Relying on xref-location-marker to point to the beginning of the match
16806         * lisp/progmodes/xref.el (xref-match-bounds): Remove.
16807         (xref-match-length): Add.
16808         (xref-make-match): Change the arguments.
16809         (xref--match-buffer-bounds): Remove.
16810         (xref-match-item): Store length, instead of end-column.
16811         (xref-pulse-momentarily)
16812         (xref--collect-match)
16813         (xref--query-replace-1): Update accordingly.
16814         (xref-query-replace): Ditto.  And check that the search results
16815         are up-to-date.
16817 2015-11-13  John Wiegley  <johnw@newartisans.com>
16819         Merge remote-tracking branch 'origin/master' into emacs-25
16821 2015-11-13  l3thal  <kwhite@gnu.org>
16823         Merge branch 'erc-async-reconnect' into emacs-25
16825         Reconnect asynchronously.
16827 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
16829         Merge from gnulib
16831         This incorporates:
16832         2015-11-13 xalloc-oversized: improve performance with GCC 5
16833         * lib/xalloc-oversized.h: Copy from gnulib.
16835 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
16837         Spruce up ftfont.c memory allocation
16839         * src/ftfont.c (setup_otf_gstring):
16840         Avoid O(N**2) behavior when reallocating.
16841         (ftfont_shape_by_flt): Prefer xpalloc to xrealloc when
16842         reallocating buffers; this simplifies the code.  Do not trust
16843         mflt_run to leave the output areas unchanged on failure, as
16844         this isn’t part of its interface spec.
16846 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16848         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
16850 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
16852         Port recent XCB changes to 64-bit ‘long int’
16854         For historical reasons, libX11 represents 32-bit values like Atoms as
16855         ‘long int’ even on platforms where ‘long int’ is 64 bits.  XCB doesn’t
16856         do that, so adapt the recent XCB code to behave properly on 64-bit
16857         platforms.  Also, fix what appears to be a bug in the interpretation
16858         of xcb_get_property_value_length, at least on my Fedora platform
16859         which is running libxcb-1.11-5.fc21.
16860         * src/xfns.c (x_real_pos_and_offsets):
16861         * src/xterm.c (get_current_wm_state):
16862         xcb_get_property_value_length returns a byte count, not a word count.
16863         For 32-bit quantities, xcb_get_property_value returns a vector
16864         of 32-bit words, not of (possibly 64-bit) long int.
16866         Backport.
16868 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
16870         * src/undo.c (run_undoable_change): Now static.
16872         Backport.
16874 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16876         Remove support for ':timeout' from w32 tray notifications
16878         * src/w32fns.c (Fw32_notification_notify): Delete the code that
16879         supports ':timeout'.
16880         (syms_of_w32fns): Don't DEFSYM ':timeout'.  This avoids clashes
16881         with dbusbind.c when D-Bus is compiled in.
16883         * doc/lispref/os.texi (Desktop Notifications): Don't mention
16884         ':timeout'.
16886         Backport.
16888 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
16890         * test/automated/simple-test.el: Add test for bug#20698 (bug#21885)
16892         (simple-test--transpositions): New macro.
16893         (simple-transpose-subr): New test.
16895         Backport.
16897 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
16899         * lisp/progmodes/elisp-mode.el: Declare function `project-roots'
16901         Backport.
16903 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
16905         * src/undo.c: Small fixes for previous change
16907         (run_undoable_change): Mark void argument list.
16908         (record_property_change): Remove unused variable `boundary'.
16910         Backport.
16912 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16914         Add a few more variables to redisplay--variables
16916         * lisp/frame.el (redisplay--variables): Add bidi-paragraph-direction
16917         and bidi-display-reordering to the list.
16919         Backport.
16921 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16923         * lisp/loadup.el: Enlarge the size of the hash table to 80000.
16925         Backport.
16927 2015-11-13  Eli Barzilay  <eli@barzilay.org>
16929         Fix point positioning after transposing with negative arg
16931         * lisp/simple.el (transpose-subr): When invoked with a negative
16932         argument, move point to after the transposed text, like we do
16933         when invoked with a positive argument.  (Bug#21885)
16935         Backport.
16937 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16939         Fix last change in shr.el
16941         * lisp/net/shr.el (shr--have-one-fringe-p): Rename from
16942         have-fringes-p.  All callers changed.  Doc fix.  (Bug#21895)
16944         Backport.
16946 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16948         Fix last change
16950         * src/w32fns.c (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]:
16951         Don't DEFSYM tray notification symbols if D-Bus is being used.
16953         Backport.
16955 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16957         Another fix for MinGW64 and Cygwin builds due to notifications
16959         * src/w32fns.c: Ifdef away tray notification code if D-Bus is
16960         being compiled into Emacs.
16961         (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]: Don't defsubr
16962         Sw32_notification_notify and Sw32_notification_close if the code
16963         is not compiled.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
16965         Backport.
16967 2015-11-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
16969         Remove intern calls and XXX comments from Fx_export_frames
16971         * src/xfns.c (Fx_export_frames): Use Qpdf, Qpng, Qpostscript, and
16972         Qsvg instead of intern calls.  Use "postscript" instead of "ps"
16973         for consistency with image types.  Remove XXX comments.
16974         (syms_of_xfns) <Qpdf>: DEFSYM it.
16976         Backport.
16978 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
16980         Port recent XCB changes to 64-bit ‘long int’
16982         For historical reasons, libX11 represents 32-bit values like Atoms as
16983         ‘long int’ even on platforms where ‘long int’ is 64 bits.  XCB doesn’t
16984         do that, so adapt the recent XCB code to behave properly on 64-bit
16985         platforms.  Also, fix what appears to be a bug in the interpretation
16986         of xcb_get_property_value_length, at least on my Fedora platform
16987         which is running libxcb-1.11-5.fc21.
16988         * src/xfns.c (x_real_pos_and_offsets):
16989         * src/xterm.c (get_current_wm_state):
16990         xcb_get_property_value_length returns a byte count, not a word count.
16991         For 32-bit quantities, xcb_get_property_value returns a vector
16992         of 32-bit words, not of (possibly 64-bit) long int.
16994 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
16996         * src/undo.c (run_undoable_change): Now static.
16998 2015-11-13  Michael Albinus  <michael.albinus@gmx.de>
17000         Adapt Tramp version, do not merge with master
17002         * doc/misc/trampver.texi (trampver):
17003         * lisp/net/trampver.el (tramp-version): Set to "2.2.13-25.1".
17005 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
17007         Remove support for ':timeout' from w32 tray notifications
17009         * src/w32fns.c (Fw32_notification_notify): Delete the code that
17010         supports ':timeout'.
17011         (syms_of_w32fns): Don't DEFSYM ':timeout'.  This avoids clashes
17012         with dbusbind.c when D-Bus is compiled in.
17014         * doc/lispref/os.texi (Desktop Notifications): Don't mention
17015         ':timeout'.
17017 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
17019         * test/automated/simple-test.el: Add test for bug#20698 (bug#21885)
17020         (simple-test--transpositions): New macro.
17021         (simple-transpose-subr): New test.
17023 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
17025         * lisp/progmodes/elisp-mode.el: Declare function `project-roots'
17027 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
17029         * src/undo.c: Small fixes for previous change
17030         (run_undoable_change): Mark void argument list.
17031         (record_property_change): Remove unused variable `boundary'.
17033 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
17035         Add a few more variables to redisplay--variables
17037         * lisp/frame.el (redisplay--variables): Add bidi-paragraph-direction
17038         and bidi-display-reordering to the list.
17040 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
17042         * lisp/loadup.el: Enlarge the size of the hash table to 80000.
17044 2015-11-13  Eli Barzilay  <eli@barzilay.org>
17046         Fix point positioning after transposing with negative arg
17048         * lisp/simple.el (transpose-subr): When invoked with a negative
17049         argument, move point to after the transposed text, like we do
17050         when invoked with a positive argument.  (Bug#21885)
17052 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
17054         Fix last change in shr.el
17056         * lisp/net/shr.el (shr--have-one-fringe-p): Rename from
17057         have-fringes-p.  All callers changed.  Doc fix.  (Bug#21895)
17059 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
17061         Fix last change
17063         * src/w32fns.c (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]:
17064         Don't DEFSYM tray notification symbols if D-Bus is being used.
17066 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
17068         Another fix for MinGW64 and Cygwin builds due to notifications
17070         * src/w32fns.c: Ifdef away tray notification code if D-Bus is
17071         being compiled into Emacs.
17072         (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]: Don't defsubr
17073         Sw32_notification_notify and Sw32_notification_close if the code
17074         is not compiled.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
17076 2015-11-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
17078         Remove intern calls and XXX comments from Fx_export_frames
17080         * src/xfns.c (Fx_export_frames): Use Qpdf, Qpng, Qpostscript, and
17081         Qsvg instead of intern calls.  Use "postscript" instead of "ps"
17082         for consistency with image types.  Remove XXX comments.
17083         (syms_of_xfns) <Qpdf>: DEFSYM it.
17085 2015-11-13  Eric Hanchrow  <eric.hanchrow@gmail.com>
17087         shr: don't invoke unbound function (Bug#21895)
17089         * lisp/net/shr.el (have-fringes-p): New function.
17090         (shr-insert-document, shr-fill-text): Use it.
17092 2015-11-12  Juanma Barranquero  <lekktu@gmail.com>
17094         * test/automated/keymap-tests.el: Fix test to make it repeatable
17096         (keymap-store_in_keymap-FASTINT-on-nonchars): Reset Buffer-menu-mode-map
17097         entry to its initial value to make the test repeatable in interactive
17098         sessions (assuming it doesn't fail and crashes Emacs, of course).
17100 2015-11-13  Artur Malabarba  <bruce.connor.am@gmail.com>
17102         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors): Small fix
17104 2015-11-12  Phillip Lord  <phillip.lord@russet.org.uk>
17106         : Tests for undo-auto functionality.
17108 2015-11-12  Phillip Lord  <phillip.lord@newcastle.ac.uk>
17110         The heuristic that Emacs uses to add an `undo-boundary' has been
17111         reworked, as it interacts poorly with functions on `post-command-hook'
17112         or `after-change-functions'.
17114         * lisp/simple.el: New section added.
17115         * src/cmds.c (remove_excessive_undo_boundaries): Now in lisp.
17116         (self_insert_command): Calls simple.el to amalgamate.
17117         (delete_char): Calls simple.el to amalgamate.
17118         * src/keyboard.c (last_undo_boundary): Removed.
17119         * src/undo.c (run_undoable_change): New function.
17121 2015-11-12  Juri Linkov  <juri@linkov.net>
17123         Bind [?\S-\ ] to previous line command in Dired-like modes.
17125         * lisp/arc-mode.el (archive-mode-map):
17126         * lisp/dired.el (dired-mode-map):
17127         * lisp/proced.el (proced-mode-map):
17128         * lisp/vc/vc-dir.el (vc-dir-mode-map):
17129         Bind [?\S-\ ] to previous line command.
17130         (Bug#20790)
17132 2015-11-12  Eli Zaretskii  <eliz@gnu.org>
17134         Fix the MinGW64 and Cygwin-w32 builds
17136         * src/w32fns.c (MYNOTIFYICONDATAW_V1_SIZE)
17137         (MYNOTIFYICONDATAW_V2_SIZE, MYNOTIFYICONDATAW_V3_SIZE): Define and
17138         use instead of the corresponding NOTIFYICONDATAW_Vn_SIZE macros,
17139         which cause trouble with MinGW42 headers.  Ifdef away tray
17140         notifications code for Cygwin.  Reported by Andy Moreton
17141         <andrewjmoreton@gmail.com>.
17143 2015-11-12  Simen Heggestøyl  <simenheg@gmail.com>
17145         Enable sorting of JSON object keys when encoding
17147         * lisp/json.el (json-encoding-object-sort-predicate): New variable
17148         for specifying a sorting predicate for JSON objects during encoding.
17149         (json--plist-to-alist): New utility function.
17150         (json-encode-hash-table): Re-use `json-encode-alist' when object keys
17151         are to be sorted.
17152         (json-encode-alist): Sort output by
17153         `json-encoding-object-sort-predicate, when set.
17154         (json-encode-plist): Re-use `json-encode-alist' when object keys are
17155         to be sorted.
17156         (json-pretty-print-buffer-ordered): New command to pretty print the
17157         buffer with object keys sorted alphabetically.
17158         (json-pretty-print-ordered): New command to pretty print the region
17159         with object keys sorted alphabetically.
17161         * test/automated/json-tests.el (test-json-plist-to-alist)
17162         (test-json-encode-plist, test-json-encode-hash-table)
17163         (test-json-encode-alist-with-sort-predicate)
17164         (test-json-encode-plist-with-sort-predicate): New tests.
17166         * etc/NEWS: Add an entry for the new commands.
17168 2015-11-12  Juanma Barranquero  <lekktu@gmail.com>
17170         * test/automated/keymap-tests.el: New test file.
17172 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
17174         Speed up x_real_pos_and_offsets using XCB
17176         * src/xfns.c (x_real_pos_and_offsets) [USE_XCB]: Add XCB flavors of
17177         all X calls, and pipeline requests when possible, collecting results
17178         later.  Eliminate use of x_catch_errors (and thus XSync) in XCB case.
17180 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
17182         Enable use of XCB for checking window manager state
17184         * src/xterm.c (get_current_wm_state) [USE_XCB]: Use XCB calls instead
17185         of XGetWindowProperty plus error-catching, since we can explicitly
17186         check for errors in the XCB version.  This eliminates 3 XSync calls on
17187         top of the round-trip actually fetching the information.
17189 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
17191         Detect XCB and save a connection handle
17193         * configure.ac: If using X11, check for XCB libraries and header.
17194         * src/Makefile.in (XCB_LIBS): Define.
17195         (LIBX_EXTRA): Include it.
17197         * src/xterm.h [USE_XCB]: Include X11/Xlib-xcb.h.
17198         (struct x_display_info) [USE_XCB]: Add an XCB connection handle field.
17199         * src/xterm.c (x_term_init) [USE_XCB]: Initialize the new field.
17201 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
17203         Reduce some data dependencies between X calls
17205         Gains nothing in the traditional-Xlib code, but more closely aligns
17206         with how the XCB version will work.
17208         * src/xfns.c (x_real_pos_and_offsets): When translating coordinates,
17209         send coordinates (0,0) to the X server and add in the real coordinates
17210         after getting the response.  Move XGetGeometry for outer window inside
17211         error-trapping block.  Use DPY variable more, since it's available.
17213 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
17215         Use color cache for creating bitmap
17217         * src/image.c (x_create_bitmap_from_xpm_data) [ALLOC_XPM_COLORS]:
17218         Set attributes to use the caching color allocator.  Initialize and
17219         free the cache.
17221 2015-11-12  Eli Barzilay  <eli@barzilay.org>
17223         Add "^" to the interactive specs of `dired-next/previous-line'
17225         * lisp/dired.el (dired-next-line, dired-previous-line): It makes sense
17226         to bind these commands to the arrow keys, and that means that they work
17227         better with a "^" in the `interactive' declaration so selection works
17228         as expected.
17230 2015-11-12  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
17232         Sync with soap-client repository, version 3.0.2
17234         * lisp/net/soap-client.el: Bump version to 3.0.2.
17236         * lisp/net/soap-client.el (soap-warning): Use format, not format-message.
17238         * lisp/net/soap-client.el: Add cl-lib to Package-Requires.  Require cl-lib.
17239         (soap-validate-xs-simple-type): Use cl-labels instead of cl-flet.
17241         * lisp/net/soap-client.el: Support Emacs versions that do not have
17242         define-error.
17244         * lisp/net/soap-inspect.el: Remove version header.
17246         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Fix first line header
17247         format.
17249 2015-11-11  Alan Mackenzie  <acm@muc.de>
17251         CC Mode: Respect users' settings of open-paren-in-column-0-is-defun-start.
17253         * lisp/progmodes/cc-engine.el (c-backward-single-comment)
17254         (c-backward-comments, c-invalidate-state-cache-1, c-parse-state-1)
17255         (c-guess-basic-syntax):
17256         Remove bindings of open-paren-in-column-0-is-defun-start to nil.
17257         (c-get-fallback-scan-pos): "New" function (existed several years ago).
17258         (c-parse-state-get-strategy): Reintroduce the 'BOD strategy, using
17259         c-get-fallback-scan-pos.
17260         (c-parse-state-1): Handle 'BOD strategy.
17262         * lisp/progmodes/cc-mode.el (c-before-change, c-after-change)
17263         (c-font-lock-fontify-region): Remove bindings of
17264         open-paren-in-column-0-is-defun-start to nil.
17266         * doc/misc/cc-mode.texi (Performance Issues)
17267         (Limitations and Known Bugs): Fix mix up between @chapter and @appendix.
17269 2015-11-11  Artur Malabarba  <bruce.connor.am@gmail.com>
17271         * lisp/obarray.el: Fix shadowed variables.
17272         (obarray-map, obarray-remove, obarray-put, obarray-get):
17273         Change OBARRAY arg to OB to avoid shadowing ‘obarray’.
17275 2015-11-11  Eli Zaretskii  <eliz@gnu.org>
17277         Avoid error in submitting a form with EWW
17279         * lisp/gnus/mm-url.el (mm-url-form-encode-xwfu): Allow argument
17280         CHUNK to be nil.  (Bug#21881)
17282 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
17284         Rename seq-p and map-p to seqp and mapp
17286         * lisp/emacs-lisp/seq.el (seqp): New name.
17287         * lisp/emacs-lisp/map.el (mapp): New name.
17288         * doc/lispref/sequences.texi: Update the documentation for seqp.
17289         * test/automated/map-tests.el: Update the tests for mapp.
17291 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
17293         Rename obarray-p to obarrayp
17295         * lisp/obarray.el (obarrayp): New name.
17296         * test/automated/obarray-tests.el: Update the tests.
17298 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
17300         Rename obarray-foreach to obarray-map
17302         * lisp/obarray.el (obarray-map): New name.
17303         * test/automated/obarray-tests.el: Update the corresponding tests.
17305 2015-11-11  Przemysław Wojnowski  <esperanto@cumego.com>
17307         New file with obarray functions.
17309         * lisp/obarray.el: Basic obarray functions extracted from abbrev.el.
17310         * test/automated/obarray-tests.el: New file.
17312 2015-11-11  Eli Zaretskii  <eliz@gnu.org>
17314         Implement tray notifications for MS-Windows
17316         * src/w32fns.c (MY_NOTIFYICONDATAW): New typedef.
17317         (NOTIFYICONDATAW_V1_SIZE, NOTIFYICONDATAW_V2_SIZE)
17318         (NOTIFYICONDATAW_V3_SIZE, NIF_INFO, NIIF_NONE, NIIF_INFO)
17319         (NIIF_WARNING, NIIF_ERROR, EMACS_TRAY_NOTIFICATION_ID)
17320         (EMACS_NOTIFICATION_MSG): New macros.
17321         (NI_Severity): New enumeration.
17322         (get_dll_version, utf8_mbslen_lim, add_tray_notification)
17323         (delete_tray_notification, Fw32_notification_notify)
17324         (Fw32_notification_close): New functions.
17325         (syms_of_w32fns): Defsubr functions exposed to Lisp.  DEFSYM
17326         keywords used by w32-notification-notify.
17328         * doc/lispref/os.texi (Desktop Notifications): Describe the native
17329         w32 tray notifications.
17331 2015-11-11  Alan Mackenzie  <acm@muc.de>
17333         First commit to scratch/follow.  Make Isearch work with Follow Mode, etc.
17335         doc/lispref/window.texi (Basic Windows): Add paragraph defining "Group of
17336         Windows" and new @defun selected-window-group.
17337         (Window Start and End): Describe new &optional parameter GROUP and
17338         ...-group-function for window-start, window-end, set-window-start, and
17339         pos-visible-in-window-p.
17340         (Textual Scrolling) Describe the same for recenter.
17341         doc/lispref/positions.texi (Screen Lines): Describe the same for
17342         move-to-window-line.
17344         src/window.c (Fwindow_start, Fwindow_end, Fset_window_start)
17345         (Fpos_visible_in_window_p, Frecenter, Fmove_to_window_line): To each, add ar
17346         new optional parameter "group".  At the beginning of each, check whether the
17347         corresponding ...-group-function is set to a function, and if so execute this
17348         function in place of the normal processing.
17349         (syms_of_window): Define symbols for the six new variables below.
17350         (window-start-group-function, window-end-group-function)
17351         (set-window-start-group-function, recenter-group-function)
17352         (pos-visible-in-window-p-group-function, move-to-window-line-group-function):
17353         New permanent local buffer local variables.
17354         src/keyboard.c (Fposn_at_point): Add extra parameter in call to
17355         Fpos_visible_in_window_p.
17357         lisp/window.el (selected-window-group-function): New permanent local buffer
17358         local variable.
17359         (selected-window-group): New function.
17361         lisp/follow.el (follow-mode): Set the ...-group-function variables at mode
17362         enable, kill them at mode disable.  Add/remove follow-after-change to/from
17363         after-change-functions.
17364         (follow-start-end-invalid): New variable.
17365         (follow-redisplay): Manipulate follow-start-end-invalid.
17366         (follow-after-change, follow-window-start, follow-window-end)
17367         (follow-set-window-start, follow-pos-visible-in-window-p)
17368         (follow-move-to-window-line, follow-sit-for): New functions.
17370         lisp/isearch.el (isearch-call-message): New macro.
17371         (isearch-update, with-isearch-suspended, isearch-del-char)
17372         (isearch-search-and-update, isearch-ring-adjust): Invoke above new macro.
17373         (with-isearch-suspended): Rearrange code such that isearch-call-message is
17374         invoked before point is moved.
17375         (isearch-message): Add comment about where point must be at function call.
17376         (isearch-search): Remove call to isearch-message.
17377         (isearch-lazy-highlight-window-group): New variable.
17378         (isearch-lazy-highlight-new-loop): Unconditionally start idle timer.  Move
17379         the battery of tests to ...
17380         (isearch-lazy-highlight-maybe-new-loop): New function, started by idle timer.
17381         Note: (sit-for 0) is still called.
17382         (isearch-lazy-highlight-update): Check membership of
17383         isearch-lazy-highlight-window-group.  Don't set the `window' overlay
17384         property.
17385         (isearch-update, isearch-done, isearch-string-out-of-window)
17386         (isearch-back-into-window, isearch-lazy-highlight-maybe-new-loop)
17387         (isearch-lazy-highlight-search, isearch-lazy-highlight-update)
17388         (isearch-lazy-highlight-update): Call the six amended primitives (see
17389         src/window.c above) with the new `group' argument set to t, to cooperate
17390         with Follow Mode.
17392 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
17394         Optimize `file-equal-p' and `file-in-directory-p' in Tramp
17396         * lisp/net/tramp.el (tramp-handle-file-equal-p)
17397         (tramp-handle-file-in-directory-p): New defuns.  Suggested by
17398         Harvey Chapman <hchapman@3gfp.com>.
17400         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
17401         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist):
17402         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist):
17403         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist): Use them.
17405 2015-11-10  Karl Fogel  <kfogel@red-bean.com>
17407         * CONTRIBUTE: Encourage adding tests.
17409         Based on this post from John Wiegley:
17411           From: "John Wiegley" <johnw@newartisans.com>
17412           Subject: Re: [Emacs-diffs] master 1f02cbe: Fix bug#21766 and add test
17413           To: Juanma Barranquero <lekktu@gmail.com>
17414           Cc: emacs-diffs@gnu.org, bruce.connor.am@gmail.com,
17415               emacs-devel <emacs-devel@gnu.org>
17416           Date: Wed, 28 Oct 2015 18:45:29 -0700
17417           Message-ID: <m2y4emqwg6.fsf@newartisans.com>
17419           https://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02372.html
17421 2015-11-10  David Reitter  <david.reitter@gmail.com>
17423         Avoid creating notification objects when possible
17425         * src/nsterm.m (windowWillEnterFullScreen, windowWillExitFullScreen:)
17426         (windowDidEnterFullScreen, windowDidExitFullScreen): Provide convenience
17427         functions that do not require a notification object.  When needed,
17428         define NSWindowDidEnterFullScreenNotification to allow for compilation
17429         on OS X 10.6.8.
17431 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
17433         Move INTEGER_TO_CONS body out of .h file
17435         * src/data.c (INTBIG_TO_LISP): New macro, with most
17436         of the contents of the old INTEGER_TO_CONS.
17437         (intbig_to_lisp, uintbig_to_lisp): New functions.
17438         * src/lisp.h (INTEGER_TO_CONS):
17439         Simplify by using EXPR_SIGNED and the new functions.
17440         This shrinks code size a bit, and makes it easier to
17441         put a breakpoint on handling of large integers.
17443 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
17445         Merge from gnulib
17447         This incorporates:
17448         2015-11-10 intprops: new public macro EXPR_SIGNED
17449         2015-11-10 intprops: fix typo in clang port
17450         * lib/intprops.h: Copy from gnulib.
17452 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
17454         Spelling fixes
17456         * lisp/net/soap-inspect.el (soap-inspect-xs-simple-type):
17457         Fix misspelling in output.
17459 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
17461         * doc/lispref/variables.texi (Directory Local Variables):
17462         Document dir-locals wildcards.
17464         * lisp/files.el (dir-locals-file): Point to Info node.
17466         * doc/emacs/custom.texi (Directory Variables):
17467         Document dir-locals wildcards.
17469         * etc/NEWS: Document new functionality.
17471 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
17473         * lisp/files.el: Don't allow customization of dir-locals sorting.
17474         In retrospect, this is not a good idea for the same reason that
17475         `dir-locals-file' is a defconst, because it is important that this
17476         behavior be "uniform across different environments and users".
17477         Sure, the user can still change the sorting with a hack, but we
17478         shouldn't encourage them to change it.
17479         (dir-locals--all-files): Return list in the order returned by
17480         `file-expand-wildcards'.
17481         (file-expand-wildcards): Document the sorting predicate used.
17482         (dir-locals-sort-predicate): Delete variable.
17484 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
17486         * lisp/files.el (dir-locals-read-from-file): Better handle errors.
17488         * lisp/isearch.el (search-default-regexp-mode): Change default value.
17490 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
17492         * lisp/files.el (dir-locals-find-file): Don't stop at unreadable files.
17493         `locate-dominating-file' will now keep looking if the files it finds in
17494         a given directory are unreadable (or not files).
17496 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
17498         * lisp/files.el (dir-locals-file): Allow wildcards.
17499         (dir-locals-find-file, dir-locals-collect-variables)
17500         (dir-locals-read-from-file): Update accordingly.
17501         (hack-dir-local-variables): Rename a local variable.
17503         * lisp/files-x.el (modify-dir-local-variable): Update accordingly.
17505         * lisp/help-fns.el (describe-variable): Update accordingly.
17507         * .gitignore: Add .dir-locals?.el.
17509 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
17511         * lisp/emacs-lisp/map.el (map-merge-with): New function.
17513         * test/automated/map-tests.el (test-map-merge-with): New test.
17515 2015-11-10  Karl Fogel  <kfogel@red-bean.com>
17517         Fix some recently-perturbed bookmark autoloads
17519         * lisp/bookmark.el (bookmark-set-internal): Remove unnecessary autoload.
17520         (bookmark-set): Restore autoload.
17521         (bookmark-set-no-overwrite): Add autoload.
17523         Thanks to Juanma Barranquero for noticing the autoload problems
17524         introduced by my recent commit adding/changing the above functions
17525         (Sun Nov 8 14:16:43 2015 -0500, git commit 3812e17978).
17527 2015-11-09  Noah Friedman  <friedman@splode.com>
17529         * etc/emacs-buffer.gdb (ydump-buffer): Handle case where gap is at
17530         the start of buffer.  I don't recall if older versions of gdb were
17531         less strict but you cannot dump a 0-length range in gdb 7.9.1.
17533 2015-11-10  Dmitry Gutov  <dgutov@yandex.ru>
17535         * lisp/progmodes/project.el: Update Commentary.
17537         Merge branch 'project-next'
17539 2015-11-10  Dmitry Gutov  <dgutov@yandex.ru>
17541         Fold `project-ask-user' into `project-current'
17543         * lisp/progmodes/project.el (project-find-functions): Remove
17544         `project-ask-user'.
17545         (project-ask-user): Remove function and the corresponding
17546         `project-roots' implementation.
17547         (project-current): Add a new argument, MAYBE-PROMPT.  Prompt the
17548         user in case there's no project in the current directory.  Update
17549         all callers.
17551 2015-11-09  Karl Fogel  <kfogel@red-bean.com>
17553         When VC detects a conflict, specify which file
17555         * lisp/vc/vc.el (vc-message-unresolved-conflicts): New function.
17556         * lisp/vc/vc-svn.el (vc-svn-find-file-hook):
17557         * lisp/vc/vc-hg.el (vc-hg-find-file-hook):
17558         * lisp/vc/vc-bzr.el (vc-bzr-find-file-hook):
17559         * lisp/vc/vc-git.el (vc-git-find-file-hook): Use above new function
17560           to display a standard message that specifies the conflicted file.
17562         Before this change, the message VC used for indicating a conflicted
17563         file was just "There are unresolved conflicts in this file" without
17564         naming the file (and this language was duplicated in several places).
17565         After this change, it's "There are unresolved conflicts in file FOO"
17566         (and this language is now centralized in one function in vc.el).
17568         Justification: It's important for the message to name the conflicted
17569         file because the moment when VC realizes a file is conflicted does not
17570         always come interactively.  For example, some people automatically
17571         find a set of Org Mode files on startup, and may keep those .org files
17572         under version control.  If any of the files are conflicted, the user
17573         just sees some messages fly by, and might later check the "*Messages*"
17574         buffer to find out what files were conflicted.  I'm not saying this
17575         happened to me or anything; it's a purely hypothetical example.
17577 2015-11-09  Eli Zaretskii  <eliz@gnu.org>
17579         Fix assertion violation in define-key
17581         * src/keymap.c (store_in_keymap): Don't use XFASTINT on non-character
17582         objects.  Reported by Drew Adams <drew.adams@oracle.com>
17583         and Juanma Barranquero <lekktu@gmail.com>.
17585 2015-11-09  Dima Kogan  <dima@secretsauce.net>
17587         Fix a memory leak in GC of font cache
17589         * src/alloc.c (compact_font_cache_entry): Don't GC unmarked font
17590         entities if some of the fonts it references are marked.  This
17591         plugs a memory leak.  (Bug#21556)
17593 2015-11-09  Paul Eggert  <eggert@cs.ucla.edu>
17595         Use INT_ADD_WRAPV etc. to check integer overflow
17597         * src/alloc.c (xnmalloc, xnrealloc, xpalloc, Fmake_string):
17598         * src/buffer.c (record_overlay_string, overlay_strings):
17599         * src/casefiddle.c (casify_object):
17600         * src/ccl.c (Fccl_execute_on_string):
17601         * src/character.c (char_width, c_string_width, lisp_string_width)
17602         (count_size_as_multibyte, string_escape_byte8):
17603         * src/coding.c (coding_alloc_by_realloc, produce_chars):
17604         * src/data.c (arith_driver):
17605         * src/dispnew.c (realloc_glyph_pool, init_display):
17606         * src/editfns.c (styled_format):
17607         * src/fns.c (Ffillarray):
17608         * src/ftfont.c (ftfont_shape_by_flt):
17609         * src/gnutls.c (gnutls_hex_string):
17610         * src/gtkutil.c (get_utf8_string):
17611         * src/image.c (x_to_xcolors, x_detect_edges, png_load_body):
17612         * src/keymap.c (Fkey_description):
17613         * src/lisp.h (SAFE_ALLOCA_LISP):
17614         * src/term.c (encode_terminal_code):
17615         * src/tparam.c (tparam1):
17616         * src/xselect.c (x_property_data_to_lisp):
17617         * src/xsmfns.c (smc_save_yourself_CB):
17618         * src/xterm.c (x_term_init):
17619         When checking for integer overflow, prefer INT_MULTIPLY_WRAPV to
17620         more-complicated code involving division and/or
17621         INT_MULTIPLY_OVERFLOW, and similarly for INT_ADD_WRAPV and
17622         subtraction and/or INT_ADD_OVERFLOW.
17623         * src/casefiddle.c (casify_object): Simplify multibyte size check.
17624         * src/character.c: Remove some obsolete ‘#ifdef emacs’s.
17625         * src/data.c (arith_driver): Also check for division overflow,
17626         as that’s now possible given that the accumulator can now contain
17627         any Emacs integer.
17628         * src/lisp.h (lisp_word_count): Remove; no longer used.
17630 2015-11-09  Dmitry Gutov  <dgutov@yandex.ru>
17632         Make sure that the ignore file exists
17634         * lisp/vc/vc.el (vc-default-ignore-completion-table):
17635         Make sure that the ignore file exists.
17637 2015-11-09  Michael Sperber  <mike@xemacs.org>
17639         * lisp/gnus-sum.el (gnus-summary-backend-map): Bind B-backspace to
17640         `gnus-summary-delete-article` in a way that also works on XEmacs.
17642 2015-11-08  Simen Heggestøyl  <simenheg@gmail.com>
17644         Add support for retrieving paths to JSON elements
17646         Add support for retrieving the path to a JSON element. This can for
17647         instance be useful to retrieve paths in deeply nested JSON
17648         structures.
17650         * lisp/json.el (json-pre-element-read-function)
17651         (json-post-element-read-function): New variables to hold pre- and post
17652         read callback functions for `json-read-array' and `json-read-object'.
17653         (json--path): New variable used internally by `json-path-to-position'.
17654         (json--record-path, json--check-position): New functions used
17655         internally by `json-path-to-position'.
17656         (json-path-to-position): New function for retrieving the path to a
17657         JSON element at a given position.
17658         (json-read-object, json-read-array): Call
17659         `json-pre-element-read-function' and `json-post-element-read-function'
17660         when set.
17662         * test/automated/json-tests.el (test-json-path-to-position-with-objects)
17663         (test-json-path-to-position-with-arrays)
17664         (test-json-path-to-position-no-match): New tests for
17665         `json-path-to-position'.
17667 2015-11-08  Karl Fogel  <kfogel@red-bean.com>
17669         * etc/NEWS: Mention new `bookmark-set-no-overwrite'.
17671         This really should been part of my previous commit
17672         (Sun Nov 8 14:16:43 2015 -0500, git commit 3812e17978).
17674 2015-11-08  Karl Fogel  <kfogel@red-bean.com>
17676         Offer non-overwrite bookmark setter (Bug#15746)
17678         * lisp/bookmark.el (bookmark-set-internal): New helper function to do
17679         what `bookmark-set' used to do, but with more choices for overwrite
17680         vs push, and with minor changes to the interactive prompt format.
17681         (bookmark-set): Rewrite as wrapper around above.
17682         If overwriting, inform the user of that in the prompt.
17683         (bookmark-set-no-overwrite): New function, also done as wrapper.
17684         Bind to "M" in `ctl-x-r-map' autoloads.
17685         (bookmark-map): Similarly bind "M" here.
17687 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
17689         * src/unexelf.c (NEW_PROGRAM_H): Remove unused macro (Bug#20614).
17691 2015-11-08  Alan Modra  <amodra@gmail.com>
17693         ELF unexec: Don't insert a new section
17695         Reuse the .bss section instead, making it SHT_PROGBITS.  This way we
17696         don't need to mess with symbol st_shndx, or section sh_link and
17697         sh_info.
17699         This does lead to eu-elflint complaints about symbols defined in .bss
17700         with a needed version, because normally it is undefined symbols that
17701         have needed versions;  Defined symbols have version definitions.
17702         The exception is symbols defined by the linker in .dynbss for
17703         variables copied from a shared library in order to avoid text
17704         relocations, with copy relocs to copy their initial values from the
17705         shared library.  These symbols are both defined and have needed
17706         versions, and eu-elflink only expects to see them in SHT_NOBITS
17707         sections.  Of course there is no real problem with having such symbols
17708         in SHT_PROGBITS sections.  glibc ld.so handles them fine.
17710         * src/unexelf.c: Delete outdated comments.
17711         (PATCH_INDEX): Delete.
17712         (find_section): Delete.
17713         (unexec): Don't add a new section.  Instead reuse the last bss
17714         section, extending it to cover dumped data.  Make bss sections
17715         SHT_PROGBITS.  Remove all patching of sh_link, sh_info and
17716         st_shndx.  Rename bss sections.
17718 2015-11-08  Alan Modra  <amodra@gmail.com>
17720         ELF unexec: Drive from PT_LOAD header rather than sections
17722         This rewrites bss handling in the ELF unexec code.  Finding bss
17723         sections by name results in complicated code that
17724         - does not account for all names of possible bss sections,
17725         - assumes specific ordering of bss sections,
17726         - can wrongly choose a SHT_NOBITS section not in the bss segment,
17727         - incorrectly calculates bss size (no accounting for alignment gaps),
17728         - assumes .data and .bss are in the same segment.
17730         All of these problems and more are solved by finding the bss segment
17731         in PT_LOAD headers, ie. the address range included in p_memsz but not
17732         p_filesz of the last PT_LOAD header, then matching SHT_NOBITS sections
17733         in that address range.
17735         * src/unexelf.c: Delete old ppc comment.
17736         (OLD_PROGRAM_H): Define.
17737         (round_up): Delete.
17738         (unexec): Don't search for bss style sections by name.  Instead,
17739         use the last PT_LOAD header address range covered by p_memsz
17740         but not p_filesz and match any SHT_NOBITS section in that
17741         address range.  Simplify initialization of section header vars.
17742         Don't assume that section headers are above bss segment.  Move
17743         copying of bss area out of section loop.  Align .data2 section
17744         to 1, since it now covers the entire bss area.  For SHT_NOBITS
17745         sections in the bss segment, leave sh_addr and sh_addralign
17746         unchanged, but correct sh_offset.  Clear memory corresponding
17747         to SHT_NOBITS .plt section.  Delete comment and hacks for
17748         sections partly overlapping bss range now that the full range
17749         is properly calculated.  Delete now dead .sbss code.
17750         (Bug#20614)
17752 2015-11-08  Alan Modra  <amodra@gmail.com>
17754         ELF unexec: R_*_NONE relocs
17756         These should be ignored on all targets.
17758         * src/unexelf.c (unexec): Ignore R_*_NONE relocs for any target,
17759         not just Alpha.  Comment on reloc size assumption.
17761 2015-11-08  Alan Modra  <amodra@gmail.com>
17763         ELF unexec: _OBJC_ symbols in bss sections
17765         This code assumed that there was only one bss section.  Rather than
17766         checking for a particular index, check the section type.  Also, handle
17767         the possibility that the section was SHT_NOBITS originally and is
17768         unchanged, in which case no clearing is needed (and sh_offset isn't
17769         necessarily valid, which can lead to a wild memset).
17771         * src/unexelf.c (unexec): Properly handle _OBJC_ symbols in
17772         bss sections.
17774 2015-11-08  Alan Modra  <amodra@gmail.com>
17776         ELF unexec: Symbol table patching
17778         No st_shndx value larger than SHN_LORESERVE should be changed.
17779         * src/unexelf.c (unexec): Don't adjust any st_shndx larger than
17780         SHN_LORESERVE.  Error on SHN_XINDEX.
17782 2015-11-08  Alan Modra  <amodra@gmail.com>
17784         ELF unexec: Merge Alpha and MIPS COFF debug handling
17786         * src/unexelf.c (unexec): Merge Alpha and MIPS COFF debug handling.
17787         Don't find .mdebug section index, find the section in the loop.
17788         Allow for unlikely possibility that .mdebug is located at sh_offset
17789         before bss segment, by calculating move from difference in
17790         sh_offset rather than just assuming new_data2_size.  Simplify
17791         cbLineOffset handling.
17793 2015-11-08  Alan Modra  <amodra@gmail.com>
17795         ELF unexec: Tidy code
17797         Separate out some of the more mechanical changes so following patches
17798         are smaller.
17800         * src/unexelf.c (unexec): Rearrange initialization of program
17801         header vars.  Use pointer vars in loops rather than indexing
17802         section header array via macros.  Simplify _OBJC_ sym code
17803         and reloc handling code.
17805 2015-11-08  Alan Modra  <amodra@gmail.com>
17807         ELF unexec: Correct section header index
17809         First a small fix.  The code incorrectly uses "NEW_SECTION_H (n)" when
17810         it should have been using "NEW_SECTION_H (nn)" to find the name of the
17811         section currently being processed.  Of course, before the bss
17812         sections, n and nn have the same value, so this doesn't matter except
17813         in the case of .sbss.  For .sbss this probably meant .bss (most likely
17814         the next section) was copied from memory.  A later patch removes the
17815         bogus .sbss handling anyway.
17817         * src/unexelf.c (unexec): Use correct index to look up names.
17819 2015-11-08  Michael Albinus  <michael.albinus@gmx.de>
17821         Fix Bug#21841
17823         * lisp/filenotify.el (file-notify--rm-descriptor):
17824         Use `descriptor' instead of computing its value.
17825         (file-notify--descriptor): Additional argument FILE.  Adapt all callees.
17826         (file-notify-rm-watch): Use `descriptor' when calling file name handler.
17827         (Bug#21841)
17829 2015-11-08  Dmitry Gutov  <dgutov@yandex.ru>
17831         Remove dirs in vc project roots from the the vc project library roots
17833         * lisp/progmodes/project.el (project-library-roots):
17834         Remove directories inside the project roots from the result.
17835         (http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg00536.html)
17837 2015-11-08  Dmitry Gutov  <dgutov@yandex.ru>
17839         Move and rename xref-find-regexp to the project package
17841         * lisp/progmodes/project.el (project-find-regexp)
17842         (project--read-regexp)
17843         (project--find-regexp-in): New functions.
17845         * lisp/progmodes/xref.el (xref--find-xrefs): Extract from
17846         xref--show-xrefs.  Use in existing callers in place of that
17847         function.
17848         (xref--show-xrefs): Only do the "show" part.
17849         (xref-find-regexp): Rename, more or less, to
17850         project-or-libraries-find-regexp.
17852 2015-11-06  Dmitry Gutov  <dgutov@yandex.ru>
17854         Abolish temporary buffer management for xref
17856         * lisp/progmodes/xref.el (xref--temporary-buffers)
17857         (xref--current)
17858         (xref--inhibit-mark-current)
17859         (xref--mark-selected): Remove.  Remove all references.
17860         (xref--show-xrefs): Do not construct the
17861         list of the temporary buffers, nor pass it along.
17863 2015-11-06  Dmitry Gutov  <dgutov@yandex.ru>
17865         Rename "search path" to "library roots"
17867         * lisp/emacs-lisp/cl-seq.el (cl-set-difference): Retain the order
17868         of the elements from CL-LIST1.
17870         * test/automated/cl-lib-tests.el (cl-lib-test-set-functions):
17871         Update WRT to the above change.
17873         * lisp/progmodes/project.el (project-search-path-function): Rename
17874         to project-library-roots-function, update the documentation and
17875         references.
17876         (project-search-path): Likewise, to project-library-roots.
17877         (project-roots): Clarify documentation.
17878         (project-vc-search-path): Likewise, to project-vc-library-roots.
17879         (project-library-roots): In addition to the renames, thread the
17880         results through file-name-as-directory.
17881         (project-prune-directories): Accept a variable number of
17882         arguments.  Rename to project-combine-directories.
17883         (project-subtract-directories): New function.
17885         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references):
17886         Append project-roots and project-library-roots together.
17888         * lisp/progmodes/etags.el (etags--xref-find-references): Ditto.
17890 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
17892         Prefer xpalloc to doubling buffers by hand
17894         * src/lread.c (grow_read_buffer): New function, which uses xpalloc.
17895         (read1): Use it for simplicity.
17896         * src/macros.c (store_kbd_macro_char):
17897         * src/minibuf.c (read_minibuf_noninteractive):
17898         * src/term.c (encode_terminal_code):
17899         * src/xrdb.c (magic_db):
17900         Prefer xpalloc to growing buffers by hand.
17901         This doesn’t fix any bugs, but simplifies the code a bit.
17903 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
17905         Merge from gnulib
17907         This incorporates:
17908         2015-11-05 timespec-sub: fix overflow bug; add tests
17909         2015-11-04 intprops: revise _WRAPV macros, revert _OVERFLOW
17910         2015-11-03 intprops: add parentheses
17911         * lib/intprops.h, lib/timespec-add.c, lib/timespec-sub.c:
17912         Copy from gnulib.
17914 2015-11-07  David Reitter  <david.reitter@gmail.com>
17916         Provide NS notification objects where required to eliminate warnings
17918         * src/nsterm.m (windowDidResize:, toggleFullScreen:):
17919         Call notification functions with notification objects
17920         as per delegate APIs.
17922 2015-11-07  Noam Postavsky  <npostavs@users.sourceforge.net>
17924         Add test for bug #21824
17926         * test/automated/buffer-tests.el: New file.
17927         (overlay-modification-hooks-message-other-buf): New test.
17929 2015-11-07  Kelvin White  <kwhite@gnu.org>
17931         * lisp/erc/erc-pcomplete.el (pcomplete-erc-nicks): Fix bug#18771.
17933 2015-11-07  David Reitter  <david.reitter@gmail.com>
17935         Ignore fullscreen exit notifications on NS when frame is dead
17937         * src/nsterm.m (windowDidResize:, windowWillExitFullScreen:)
17938         (windowDidExitFullScreen:): Return if frame is dead.
17939         These functions may be called when a fullscreen frame
17940         is closed; they are called before, not after.
17942         May address Bug#21428.
17944 2015-11-07  Eli Zaretskii  <eliz@gnu.org>
17946         Speed up lookup in redisplay--variables
17948         * lisp/frame.el (redisplay--variables): Make it a hash-table.
17950         * src/xdisp.c (maybe_set_redisplay): Access redisplay--variables
17951         as a hash-table.  This speeds up this function by an order of
17952         magnitude: where previously a setq was slowed down by 100% by
17953         introducing the maybe_set_redisplay test, it is now only 5%
17954         slower.
17955         (syms_of_xdisp) <redisplay--variables>: Doc fix.
17957 2015-11-07  Artur Malabarba  <bruce.connor.am@gmail.com>
17959         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Fix a bug.
17961         The defsubst was being created as:
17962             (cl-defsubst name (args) ("DOC") ...)
17964         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors):
17965         Add test.
17967 2015-11-07  Mihai Olteanu  <mihai_olteanu@fastmail.fm>  (tiny change)
17969         Update doc string of hexl-mode
17971         * lisp/hexl.el (hexl-mode): Doc fix.  (Bug#21800)
17973 2015-11-07  Eli Zaretskii  <eliz@gnu.org>
17975         Fix error in copy-abbrev-table
17977         * lisp/abbrev.el (define-abbrev): Don't erase the :abbrev-table-modiff
17978         property of the abbrev-table.  (Bug#21828)
17980         * test/automated/abbrev-tests.el: New file.
17982 2015-11-07  Michael Albinus  <michael.albinus@gmx.de>
17984         Add test to auto-revert-tests.el for Bug#21841
17986         * test/automated/auto-revert-tests.el
17987         (auto-revert-test01-auto-revert-several-files): New test.
17988         (auto-revert-test02-auto-revert-tail-mode)
17989         (auto-revert-test03-auto-revert-mode-dired): Rename them.
17991 2015-11-07  Martin Rudalics  <rudalics@gmx.at>
17993         * doc/lispref/windows.texi (Coordinates and Windows): Fix typo.
17995 2015-11-07  Martin Rudalics  <rudalics@gmx.at>
17997         In x_consider_frame_title don't set title of tooltip frames
17999         * src/xdisp.c (x_consider_frame_title): Return immediately for
18000         tooltip frames to avoid displaying empty tooltips.
18002 2015-11-06  Anders Lindgren  <andlind@gmail.com>
18004         Fixed NextStep fullscreen problem (bug#21770).
18006         * src/nsterm.m (ns_constrain_all_frames): Don't constrain
18007         fullscreen frames.
18009 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
18011         Ensure redisplay after evaluation
18013         * lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp):
18014         Revert last change.
18015         * lisp/frame.el (redisplay--variables): Populate the
18016         redisplay--variables list.
18017         * src/xdisp.c (maybe_set_redisplay): New function.
18018         (syms_of_xdisp) <redisplay--variables>: New variable.
18019         * src/window.h (maybe_set_redisplay): Declare prototype.
18020         * src/data.c (set_internal): Call maybe_set_redisplay.  (Bug#21835)
18022 2015-11-06  Artur Malabarba  <bruce.connor.am@gmail.com>
18024         * test/automated/subr-tests.el (subr-test-when): Fix again.
18026 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
18028         Don't invoke overlay modification hooks in wrong buffer
18030         * src/buffer.c (report_overlay_modification): When called with
18031         AFTER non-zero, don't invoke overlay modification hooks if the
18032         buffer recorded in last_overlay_modification_hooks is different
18033         from the current buffer.  (Bug#21824)
18035 2015-11-06  Juanma Barranquero  <lekktu@gmail.com>
18037         * admin/notes/repo: Fix a few obsolete references to Bazaar.
18039 2015-11-06  Artur Malabarba  <bruce.connor.am@gmail.com>
18041         * test/automated/subr-tests.el (subr-test-when): Fix test.
18043 2015-11-06  Martin Rudalics  <rudalics@gmx.at>
18045         Avoid division by zero crash observed by Yuan MEI
18047         See http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg00194.html.
18049         * src/dispnew.c (required_matrix_height, required_matrix_width):
18050         Avoid division by zero.
18051         * src/xterm.c (x_term_init): Init dpyinfo->smallest_font_height and
18052         dpyinfo->smallest_char_width to 1.
18054 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
18056         Ensure redisplay after "C-x C-e"
18058         * lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp): Make sure
18059         redisplay happens to account for any side effects of the evaluated
18060         sexp.  (Bug#21835)
18062 2015-11-06  Michael Albinus  <michael.albinus@gmx.de>
18064         Skip some file notification tests for cygwin
18066         * test/automated/file-notify-tests.el (file-notify--test-with-events):
18067         Remove argument TIMEOUT.  Adapt all callees.
18068         (file-notify-test02-events, file-notify-test04-file-validity):
18069         Skip for cygwin.  (Bug#21804)
18071 2015-11-05  Stephen Leake  <stephen_leake@stephe-leake.org>
18073         * lisp/progmodes/xref.el: Require semantic/symref during compilation.
18075 2015-11-05  Daiki Ueno  <ueno@gnu.org>
18077         Suppress redundant Pinentry startup messages
18079         * lisp/net/pinentry.el (pinentry-start): Add optional QUIET argument.
18080         * lisp/epg.el: Declare `pinentry-start'.
18081         (epg--start): Call `pinentry-start' with QUIET argument set.
18083 2015-11-05  Xue Fuqiao  <xfq.free@gmail.com>
18085         * doc/emacs/ack.texi (Acknowledgments): Updates.
18087 2015-11-05  Juanma Barranquero  <lekktu@gmail.com>
18089         * test/automated/elisp-mode-tests.el: Silence some run-time warnings.
18090         (xref-elisp-deftest): Bind `find-file-suppress-same-file-warnings' to t.
18092 2015-11-05  Tassilo Horn  <tsdh@gnu.org>
18094         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
18095         Add prettification support for \times.
18097 2015-11-05  Juanma Barranquero  <lekktu@gmail.com>
18099         * test/automated/process-tests.el: Skip tests when bash is unavailable.
18100         (process-test-sentinel-accept-process-output)
18101         (process-test-sentinel-sit-for): skip-unless bash executable found.
18103 2015-11-05  Eli Zaretskii  <eliz@gnu.org>
18105         Add test for bug #21831
18107         * test/automated/process-tests.el
18108         (start-process-should-not-modify-arguments): New test.  (Bug#21831)
18109         Suggested by Nicolas Richard <youngfrog@members.fsf.org>
18111 2015-11-04  Stefan Monnier  <monnier@iro.umontreal.ca>
18113         * lisp/emacs-lisp/eieio-compat.el: Typo caught by tests.
18115         (eieio--generic-static-object-generalizer): Fix typo.
18116         * test/automated/eieio-tests.el: Byte-compile it again.  It looks
18117         like the underlying cause of bug#17852 was fixed in the mean time.
18119 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
18121         Revert "* lisp/subr.el (when): Use `macroexp-progn'"
18123         This reverts commit 8e843831eaf271801836b7a3e4dd3b4fb0bb72b8.
18124         It breaks bootstrapping (duh).
18126 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
18128         * lisp/files.el (report-errors): Obsolete.
18130         (normal-mode, hack-local-variables, dir-locals-find-file):
18131         Use `with-demoted-errors' instead.
18133 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
18135         * lisp/subr.el (when): Use `macroexp-progn'.
18137         * test/automated/subr-tests.el (subr-test-when): New test.
18139 2015-11-04  Juanma Barranquero  <lekktu@gmail.com>
18141         * lisp/progmodes/xref.el: Doc fixes.
18142         (xref-make-file-location, xref-make-buffer-location, xref-make)
18143         (xref-make-bogus-location, xref-make-match): Add cross-references.
18144         (xref--insert-xrefs): Fix typo in docstring.
18146 2015-11-04  Anders Lindgren  <andlind@gmail.com>
18148         Render fringe bitmaps correctly on NextStep (bug#21301)
18150         The fringe bitmaps were inverted, the background was not transparent,
18151         the image data was horizontally mirrored, and periodic fringe bitmaps
18152         were not supported.
18154         * src/nsimage.m ([EmacsImage initFromXBM:width:height:fg:bg:]):
18155         When both background and foreground colors are 0, set the background
18156         alpha channel to 0 (making the background transparent).  When
18157         copying the image data, do this from the most significant bit
18158         (leftmost) to the least (rightmost), to avoid mirroring.
18159         * src/nsterm.m (ns_draw_fringe_bitmap): Don't invert the image bits.
18160         Add support for periodic images (e.g. the empty line indicator).
18162 2015-11-03  Michael Heerdegen  <michael_heerdegen@web.de>
18164         * lisp/emacs-lisp/pcase.el (pcase): Tweak docstring.
18166 2015-11-03  Nicolas Petton  <nicolas@petton.fr>
18168         * admin/MAINTAINERS: Add seq-tests.el, map-tests.el, and thunk-tests.el.
18170         * admin/MAINTAINERS: Add thunk.el.
18172 2015-11-03  Jay Belanger  <jay.p.belanger@gmail.com>
18174         * lisp/calc/calc.el (calc-bug-address): Change maintainer address.
18176 2015-11-03  Michael Albinus  <michael.albinus@gmx.de>
18178         Fix a stupid error in gfilenotify.c
18180         * src/gfilenotify.c (dir_monitor_callback): Cancel monitor only,
18181         if we've got a `deleted' signal AND the file name is the watched one.
18183 2015-11-03  Stephen Leake  <stephen_leake@stephe-leake.org>
18185         Fix Bug#21816; case insensitive file system in elisp-mode-tests.el
18187         * test/automated/elisp-mode-tests.el (xref-elisp-test-run):
18188         Use case-insensitive string compare for file names.
18189         (emacs-test-dir): Add 'downcase' to cause case differences (at
18190         least on my system).
18192 2015-11-02  Juanma Barranquero  <lekktu@gmail.com>
18194         flymake-tests.el (warning-predicate-rx-gcc): Fix check
18196         * test/automated/flymake-tests.el (warning-predicate-rx-gcc):
18197         Also check that "make" is available, not just "gcc".
18199 2015-11-02  Ken Brown  <kbrown@cornell.edu>
18201         Document behavior of collation on Cygwin
18203         * test/automated/fns-tests.el (fns-tests-collate-sort): Mark as
18204         expected failure on Cygwin.
18205         * doc/lispref/strings.texi (Text Comparison): Document that
18206         punctuation and whitespace are not ignored for sorting on Cygwin.
18208 2015-11-02  Dani Moncayo  <dmoncayo@gmail.com>
18210         * build-aux/msys-to-w32: Prevent double slashes in w32 path list.
18212 2015-11-01  Glenn Morris  <rgm@gnu.org>
18214         * lisp/progmodes/f90.el (f90-no-block-limit): Add associate.
18215         (Bug#21794)
18216         * test/automated/f90.el (f90-test-bug21794): New test.
18218 2015-11-01  Juanma Barranquero  <lekktu@gmail.com>
18220         Fix incompatibility with TCC in test for bug#18745
18222         * test/automated/process-tests.el (process-test-quoted-batfile):
18223         Remove spaces unrelated to the bug being tested.
18225 2015-11-01  Michael Albinus  <michael.albinus@gmx.de>
18227         Improve completion in tramp-gvfs.el
18229         * lisp/net/tramp-gvfs.el (tramp-zeroconf-parse-device-names):
18230         Rename from `tramp-zeroconf-parse-service-device-names'.
18231         (tramp-zeroconf-parse-webdav-device-names): Remove.  Code merged
18232         with `tramp-zeroconf-parse-device-names'.
18233         (tramp-gvfs-parse-device-names): New defun.
18234         (top): Use it when `tramp-zeroconf-parse-device-names' is not
18235         applicable.
18237         * lisp/net/tramp.el (tramp-set-completion-function): The argument
18238         could also be a zeroconf service type.
18240 2015-10-31  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
18242         * lisp/net/ntlm.el: Change version to 2.0.0.
18244 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
18246         Fix bug#21762
18247         * lisp/progmodes/python.el (python-syntax-closing-paren-p): Check with
18248         `eql' instead of `=' to accommodate the case that (syntax-after (point))
18249         returns nil.
18250         * test/automated/python-tests.el (python-indent-inside-paren-7):
18251         New test.
18253 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
18255         * test/automated/python-tests.el: Avoid warnings.
18256         (python-tests-with-temp-buffer, python-tests-with-temp-file):
18257         Bind `python-indent-guess-indent-offset' to nil.
18259 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
18261         * src/alloc.c: Silence compiler warnings.
18262         (pointers_fit_in_lispobj_p, mmap_lisp_allowed_p): #ifdef DOUG_LEA_MALLOC.
18264 2015-10-31  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
18266         * etc/NEWS: Fix js-jsx-mode entry punctuation.
18268 2015-10-31  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
18270         Add JSX indentation via js-jsx-mode  (Bug#21799)
18272         * lisp/progmodes/js.el: Add JSX indentation support.
18273         (js--jsx-end-tag-re)
18274         (js--jsx-after-tag-re): New variables.
18275         (js--jsx-find-before-tag)
18276         (js--jsx-indented-element-p)
18277         (js--as-sgml)
18278         (js--expression-in-sgml-indent-line)
18279         (js-jsx-indent-line)
18280         (js-jsx-mode): New functions.
18281         * test/indent/js-jsx.js: New file.
18282         * etc/NEWS: Add information about js-jsx-mode.
18284 2015-10-31  Michael Albinus  <michael.albinus@gmx.de>
18286         Minor fix in filenotify.el
18288         * lisp/filenotify.el (file-notify--event-file-name)
18289         (file-notify--event-file1-name): Normalize result with
18290         `directory-file-name'.
18292 2015-10-31  Eli Zaretskii  <eliz@gnu.org>
18294         Avoid errors in redisplay--pre-redisplay-functions
18296         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor--detect): Don't
18297         use 'bobp', instead compare window-point with 1.  (Bug#21730)
18299 2015-10-30  Paul Eggert  <eggert@cs.ucla.edu>
18301         Merge from gnulib
18303         This incorporates:
18304         2015-10-30 intprops: add WRAPV and const flavors for GCC 5
18305         2015-10-25 stdalign: port to Sun C 5.9
18306         * doc/misc/texinfo.tex, lib/intprops.h, lib/stdalign.in.h:
18307         Copy from gnulib.
18309 2015-10-30  Eli Zaretskii  <eliz@gnu.org>
18311         * src/w32proc.c (_NLSCMPERROR): Fix a typo in the name of this macro.
18312         (w32_compare_strings): Adjust for the correction.
18314 2015-10-30  Michael Albinus  <michael.albinus@gmx.de>
18316         * test/automated/vc-tests.el (vc-test--state)
18317         (vc-test--working-revision, vc-test--checkout-model):
18318         Add result messages.
18320 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
18322         * test/automated/faces-tests.el: Add another test
18324 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
18326         * lisp/faces.el (faces--attribute-at-point): Fix bug
18327         introduced by previous commit.
18329 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
18331         * test/automated/faces-tests.el: New file.
18333 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
18335         * lisp/faces.el: Refactor common code and fix a bug.
18336         (faces--attribute-at-point): New function.  Fix a bug when the
18337         face at point is a list of faces and the desired attribute is not
18338         on the first one.
18339         (foreground-color-at-point, background-color-at-point): Use it.
18341 2015-10-30  Przemysław Wojnowski  <esperanto@cumego.com>
18343         * etc/tutorials/TUTORIAL.translators: Fix PL names.
18345 2015-10-30  Juanma Barranquero  <lekktu@gmail.com>
18347         * lisp/character-fold.el: Provide `character-fold'.
18349 2015-10-30  Tassilo Horn  <tsdh@gnu.org>
18351         * etc/themes/tsdh-dark-theme.el (tsdh-dark): Add more faces
18352         for Gnus and ivy.
18354 2015-10-30  Michael Albinus  <michael.albinus@gmx.de>
18356         Some minor fixes for tramp-gvfs.el
18358         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
18359         An attribute returned by gvfs-info might be empty.  In case of
18360         undetermined uid or gid, return "UNKNOWN" or -1, respectively.
18361         (tramp-zeroconf-parse-service-device-names): New defun.
18362         Derived from `tramp-zeroconf-parse-workstation-device-names'.
18363         (top): Add completion functions for "afp" and "smb" methods.
18365 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
18367         * test/automated/character-fold-tests.el: New file
18369 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
18371         * test/automated/sort-tests.el: New file.
18372         Tests in this file are randomly generated and then tested with
18373         regular, reverse, and case-fold sorting.
18375 2015-10-30  Eli Zaretskii  <eliz@gnu.org>
18377         Describe known problems with pinning Emacs to taskbar
18379         * etc/PROBLEMS: Describe the problem with pinning Emacs to taskbar
18380         on Windows 10.  For the details, see the discussion starting at
18381         http://lists.gnu.org/archive/html/help-emacs-windows/2015-09/msg00000.html.
18383 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
18385         * lisp/isearch.el: Avoid an error that blocks isearch.
18386         (isearch-update): Don't error if `isearch--current-buffer' has
18387         been killed.
18389         * test/automated/isearch-tests.el (isearch--test-update):
18390         New file.
18392 2015-10-30  Phil Sainty  <psainty@orcon.net.nz>
18394         Fix documentation of 'beginning/end-of-buffer'
18396         * lisp/simple.el (beginning-of-buffer, end-of-buffer): Clarify
18397         conditions under which the mark will be pushed at the previous
18398         position.  (Bug#21748)
18400 2015-10-30  Tassilo Horn  <tsdh@gnu.org>
18402         Add RefTeX feature idea: editing RefTeX TOC buffers
18404         More face defs for ivy, swiper, ace-window, eshell
18406 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
18408         * lisp/gnus/auth-source.el: Silence lexical-binding warnings.
18409         (auth-source-netrc-use-gpg-tokens): Simplify (symbol-value 'VAR) to
18410         just VAR.
18411         (auth-source-backend-parse): Use make-instance.
18412         (auth-source-search): Remove unused key args.
18413         Remove unused vars `accessor-key' and `backend'.  Avoid `eval'.
18414         (auth-source-search-backends): Use slot names rather than their initarg.
18415         (auth-source-netrc-create):
18416         (auth-source-delete):
18417         (auth-source-secrets-create, auth-source-plstore-search)
18418         (auth-source-macos-keychain-create, auth-source-macos-keychain-search)
18419         (auth-source-plstore-create, auth-source-netrc-search)
18420         (auth-source-netrc-parse): Remove unused key args.
18421         (auth-source-forget+): Simplify the arglist.
18422         (auth-source-macos-keychain-search-items)
18423         (auth-source-token-passphrase-callback-function): Mark unused args.
18424         (auth-source-epa-extract-gpg-token): Remove unused var `plain'.
18425         (pp-escape-newlines): Declare.
18426         (auto-source--symbol-keyword): New function.
18427         (auth-source-plstore-create, auth-source-netrc-create)
18428         (auth-source-netrc-normalize): Use it.
18429         (auth-source-netrc-search): Don't pass :delete to
18430         auth-source-netrc-parse since it doesn't use it.
18431         (auth-source-plstore-create, auth-source-netrc-create): Use plist-get
18432         symbol-value to index in keyword args.
18433         (auth-source-macos-keychain-result-append): Avoid setq.
18434         (auth-source-netrc-create): Remove unused vars `file' and `add'.
18435         (auth-source-user-or-password): Remove unused var `cname'.
18437 2015-10-29  Juri Linkov  <juri@linkov.net>
18439         * lisp/dired.el (dired-unmark-all-files-query): Declare.
18440         (dired-unmark-all-files): Let-bind it and use instead of ‘query’.
18441         (Bug#21746)
18443 2015-10-29  Juri Linkov  <juri@linkov.net>
18445         * lisp/ielm.el (ielm-indent-line): Use non-nil arg of comint-bol
18446         to go to the beginning of text line instead of command line.
18447         http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02360.html
18449 2015-10-29  Eli Zaretskii  <eliz@gnu.org>
18451         Fix encoding of saving *Help* buffers
18453         * lisp/help-fns.el (describe-function-1): If we use curved quotes,
18454         set help buffer's buffer-file-coding-system to UTF-8.  (Bug#21780)
18456 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
18458         * lisp/emacs-lisp/cl-generic.el: Add (major-mode MODE) context.
18459         (cl--generic-derived-specializers): New function.
18460         (cl--generic-derived-generalizer): New generalizer.
18461         (cl-generic-generalizers): New specializer (derived-mode MODE).
18462         (cl--generic-split-args): Apply the rewriter, if any.
18463         (cl-generic-define-context-rewriter): New macro.
18464         (major-mode): Use it to define a new context-rewriter, so we can write
18465         `(major-mode MODE)' instead of `(major-mode (derived-mode MODE))'.
18467         * lisp/frame.el (window-system): New context-rewriter so we can write
18468         `(window-system VAL)' instead of (window-system (eql VAL)).
18469         (cl--generic-split-args): Apply the rewriter, if any.
18470         (frame-creation-function): Use the new syntax.
18472         * lisp/term/x-win.el (window-system-initialization)
18473         (handle-args-function, frame-creation-function)
18474         (gui-backend-set-selection, gui-backend-selection-owner-p)
18475         (gui-backend-selection-exists-p, gui-backend-get-selection):
18476         * lisp/term/w32-win.el (window-system-initialization)
18477         (handle-args-function, frame-creation-function)
18478         (gui-backend-set-selection, gui-backend-get-selection)
18479         (gui-backend-selection-owner-p, gui-backend-selection-exists-p):
18480         * lisp/term/pc-win.el (gui-backend-get-selection)
18481         (gui-backend-selection-exists-p, gui-backend-selection-owner-p)
18482         (gui-backend-set-selection, window-system-initialization)
18483         (frame-creation-function, handle-args-function):
18484         * lisp/term/ns-win.el (window-system-initialization)
18485         (handle-args-function, frame-creation-function)
18486         (gui-backend-set-selection, gui-backend-selection-exists-p)
18487         (gui-backend-get-selection):
18488         * lisp/startup.el (handle-args-function):
18489         * lisp/term/xterm.el (gui-backend-get-selection)
18490         (gui-backend-set-selection): Use the new syntax.
18492 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
18494         * test/indent/css-mode.css: Add tests for url(...) syntax.
18496 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
18498         * lisp/emacs-lisp/smie.el: Use `declare' for `pure'.
18499         (smie-precs->prec2, smie-merge-prec2s, smie-bnf->prec2)
18500         (smie-prec2->grammar): Use `declare'.
18502 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
18504         * lisp/emacs-lisp/cl-generic.el: Accommodate future changes.
18505         (cl--generic-generalizer): Add `name' field.
18506         (cl-generic-make-generalizer): Add corresponding `name' argument.
18507         (cl-generic-define-generalizer): New macro.
18508         (cl--generic-head-generalizer, cl--generic-eql-generalizer)
18509         (cl--generic-struct-generalizer, cl--generic-typeof-generalizer)
18510         (cl--generic-t-generalizer): Use it.
18511         (cl-generic-ensure-function): Add `noerror' argument.
18512         (cl-generic-define): Use it so we don't follow aliases.
18513         (cl-generic-define-method): Preserve pre-existing ordering of methods.
18514         (cl--generic-arg-specializer): New function.
18515         (cl--generic-cache-miss): Use it.
18516         (cl-generic-generalizers): Only fset a temporary definition
18517         during bootstrap.
18518         (cl--generic-struct-tag, cl--generic-struct-specializers):
18519         Allow extra arguments.
18521         * lisp/emacs-lisp/eieio-compat.el
18522         (eieio--generic-static-symbol-generalizer)
18523         (eieio--generic-static-object-generalizer):
18524         Use cl-generic-define-generalizer.
18525         (eieio--generic-static-symbol-specializers): Allow extra arguments.
18527         * lisp/emacs-lisp/eieio-core.el (eieio--generic-generalizer)
18528         (eieio--generic-subclass-generalizer):
18529         Use cl-generic-define-generalizer.
18530         (eieio--generic-subclass-specializers): Allow extra arguments.
18532 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
18534         * lisp/emacs-lisp/bytecomp.el (compile-defun): Add defvars in scope.
18536 2015-10-29  Michael Albinus  <michael.albinus@gmx.de>
18538         Add "afp" method to Tramp
18540         * doc/misc/tramp.texi (GVFS based methods): Describe `afp' method.
18542         * lisp/net/tramp-gvfs.el (tramp-gvfs-methods): Add "afp" method.
18543         (tramp-gvfs-handle-expand-file-name)
18544         (tramp-gvfs-handler-mounted-unmounted)
18545         (tramp-gvfs-connection-mounted-p, tramp-gvfs-mount-spec)
18546         (tramp-gvfs-maybe-open-connection): Support also "afp".
18547         (tramp-gvfs-handle-file-attributes): Handle the case of empty
18548         "owner::user" and "owner::group" entries.
18550 2015-10-29  Andy Moreton  <andrewjmoreton@gmail.com>
18552         Handle negative coordinates in ‘x_calc_absolute_position’
18554         * src/w32term.c (x_calc_absolute_position): Find display origin to
18555         allow for negative coordinates.
18557 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
18559         (internal--syntax-propertize): Save match-data here (bug#21766)
18561         * lisp/emacs-lisp/syntax.el (internal--syntax-propertize): Save match-data.
18562         * lisp/simple.el (delete-trailing-whitespace): Undo last change.
18564 2015-10-28  Dmitry Gutov  <dgutov@yandex.ru>
18566         Don't require default-directory to end with a slash
18568         * doc/lispref/files.texi (Magic File Names): Document the change
18569         in unhandled-file-name-directory.
18571         * lisp/url/url-handlers.el
18572         (url-handler-unhandled-file-name-directory): Update accordingly.
18574         * src/buffer.c (default-directory): Update the docsting.
18576         * src/fileio.c (unhandled-file-name-directory): Default to calling
18577         `file-name-as-directory'
18578         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02294.html).
18580 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
18582         * lisp/isearch.el: Delete some outdated comments.
18584 2015-10-28  Vibhav Pant  <vibhavp@gmail.com>
18586         Fix eshell/clear not working if the output has a small line count
18588         * lisp/eshell/esh-mode.el (eshell/clear): Use (window-size) as the
18589         number of newlines to be inserted. This fixes the issue where
18590         eshell/clear wouldn't work if the prompt was not at the bottom of the
18591         window, and the output wasn't too long.
18593 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
18595         * lisp/files.el (write-file): Use vc-refresh-state.
18597         * lisp/autorevert.el (auto-revert-handler): Use vc-refresh-state.
18599         * lisp/vc/pcvs.el (cvs-revert-if-needed): Use vc-refresh-state.
18601 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
18603         * lisp/emacs-lisp/macroexp.el: Tweak macroexp-if optimizations.
18604         (macroexp-unprogn): Make sure we never return an empty list.
18605         (macroexp-if): Remove unused (and unsafe) optimization.
18606         Optimize (if A T (if B T E)) into (if (or A B) T E) instead, which does
18607         occur occasionally.
18609 2015-10-28  Juanma Barranquero  <lekktu@gmail.com>
18611         Fix bug#21766 and add test
18612         * lisp/simple.el (delete-trailing-whitespace): Save match data when
18613         calling `skip-syntax-backward'.
18614         * test/automated/simple-test.el (simple-delete-trailing-whitespace):
18615         New test.
18617 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
18619         * doc/lispref/sequences.texi (Sequence Functions): Fix typo.
18621 2015-10-28  Paul Eggert  <eggert@cs.ucla.edu>
18623         * src/dispnew.c (init_display): Simplify overflow checking.
18625 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
18627         * lisp/character-fold.el (character-fold-to-regexp): Fix case
18628         where string ends in space
18630 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
18632         * lisp/emacs-lisp/seq.el (seq-mapn): New function.
18634         * doc/lispref/sequences.texi (Sequence Functions): Document seq-mapn.
18636 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
18638         * lisp/character-fold.el: Make compatible with lax-whitespace.
18639         (character-fold-to-regexp): Rework internals to play nice with
18640         lax-whitespacing.
18642         When the user types a space, we want to match the table entry for
18643         ?\s, which is generally a regexp like "[ ...]".  However, the
18644         `search-spaces-regexp' variable doesn't "see" spaces inside these
18645         regexp constructs, so we need to use "\\( \\|[ ...]\\)" instead (to
18646         manually expose a space).
18648         Furthermore, the lax search engine acts on a bunch of spaces, not
18649         on individual spaces, so if the string contains sequential spaces
18650         like "  ", we need to keep them grouped together like this:
18651         "\\(  \\|[ ...][ ...]\\)".
18653 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
18655         * lisp/isearch.el: Refactor momentary messages.
18656         (isearch--momentary-message): New function.
18657         (isearch-toggle-lax-whitespace, isearch-toggle-case-fold)
18658         (isearch-toggle-invisible): Use it.
18660 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
18662         * lisp/isearch.el: Define all toggles with `isearch-define-mode-toggle'.
18663         (isearch-define-mode-toggle): New macro.
18664         (isearch-toggle-invisible): Rename to
18665         `isearch-define-mode-toggle'.
18666         (isearch-toggle-case-fold, isearch-toggle-invisible)
18667         (isearch-toggle-regexp, isearch-toggle-lax-whitespace): Define
18668         with `isearch-define-mode-toggle'.
18670 2015-10-28  Michael Albinus  <michael.albinus@gmx.de>
18672         Avoid using `add-to-list' on a let-local var in tramp-smb.el
18674         * lisp/net/tramp-compat.el (tramp-compat-delete-dups): New defun.
18675         * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files): Use it.
18677 2015-10-28  Michael Albinus  <michael.albinus@gmx.de>
18679         * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files):
18680         Revert 692bce5b9eccfae19ae2a5a23a9ccd8d6bf86076, `delete-dups'
18681         does not exist in XEmacs 21.4.
18683 2015-10-28  Anders Lindgren  <andlind@gmail.com>
18685         Fixed OS X startup crash
18687         Input events started to arrive before ns_term_init() was finished.
18688         Solved by blocking input.  This also seems to correct the "You
18689         can't open the application "Emacs" because it may be damaged or
18690         incomplete" error issued when double-clicking on the Emacs
18691         application.
18693         * src/nsterm.m (ns_constrain_all_frames, ns_init_term): Block input.
18694         * src/nsterm.m (ns_send_appdefined, EmacsApp): Trace output.
18696 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
18698         * src/process.c (Fget_buffer_process): Improve docstring.
18699         Document the fact that it doesn't return dead processes.
18701 2015-10-28  Anders Lindgren  <andlind@gmail.com>
18703         Fix incorrect NextStep tool-bar-mode -- wrong number of rows in frame.
18705         * src/nsterm.h (struct ns_output): New flag, in_animation.
18706         * src/nsfns.m (Fx_create_frame): Initialize in_animation flag.
18707         * src/nsmenu.m (free_frame_tool_bar, update_frame_tool_bar): Set
18708         in_animation flag around call to "setVisible". Set new tool bar
18709         height before call to setVisible.
18710         * src/nsterm.m (x_set_window_size): Don't call [view setRow:
18711         andColumns:] as this fools the subsequent call to updateFrameSize
18712         from performing the real resize.
18713         (windowDidResize): Don't update anything when in_animation is
18714         non-zero.
18716         Trace output.
18718         * src/nsmenu.m (free_frame_tool_bar, update_frame_tool_bar)
18719         (EmacsToolbar):
18720         * src/nsterm.m (x_set_window_size, updateFrameSize)
18721         ([EmacsView setRows: andColumns:])
18723 2015-10-28  Nicolas Petton  <nicolas@petton.fr>
18725         * lisp/emacs-lisp/thunk.el (thunk-delay): Fix the macro.
18727 2015-10-28  Tassilo Horn  <tsdh@gnu.org>
18729         Prettify TeX macros not ending in a word char
18731         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
18732         Prettify macros which don't end in a word character.
18734 2015-10-27  Dmitry Gutov  <dgutov@yandex.ru>
18736         Pipe Hg commit descriptions through 'tabindent'
18738         * lisp/vc/vc-hg.el (vc-hg-log-format): Pipe commit description
18739         through 'tabindent'.
18740         (vc-hg-log-view-mode): Set tab-width to 2 locally.
18741         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02259.html)
18743 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
18745         * lisp/net/tramp-smb.el: Avoid using `add-to-list' on a let-local var.
18746         (tramp-smb-handle-directory-files): Use `delete-dups'.
18748         * lisp/net/tramp.el (auto-save-file-name-transforms): Declare.
18750 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
18752         * lisp/international/ccl.el: Use lexical-binding.
18753         (ccl-compile-if): Remove unused var `false-ic'.
18754         (ccl-compile-write-repeat): Remove unused var `i'.
18755         (ccl-compile-map-single): Remove unused var `id'.
18756         (ccl-dump, ccl-dump-binary): Use explicit let-binding to bind the
18757         dynamic var `ccl-code'.
18759 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
18761         * lisp/json.el (json-new-object): Optimize trivial `list' call.
18763 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
18765         * lisp/help.el: Fix bug with incorrect arglist string.
18766         (help-add-fundoc-usage): Don't mistake a mis-formatted string
18767         for a list.
18769 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
18771         * lisp/gnus/gnus-topic.el: Silence some warnings.
18772         (gnus-topic-prepare-topic): Remove unused var `topic'.
18773         (gnus-topic-remove-topic): Mark unused arg `hide'.
18774         (gnus-tmp-header): Declare.
18775         (gnus-topic-goto-missing-group): Remove unused var `entry'.
18776         (gnus-topic-unmark-topic): Mark unused arg `dummy'.
18777         (gnus-topic-copy-matching): Mark unused arg `copyp'.
18778         Move initialization of `topic' into its declaration.
18780 2015-10-27  Stephen Leake  <stephen_leake@stephe-leake.org>
18782         Minor CEDET fixes
18784         * lisp/cedet/cedet-global.el (cedet-gnu-global-gtags-call):
18785         Handle warnings from gtags about invalid options.
18786         (cedet-gnu-global-create/update-database): Do incremental update
18787         properly.
18789         * lisp/cedet/ede/generic.el (ede-enable-generic-projects):
18790         Get monotone root right.
18792 2015-10-27  Michael Albinus  <michael.albinus@gmx.de>
18794         Fall back to polling in autorevert when needed
18796         * lisp/autorevert.el (auto-revert-notify-handler): When a
18797         `stopped' event arrives from file notification, fall back to polling.
18799         * test/automated/file-notify-tests.el
18800         (file-notify-test03-autorevert): Extend test for polling when file
18801         notification ceases to work.
18803 2015-10-27  Dmitry Gutov  <dgutov@yandex.ru>
18805         Show full commit messages in 'hg log' when appropriate
18807         * lisp/vc/vc-hg.el (vc-hg-log-format): New variable.
18808         (vc-hg-print-log, vc-hg-expanded-log-entry): Use it.
18809         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02191.html)
18811 2015-10-27  Nicolas Petton  <nicolas@petton.fr>
18813         Use a plain SVG file for the icon
18815         * etc/images/icons/hicolor/scalable/apps/emacs.svg: Use a plain SVG
18816           format instead of the Inkscape SVG format.
18818 2015-10-27  Michael Albinus  <michael.albinus@gmx.de>
18820         Fix subtle bug in auto-revert-tests.el
18822         * test/automated/auto-revert-tests.el
18823         (auto-revert-test02-auto-revert-mode-dired): Narrow *Messages*
18824         buffer where it belongs to.  (Bug#21668)
18826 2015-10-26  Nicolas Petton  <nicolas@petton.fr>
18828         * lisp/emacs-lisp/map.el: Better docstrings.
18830         * lisp/emacs-lisp/seq.el: Better docstrings.
18832         * lisp/emacs-lisp/seq.el: Rename all seq arguments to sequence.
18834 2015-10-26  Phillip Lord  <phillip.lord@russet.org.uk>
18836         * lisp/emacs-lisp/ert.el: Print results without newline escaping.
18838 2015-10-26  Stephen Leake  <stephen_leake@stephe-leake.org>
18840         Clarify that load-path contents should be directory file names
18842         * doc/lispref/files.texi (Directory Names): Define and use "directory
18843         file name".  Recommend `expand-file-name'.
18845         * src/lread.c (load-path): Fix doc string; elements are directory file
18846         names.
18848 2015-10-26  Eli Zaretskii  <eliz@gnu.org>
18850         Fix simple-test.el test
18852         * test/automated/simple-test.el (simple-test--dummy-buffer):
18853         Make sure indentation doesn't use TABs, otherwise the 6th test
18854         might fail.
18856 2015-10-26  Mark Oteiza  <mvoteiza@udel.edu>
18858         * lisp/net/eww.el (eww-bookmark-prepare): Use truncate-string-to-width.
18859         `substring' does not account for full width characters.
18861 2015-10-26  Michael Albinus  <michael.albinus@gmx.de>
18863         Further work on `stopped' events in filenotify.el
18865         * doc/lispref/os.texi (File Notifications): Rework examples.
18867         * lisp/filenotify.el (file-notify--rm-descriptor): Optional parameter.
18868         (file-notify--rm-descriptor, file-notify-callback): Improve check
18869         for sending `stopped' event.
18870         (file-notify-add-watch): Check for more events for `inotify'.
18872         * test/automated/file-notify-tests.el
18873         (file-notify--test-expected-events): New defvar.
18874         (file-notify--test-with-events): Use it.
18875         (file-notify--test-cleanup): Make it more robust when deleting
18876         directories.
18877         (file-notify--test-event-test): Check also for watched directories.
18878         (file-notify--test-event-handler): Suppress temporary .#files.
18879         (file-notify-test02-events, file-notify-test04-file-validity):
18880         Rework `stopped' events.
18881         (file-notify-test05-dir-validity): Wait for events when appropriate.
18883 2015-10-26  Artur Malabarba  <bruce.connor.am@gmail.com>
18885         * src/keyboard.c (post-command-hook): Shorten docstring.
18887 2015-10-26  Tassilo Horn  <tsdh@gnu.org>
18889         Fix infinite loop in sh-script's SMIE code
18891         * lisp/progmodes/sh-script.el (sh-smie-sh-forward-token): Fix infinite
18892         loop (bug#21747).
18894 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
18896         * lisp/isearch.el (search-default-regexp-mode): Revert to nil.
18897         Character-fold search _still_ doesn't play well with
18898         lax-whitespace.  So disable it by default (again) for now.
18900 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
18902         * lisp/isearch.el: No visual feedback for default search mode.
18903         During an isearch where character-folding is the default, we don't
18904         want to take up minibuffer space just to tell the user that
18905         "Char-fold " is on.  The same goes for other modes, if the user
18906         changes the default.  In contrast, if the user toggles OFF the
18907         default mode, they should see "Literal", to distinguish it from
18908         the default mode.
18909         (isearch--describe-regexp-mode): Return "" if describing the
18910         default mode, and return "literal " if describing a plain search
18911         and it is not default.
18913 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
18915         * test/automated/simple-test.el: New file.
18916         Define tests for `newline' and `open-line'.
18918 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
18920         * lisp/simple.el (open-line): Integrate with electric-indent-mode.
18921         Also run `post-self-insert-hook' when called interactively.
18923 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
18925         * lisp/simple.el (open-line): Fix docstring.
18926         Also explain apparently redundant line.
18928 2015-10-25  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
18929             Alexandru Harsanyi  <AlexHarsanyi@gmail.com>
18931         Sync with soap-client repository, version 3.0.1
18933         * lisp/net/soap-client.el, lisp/net/soap-inspect.el:
18934         Bump version to 3.0.1.
18936         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Update home page.
18938 2015-10-25  Eli Zaretskii  <eliz@gnu.org>
18940         * lisp/progmodes/grep.el (grep): Doc fix.  (Bug#21754)
18942 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
18944         * src/keyboard.c (post-command-hook): Extend the docstring.
18945         Mainly, explain how to use it without hanging Emacs, or giving the
18946         impression that it is hanging.  Also mention `pre-command-hook'.
18947         (pre-command-hook): Mention `post-command-hook'.
18949 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
18951         * lisp/custom.el (custom-declare-variable): Shorten code again.
18952         Without using pcase this time.  We can't use pcase because it is
18953         loaded after custom in loadup.el.  Also add a comment explaining
18954         this to future dummies like me.
18956 2015-10-25  Michael Albinus  <michael.albinus@gmx.de>
18958         * doc/lispref/os.texi (File Notifications): Document `stopped event'.
18960 2015-10-25  Michael Albinus  <michael.albinus@gmx.de>
18962         Introduce `stopped' event in file notification
18964         * lisp/filenotify.el (file-notify--rm-descriptor): New defun.
18965         (file-notify-rm-watch): Use it.
18966         (file-notify-callback): Implement `stopped' event.
18967         (file-notify-add-watch): Mention `stopped' in the docstring.
18968         Check, that upper directory exists.
18970         * test/automated/file-notify-tests.el (file-notify-test01-add-watch):
18971         Add two test cases.
18972         (file-notify-test02-events): Handle also `stopped' event.
18973         (file-notify-test04-file-validity): Add another test case.
18975 2015-10-25  Paul Eggert  <eggert@cs.ucla.edu>
18977         Revert commit that broke 'make bootstrap'
18979         * lisp/custom.el (custom-declare-variable): Revert commit
18980         79fac080d277fed07b3c192890ad59d36d9f83b6.  custom.el needs to work
18981         even when pcase has not been defined yet, when doing bootstrapping.
18983 2015-10-25  Paul Eggert  <eggert@cs.ucla.edu>
18985         Port recent inline functions fix to Standard C
18987         * src/lisp.h (LISP_MACRO_DEFUN, LISP_MACRO_DEFUN_VOID): Remove.
18988         All uses rewritten to define the function directly rather than to
18989         use a macro to define the function.  This conforms to Standard C,
18990         which does not allow stray semicolons at the top level.  I hope it
18991         also avoids the problems with TAGS.  Those macros, though clever,
18992         were pretty confusing anyway, and it wasn’t clear they were worth
18993         the aggravation even without the TAGS problem.
18995 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
18997         * lisp/isearch.el: Make character-fold search the default again.
18999 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
19001         * lisp/character-fold.el: Many improvements.
19002         (character-fold-search-forward, character-fold-search-backward):
19003         New command.
19004         (character-fold-to-regexp): Remove lax-whitespace hack.
19005         (character-fold-search): Remove variable.  Only isearch and
19006         query-replace use char-folding, and they both have their own
19007         variables to configure that.
19009 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
19011         * lisp/isearch.el: Generalize definition of regexp-function toggles.
19012         (isearch-specify-regexp-function): New macro for specifying
19013         possible values of `isearch-regexp-function'.
19014         (isearch-toggle-character-fold, isearch-toggle-symbol)
19015         (isearch-toggle-word): Define with `isearch-specify-regexp-function'.
19017 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
19019         * lisp/isearch.el (search-default-regexp-mode): New variable.
19020         (isearch-mode): Use it.
19022 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
19024         * lisp/isearch.el (search-exit-option, search-slow-window-lines)
19025         (search-slow-speed, search-upper-case)
19026         (search-nonincremental-instead, search-whitespace-regexp)
19027         (search-invisible, isearch-hide-immediately)
19028         (isearch-resume-in-command-history, search-ring-max)
19029         (regexp-search-ring-max, search-ring-update, search-highlight)
19030         (isearch-fail): Delete :group entries.
19032 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
19034         * lisp/custom.el (custom-declare-variable): Shorten code a bit.
19036 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
19038         addpm.c: Silence some warnings.
19040         * nt/addpm.c (DdeCommand): Cast pData argument of DdeClientTransaction
19041         to LPBYTE.
19042         (add_registry): Pass NULL to optional lpClass argument of
19043         RegCreateKeyEx, not an empty string.
19045 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
19047         addpm.c: Do not add obsolete GTK libraries to the path.
19049         * nt/addpm.c (REG_GTK, REG_RUNEMACS_PATH): Delete.
19050         (add_registry): Remove variables `size' and `gtk_key'.
19051         Do not add the GTK DLL directory to the library search path; it is
19052         confusing behavior (in particular, the same Emacs version with and
19053         without invoking addpm will use a different path), and the GTK image
19054         libraries are obsolete anyway.
19056 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
19058         addpm.c: Replace existing registry entries, but do not create new ones
19060         * nt/addpm.c (add_registry): If the Emacs registry key exists, replace
19061         existing values from previous versions, but do not add new ones; the
19062         key could exist for other reasons unrelated to old Emacsen, like X-style
19063         resources, or to set some environment variables like HOME or LANG, and
19064         in that case we don't want to populate it with obsolete values.
19066 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
19068         * nt/addpm.c (add_registry): Do not compute unused return value.
19070 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
19072         addpm.c: Don't pass REG_OPTION_NON_VOLATILE to RegOpenKeyEx
19074         * nt/addpm.c (add_registry): Pass 0 to ulOptions argument of
19075         RegOpenKeyEx, not REG_OPTION_NON_VOLATILE.  This doesn't change
19076         current behavior because REG_OPTION_NON_VOLATILE is defined to
19077         be 0L anyway, but that option is actually documented only for
19078         RegCreateKeyEx.
19080 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
19082         * src/w32notify.c (Fw32notify_add_watch): Fix version check.
19084 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
19086         Update frame title when redisplay scrolls selected window
19088         * src/xdisp.c (redisplay_window): Reconsider the frame's title
19089         when the mode-line of the frame's selected window needs to be
19090         updated.
19092 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
19094         Update frame title when scrolling the selected window
19096         * src/window.c (wset_update_mode_line): New function, sets either
19097         the window's update_mode_line flag or the global update_mode_lines
19098         variable.
19099         (Fset_window_start, set_window_buffer, window_scroll_pixel_based)
19100         (window_scroll_line_based): Call it instead of only setting the
19101         window's update_mode_line flag.
19103 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
19105         An even better fix for bug#21739
19107         * src/window.c (set_window_buffer): If the window is the frame's
19108         selected window, set update_mode_lines, not the window's
19109         update_mode_line flag.
19110         * src/buffer.c (Fkill_buffer): Undo last change.
19111         (set_update_modelines_for_buf): Function deleted.
19113 2015-10-24  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
19114             Alexandru Harsanyi  <AlexHarsanyi@gmail.com>
19116         Sync with soap-client repository, version 3.0.0
19118         * lisp/net/soap-client.el, lisp/net/soap-inspect.el:
19119         Bump version to 3.0.0.
19121         * lisp/net/soap-inspect.el: Merge in changes from Emacs master branch.
19123         * lisp/net/soap-client.el: Merge in changes from Emacs master branch.
19125         * lisp/net/soap-inspect.el: Shorten first line description.
19127         * lisp/net/soap-client.el: Make a small whitespace fix.
19129         * lisp/net/soap-inspect.el: Update copyright years.
19131         * lisp/net/soap-client.el (soap-encoded-namespaces): Move above
19132         first use in soap-encode-xs-element.
19134         * lisp/net/soap-client.el (soap-type-is-array?): new defun
19135         (soap-encode-xs-element): handle array elements in this function
19136         (soap-encode-xs-complex-type): flag error if asked to encode an
19137         array type, this is handled in `soap-encode-xs-element'
19139         * lisp/net/soap-inspect.el (soap-inspect-xs-attribute-group):
19140         Do not print type for attribute group.
19142         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-attribute-group)
19143         New function.
19144         (soap-inspect-xs-attribute-group): Likewise.
19146         * lisp/net/soap-inspect.el
19147         (soap-resolve-references-for-xs-attribute-group): Resolve
19148         references of attributes in an attribute group.
19150         * lisp/net/soap-client.el (soap-decode-xs-attributes): Process attribute
19151         type directly, not through soap-wsdl-get.
19153         * lisp/net/soap-client.el (soap-xs-parse-attribute): Leave reference
19154         nil if reference attribute is nil.
19156         * lisp/net/soap-client.el (soap-resolve-references-for-xs-attribute):
19157         Convert XML schema attributes to xsd:string.
19159         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-attribute):
19160         New function.
19161         (soap-sample-value-for-xs-simple-type): Prepend attributes to result.
19162         (soap-sample-value-for-xs-complex-type): Likewise.
19163         (soap-inspect-xs-attribute): New function.
19164         (soap-inspect-xs-simple-type): Print attributes.
19165         (soap-inspect-xs-complex-type): Likewise.
19167         * lisp/net/soap-inspect.el (soap-resolve-references-for-xs-simple-type):
19168         Resolve references for attributes.
19169         (soap-resolve-references-for-xs-complex-type): Likewise.
19171         * lisp/net/soap-client.el (soap-xml-node-find-matching-child):
19172         Rename from soap-xml-node-first-child.
19173         (soap-xs-parse-attribute): Call soap-xml-node-find-matching-child.
19174         (soap-xs-parse-simple-type): Likewise.
19176         * lisp/net/soap-client.el (soap-invoke-async): Add error checking.
19178         * lisp/net/soap-client.el (soap-invoke-internal): New function.
19179         (soap-invoke-async): Call soap-invoke-internal.
19180         (soap-invoke): Likewise.
19182         * lisp/net/soap-client.el (soap-invoke-async): Ensure buffer passed to
19183         url-retrieve callback is killed.
19185         * lisp/net/soap-client.el (soap-parse-wsdl-phase-validate-node):
19186         Rename function.
19187         (soap-parse-wsdl-phase-fetch-imports): Likewise.
19188         (soap-parse-wsdl-phase-parse-schema): Likewise.
19189         (soap-parse-wsdl-phase-fetch-schema): Likewise.
19190         (soap-parse-wsdl-phase-finish-parsing): Likewise.
19191         (soap-parse-wsdl): Update calls.
19193         * lisp/net/soap-client.el (soap-invoke-async): Fix callback invocation.
19195         * lisp/net/soap-client.el (soap-invoke-async): New function.
19196         (soap-invoke): Reimplement using soap-invoke-async.
19198         * lisp/net/soap-client.el (soap-parse-server-response):
19199         Improve docstring.
19200         (soap-invoke): Inline call to soap-parse-server-response.
19202         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
19203         Prevent incorrect warning.
19205         * lisp/net/soap-client.el (soap-parse-server-response):
19206         Rename soap-process-url-response.  Destroy the mime part.
19207         (soap-invoke): Call soap-parse-server-response.
19209         * lisp/net/soap-client.el: Update copyright date.
19211         * lisp/net/soap-client.el: Fix checkdoc issues.
19213         * lisp/net/soap-client.el: Fix indentation and long lines.
19215         * lisp/net/soap-client.el (soap-time-format): Remove variable.
19216         (soap-encode-xs-basic-type): Simplify date-time format detection.
19217         (soap-decode-xs-basic-type): Remove soap-time-format support.
19219         * lisp/net/soap-client.el (soap-process-url-response): New function.
19220         (soap-fetch-xml-from-url): Call soap-process-url-response.
19221         (soap-parse-wsdl-phase-1): New function.
19222         (soap-parse-wsdl-phase-2): Likewise.
19223         (soap-parse-wsdl-phase-3): Likewise.
19224         (soap-parse-wsdl-phase-4): Likewise.
19225         (soap-parse-wsdl-phase-5): Likewise.
19226         (soap-parse-wsdl): Call phase functions.
19228         * lisp/net/soap-client.el (soap-decode-xs-basic-type):
19229         Remove one-argument and call.
19231         * lisp/net/soap-client.el (soap-decode-date-time): Improve docstring.
19233         * lisp/net/soap-client.el (soap-xmlschema-imports): Remove variable.
19234         (soap-parse-schema): Add wsdl argument.  Look up XML schema
19235         imports from wsdl.
19236         (soap-load-wsdl): Do not set soap-xmlschema-imports.
19237         (soap-parse-wsdl): Get XML schema imports from wsdl.
19239         * lisp/net/soap-client.el (soap-current-file): Remove variable.
19240         (soap-wsdl): Add current-file slot.
19241         (soap-fetch-xml-from-url): Add wsdl argument.  Look up current
19242         file from wsdl.
19243         (soap-fetch-xml-from-file): Likewise.
19244         (soap-fetch-xml): Likewise.
19245         (soap-load-wsdl): Always create wsdl object first.
19246         (soap-parse-wsdl): Pass wsdl to soap-fetch-xml.
19248         * lisp/net/soap-client.el (soap-xs-element): Add is-group slot.
19249         (soap-xs-parse-element): Set is-group slot.
19250         (soap-resolve-references-for-xs-element): Skip is-group elements.
19251         (soap-xs-complex-type): Add is-group slot.
19252         (soap-xs-parse-complex-type): Set is-group slot.
19253         (soap-xs-parse-sequence): Parse xsd:group elements.
19254         (soap-resolve-references-for-xs-complex-type): Inline elements
19255         from referenced xsd:group nodes.
19256         (soap-parse-schema): Parse xsd:group nodes.
19258         * lisp/net/soap-client.el (soap-invoke):
19259         Don't set url-http-version to 1.0.
19261         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
19262         Allow choice nodes to accept multiple values.
19264         * lisp/net/soap-client.el (soap-encode-body): Check parameters argument
19265         for extra header values.
19267         * lisp/net/soap-client.el (soap-well-known-xmlns):
19268         Add wsa and wsaw tags.
19269         (soap-operation): Add input-action and output-action slots.
19270         (soap-parse-operation): Parse wsaw:Action nodes.
19271         (soap-encode-body): Encode service-url for WS-Addressing.
19272         (soap-create-envelope): Likewise.
19273         (soap-invoke): Update soap-create-envelope call to provide
19274         service-url argument.
19276         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
19277         Support xsi:type override attribute.
19278         (soap-decode-array): Likewise.
19280         * lisp/net/soap-client.el (soap-parse-schema):
19281         Handle location attribute.
19283         * lisp/net/soap-client.el (soap-decode-type): Check that multiRef
19284         matched validation regexp.
19286         * lisp/net/soap-client.el (soap-encode-xs-simple-type):
19287         Encode xsd:list nodes.
19288         (soap-decode-xs-simple-type): Decode xsd:list nodes.
19290         * lisp/net/soap-client.el (soap-get-candidate-elements):
19291         Fix reference handling.
19293         * lisp/net/soap-client.el (soap-xs-simple-type): Add is-list slot.
19294         (soap-xs-parse-simple-type): Call soap-xs-add-list for xsd:list nodes.
19295         (soap-xs-add-list): New function.
19297         * lisp/net/soap-client.el (soap-encode-xs-element): When a boolean is
19298         expected, interpret nil as "false".
19300         * lisp/net/soap-client.el (soap-make-xs-basic-types): Add gYearMonth,
19301         gYear, gMonthDay, gDay and gMonth.
19303         * lisp/net/soap-client.el (soap-time-format): New variable.
19304         (soap-encode-xs-basic-type): Handle dateTime, time, date,
19305         gYearMonth, gYear, gMonthDay, gDay and gMonth.
19306         (soap-decode-date-time): New function.
19307         (soap-decode-xs-basic-type): Use soap-decode-date-time.
19309         * lisp/net/soap-client.el (soap-encode-xs-basic-type): Validate value
19310         after encoding.
19311         (soap-decode-xs-basic-type): Validate value before decoding.
19313         * lisp/net/soap-client.el (soap-validate-xs-basic-type): New function.
19314         (soap-validate-xs-simple-type): Call soap-validate-xs-basic-type.
19316         * lisp/net/soap-client.el (soap-xs-add-union): Append result to base
19317         instead of overwriting it.
19318         (soap-validate-xs-simple-type): Add union support.
19320         * lisp/net/soap-client.el (soap-xs-add-restriction): Translate pattern
19321         to Emacs regexp using xsdre-translate.
19322         (soap-validate-xs-simple-type): Validate value against pattern.
19324         * lisp/net/soap-client.el (soap-xs-add-union): Preserve WSDL order of
19325         inline simpleType nodes.
19326         (soap-decode-type): Handle union types.
19328         * lisp/net/soap-client.el (soap-decode-xs-attributes): Decode basic-type
19329         attributes.
19331         * lisp/net/soap-client.el (soap-get-xs-attributes-from-groups): Rename
19332         from soap-xs-attribute-group-consolidate, all callers updated
19333         (soap-get-xs-attributes): Rename from
19334         soap-xs-attributes-consolidate, all callers updated
19336         * lisp/net/soap-client.el (soap-xs-type): Add attribute-group slot.
19337         (soap-xs-attribute-group): New type.
19338         (soap-xs-parse-attribute-group): New function.
19339         (soap-resolve-references-for-xs-attribute-group): Likewise.
19340         (soap-xs-add-extension): Handle attribute groups.
19341         (soap-resolve-references-for-xs-simple-type): Likewise.
19342         (soap-xs-parse-complex-type): Likewise.
19343         (soap-xs-parse-extension-or-restriction): Likewise.
19344         (soap-resolve-references-for-xs-complex-type): Likewise.
19345         (soap-xs-attribute-group-consolidate): New function.
19346         (soap-xs-attributes-consolidate): Handle attribute groups.
19347         (soap-parse-schema): Likewise.
19349         * lisp/net/soap-client.el (soap-encode-xs-basic-type):
19350         Fix boolean encoding.
19352         * lisp/net/soap-client.el (soap-encode-xs-complex-type): Print ref
19353         element names in warnings.
19355         * lisp/net/soap-client.el (soap-decode-xs-complex-type): Fix splicing.
19357         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
19358         Eliminate invalid warnings for choice types.
19360         * lisp/net/soap-client.el (soap-encode-xs-complex-type-attributes):
19361         Also encode base type attributes.
19363         * lisp/net/soap-client.el (soap-encode-xs-complex-type): Fix compilation
19364         warning.  Print e-name in warnings, or element if e-name is nil.
19366         * lisp/net/soap-client.el (soap-xs-element): Add alternatives slot.
19367         (soap-xs-parse-element): Set substitution-group.
19368         (soap-resolve-references-for-xs-element): Populate alternatives slot.
19369         (soap-get-candidate-elements): New function.
19370         (soap-encode-xs-complex-type): Iterate through all candidate elements.
19371         Handle types with nil type indicator.  Fix warning logic.
19373         * lisp/net/soap-client.el (soap-current-wsdl): Move declaration
19374         earlier in the file to prevent compiler warning.
19376         * lisp/net/soap-client.el (soap-node-optional): New function.
19377         (soap-node-multiple): Likewise.
19378         (soap-xs-parse-element): Call soap-node-optional and
19379         soap-node-multiple.
19380         (soap-xs-complex-type): Add optional? and multiple? slots.
19381         (soap-xml-get-children-fq): New function.
19382         (soap-xs-element-get-fq-name): Likewise.
19383         (soap-xs-complex-type-optional-p): Likewise.
19384         (soap-xs-complex-type-multiple-p): Likewise.
19385         (soap-xs-attributes-consolidate): Likewise.
19386         (soap-decode-xs-attributes): Likewise.
19387         (soap-decode-xs-complex-type): Decode types with nil type indicator.
19388         Support children that use local namespaces.  Decode attributes.
19389         Add type considerations to optional? and multiple? warnings.
19391         * lisp/net/soap-client.el (soap-xs-parse-extension-or-restriction):
19392         Store parsed attributes.
19393         (soap-encode-xs-complex-type-attributes): Encode custom attributes.
19395         * lisp/net/soap-client.el (soap-encode-xs-complex-type-attributes):
19396         Don't add the xsi:type attribute (Exchange refuses requests which have
19397         this attribute).
19399         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Convert to lexical binding,
19400         correct compiler warnings about unused function arguments and
19401         local variables.
19403         * lisp/net/soap-client.el (soap-decode-xs-complex-type): Handle nil
19404         type indicator.
19405         (soap-parse-envelope): Handle response headers.
19406         (soap-parse-response): Likewise.  Only return non-nil decoded values.
19408         * lisp/net/soap-client.el (soap-validate-xs-simple-type):
19409         Return validated value.
19411         * lisp/net/soap-client.el (soap-xs-parse-element)
19412         (soap-xs-parse-simple-type)
19413         (soap-xs-parse-complex-type)
19414         (soap-parse-message)
19415         (soap-parse-operation): Add the current namespace to the element
19416         being created.
19417         (soap-resolve-references-for-xs-element)
19418         (soap-resolve-references-for-xs-simple-type)
19419         (soap-resolve-references-for-xs-complex-type)
19420         (soap-resolve-references-for-operation): Resolve the namespace to
19421         the namespace tag.
19422         (soap-make-wsdl): specify a namespace tag when creating the xsd
19423         and soapenc namespaces
19424         (soap-wsdl-resolve-references): don't update namespace tags in
19425         elements here
19426         (soap-parse-port-type): bind the urn: to soap-target-xmlns
19427         (soap-encode-body): don't add nil namespace tags to
19428         soap-encoded-namespaces
19430         * lisp/net/soap-inspect.el: Use `soap-make-wsdl` to construct the object
19431         for registering the soap-inspect method.  Make debbugs tests pass.
19432         * lisp/net/soap-client.el (soap-decode-any-type): Use soap-l2fq on the
19433         type name, also skip string only nodes when decoding a structure.
19434         (soap-xs-parse-complex-type): (BUG) Dispatch parsing for choice
19435         types too.
19436         (soap-encode-body): Grab the header value from the param table.
19438         * lisp/net/soap-client.el (soap-should-encode-value-for-xs-element):
19439         New function.
19440         (soap-encode-xs-element): Don't encode nil value unless needed.
19442         * lisp/net/soap-client.el (soap-bound-operation): New slot `soap-body`.
19443         (soap-parse-binding): Parse the message parts required in the body.
19444         (soap-encode-body): Encode only the parts that are declared to be
19445         part of the body.
19447         * lisp/net/soap-client.el (soap-encode-xs-element): use the fq name
19448         when writing out the tag.
19449         (soap-encode-body): Remove hack that inserts the xmlns in the
19450         element attributes list.
19452         * lisp/net/soap-client.el (soap-xs-attribute): Add "default" slot.
19453         (soap-xs-parse-attribute): Default slot is set from the XML
19454         "fixed" attribute.
19455         (soap-encode-xs-complex-type-attributes): Encode any attributes
19456         that have a default value.  Also, don't put the xsi:nil attribute
19457         when the complex type has no content anyway.
19459         * lisp/net/soap-client.el (soap-well-known-xmlns):
19460         Add the xml namespace.
19461         (soap-local-xmlns): Start with the xml namespace.
19462         (soap-xml-node-first-child): Skip xsd:annotation nodes too.
19463         (soap-make-xs-basic-types): More xsd types added.
19464         (soap-encode-xs-basic-type, soap-decode-xs-basic-type):
19465         Handle "language", "time", "date", "nonNegativeInteger".
19466         (soap-resolve-references-for-xs-element): Don't signal an error if
19467         the element does not have a type.
19468         (soap-xs-parse-simple-type): Subtypes are handled with ecase,
19469         added stum for xsd:list.
19470         (soap-xs-add-union): Call soap-l2fq on all union members.
19471         (soap-xs-add-extension): Call soap-l2fq on the base member.
19472         (soap-resolve-references-for-xs-simple-type): Don't signal an
19473         error if the simple type has no base.
19474         (soap-resolve-references-for-xs-simple-type): Bugfix, call
19475         soap-wsdl-get on each type of the base.
19477         * lisp/net/soap-client.el (soap-resolve-references-for-xs-attribute):
19478         Referenced type can be eiher a simple type or a basic type.
19479         (soap-xs-add-restriction)
19480         (soap-xs-parse-extension-or-restriction): Use `soap-l2fq' on base.
19481         (soap-make-xs-basic-types)
19482         (soap-encode-xs-basic-type, soap-decode-xs-basic-type):
19483         Add support for more XMLSchema basic types.
19484         (soap-current-file, soap-xmlschema-imports): New defvars.
19485         (soap-parse-schema): Add locations from xsd:import tags to
19486         `soap-xmlschema-imports'.
19487         (soap-wsdl): Make destructor private.
19488         (soap-make-wsdl): New defun, SOAP-WSDL object constructor.
19489         (soap-wsdl-add-alias): Check if we try to replace aliases.
19490         (soap-fetch-xml-from-url, soap-fetch-xml-from-file)
19491         (soap-fetch-xml): New defuns.
19492         (soap-load-wsdl): Update to load the WSDL from either a file or
19493         an url.
19494         (soap-load-wsdl-from-url): Now an alias to `soap-load-wsdl'.
19495         (soap-parse-wsdl): Process wsdl:import tags and imports from
19496         `soap-xmlschema-imports'.
19497         * lisp/net/soap-client.el (soap-l2wk): Bugfix: call symbolp instead of
19498         symbol-name.
19499         (soap-l2fq): Make the name part always a string.
19500         (soap-name-p): New defun, used for name tests.
19502         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-complex-type):
19503         Supply sample values for choice types with a special tag.
19504         * lisp/net/soap-client.el (soap-encode-xs-complex-type):
19505         Handle anonymous elements correctly.
19506         (soap-encode-value): Accept nodes that have no namespace tag.
19508         * lisp/net/soap-client.el (soap-invoke): Encode the string for
19509         `url-request-data' as UTF-8.  Fixes issue 16.
19511 2015-10-24  Nicolas Petton  <nicolas@petton.fr>
19513         Update the new icon
19515         Move the E slightly to the right in the circle.
19517         * etc/images/icons/hicolor/128x128/apps/emacs.png:
19518         * etc/images/icons/hicolor/16x16/apps/emacs.png:
19519         * etc/images/icons/hicolor/24x24/apps/emacs.png:
19520         * etc/images/icons/hicolor/32x32/apps/emacs.png:
19521         * etc/images/icons/hicolor/48x48/apps/emacs.png:
19522         * etc/images/icons/hicolor/scalable/apps/emacs.svg:
19523         * nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns:
19524         * nt/icons/emacs.ico: New icom update.
19526 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
19528         Avoid missing inline functions from lisp.h in TAGS
19530         * src/lisp.h (LISP_MACRO_DEFUN): Mention in the commentary the
19531         need to end each invocation with a semi-colon.
19532         Add a semi-colon at the end of each invocation of LISP_MACRO_DEFUN
19533         and LISP_MACRO_DEFUN_VOID.  This is to avoid missing in TAGS
19534         inline functions defined immediately after each invocation, and
19535         also avoid tagging every invocation of these macros.
19537 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
19539         A better fix for bug#21739
19541         * src/buffer.c (set_update_modelines_for_buf): New function.
19542         (Fkill_buffer): Use it to set the global variable
19543         update_mode_lines if the killed buffer was displayed in some
19544         window.  Don't set windows_or_buffers_changed.  This is a better
19545         fix for bug#21739 than the previous fix, since it will cause only
19546         redisplay of mode lines, not of entire windows, but will still
19547         catch attention of x_consider_frame_title in xdisp.c, which
19548         redraws the frame title.
19550 2015-10-24  Tassilo Horn  <tsdh@gnu.org>
19552         * lisp/dired-aux.el (dired-compress-files-alist): Add support for
19553         tar.bz2 and tar.xz archives.
19555 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
19557         Fix infloop in redisplay introduced by a recent change
19559         * src/xdisp.c (redisplay_internal): Avoid inflooping when
19560         redisplaying the selected window sets the selected frame's
19561         redisplay flag.  (Bug#21745)
19563 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
19565         * lisp/emacs-lisp/thunk.el: Better documentation.
19567 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
19569         Replace the old icon for Windows and Mac OSX
19571         * nt/icons/emacs.ico:
19572         * nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns:
19573         Use the new icons.
19575 2015-10-23  Stephen Leake  <stephen_leake@stephe-leake.org>
19577         * lisp/emacs-lisp/package.el (package-autoload-ensure-default-file):
19578         `load-path' should contain only directory names.
19580 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
19582         New library thunk.el
19584         thunk.el is extracted from stream.el in ELPA, with additional tests.
19586         * lisp/emacs-lisp/thunk.el: New file.
19587         * test/automated/thunk-tests.el: New file.
19588         * etc/NEWS: Add information about thunk.el
19590 2015-10-23  Michael Albinus  <michael.albinus@gmx.de>
19592         Fix bug#21669
19594         * lisp/filenotify.el (file-notify-rm-watch): Improve check for
19595         calling low-level functions.
19597         * test/automated/file-notify-tests.el (file-notify--test-timeout):
19598         Decrase to 6 seconds for remote directories.
19599         (file-notify-test02-events): Expect different number of
19600         `attribute-changed' events for the local and remote cases.  Apply
19601         short delays between the operations, in order to receive all
19602         events in the remote case.  Combine `attribute-change' tests.
19603         (Bug#21669)
19605 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
19607         Decode the HTML source when displaying it in EWW
19609         * lisp/net/eww.el (eww-view-source): Decode the HTML source
19610         according to its headers.
19612 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
19614         New default icon
19616         * etc/images/icons/hicolor/128x128/apps/emacs23.png:
19617         * etc/images/icons/hicolor/16x16/apps/emacs23.png:
19618         * etc/images/icons/hicolor/24x24/apps/emacs23.png:
19619         * etc/images/icons/hicolor/32x32/apps/emacs23.png:
19620         * etc/images/icons/hicolor/48x48/apps/emacs23.png:
19621         * etc/images/icons/hicolor/scalable/apps/emacs23.svg:
19622         * etc/images/icons/hicolor/scalable/mimetypes/emacs-document23.svg:
19623         Move the old logo files to emacs23.*.
19624         * etc/images/icons/hicolor/128x128/apps/emacs.png:
19625         * etc/images/icons/hicolor/16x16/apps/emacs.png:
19626         * etc/images/icons/hicolor/24x24/apps/emacs.png:
19627         * etc/images/icons/hicolor/32x32/apps/emacs.png:
19628         * etc/images/icons/hicolor/48x48/apps/emacs.png:
19629         * etc/images/icons/hicolor/scalable/apps/emacs.svg:
19630         * etc/images/icons/hicolor/scalable/mimetypes/emacs-document.svg:
19631         New files.
19632         * etc/images/icons/README: Update the copyright information.
19634 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
19636         Fix redisplay of frame title when current buffer is killed
19638         * src/buffer.c (Fkill_buffer): Set windows_or_buffers_changed to a
19639         non-zero value, to redisplay more than just the affected windows.
19640         (Bug#21739)
19642 2015-10-23  Anders Lindgren  <andlind@gmail.com>
19644         NextStep maximization and NSTRACE rewrite
19646         Full-height, full-width, and maximized windows now cover the
19647         entire screen (except the menu bar), including the part where the
19648         system dock is placed.  The system zoom animation is no longer
19649         used.
19651         Made NonMaximized->FullWidth->FullHeight->NonMaximized restore the
19652         original size.
19654         * src/nsterm.m (ns_menu_bar_height): New function, return height of
19655         the menu bar, or 0 when it's hidden.
19656         (constrain_frame_rect): New function for constraining a frame.
19657         (ns_constrain_all_frames): Set frame size explicitly rather than
19658         relying on the system doing it for us by writing back the current
19659         frame size.
19660         (windowWillUseStandardFrame): Register non-maximized width or
19661         height as new user size.  When entering full width or height,
19662         the other size component is taken from the user size.
19663         (fullscreenState): New method for accessing the fullscreen state.
19664         (constrainFrameRect): Restrict frame to be placed under the menu bar,
19665         if present.  The old version, sometimes, restricted the height of a
19666         frame to the screen, this version never does this.
19667         (zoom): Perform zoom by setting the frame to the full size of the
19668         screen (minus the menu bar).  The default system function, with the
19669         zoom animation, is no longer used, as the final frame size doesn't
19670         cover the entire screen.
19672         Rework how to constrain resizing to the character grid.  The old
19673         system used "resizeIncrements" in NSWindows.  However, once a frame
19674         was resized so that it was not aligned to the text grid, it
19675         remained unaligned even after a resize.  In addition, it conflicted
19676         when resizing a fullheight window.
19678         * src/nsterm.m (windowWillResize): Restrict frame size to text grid,
19679         unless when pixelwise frame resizing is enabled.
19680         (updateFrameSize, initFrameFromEmacs)
19681         (toggleFullScreen, handleFS): Don't set resizeIncrements.
19683         Redesign the NS trace system.  The call structure is represented
19684         using indentations and vertical lines.  The NSTRACE macro accepts
19685         printf-style arguments.  New macros for printing various
19686         information.
19688         * src/nsterm.h (NSTRACE_ENABLED): Macro to enable trace system.
19689         (NSTRACE, NSTRACE_WHEN, NSTRACE_UNLESS): Macros to start a new
19690         block (typically a function), accept printf-style arguments.
19691         (NSTRACE_MSG): Macro for extra information, accepts
19692         printf-style arguments.
19693         (NSTRACE_what): Macros for printing various types.
19694         (NSTRACE_FMT_what): Macro with printf format string snippets.
19695         (NSTRACE_ARG_what): Macros for passing printf-style arguments,
19696         corresponds to NSTRACE_FMT_what.
19697         (NSTRACE_RETURN): Macro to print return value, accept
19698         printf-style arguments.
19699         (NSTRACE_RETURN_what): Macros to print return value for
19700         various types.
19702         * src/nsterm.m: Remove old NSTRACE macro
19703         * src/nsterm.m (nstrace_num): Trace counter.
19704         (nstrace_depth): Current call depth.
19705         (nstrace_leave): NSTRACE support function, called when the
19706         local variable "nstrace_enabled" goes out of scope using the
19707         "cleanup" extension.
19708         (ns_print_fullscreen_type_name): NSTRACE_FSTYPE support function.
19709         (constrain_frame_rect, ns_constrain_all_frames)
19710         (ns_update_auto_hide_menu_bar, ns_update_begin)
19711         (ns_update_window_begin, update_window_end, ns_update_end)
19712         (ns_focus, ns_unfocus, ns_ring_bell, ns_frame_raise_lower)
19713         (ns_frame_rehighlight, x_make_frame_visible)
19714         (x_make_frame_invisible, x_iconify_frame, x_free_frame_resources)
19715         (x_destroy_window, x_set_offset, x_set_window_size)
19716         (ns_fullscreen_hook, ns_lisp_to_color, ns_color_to_lisp)
19717         (ns_defined_color, frame_set_mouse_pixel_position)
19718         (note_mouse_movement, ns_mouse_position, ns_frame_up_to_date)
19719         (ns_define_frame_cursor, x_get_keysym_name, ns_redraw_scroll_bars)
19720         (ns_clear_frame, ns_clear_frame_area, ns_scroll_run)
19721         (ns_after_update_window_line, ns_shift_glyphs_for_insert)
19722         (dumpcursor, ns_draw_vertical_window_border)
19723         (ns_draw_window_divider, ns_draw_relief)
19724         (ns_dumpglyphs_box_or_relief, ns_maybe_dumpglyphs_background)
19725         (ns_dumpglyphs_image, ns_draw_glyph_string, ns_send_appdefined)
19726         (ns_read_socket, ns_select, ns_set_vertical_scroll_bar)
19727         (ns_set_horizontal_scroll_bar, ns_condemn_scroll_bars)
19728         (ns_redeem_scroll_bar, ns_judge_scroll_bars, ns_delete_terminal)
19729         (ns_create_terminal, ns_term_init, sendEvent)
19730         (applicationDidFinishLaunching, applicationDidBecomeActive)
19731         (timeout_handler, fd_handler, EmacsView_dealloc, changeFont)
19732         (acceptsFirstResponder, resetCursorRects, keyDown, mouseDown)
19733         (deltaIsZero, rightMouseDown, otherMouseDown, mouseUp)
19734         (rightMouseUp, otherMouseUp, scrollWheel, mouseMoved)
19735         (mouse_autoselect_window, in_window, mouseDragged)
19736         (rightMouseDragged, otherMouseDragged, windowShouldClose)
19737         (updateFrameSize, windowWillResize, windowDidResize)
19738         (windowDidBecomeKey, windowDidResignKey, windowWillMiniaturize)
19739         (initFrameFromEmacs, windowDidMove, windowDidDeminiaturize)
19740         (windowDidExpose, windowDidMiniaturize, windowWillEnterFullScreen)
19741         (windowDidEnterFullScreen, windowWillExitFullScreen)
19742         (windowDidExitFullScreen, toggleFullScreen, handleFS, setFSValue)
19743         (mouseEntered, mouseExited, menuDown, toolbarClicked, drawRect)
19744         (draggingEntered, performDragOperation, validRequestorForSendType)
19745         (setMiniwindowImage, constrainFrameRect, performZoom, zoom)
19746         (EmacsScroller_initFrame, EmacsScroller_setFrame)
19747         (EmacsScroller_dealloc, condemn, reprieve, judge)
19748         (resetCursorRects, setPosition, EmacsScroller_mouseDown)
19749         (EmacsScroller_mouseDragged, syms_of_nsterm): Use new trace system.
19751         * src/nsfns.m: Remove old NSTRACE macro
19752         * src/nsfns.m (x_set_icon_name, ns_set_name, x_explicitly_set_name)
19753         (x_implicitly_set_name, x_set_title, ns_set_name_as_filename)
19754         (ns_implicitly_set_icon_type, x_set_icon_type): Use new trace system.
19756         * src/nsimage.m: Remove old NSTRACE macro
19757         * src/nsimage.m (ns_image_from_XBM, ns_image_for_XPM)
19758         (ns_image_from_bitmap_file, ns_load_image): Use new trace system.
19760         * src/nsmenu.m: Remove old NSTRACE macro
19761         * src/nsmenu.m (ns_update_menubar, ns_menu_show, ns_popup_dialog):
19762         Use new trace system.
19764 2015-10-22  Katsumi Yamaoka  <yamaoka@jpl.org>
19766         No need to use eval-and-compile
19768         * lisp/gnus/auth-source.el: Do require epg (when compiling) before
19769         autoload epg functions.
19771 2015-10-22  Katsumi Yamaoka  <yamaoka@jpl.org>
19773         Fix auth-source-epa-make-gpg-token compilation (bug#21724)
19775         * lisp/gnus/auth-source.el: Add eval-and-compile to autoloads for
19776         epg-context-set-passphrase-callback, epg-decrypt-string, and
19777         epg-encrypt-string; require epg when compiling for the setf-method
19778         for epg-context-armor. (bug#21724)
19780 2015-10-22  Eli Zaretskii  <eliz@gnu.org>
19782         Include file cleanup for w32 files in src directory
19784         * src/w32xfns.c: Don't include keyboard.h, window.h, charset.h,
19785         fontset.h, blockinput.h.
19786         * src/w32uniscribe.c: Don't include dispextern.h, character.h,
19787         charset.h, fontset.h.
19788         * src/w32term.c: Don't include systty.h, systime.h, charset.h,
19789         character.h, ccl.h, dispextern.h, disptab.h, intervals.h,
19790         process.h, atimer.h, keymap.h, w32heap.h.  Include bitmap/gray.xbm
19791         in an ifdef-ed away block.
19792         Include fcntl.h for CYGWIN.
19793         (set_frame_param): Remove unused function.
19794         * src/w32select.c: Don't include charset.h and composite.h.
19795         (setup_config, Fw32_get_clipboard_data): Avoid compiler warnings
19796         due to pointer signedness mismatches.
19797         * src/w32reg.c (w32_get_string_resource): Avoid compiler warnings
19798         due to pointer signedness mismatches.
19799         * src/w32proc.c: Include unistd.h.  Don't include systime.h,
19800         process.h, dispextern.h.
19801         (sys_spawnve, Fw32_short_file_name, Fw32_long_file_name)
19802         (Fw32_application_type): Avoid compiler warnings due to pointer
19803         signedness mismatches.
19804         * src/w32menu.c: Don't include keymap.h, termhooks.h, window.h,
19805         character.h, charset.h, dispextern.h.
19806         (simple_dialog_show, add_menu_item): Avoid compiler warnings due
19807         to pointer signedness mismatches.
19808         * src/w32inevt.c: Don't include dispextern.h, window.h,
19809         termhooks.h, w32heap.h.
19810         * src/w32font.c: Don't include dispextern.h, character.h,
19811         charset.h, fontset.h, font.h.
19812         (intern_font_name, add_font_entity_to_list)
19813         (registry_to_w32_charset, w32_to_x_charset, fill_in_logfont)
19814         (list_all_matching_fonts): Avoid compiler warnings due to pointer
19815         signedness mismatches.
19816         * src/w32fns.c: Don't include character.h, intervals.h,
19817         dispextern.h, epaths.h, charset.h, ccl.h, fontset.h, systime.h,
19818         termhooks.h, w32heap.h, bitmap/gray.xbm, font.h, w32font.h.
19819         (w32_color_map_lookup, add_system_logical_colors_to_map)
19820         (x_decode_color, x_set_name, FPRINTF_WM_CHARS, Fxw_color_defined_p)
19821         (Fxw_color_values, x_display_info_for_name, Fset_message_beep)
19822         (x_create_tip_frame, Fx_file_dialog, Fsystem_move_file_to_trash)
19823         (w32_parse_hot_key, Ffile_system_info, w32_kbd_patch_key): Avoid
19824         compiler warnings, mainly due to pointer signedness mismatches.
19825         (unwind_create_frame_1): Remove unused function.
19826         * src/w32console.c: Don't include character.h, disptab.h, frame.h,
19827         window.h, termhooks.h, dispextern.h.
19828         (w32con_write_glyphs, w32con_write_glyphs_with_face): Fix pointer
19829         signedness mismatch.
19830         * src/w32.c: Include c-strcase.h and systty.h.  Don't include
19831         w32heap.h.
19833 2015-10-22  Tassilo Horn  <tsdh@gnu.org>
19835         Improve doc-view wrt. auto-revert-mode
19837         * lisp/doc-view.el (doc-view-revert-buffer): Don't revert when file
19838         is corrupted (bug#21729).
19839         (doc-view-mode): Set doc-view-revert-buffer as revert-buffer-function.
19841 2015-10-22  Oleh Krehel  <ohwoeowho@gmail.com>
19843         Describe dired-do-compress-to in the manual
19845         * etc/NEWS: Update.
19847         * lisp/dired-aux.el: Fix typo.
19849         * doc/emacs/dired.texi: Add entry.
19851 2015-10-22  Jürgen Hötzel  <juergen@archlinux.org>
19853         Further fix for proper locale handling in tramp-gvfs.el
19855         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
19856         Just suppress LC_MESSAGES locale category settings.
19858 2015-10-21  Paul Eggert  <eggert@cs.ucla.edu>
19860         New lispref section “Security Considerations”
19862         This attempts to document some of the issues recently discussed
19863         on emacs-devel, and to indicate other such issues.  The section
19864         could be a lot longer.
19865         * doc/lispref/os.texi (Security Considerations):
19866         New node.
19867         * doc/lispref/elisp.texi (Top):
19868         * doc/lispref/processes.texi (Shell Arguments):
19869         * lisp/subr.el (shell-quote-argument):
19870         * src/callproc.c (syms_of_callproc):
19871         Reference it.
19873 2015-10-21  Paul Eggert  <eggert@cs.ucla.edu>
19875         Merge from gnulib
19877         This incorporates:
19878         2015-10-18 stdalign: work around pre-4.9 GCC x86 bug
19879         2015-10-18 time_rz: avoid warning from bleeding-edge gcc's -Wnonnull
19880         * doc/misc/texinfo.tex, lib/stdalign.in.h, lib/time_rz.c:
19881         Copy from gnulib.
19883 2015-10-21  Katsumi Yamaoka  <yamaoka@jpl.org>
19885         * lisp/gnus/mailcap.el (mailcap-mime-data): Remove fboundp checks.
19886         (mailcap-viewer-passes-test): Do it instead.  Thanks to Stefan Monnier.
19888 2015-10-21  Ken Brown  <kbrown@cornell.edu>
19890         Further include-file cleanup
19892         * src/sheap.c: Include stdlib.h.
19893         * src/unexcw.c: Include string.h.
19895 2015-10-21  Eli Zaretskii  <eliz@gnu.org>
19897         Fix logic in 'server-kill-emacs-query-function'
19899         * lisp/server.el (server-kill-emacs-query-function): Correct the
19900         logic that controls whether the user is asked for confirmation.
19901         (Bug#21723)
19903 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
19905         * lisp/isearch.el (isearch-search-fun-default): Simplify logic.
19906         (isearch--lax-regexp-function-p): New function.
19908 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
19910         * lisp/isearch.el: Support lax-whitespace in regexp-function searches.
19911         (isearch-search-fun-default): Let-bind `search-spaces-regexp'
19912         around `isearch-regexp-function'.
19914 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
19916         * lisp/isearch.el: Rename word search to regexp-function search.
19917         `isearch-word' went well beyond its original purpose, and the name
19918         no longer makes sense.  It is now called
19919         `isearch-regexp-function', and its value should always be a function
19920         that converts a string to a regexp (though setting it to t is still
19921         supported for now).
19922         (isearch-word): Make obsolete.
19923         (isearch-regexp-function): New variable.
19924         (isearch-mode, isearch-done, isearch--state, isearch--set-state)
19925         (with-isearch-suspended, isearch-toggle-regexp)
19926         (isearch-toggle-word, isearch-toggle-symbol)
19927         (isearch-toggle-character-fold, isearch-query-replace)
19928         (isearch-occur, isearch-highlight-regexp)
19929         (isearch-search-and-update, isearch-message-prefix)
19930         (isearch-search-fun-default, isearch-search)
19931         (isearch-lazy-highlight-new-loop, isearch-lazy-highlight-search):
19932         Use it.
19933         (isearch-lazy-highlight-regexp-function): New var.
19934         (isearch-lazy-highlight-word): Make obsolete.
19935         (isearch--describe-regexp-mode): New function.
19936         (isearch--describe-word-mode): Make obsolete.
19938         * lisp/info.el (Info-isearch-search):
19939         * lisp/replace.el (replace-search, replace-highlight):
19940         * lisp/obsolete/longlines.el (longlines-search-function):
19941         * lisp/hexl.el (hexl-isearch-search-function):
19942         * lisp/cedet/semantic/senator.el (senator-isearch-search-fun):
19943         Use the new var.
19945 2015-10-21  Oleh Krehel  <ohwoeowho@gmail.com>
19947         Add dired-do-compress-to command bound to "c"
19949         * lisp/dired-aux.el (dired-shell-command): Use the caller's
19950           `default-directory', return the result of `process-file'.
19951         (dired-compress-file-suffixes): Add comment on why "tar -zxf" isn't
19952         used by default.
19953         (dired-compress-files-alist): New defvar.
19954         (dired-do-compress-to): New command.
19956         * lisp/dired.el (dired-mode-map): Bind `dired-do-compress-to' to "c".
19957         (dired-do-compress-to): Add an autoload entry.
19959         * etc/NEWS: Add two entries.
19961 2015-10-21  Tassilo Horn  <tsdh@gnu.org>
19963         Make RefTeX work with LaTeX subfiles package
19965         * lisp/textmodes/reftex.el (reftex-TeX-master-file): Recognize subfiles
19966         document class argument as master file for referencing purposes.
19968 2015-10-21  Katsumi Yamaoka  <yamaoka@jpl.org>
19970         * lisp/gnus/mailcap.el (mailcap-mailcap-entry-passes-test): Doc fix.
19972 2015-10-20  Paul Eggert  <eggert@cs.ucla.edu>
19974         Include-file cleanup for src directory
19976         Omit ‘#include "foo.h"’ unless the file needs foo.h (Bug#21707).
19977         In a few cases, add ‘#include "foo.h"’ if the file needs foo.h
19978         but does not include it directly.  As a general rule, a source
19979         file should include foo.h if it needs the interfaces that foo.h
19980         defines.
19981         * src/alloc.c: Don’t include process.h.  Include dispextern.h,
19982         systime.h.
19983         * src/atimer.c: Don’t include blockinput.h.
19984         * src/buffer.c: Include coding.h, systime.h.  Don’t include
19985         keyboard.h, coding.h.
19986         * src/callint.c: Don’t include commands.h, keymap.h.
19987         * src/callproc.c: Don’t include character.h, ccl.h, composite.h,
19988         systty.h, termhooks.h.
19989         * src/casetab.c: Don’t include character.h.
19990         * src/category.c: Don’t include charset.h, keymap.h.
19991         * src/ccl.h: Don’t include character.h.
19992         * src/character.c: Don’t include charset.h.
19993         * src/charset.c: Don’t include disptab.h.
19994         * src/chartab.c: Don’t include ccl.h.
19995         * src/cm.c: Don’t include frame.h, termhooks.h.
19996         * src/cmds.c: Don’t include window.h, dispextern.h.
19997         * src/coding.c: Don’t include window.h, frame.h.
19998         * src/composite.c: Include composite.h.  Don’t include window.h,
19999         font.h.
20000         * src/data.c: Don’t include syssignal.h, termhooks.h, font.h.
20001         * src/dbusbind.c: Don’t include frame.h.
20002         * src/decompress.c: Don’t include character.h.
20003         * src/dired.c: Don’t include character.h, commands.h, charset.h.
20004         * src/dispnew.c: Don’t include character.h, indent.h, intervals.h,
20005         process.h, timespec.h.  Include systime.h.
20006         * src/doc.c: Include coding.h.  Don’t include keyboard.h.
20007         * src/editfns.c: Include composite.h.  Don’t include frame.h.
20008         * src/emacs.c: Include fcntl.h, coding.h.  Don’t include
20009         commands.h, systty.h..
20010         * src/fileio.c: Don’t include intervals.h, dispextern.h.
20011         Include composite.h.
20012         * src/filelock.c: Don’t include character.h, systime.h.
20013         * src/fns.c: Don’t include time.h, commands.h, keyboard.h,
20014         keymap.h, frame.h, blockinput.h, xterm.h.  Include composite.h.
20015         * src/font.c: Include termhooks.h.
20016         * src/font.h: Don’t include ccl.h, frame.h.  Add forward decls of
20017         struct composition_it, struct face, struct glyph_string.
20018         * src/fontset.c: Don’t include buffer.h, ccl.h, keyboard.h,
20019         intervals.h, window.h, termhooks.h.
20020         * src/frame.c: Don’t include character.h, commands.h, font.h.
20021         * src/frame.h: Don’t include dispextern.h.
20022         * src/fringe.c: Don’t include character.h.
20023         * src/ftcrfont.c: Don’t include dispextern.h, frame.h,
20024         character.h, charset.h, fontset.h.
20025         * src/ftfont.c: Don’t include frame.h, blockinput.h, coding.h,
20026         fontset.h.
20027         * src/ftxfont.c: Don’t include dispextern.h, character.h,
20028         charset.h, fontset.h.
20029         * src/gfilenotify.c: Don’t include frame.h, process.h.
20030         * src/gtkutil.c: Include dispextern.h, frame.h, systime.h.
20031         Don’t include syssignal.h, buffer.h, charset.h, font.h.
20032         * src/gtkutil.h: Don’t include frame.h.
20033         * src/image.c: Include fcntl.h and stdio.h instead of sysstdio.h.
20034         Don’t include character.h.
20035         * src/indent.c: Don’t include keyboard.h, termchar.h.
20036         * src/inotify.c: Don’t include character.h, frame.h.
20037         * src/insdel.c: Include composite.h.  Don’t include blockinput.h.
20038         * src/intervals.c: Don’t include character.h, keyboard.h.
20039         * src/intervals.h: Don’t include dispextern.h, composite.h.
20040         * src/keyboard.c: Don’t include sysstdio.h, disptab.h, puresize.h.
20041         Include coding.h.
20042         * src/keyboard.h: Don’t incldue systime.h.
20043         * src/keymap.c: Don’t include charset.h, frame.h.
20044         * src/lread.c: Include dispextern.h and systime.h.
20045         Don’t include frame.h.  Include systime.h.
20046         * src/macros.c: Don’t include commands.h, character.h, buffer.h.
20047         * src/menu.c: Include character.h, coding.h.  Don’t include
20048         dispextern.h.
20049         * src/menu.h: Don’t include systime.h.
20050         * src/minibuf.c: Don’t include commands.h, dispextern.h, syntax.h,
20051         intervals.h, termhooks.h.
20052         * src/print.c: Include coding.h.  Don’t include keyboard.h,
20053         window.h, dispextern.h, termchar.h, termhooks.h, font.h.
20054         Add forward decl of struct terminal.
20055         * src/process.c: Don’t include termhooks.h, commands.h,
20056         dispextern.h, composite.h.
20057         * src/region-cache.c: Don’t include character.h.
20058         * src/scroll.c: Don’t include keyboard.h, window.h.
20059         * src/search.c: Don’t include category.h, commands.h.
20060         * src/sound.c: Don’t include dispextern.h.
20061         * src/syntax.c: Don’t include command.h, keymap.h.
20062         * src/sysdep.c: Don’t include window.h, dispextern.h.
20063         * src/systime.h: Use ‘#ifdef emacs’, not ‘#ifdef EMACS_LISP_H’,
20064         * src/term.c: Don’t include systty.h, intervals.h, xterm.h.
20065         * src/terminal.c: Include character.h.
20066         Don’t include charset.h, coding.h.
20067         * src/textprop.c: Don’t include character.h.
20068         * src/undo.c: Don’t include character.h, commands.h, window.h.
20069         * src/unexsol.c: Don’t include character.h, charset.h.
20070         * src/widget.c: Include widget.h.  Don’t include keyboard.h,
20071         window.h, dispextern.h, blockinput.h, character.h, font.h.
20072         * src/widgetprv.h: Don’t include widget.h.
20073         * src/window.c: Don’t include character.h, menu.h, intervals.h.
20074         * src/xdisp.c: Include composite.h, systime.h.  Don’t include
20075         macros.h, process.h.
20076         * src/xfaces.c: Don’t include charset.h, keyboard.h, termhooks.h,
20077         intervals.h.
20078         * src/xfns.c: Don’t include menu.h, character.h, intervals.h,
20079         epaths.h, fontset.h, systime.h, atimer.h, termchar.h.
20080         * src/xfont.c: Don’t include dispextern.h, fontset.h, ccl.h.
20081         * src/xftfont.c: Don’t include dispextern.h, character.h, fontset.h.
20082         * src/xgselect.c: Don’t include timespec.h, frame.h.
20083         Include systime.h.
20084         * src/xgselect.h: Don’t include time.h.
20085         Use a forward decl to struct timespec instead.
20086         * src/xmenu.c: Don’t include keymap.h, character.h, charset.h,
20087         dispextern.h.  Include systime.h.
20088         * src/xml.c: Don’t include character.h.
20089         * src/xrdb.c [USE_MOTIF]: Don’t include keyboard.h.
20090         * src/xselect.c: Don’t include dispextern.h, character.h,
20091         buffer.h, process.h.
20092         * src/xsmfns.c: Don’t include systime.h, sysselect.h.
20093         * src/xterm.c: Don’t include syssignal.h, charset.h, disptab.h,
20094         intervals.h process.h, keymap.h, xgselect.h.  Include composite.h.
20096 2015-10-20  Paul Eggert  <eggert@cs.ucla.edu>
20098         (/ N) now returns the reciprocal of N
20100         This is more compatible with Common Lisp and XEmacs (Bug#21690).  See:
20101         http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg01053.html
20102         * lisp/color.el (color-hue-to-rgb, color-hsl-to-rgb)
20103         (color-xyz-to-srgb, color-xyz-to-lab):
20104         * lisp/emacs-lisp/cl-extra.el (cl-float-limits):
20105         * lisp/net/shr-color.el (shr-color-hue-to-rgb)
20106         (shr-color-hsl-to-rgb-fractions):
20107         Exploit the change to simplify the code a bit.
20108         * lisp/emacs-lisp/bytecomp.el (byte-compile-quo):
20109         Don’t complain about single-argument calls to ‘/’.
20110         * src/data.c (arith_driver, float_arith_driver):
20111         Implement the change.
20113 2015-10-20  Dmitry Gutov  <dgutov@yandex.ru>
20115         Call vc-dir-refresh after stash operations
20117         * lisp/vc/vc-git.el (vc-git-stash-apply-at-point)
20118         (vc-git-stash-pop-at-point): Call vc-dir-refresh (bug#13960).
20120         * lisp/vc/vc-dir.el (vc-dir-resynch-file): Expand FNAME as well,
20121         since it can be abbreviated (as returned by vc-find-root).
20123 2015-10-20  Dmitry Gutov  <dgutov@yandex.ru>
20125         * lisp/vc/vc-svn.el:
20126         * lisp/vc/vc-mtn.el:
20127         * lisp/vc/vc-hg.el:
20128         * lisp/vc/vc-cvs.el:
20129         * lisp/vc/vc-git.el:
20130         * lisp/vc/vc-bzr.el: Don't declare vc-exec-after anymore.
20131         Its usages have been replaced with vc-run-delayed.
20133 2015-10-20  Dima Kogan  <dima@secretsauce.net>
20135         Fix memory leak in fontset handling
20137         * src/font.c (copy_font_spec): Make a deep copy of the input
20138         argument FONT.  (Bug#21651)
20140 2015-10-20  Michael Sperber  <mike@xemacs.org>
20142         * lisp/gnus/mailcap.el (mailcap-mime-data):
20143         Conditonalize `doc-view-mode', which does not exist on XEmacs.
20145 2015-10-20  Oleh Krehel  <ohwoeowho@gmail.com>
20147         Update the way directories are compressed
20149         * lisp/dired-aux.el (dired-compress-file-suffixes): Update the recipe
20150         for *.tar.gz decompression to use a pipe.
20151         Add an entry for the default directory compression (to *.tar.g).
20152         (dired-compress-file): Update.
20154         See https://lists.gnu.org/archive/html/emacs-devel/2015-10/msg00949.html.
20156 2015-10-20  Michael Sperber  <mike@xemacs.org>
20158         Unbreak `group' option for `mail-sources'
20160         * lisp/gnus/nnml.el (nnml-retrieve-groups, nnml-request-scan):
20161         * lisp/gnus/nnmail.el (nnmail-get-new-mail-per-group)
20162         (nnmail-get-new-mail-1): Unbreak `group' option for `mail-sources'.
20164 2015-10-19  Nicolas Petton  <nicolas@petton.fr>
20166         New function seq-position
20168         * lisp/emacs-lisp/seq.el (seq-position): New function.
20169         * test/automated/seq-tests.el: New tests for seq-position.
20170         * doc/lispref/sequences.texi: Add documentation for `seq-position'.
20172 2015-10-19  Ken Brown  <kbrown@cornell.edu>
20174         Enable --with-wide-int build on 32-bit Cygwin
20176         * src/sheap.c (STATIC_HEAP_SIZE): Remove distinction between x86
20177         and x86_64 to enable --with-wide-int build on 32-bit Cygwin.
20179 2015-10-19  Glenn Morris  <rgm@gnu.org>
20181         * doc/emacs/ack.texi (Acknowledgments): Small, sad, update.
20183 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
20185         Resurrect image loading under auto-image-file-mode
20187         * src/image.c (x_find_image_fd): Handle the case of -2 returned by
20188         'openp' specially.  This special case was lost in the changes on
20189         2015-08-18.  (Bug#21685)
20191 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
20193         Fix return value of 'set-file-extended-attributes'
20195         * lisp/files.el (set-file-extended-attributes): Return non-nil
20196         when setting either ACLs or SELinux context succeeds.  Document
20197         the return value.  (Bug#21699)
20199         * doc/lispref/files.texi (Changing Files): Document the return
20200         value of set-file-extended-attributes.
20202 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
20204         Improve documentation of functions that change files
20206         * doc/lispref/files.texi (Changing Files): Document that these
20207         functions signal an error on failure.
20209 2015-10-18  Eli Zaretskii  <eliz@gnu.org>
20211         Fix doc string of 'shell-quote-argument'
20213         * lisp/subr.el (shell-quote-argument): Doc fix.  (Bug#21702)
20215 2015-10-18  Michael Albinus  <michael.albinus@gmx.de>
20217         Some minor Tramp changes
20219         * doc/misc/tramp.texi (Obtaining Tramp): Add http git cloning.
20221         * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
20222         Expand `tramp-auto-save-directory'.
20224 2015-10-18  Michael Albinus  <michael.albinus@gmx.de>
20226         Minor edits in Tramp
20228         * lisp/net/tramp-adb.el (directory-listing-before-filename-regexp):
20229         Declare it.
20231         * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
20232         Remove declaration.
20234 2015-10-17  Mark Oteiza  <mvoteiza@udel.edu>
20236         * lisp/emacs-lisp/eldoc.el: Add back-to-indentation to the command list.
20238 2015-10-17  Eli Zaretskii  <eliz@gnu.org>
20240         Avoid crashes when redisplayng a window changes faces or fonts
20242         * src/xdisp.c (redisplay_internal): If redisplaying the selected
20243         window or one of the frames turns on the frame's 'redisplay' flag,
20244         redisplay again.  (Bug#21428)
20246         * src/frame.c (x_set_font): Set the frame's 'fonts_changed' flag.
20248 2015-10-17  Michael Albinus  <michael.albinus@gmx.de>
20250         Solve timimg issues in file-notify-tests.el
20252         * test/automated/file-notify-tests.el (file-notify-test02-events):
20253         Rectify `attribute-change' tests.  There are timing issues with
20254         gfilenotify.  (Bug#21669)
20256 2015-10-16  Paul Eggert  <eggert@cs.ucla.edu>
20258         Fix quoting of data within htmlfontify doc
20260         * doc/misc/htmlfontify.texi (Data Structures, Customization):
20261         Fix quoting of data structures.  A Lisp quote is needed only
20262         when data appears within Lisp code.
20264 2015-10-16  Artur Malabarba  <bruce.connor.am@gmail.com>
20266         * lisp/emacs-lisp/package.el: Reload archive-contents if
20267         priorities change.
20268         (package--old-archive-priorities): New variable.
20269         (package-read-all-archive-contents, package-menu--refresh): Use it
20270         to decide when the `package-archive-contents' needs to be read
20271         again.
20273 2015-10-16  Paul Eggert  <eggert@cs.ucla.edu>
20275         Make src headers idempotent and standalone
20277         Redo src/*.h so that each include file is idempotent (that is, can
20278         be included multiple times with the latter inclusions having no
20279         effect) and standalone (that is, can be included by itself,
20280         with no include file other than config.h needed as a prerequisite).
20281         This is standard practice in GNU programs nowadays.
20282         * lwlib/lwlib-widget.h, src/buffer.h, src/category.h, src/character.h:
20283         * src/charset.h, src/coding.h, src/commands.h, src/disptab.h:
20284         * src/fontset.h, src/gnutls.h, src/indent.h, src/keymap.h, src/macros.h:
20285         * src/regex.h [emacs]:
20286         * src/syntax.h, src/systty.h, src/termhooks.h:
20287         Include lisp.h, for Lisp_Object.
20288         * src/buffer.h, src/category.h, src/cm.h, src/commands.h, src/disptab.h:
20289         * src/indent.h, src/intervals.h, src/keyboard.h, src/macros.h:
20290         * src/process.h, src/puresize.h, src/region-cache.h, src/syntax.h:
20291         * src/syssignal.h, src/sysstdio.h, src/systty.h, src/termchar.h:
20292         * src/termopts.h, src/tparam.h, src/unexec.h:
20293         Protect against multiple inclusion.
20294         * src/buffer.h: Include character.h, for STRING_CHAR.
20295         * src/emacsgtkfixed.h (struct frame):
20296         * src/fontset.h (struct face):
20297         * src/region-cache.h (struct buffer):
20298         * src/termhooks.h (struct glyph):
20299         * src/xsettings.h (struct x_display_info):
20300         Add possibly-forward decl.
20301         * src/syntax.h: Include buffer.h, for BVAR.
20302         * src/sysselect.h: Include lisp.h, for eassume.
20303         * src/termchar.h: Include <stdio.h>, for FILE.
20304         * src/widget.h: Include <X11/IntrinsicP.h>, for Widget.
20305         * src/xsettings.h: Include <X11/Xlib.h>, for XEvent.
20307 2015-10-16  Jürgen Hötzel  <juergen@archlinux.org>
20309         Handle symlink targets containing spaces in tramp-gvfs.el
20311         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
20312         Handle symlink targets containing spaces.
20314 2015-10-16  Artur Malabarba  <bruce.connor.am@gmail.com>
20316         * lisp/custom.el (custom-theme-load-path): Demote to defvar.
20318         `custom-theme-load-path' was a defcustom, but it shouldn't be for the
20319         same reason that `load-path' shouldn't.  Setting it via the customize
20320         interface is a trap for the user.
20322         Installed themes commonly add themselves to this variable, which means
20323         its value is not fit for being saved (it will permanently remember dirs
20324         that don't exist anymore).
20326         This is aggravated by the fact that Emacs always applies the `user'
20327         theme on top of any theme that's loaded, since this will apply the old
20328         variable value and remove any new directories that had been recently
20329         added by themes themselves.
20331         Not to mention, we already have `custom-theme-directory', which is safe
20332         to customize.
20334 2015-10-16  Stefan Monnier  <monnier@iro.umontreal.ca>
20336         * lisp/mpc.el: Rename the new toggling commands.
20337         (mpc-toggle-consume, mpc-toggle-repeat, mpc-toggle-single)
20338         (mpc-toggle-shuffle): Add "-toggle" in the name.
20340 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
20342         Improve the doc string of 'completion-boundaries'
20344         * lisp/minibuffer.el (completion-boundaries): Rename the argument
20345         TABLE to COLLECTION, for consistency with other high-level
20346         completion functions.  Document how COLLECTION is called if it
20347         is a function.  (Bug#21644)
20349 2015-10-16  Oleh Krehel  <ohwoeowho@gmail.com>
20351         * lisp/dired-aux.el (dired-shell-command): Fix compile warning.
20353 2015-10-16  Oleh Krehel  <ohwoeowho@gmail.com>
20355         Make dired-do-compress work for *.zip files
20357         * lisp/dired-aux.el (dired-check-process): Transform the top-level
20358           comment into a docstring.
20359         (dired-shell-command): New command.  This mirrors
20360         `dired-check-process', but is more user-friendly for passing
20361         arguments.
20362         (dired-compress-file-suffixes): Allow to specify the command switches
20363         along with input (%i) and output (%o) inside the PROGRAM part.
20364         Add an entry for *.zip files, and update the entry for *.tar.gz files
20365         to the new style.  Update the docstring.
20366         (dired-compress-file): When PROGRAM matches %i or %o, use the new
20367         logic.
20368         (dired-update-file-line): Avoid an error when at end of buffer.
20370         Fixes bug#21637.
20372 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
20374         Minor improvement in documentation of internals
20376         * doc/lispref/internals.texi (Writing Emacs Primitives): Document QUIT.
20378 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
20380         Improve documentation of COLLECTION in completion functions
20382         * doc/lispref/minibuf.texi (Minibuffer Completion): Add a
20383         cross-reference to "Programmed Completion".
20385         * src/minibuf.c (Fcompleting_read): Improve the doc string.
20386         (Bug#21644)
20388 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
20390         Add more release info to etc/HISTORY
20392         * etc/HISTORY: Add more release information about 19.x and 20.x
20393         versions.
20395 2015-10-15  Paul Eggert  <eggert@cs.ucla.edu>
20397         New file etc/HISTORY
20399         * admin/FOR-RELEASE: Procedure for etc/HISTORY.
20400         * etc/HISTORY: New file.
20401         * etc/NEWS: Mention it.
20403 2015-10-15  Dmitry Gutov  <dgutov@yandex.ru>
20405         js-mode: Don't misindent generator methods
20407         * lisp/progmodes/js.el (js--looking-at-operator-p): Distinguish
20408         generator methods from multiplication operator
20409         (https://github.com/mooz/js2-mode/issues/275).
20411 2015-10-15  Paul Eggert  <eggert@cs.ucla.edu>
20413         Fix animation timeout delay calculation
20415         * lisp/image.el (image-animate-timeout):
20416         Don’t assume speed is floating-point.
20418 2015-10-15  Mark Oteiza  <mvoteiza@udel.edu>
20420         Add commands for controlling MPD modes
20422         * lisp/mpc.el (mpc-cmd-consume, mpc-cmd-random, mpc-cmd-repeat)
20423         (mpc-cmd-single): New functions.
20424         (mpc-consume, mpc-repeat, mpc-single, mpc-shuffle): New commands.
20425         (mpc-mode-menu): Add new commands as menu items.
20427 2015-10-15  Dmitry Gutov  <dgutov@yandex.ru>
20429         Refer to `(elisp)Basic Completion' in completing-read docstring
20431         * src/minibuf.c (Fcompleting_read): Refer to `(elisp)Basic
20432         Completion' in the docstring (bug#21644).
20434 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
20436         * lisp/mpc.el (mpc-format): Always push form to pred
20438 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
20440         Spelling fixes
20442         * configure.ac (bitmapdir): Fix misspelling of bmd_acc.
20443         * test/automated/coding-tests.el (ert-test-coding-bogus-coding-systems):
20444         Fix misspelling of nonexistent file name.
20446 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
20448         * lisp/mpc.el (mpc-mode-menu, mpc-toggle-play): Fix docstrings
20450 2015-10-14  Michael Albinus  <michael.albinus@gmx.de>
20452         Some editing fixes in Tramp
20454         * lisp/net/tramp-gvfs.el:
20455         * doc/misc/tramp.texi: "customer option" -> "custom option".
20457         * lisp/net/tramp.el (tramp-completion-function-alist): Fix docstring.
20459 2015-10-14  Jürgen Hötzel  <juergen@archlinux.org>
20461         Use proper localization in tramp-gvfs.el
20463         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
20464         Suppress localized settings in order to proper parse gfvs output.
20466 2015-10-14  Warren Lynn  <wrn.lynn@gmail.com>  (tiny change)
20468         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band):
20469         Quote argument in proper order.  (Bug#21562)
20471 2015-10-14  Nicolas Petton  <nicolas@petton.fr>
20473         Fix typos in docstrings
20475         * lisp/emacs-lisp/map.el:
20476         * lisp/emacs-lisp/seq.el: Fix typos in the docstrings of the pcase
20477           macros.
20479 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
20481         * lisp/mpc.el (mpc-volume-refresh): Check if buffer is live.
20483 2015-10-14  Oleh Krehel  <ohwoeowho@gmail.com>
20485         Make dired-jump work with tar-subfile-mode
20487         * lisp/dired-x.el (dired-jump): When in `tar-subfile-mode', instead of
20488           emitting an error, switch to `tar-superior-buffer'.
20490 2015-10-14  Juanma Barranquero  <lekktu@gmail.com>
20492         * .gitignore: Add build-aux/ar-lib.
20494 2015-10-14  Nicolas Petton  <nicolas@petton.fr>
20496         Better docstrings in seq.el and map.el
20498         * lisp/emacs-lisp/map.el:
20499         * lisp/emacs-lisp/seq.el: Improve the docstring for the pcase patterns.
20501 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
20503         Merge from gnulib
20505         This incorporates:
20506         2015-10-13 binary-io, u64, unistd: port to strict C
20507         2015-09-26 c-ctype: do not worry about EBCDIC + char signed
20508         2015-09-25 c-ctype: port better to z/OS EBCDIC
20509         2015-09-25 gnulib-common.m4: fix gl_PROG_AR_RANLIB/AM_PROG_AR clash
20510         * doc/misc/texinfo.tex, lib/binary-io.c, lib/c-ctype.h, lib/u64.c:
20511         * lib/unistd.c, m4/gnulib-common.m4, m4/gnulib-comp.m4:
20512         Copy from gnulib.
20514 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
20516         Take XPNTR private
20518         * src/alloc.c (PURE_POINTER_P): Remove.
20519         All uses replaced with PURE_P.
20520         (XPNTR_OR_SYMBOL_OFFSET): New function.
20521         (XPNTR): Move here from lisp.h.
20522         Reimplement in terms of XPNTR_OR_SYMBOL_OFFSET.
20523         (mark_maybe_object, valid_lisp_object_p, survives_gc_p):
20524         Remove unnecessary cast.
20525         (purecopy): Use XPNTR_OR_SYMBOL_OFFSET instead of XPNTR,
20526         to avoid an unnecessary runtime test for symbols.
20527         * src/lisp.h (lisp_h_XPNTR, XPNTR): Remove, moving XPNTR to alloc.c.
20528         Only alloc.c needs XPNTR now.
20530 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
20532         Add MPC play/pause command
20534         * lisp/mpc.el (mpc-toggle-play): New command.
20535         (mpc-mode-map): Bind it to "s".
20536         (mpc-mode-menu): Add corresponding menu item.
20538 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
20540         Add bindings and menu items for prev and next tracks
20542         * lisp/mpc.el (mpc-mode-map): Bind ">" to mpc-next,
20543         "<" to mpc-prev.
20544         (mpc-mode-menu): Add corresponding menu items
20546 2015-10-13  Ken Raeburn  <raeburn@raeburn.org>
20548         Reduce face-related consing during frame creation.
20550         * lisp/faces.el (face--attributes-unspecified): Compute the "unspecified"
20551         attribute list once.
20552         (face-spec-reset-face): Use it instead of building the list.
20554 2015-10-13  Ken Raeburn  <raeburn@permabit.com>
20556         Do process ConfigureNotify events indicating size changes.
20558         * src/xterm.c (handle_one_xevent): If consecutive ConfigureNotify
20559         events don't have the same size, process each one.
20561 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
20563         Derive mpc-mode from special-mode
20565         lisp/mpc.el (mpc-mode-map): Make from sparse keymap.  Unbind g.
20566         (mpc-mode): Derive from special mode.
20567         (mpc-songs-mode-map): Don't set parent keymap.
20569 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
20571         Fix error messages for when covers are not found.
20573         The last change to mpc-format let the binding to file call
20574         mpc-file-local-copy with nil argument.  Instead, employ if-let here
20575         so nil bindings don't result in needless computation and errors.
20576         * lisp/mpc.el: Require 'subr-x at compile time.
20577         * lisp/mpc.el (mpc-format): Use if-let.
20579 2015-10-13  Oleh Krehel  <ohwoeowho@gmail.com>
20581         Make dired-do-compress work for *.tar.gz files
20583         * lisp/dired-aux.el (dired-compress-file-suffixes): Associate
20584           "tar -zxvf" to *.tar.gz; update docstring.
20586         (dired-compress-file): Allow to specify switches after the command in
20587         `dired-compress-file-suffixes'.
20589 2015-10-13  Oleh Krehel  <ohwoeowho@gmail.com>
20591         Make dired-do-compress work for directories
20593         * lisp/dired-aux.el (dired-compress-file): When FILE is a directory,
20594           instead of emitting an error, call "tar -czf FILE.tar.gz FILE".
20595         Also convert the top comment into a docstring.
20597 2015-10-13  Stefan Monnier  <monnier@iro.umontreal.ca>
20599         * lisp/mpc.el (mpc-songs-refresh): Don't side-effect `active'
20601         ... since it might come straight from the memoizing table.
20603 2015-10-13  Juanma Barranquero  <lekktu@gmail.com>
20605         * src/w32fns.c (x_change_tool_bar_height): Remove unused variable frame.
20607 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
20609         Use special-mode in eww list modes
20611         * lisp/net/eww.el (eww-bookmark-mode, eww-history-mode)
20612         (eww-buffers-mode): Derive from special-mode and remove redundant
20613         setting of buffer-read-only.
20614         (eww-mode-map): Remove redundant keymap parent setting.
20615         (eww-bookmark-mode-map, eww-history-mode-map, eww-buffers-mode-map):
20616         Remove redundant keymap suppressions and mappings.
20618 2015-10-13  Martin Rudalics  <rudalics@gmx.at>
20620         Allow setting frame pixel sizes from frame parameters (Bug#21415)
20622         Also fix some misfeatures in frame (re-)sizing code, add more
20623         debugging information and remove some dead code.
20625         * lisp/frame.el (frame-notice-user-settings, make-frame): Change
20626         parameter names when setting `frame-size-history'.
20627         (frame--size-history): New function.
20629         * src/frame.c (frame_inhibit_resize): If frame has not been made
20630         yet, return t if inhibit_horizontal_resize or
20631         inhibit_vertical_resize bit have been set.
20632         (adjust_frame_size): Simplify.
20633         (make_frame): Initialize inhibit_horizontal_resize,
20634         inhibit_vertical_resize, tool_bar_redisplayed, tool_bar_resized.
20635         (Fframe_after_make_frame): Reset inhibit_horizontal_resize and
20636         inhibit_vertical_resize slots.
20637         (x_set_frame_parameters): Handle `text-pixels' specification for
20638         width and height parameters.  Don't consider new_height or
20639         new_width changes.  Call adjust_frame_size instead of
20640         Fset_frame_size.
20641         (x_figure_window_size): Two new arguments x_width and y_width
20642         returning frame's figures width and height.  Calculate tool bar
20643         height before frame sizes so SET_FRAME_HEIGHT can pick it up.
20644         Handle `text-pixels' specification for width and height
20645         parameters.
20646         (Qtext_pixels, Qx_set_frame_parameters, Qset_frame_size)
20647         (Qx_set_window_size_1, Qx_set_window_size_2)
20648         (Qx_set_window_size_3, Qx_set_menu_bar_lines)
20649         (Qupdate_frame_menubar, Qfree_frame_menubar_1)
20650         (Qfree_frame_menubar_2): New symbols.
20651         * src/frame.h (structure frame): New booleans
20652         tool_bar_redisplayed, tool_bar_resized,
20653         inhibit_horizontal_resize, inhibit_vertical_resize.
20654         (x_figure_window_size): Update external declaration.
20655         * src/gtkutil.c (xg_frame_set_char_size): Set size hints before
20656         calling gtk_window_resize.
20657         (update_frame_tool_bar): Make inhibiting of frame resizing more
20658         discriminative.  Set tool_bar_resized bit.
20659         * src/nsfns.m (x_set_tool_bar_lines): Make inhibiting of frame
20660         resizing more discriminative.  Call adjust_frame_size instead of
20661         x_set_window_size.
20662         (Fx_create_frame): Handle x_width and x_height if
20663         set by x_figure_window_size.
20664         * src/nsterm.m (x_set_window_size): For GNUSTEP build don't
20665         subtract 3 from tool bar height.
20666         (x_set_window_size): Add frame_size_history_add call.
20667         (x_new_font): Call adjust_frame_size instead of
20668         x_set_window_size.
20669         * src/w32fns.c (x_change_tool_bar_height): Reset
20670         tool_bar_redisplayed and tool_bar_resized bits when adding tool
20671         bar.  Make inhibiting of frame resizing more discriminative.
20672         (w32_wnd_proc): Remove dead code in WM_WINDOWPOSCHANGING case.
20673         (Fx_create_frame): Handle x_width and x_height if set by
20674         x_figure_window_size.  Set size hints before adjusting frame size.
20675         (x_create_tip_frame): Adjust x_figure_window_size call.
20676         * src/w32term.c (x_set_window_size): Add frame_size_history_add
20677         call.
20678         * src/widget.c (set_frame_size): Remove dead code.  Add
20679         frame_size_history_add call.  When frame_resize_pixelwise is t
20680         use FRAME_PIXEL_WIDTH and FRAME_PIXEL_HEIGHT instead of
20681         pixel_width and pixel_height.
20682         (update_various_frame_slots): Remove dead code.
20683         (EmacsFrameResize): Add more information in
20684         frame_size_history_add call.
20685         (EmacsFrameQueryGeometry): Round only when frame_resize_pixelwise
20686         is not set.
20687         * src/xdisp.c (redisplay_tool_bar): Set tool_bar_redisplayed bits.
20688         * src/xfns.c (x_set_menu_bar_lines): Change argument name.
20689         (x_change_tool_bar_height): Reset tool_bar_redisplayed and
20690         tool_bar_resized bits when adding tool bar.  Make inhibiting of
20691         frame resizing more discriminative.
20692         (Fx_create_frame): Handle x_width and x_height if set by
20693         x_figure_window_size.  Set size hints before adjusting frame size.
20694         (x_create_tip_frame): Adjust x_figure_window_size call.
20695         * src/xmenu.c (update_frame_menubar): Don't handle Lucid specially.
20696         (set_frame_menubar): On Lucid never add core-border-width to
20697         avoid that adding XtNinternalBorderWidth adds it again.
20698         (free_frame_menubar): Handle frame_inhibit_resize true for Motif.
20699         * src/xterm.c (x_new_font): In non-toolkit case handle size
20700         change of menu bar.
20701         (x_set_window_size_1): Fix calls to frame_size_history_add.
20702         (x_wm_set_size_hint): Remove dead code.  Set
20703         size_hints.min_width and size_hints.min_height to base_width and
20704         base_height.
20706 2015-10-13  Michael Albinus  <michael.albinus@gmx.de>
20708         * test/automated/file-notify-tests.el (file-notify--test-timeout):
20709         Add docstring.  Increase to 10 seconds for remote
20710         directories.  (Bug#21669)
20712 2015-10-12  Paul Eggert  <eggert@cs.ucla.edu>
20714         Unmacroize ebrowse.c and etags.c a bit
20716         * lib-src/ebrowse.c (READ_CHUNK_SIZE): Now an enum constant.
20717         (streq, filename_eq, set_flag, has_flag): Now inline functions.
20718         (set_flag): First arg is now an address, not an lvalue.
20719         All callers changed.
20720         (filename_eq, set_flag, has_flag):
20721         Rename from FILENAME_EQ, SET_FLAG, HAS_FLAG.
20722         All callers changed.
20723         * lib-src/etags.c (streq, strcaseeq, strneq, strncaseeq):
20724         Now inline functions.  Remove asserts that are unnecessary these
20725         days (and in some cases were too-generous anyway).
20727 2015-10-12  Mark Oteiza  <mvoteiza@udel.edu>
20729         Use highlight for current items
20731         * lisp/mpc.el (mpc-select-make-overlay, mpc-tagbrowser-all-select):
20732         Apply highlight face instead of region face.
20734 2015-10-12  Mark Oteiza  <mvoteiza@udel.edu>
20736         Search for more cover image names in MPC
20738         * lisp/mpc.el (mpc-format): Also look for .folder.jpg or folder.jpg
20739         case insensitively
20741 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
20743         Remove or comment out unused variables
20745         * src/w32fns.c (x_set_mouse_color): Comment out variables cursor,
20746         nontext_cursor, mode_cursor, hand_cursor and count.
20747         (x_change_tool_bar_height): Remove variable old_text_height.
20748         (deliver_wm_chars): Remove variable strip_Alt.
20749         (Fw32_shell_execute): Remove variable document_a.
20750         (Fw32_frame_geometry): Remove variable fullboth.
20751         * src/w32term.c (w32_setup_relief_color): Comment out variable
20752         w32_display_info.
20753         (w32_horizontal_scroll_bar_handle_click): Remove variables start, end.
20754         (w32_read_socket): Comment out variables rows, columns.
20755         * src/w32uniscribe.c (uniscribe_check_otf_1): Remove variable rest.
20757 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
20759         * src/w32proc.c (sys_select): Fix bitwise test.
20761 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
20763         Minor typo corrections in doc strings
20765         * lisp/menu-bar.el (popup-menu, popup-menu-normalize-position):
20766         Doc fixes.
20768 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
20770         * nt/INSTALL: Recommend MSYS Automake/Autoconf from ezwinports.
20772 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
20774         Attempt to avoid crashes in plist-member
20776         * src/fns.c (Fplist_member): Don't call QUIT between a CONSP test
20777         and a call to XCDR.  (Bug#21655)
20779 2015-10-12  Mike FABIAN  <mfabian@redhat.com>
20781         * lisp/select.el (gui-get-primary-selection): In
20782         gui-get-primary-selection use gui--selection-value-internal (Bug#20906)
20784 2015-10-12  Tassilo Horn  <tsdh@gnu.org>
20786         Support RTF in doc-view
20788         * lisp/doc-view.el (doc-view-set-doc-type): Add entry for RTF extension.
20790 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
20792         * src/w32fns.c (get_wm_chars): Increment counter, not pointer.
20794 2015-10-11  Nicolas Petton  <nicolas@petton.fr>
20796         Replace the usage of an obsolete function in auth-source.el
20798         * lisp/gnus/auth-source.el (auth-source-epa-make-gpg-token):
20799         Replace an usage of `epg-context-set-armor' with `setf'.
20801 2015-10-11  Nicolas Petton  <nicolas@petton.fr>
20803         * lisp/gnus/auth-source.el: Use sharp-quoting with functions.
20805 2015-10-11  Jay Belanger  <jay.p.belanger@gmail.com>
20807         Have calc-yank recognize numbers in different bases.
20809         * lisp/calc/calc-yank.el (math-number-regexp): New function.
20810         (calc-yank): Use `math-number-regexp' to recognize numbers.
20812 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
20814         Handle an opaque-move X11 window manager operation more efficiently
20816         * src/xterm.c (handle_one_xevent): If a ConfigureNotify event is
20817         followed by more ConfigureNotify events for the same window, process
20818         only the last one.
20820 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
20822         Fix cursor setting for tip frame; re-enable cursor generation
20824         * src/xfns.c (x_create_tip_frame): Include the cursor in the window
20825         attributes sent when creating the new X window.  Don't skip setting
20826         the pointerColor parameter.
20828 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
20830         Rewrite x_set_mouse_color to sync less
20832         We can track serial numbers of X requests and correlate error events
20833         with the associated requests.  This way we can identify errors for
20834         specific calls without having to use XSync after every one.
20836         * src/xfns.c (enum mouse_cursor): New type.
20837         (struct mouse_cursor_types, struct mouse_cursor_data): New types.
20838         (mouse_cursor_types): New array listing the Lisp variables and default
20839         cursor appearances for each cursor type.
20840         (x_set_mouse_color_handler): New function; checks error event serial
20841         number against submitted requests.
20842         (x_set_mouse_color): Updated to use the new error handler callback,
20843         and to be more table-driven, to simplify repetitious code.
20845 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
20847         Add x_catch_errors_with_handler
20849         * src/xterm.c (struct x_error_message_stack): Add new fields for a
20850         callback function and associated data pointer.
20851         (x_error_catcher): If the callback function is set, call it after
20852         saving the error message string.
20853         (x_catch_errors_with_handler): Renamed from x_catch_errors but now
20854         accepts a callback function and data pointer.
20855         (x_catch_errors): Now a wrapper function.
20856         * src/xterm.h (x_special_error_handler): New typedef.
20857         (x_catch_errors_with_handler): Declare.
20859 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
20861         Introduce x_uncatch_errors_after_check to reduce XSync calls
20863         Both x_had_errors_p and x_check_errors call XSync, so if they're
20864         immediately followed by x_uncatch_errors, its XSync call will be
20865         redundant, resulting in a wasted round trip to the X server.
20867         * src/xterm.c (x_uncatch_errors_after_check): New routine; a copy of
20868         x_uncatch_errors without the XSync call.
20869         (XTmouse_position, x_wm_supports):
20870         * src/xfns.c (x_set_mouse_color):
20871         * src/xmenu.c (Fx_menu_bar_open_internal):
20872         * src/xselect.c (x_own_selection, x_get_foreign_selection):
20873         (Fx_get_atom_name): Call it instead of x_uncatch_errors.
20874         * src/xterm.h (x_uncatch_errors_after_check): Declare.
20876 2015-10-10  Jay Belanger  <jay.p.belanger@gmail.com>
20878         Document the optional prefix to `calc-yank'
20880         * doc/misc/calc.texi (Yanking into the Stack): Document the optional
20881         prefix to `calc-yank'.
20882         * lisp/calc/calc-yank.el (calc-yank): Ensure that things killed from
20883         the Calc buffer are yanked back unchanged.
20885 2015-10-10  Mark Oteiza  <mvoteiza@udel.edu>
20887         * lisp/calendar/calendar.el: Display buffer before executing body.
20889         In each use of this macro, the modeline is derived from a window width
20890         calculation, which will be wrong if (display-buffer) splits the window
20891         horizontally.
20893 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
20895         Use ‘echo’ safely with ‘\’ or leading ‘-’
20897         POSIX says that ‘echo FOO’ produces implementation-defined output
20898         if FOO contains leading ‘-’, or ‘\’ anywhere, so don’t assume GNU
20899         behavior in that case.
20900         * Makefile.in (removenullpaths): Remove.
20901         (epaths-force): Rewrite to avoid the need for ‘echo’.
20902         (install-etc): Be clearer about escaping the shell metacharacters
20903         ‘\’ and ‘$’.
20904         * Makefile.in (install-arch-indep, install-etcdoc):
20905         * admin/charsets/mapconv, admin/merge-gnulib, admin/merge-pkg-config:
20906         * admin/quick-install-emacs, build-aux/gitlog-to-emacslog:
20907         * configure.ac, lib-src/rcs2log, make-dist:
20908         * src/Makefile.in (lisp.mk):
20909         Don’t assume ‘echo’ outputs ‘\’ and leading ‘-’ unscathed.
20910         For example, use ‘printf '%s\n' "$foo"’ rather than ‘echo "$foo"’
20911         if $foo can contain arbitrary characters.
20912         * lisp/Makefile.in (TAGS): Use ‘ls’, not ‘echo’, to avoid ‘\’ issues.
20913         * doc/lispref/two-volume.make (vol1.pdf):
20914         * test/etags/make-src/Makefile (web ftp publish):
20915         Use ‘printf’ rather than ‘echo -e’.
20917 2015-10-10  Kaushal Modi  <kaushal.modi@gmail.com>
20919         Allow numbers with different radixes to be yanked.
20921         * lisp/calc/calc-yank.el (calc-yank): Allow radixes besides the
20922         default base 10.
20924 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
20926         Improve CHECK_IMPURE and PURE_P speedup
20928         * src/data.c (Faset): Use XVECTOR and XSTRING rather than XPNTR.
20930 2015-10-10  Jay Belanger  <jay.p.belanger@gmail.com>
20932         Use events instead of chars to keep track of steps.
20934         * lisp/calc/calc-prog.el (calc-kbd-loop): Use events instead of chars
20935         to keep track of steps.
20937 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
20939         Fix --enable-gcc-warnings problem with older GCC
20941         * src/puresize.h: Add INLINE_HEADER_BEGIN, INLINE_HEADER_END.
20942         This is for building with --enable-gcc-warnings with
20943         GCC 4.6 through 5.0.
20945 2015-10-10  Eli Zaretskii  <eliz@gnu.org>
20947         Fix vertical-motion in truncated lines that end in a stretch
20949         * src/indent.c (Fvertical_motion): Expect overshoot when point is
20950         beyond window margin and lines are truncated, even if we have a
20951         stretch at point.  (Bug#21468)
20953 2015-10-10  Eli Zaretskii  <eliz@gnu.org>
20955         Avoid link-time errors due to inline functions
20957         * src/emacs.c: Include puresize.h, to avoid link-time errors in
20958         unoptimized builds due to PURE_P and CHECK_IMPURE, which are now
20959         inline functions.
20961 2015-10-10  Andreas Schwab  <schwab@linux-m68k.org>
20963         * src/data.c (Faset): Fix last change.
20965 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
20967         CHECK_IMPURE and PURE_P speedup
20969         * src/intervals.c (create_root_interval):
20970         Do CHECK_IMPURE only for strings; not needed for buffers.
20971         Prefer ! STRINGP to BUFFERP, for a tad more speed.
20972         * src/puresize.h (CHECK_IMPURE, PURE_P):
20973         Now inline functions instead of macros.
20974         (PURE_P): Don’t use XPNTR; that is now the caller’s responsibility.
20975         All callers changed.
20976         (CHECK_IMPURE): New argument PTR, to save us the work of running XPNTR.
20977         All callers changed.
20979 2015-10-09  Noah Friedman  <friedman@splode.com>
20981         (tramp-open-connection-setup-interactive-shell): Send -onlcr as well.
20983 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
20985         * lisp/progmodes/cc-mode.el (c-after-font-lock-init): Only *move*
20987         our after-change-function, rather than re-adding it if it was removed.
20989 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
20991         * lisp/cedet/ede: Silence some compiler warnings
20993         * lisp/cedet/ede.el: Require cl-lib.  Silence some compiler warnings.
20994         (ede-menu-obj-of-class-p): Use cl-some rather than `eval'.
20995         (ede-apply-object-keymap, ede-reset-all-buffers)
20996         (ede-auto-add-to-target): Use dolist.
20997         (ede-new, ede-flush-deleted-projects, ede-global-list-sanity-check):
20998         Use field names rather than initarg names in `oref'.
20999         (ede-load-project-file): Remove unused var `file'.
21000         (ede-map-any-target-p): Use cl-some rather than ede-map-targets.
21001         (ede-set): Remove unused var `a'.
21003         * lisp/cedet/ede/emacs.el: Silence some compiler warnings.
21004         (ede-project-autoload): Avoid the old-style "name" argument.
21005         (ede-emacs-find-matching-target): Use field names rather than initarg
21006         names in `oref'.
21008         * lisp/cedet/ede/linux.el: Silence some compiler warnings.
21009         (ede-linux-load, ede-project-autoload): Avoid the old-style
21010         "name" argument.
21011         (ede-linux-find-matching-target): Use field names rather than initarg
21012         names in `oref'.
21014 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
21016         * lisp/textmodes/reftex.el: Silence byte-compiler warnings.
21018 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
21020         * lisp/progmodes/prolog.el (prolog-smie-rules): Try and avoid
21021         indenting too far after ":-".
21023 2015-10-09  Eli Zaretskii  <eliz@gnu.org>
21025         Update case-table and categories of recently added characters
21027         * lisp/international/characters.el: Update information about Latin
21028         Extended-C, Latin Extended-D, Latin Extended-E, Cyrillic Extended,
21029         Georgian, Glagolitic, Deseret, Old Hungarian, and Warang Citi
21030         blocks.  (Byug#21654)
21032 2015-10-09  Martin Rudalics  <rudalics@gmx.at>
21034         * src/frame.c (adjust_frame_size): In minibuffer-only windows
21035         don't count minibuffer height twice.  (Bug#21643)
21037 2015-10-09  Eli Zaretskii  <eliz@gnu.org>
21039         Avoid inflooping in font-lock
21041         * lisp/font-lock.el (font-lock-extend-region-wholelines): Bind
21042         inhibit-field-text-motion around the call to
21043         line-beginning-position, to avoid inflooping.  (Bug#21615)
21045 2015-10-09  Tassilo Horn  <tsdh@gnu.org>
21047         Refactor duplicated code; ensure default is in completions
21049         * lisp/textmodes/reftex-cite.el (reftex--query-search-regexps):
21050         New function.
21051         (reftex-extract-bib-entries): Use it.
21052         (reftex-extract-bib-entries-from-thebibliography): Use it.
21054 2015-10-09  Vincent Belaïche  <vincentb1@users.sourceforge.net>
21056         * doc/misc/autotype.texi (Skeletons as Abbrevs): "if" -> "ifst"
21057         in the example.
21059 2015-10-08  Stefan Monnier  <monnier@iro.umontreal.ca>
21061         * lisp/calc/calc.el: Silence byte-compiler warnings.
21062         (calc-scan-for-dels): Use ignore-errors.
21063         (calc-dispatch, calc-do-dispatch): Make unused arg optional.
21064         (calc-read-key-sequence): Remove unused var `prompt2'.
21065         (calc-kill-stack-buffer): Remove unused var `buflist'.
21066         (calc): Remove unused var `oldbuf'.
21067         (calc-refresh): Use inhibit-read-only.
21068         (calc-can-abbrev-vectors): Declare.
21069         (calc-record): Remove unused var `mainbuf'.
21070         (math-sub-bignum): Remove unused var `sum'.
21071         (math-svo-c, math-svo-wid, math-svo-off): Declare.
21073 2015-10-08  Daiki Ueno  <ueno@gnu.org>
21075         Use g_clear_error instead of g_error_free
21077         * src/image.c: Define g_clear_error instead of g_error_free.
21078         (init_svg_functions): Resolve symbol g_clear_error instead of
21079         g_error_free.
21080         (svg_load_image): Use g_clear_error instead of g_error_free, to
21081         suppress GLib warnings when ERR is not set.  See bug#21641.
21083 2015-10-08  Paul Eggert  <eggert@cs.ucla.edu>
21085         * src/image.c (image_size_error): Simplify.
21087 2015-10-08  Paul Eggert  <eggert@cs.ucla.edu>
21089         Fix problems caught with --enable-gcc-warnings
21091         * src/image.c (lookup_rgb_color):
21092         * src/xfns.c (x_defined_color):
21093         * src/xterm.c (x_parse_color):
21094         Remove unused locals.
21096 2015-10-08  Jay Belanger  <jay.p.belanger@gmail.com>
21098         * lisp/calc/calc.el (calc-digit-start-entry): Fix typo.
21100 2015-10-08  Jay Belanger  <jay.p.belanger@gmail.com>
21102         Format initial input uniformly
21104         * lisp/calc/calc.el (calc-digit-start-entry): New function.
21105         * lisp/calc/calc.el (calcDigit-start):
21106         * lisp/calc/calc-aent.el (calc-alg-digit-entry):
21107         Use `calc-digit-start-entry' to format input.
21109 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
21111         Disable non-working pointerColor setting for X tooltip frame
21113         It generates a bunch of server traffic, but there's some bug wherein
21114         the new mouse cursor settings don't seem to get used.  In most
21115         situations the cursor isn't likely to be seen anyway, so it's not
21116         urgent to fix.
21118         * src/xfns.c (x_create_tip_frame): Don't set pointerColor.
21120 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
21122         Reduce some unnecessary X calls
21124         * src/xfns.c (x_real_pos_and_offsets): Remove a redundant XGetGeometry
21125         call.  If border width is wanted, get it from the XGetGeometry call
21126         instead of calling XGetWindowAttributes on the same window.  Skip some
21127         X calls if we've already detected an error from the X server.
21128         * src/xterm.c (x_wm_supports): Delete x_sync before x_had_errors_p.
21129         (handle_one_xevent): Delete XSync call before x_uncatch_errors.
21131 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
21133         Reduce color allocation/query traffic in the TrueColor case
21135         When working with an X visual with TrueColor class, pixel values can
21136         be generated from the RGB values according to mask value provided by
21137         the server on connection.  Some of the image-handling code was already
21138         doing this.
21140         * src/xterm.h (x_make_truecolor_pixel): New function; code taken from
21141         lookup_rgb_color.
21142         (x_mutable_colormap): New function.
21143         * src/image.c (lookup_rgb_color): Move pixel composition code to
21144         x_make_truecolor_pixel.
21145         (x_kill_gs_process): Call x_mutable_colormap.
21146         * src/xfaces.c (x_free_colors, x_free_dpy_colors): Call
21147         x_mutable_colormap.
21148         * src/xftfont.c (xftfont_get_colors): Call x_query_colors.
21149         * src/xterm.c (x_query_colors): For a TrueColor display, decompose the
21150         pixel value into RGB values directly, and don't send a request to the
21151         server.
21152         (x_alloc_nearest_color): For a TrueColor display, construct the pixel
21153         value with x_make_truecolor_pixel.
21154         (x_copy_color): For an immutable color map, just return the provided
21155         pixel value.
21157 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
21159         Cache XParseColor results in the X display info structure
21161         With repeated lookups of foreground and background colors for multiple
21162         faces per frame, we issue a lot of redundant color name lookups to the
21163         X server, waiting every time for the response.  On a remote network
21164         with, say, 30ms round-trip time, this can add nearly a full second to
21165         creation of a new frame.
21167         * src/gtkutil.c (xg_check_special_colors): Call x_parse_color.
21168         * src/image.c (get_spec_bg_or_alpha_as_argb):
21169         (xpm_init_color_cache, xpm_lookup_color):
21170         * src/xfns.c (x_defined_color):
21171         * src/xterm.c (x_parse_color): New function; caches color names not
21172         starting with "#" in the display-info structure.
21173         (x_delete_display): Delete the cache content.
21174         * src/xterm.h (struct color_name_cache_entry): New type.
21175         (x_parse_color): Declare.
21176         (struct x_display_info): Add a new field for the cache.
21178 2015-10-07  Stefan Monnier  <monnier@iro.umontreal.ca>
21180         * src/syntax.c (syms_of_syntax): Make syntax-propertize--done local.
21182 2015-10-07  Eli Zaretskii  <eliz@gnu.org>
21184         Fix segfault in image_size_error
21186         * src/image.c (image_size_error): Pass a Lisp string to
21187         image_error, not a C string.  (Bug#21641)
21189 2015-10-07  Simen Heggestøyl  <simenheg@gmail.com>
21191         Highlight CSS variable definitions
21193         * lisp/textmodes/css-mode.el (css-nmstart-re): Tweak regexp to accept
21194         CSS variables.  (Bug#21638)
21196 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
21198         * test/automated/tabulated-list-test.el: New file.
21199         Test bug#21639 and some basic functionality.
21201 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
21203         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-sort):
21204         Check if column can be sorted before trying.  (Bug#21639)
21206 2015-10-07  Nicolas Richard  <youngfrog@members.fsf.org>
21208         Add test for `self-insert-command' (bug#21633)
21210         * test/automated/cmds-tests.el: New file.
21212 2015-10-07  Martin Rudalics  <rudalics@gmx.at>
21214         * src/window.c (resize_frame_windows): Don't set root window's
21215         top position when resizing horizontally.
21217 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
21219         * lisp/progmodes/prog-mode.el (prettify-symbols-alist):
21220         Document more possible values.
21222 2015-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
21224         * lisp/textmodes/tex-mode.el: Use lexical-binding.
21226 2015-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
21228         * lisp/indent.el (indent--default-inside-comment): New function.
21229         (indent-for-tab-command): Use it for `noindent' indentation.
21231 2015-10-06  Paul Eggert  <eggert@cs.ucla.edu>
21233         Fix bug in GC_CHECK_MARKED_OBJECTS check
21235         * src/alloc.c (mark_object): Fix bug in checking code.
21236         When GC_CHECK_MARKED_OBJECTS is defined, the bug caused
21237         CHECK_ALLOCATED_AND_LIVE_SYMBOL to repeatedly do the
21238         CHECK_ALLOCATED and CHECK_LIVE tests for the first symbol in each
21239         bucket.  The bug did not affect behavior either in the normal case
21240         where GC_CHECK_MARKED_OBJECTS is not defined, or where Emacs does
21241         not have an internal error that a properly-written
21242         CHECK_ALLOCATED_AND_LIVE_SYMBOL would detect.
21244 2015-10-06  Tassilo Horn  <tsdh@gnu.org>
21246         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
21247         Add prettified version for \\Bbb{Q}.
21249 2015-10-06  Artur Malabarba  <bruce.connor.am@gmail.com>
21251         * test/automated/package-test.el (package-test-install-single):
21252         Add a test for bug#21625.
21254 2015-10-06  Aaron Ecay  <aaronecay@gmail.com>
21256         * lisp/emacs-lisp/package.el (package-install): Fix error when pkg is
21257           not a package-desc object.  Also clarify documentation.  (Bug#21625)
21259 2015-10-06  Eli Zaretskii  <eliz@gnu.org>
21261         Fix display of characters adjacent to ZWJ and ZWNJ
21263         * src/bidi.c (bidi_resolve_neutral): Treat all Bn (a.k.a. "control")
21264         characters the same as directional formatting controls.
21265         (bidi_level_of_next_char): Include all Bn characters in rule L1,
21266         as mandated by the UBA.
21268 2015-10-06  Andreas Schwab  <schwab@suse.de>
21270         * src/cmds.c (Fself_insert_command): Don't use XFASTINT on a negative
21271         number.  (Bug#21633)
21273 2015-10-05  Xue Fuqiao  <xfq.free@gmail.com>
21275         * doc/lispref/objects.texi (Window Type): Add a cross reference.
21277         * src/buffer.c (syms_of_buffer): Typo fix.  (Bug#21622)
21279 2015-10-05  Eli Zaretskii  <eliz@gnu.org>
21281         * lisp/language/misc-lang.el (composition-function-table):
21282         Fix entries for Arabic and Syriac.
21284 2015-10-05  Damien Cassou  <damien@cassou.me>
21286         Add first unit tests for auth-source.el
21288         * test/automated/auth-source-tests.el: New file.
21290 2015-10-05  Eli Zaretskii  <eliz@gnu.org>
21292         Remove redundant redisplay code
21294         * src/xdisp.c (redisplay_internal, try_cursor_movement)
21295         (try_window_reusing_current_matrix, try_window_id): Remove
21296         redundant restrictions on redisplay optimizations based on the
21297         frame's 'redisplay' flag.  See
21298         http://osdir.com/ml/general/2015-10/msg02110.html for the relevant
21299         discussions.
21301 2015-10-04  Stefan Monnier  <monnier@iro.umontreal.ca>
21303         * src/xdisp.c (windows_or_buffers_changed): Improve docstring.
21305 2015-10-04  Xue Fuqiao  <xfq.free@gmail.com>
21307         Update tutorials/TUTORIAL.cn
21309         * etc/tutorials/TUTORIAL.cn: Improve translation.
21311 2015-10-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
21313         * src/macfont.m (macfont_encode_char, syms_of_macfont):
21314         Remove unused vars.
21316 2015-10-04  Stefan Merten  <stefan@merten-home.de>
21318         Pull in version numbers from rst.el upstream release.
21320         * lisp/textmodes/rst.el (rst-cvs-header, rst-svn-rev)
21321         (rst-svn-timestamp, rst-official-version)
21322         (rst-official-cvs-rev, rst-package-emacs-version-alist):
21323         Update version numbers.
21325 2015-10-04  Eli Zaretskii  <eliz@gnu.org>
21327         * test/automated/coding-tests.el: New file.
21329 2015-10-04  Michael Albinus  <michael.albinus@gmx.de>
21331         Improve XEmacs compatibility of Tramp
21333         * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
21334         Declare if it doesn't exist.
21335         (file-remote-p): Remove defalias, which was necessary for GNU Emacs 21.
21336         (redisplay): Make it an alias if it doesn't exist.
21338         * lisp/net/tramp.el (tramp-get-remote-tmpdir): Don't use
21339         `file-remote-p' (due to XEmacs compatibility).
21341         * lisp/net/trampver.el (locate-dominating-file)
21342         (tramp-compat-replace-regexp-in-string): Autoload.
21343         (tramp-repository-get-version): Do not dupe byte-compiler.
21345 2015-09-02  K. Handa  <handa@gnu.org>
21347         fix for the case that M17N_FLT_USE_NEW_FEATURE is not defined
21349         * src/ftfont.c (ftfont_drive_otf) [not M17N_FLT_USE_NEW_FEATURE]:
21350         Adjusted for the change of type of elements in the array
21351         MFLTGlyphString.glyphs.
21353 2015-10-04  Eli Zaretskii  <eliz@gnu.org>
21354             Michael Heerdegen  <michael_heerdegen@web.de>
21356         shr: fix too long lines in rendered buffers (Bug#21012)
21358         * lisp/net/shr.el (shr-insert-document, shr-fill-text):
21359         Correct calculation of available width.
21360         (shr-find-fill-point): Don't overflow window edge if shr-kinsoku-shorten
21361         is nil.
21363 2015-10-04  Vincent Belaïche  <vincentb1@users.sourceforge.net>
21365         Restore blank line before next section, erroneously erased
21366         in my previous commit
21368         * etc/compilation.txt (symbol ant): Add an additional trailing blank
21369         line to this section, so that there are two of them immediately before
21370         the next section.
21372 2015-10-04  Vincent Belaïche  <vincentb1@users.sourceforge.net>
21374         Support MSW filename style for ant compilation error regexp
21376         * etc/compilation.txt (symbol ant):
21377         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
21378         Support MSW filename style.
21380 2015-10-03  Paul Eggert  <eggert@cs.ucla.edu>
21382         * nt/INSTALL: Minor spelling and quote fixes.
21384         * lisp/ibuffer.el: Fix docstring length (Bug#21541).
21386 2015-10-03  Simen Heggestøyl  <simenheg@gmail.com>
21388         Maintain ordering of JSON object keys by default
21390         * lisp/json.el (json-object-type): Mention order handling in doc-string.
21391         (json--plist-reverse): New utility function.
21392         (json-read-object): Maintain ordering for alists and plists.
21393         (json-pretty-print): Ensure that ordering is maintained.
21395         * test/automated/json-tests.el (test-json-plist-reverse): New test for
21396         `json--plist-reverse'.
21397         (json-read-simple-alist): Update test to accommodate for changes in
21398         `json-read-object'.
21400         * etc/NEWS: Document the new behavior of the pretty printing functions.
21402 2015-10-03  Andreas Schwab  <schwab@linux-m68k.org>
21404         * src/coding.c (complement_process_encoding_system): Revert last change.
21406 2015-10-03  Ulf Jasper  <ulf.jasper@web.de>
21408         * admin/MAINTAINERS: Add entry for Ulf Jasper.
21410 2015-10-03  Xue Fuqiao  <xfq.free@gmail.com>
21412         Doc fix for `defmacro'
21414         * doc/lispref/objects.texi (Macro Type): `defmacro' is a macro now.
21416 2015-10-03  Andreas Schwab  <schwab@linux-m68k.org>
21418         More validatation of coding systems
21420         * src/fileio.c (Finsert_file_contents): Remove redundant
21421         coding-system check.
21422         (choose_write_coding_system): Likewise.
21423         * src/coding.c (complement_process_encoding_system): Check argument
21424         for valid coding system.
21426 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
21428         Avoid crashes in coding_inherit_eol_type
21430         * src/coding.c (coding_inherit_eol_type): Check the validity of
21431         the arguments.  Suggested by Andreas Schwab <schwab@linux-m68k.org>.
21432         (Bug#21602)
21434 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
21436         More validatation of coding system in 'write-region'
21438         * src/coding.c (choose_write_coding_system): More validation of
21439         coding-system from various sources.  Suggested by Andreas Schwab
21440         <schwab@linux-m68k.org>.  (Bug#21602)
21442 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
21444         Avoid crashes due to invalid coding-system
21446         * src/fileio.c (choose_write_coding_system)
21447         (Finsert_file_contents): Check validity of coding-system-for-write
21448         and coding-system-for-read bound by the caller.  (Bug#21602)
21450 2015-10-03  Tassilo Horn  <tsdh@gnu.org>
21452         Adapt to new prettify-symbols-unprettify-at-point default
21454         * etc/NEWS: Mention that unprettication of symbol at point is off
21455         by default.
21457 2015-10-03  Tassilo Horn  <tsdh@gnu.org>
21459         Revert my two recent process.c changes
21461         Revert "Improve last commit to process.c" and "Remove callback-handled
21462         channels from Available set" because they did not fix bug#21313.
21464         This reverts commits bfa1aa8e2bdaf14adbbf1e9e824051d3f740694c and
21465         27f871907cc24f33a7d12ac3a4ab71a88f0bc554.
21467 2015-10-02  Markus Triska  <triska@metalevel.at>
21469         * lisp/progmodes/prolog.el: Update and extend operator table.
21470         (prolog-smie-grammar): Add multifile, public etc.
21472 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
21474         Allow autogen even when Git is not installed
21476         * autogen.sh: Test ‘git status’ before trying to use Git.
21478 2015-10-02  Stefan Monnier  <monnier@iro.umontreal.ca>
21480         * lisp/vc/vc-git.el (vc-git-region-history): Handle local changes.
21481         Adjust lto/lfrom when we have uncommitted changes.
21483 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
21485         Fix problems found by clang 3.5.0
21487         * src/cmds.c (Fdelete_char): Don’t assume XINT returns int.
21488         * src/font.c (font_parse_family_registry):
21489         Use &"str"[X] instead of "str"+X, to pacify clang -Wstring-plus-int.
21491 2015-10-02  Eli Zaretskii  <eliz@gnu.org>
21493         * nt/INSTALL: Update instructions for running autogen.sh.
21495         * nt/INSTALL: Point to ezwinports for libXpm binaries.
21497 2015-10-02  Daniel Colascione  <dancol@dancol.org>
21499         Fix winner in cl-lib not loaded case
21501         * lisp/winner.el (winner-change-fun): Don't use cl-lib functions
21502         without requiring CL
21504 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
21506         Fix a few problems with directed quotes
21508         This is in response to a problem report by Kaushal Modi in:
21509         http://bugs.gnu.org/21588#25
21510         * lisp/cedet/mode-local.el (describe-mode-local-overload):
21511         * lisp/emacs-lisp/bytecomp.el (byte-compile-fix-header):
21512         * lisp/info-xref.el (info-xref-check-all-custom):
21513         * lisp/mail/emacsbug.el (report-emacs-bug-hook):
21514         Prefer directed to undirected single quotes in diagnostics.
21516 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
21518         Revert "Attempt to fix slow redisplay caused by last changes"
21520         * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
21521         (try_cursor_movement): Don't relax requirements for redisplay
21522         optimizations for the selected frame.  (Bug#21597)
21524         This reverts commit c4c1fb97727ff52bcfa83ad5ed94a64a93d12e59.
21526 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
21528         Fix slow redisplay when daemon frame exists
21530         * src/xdisp.c (redisplay_internal): Don't consider daemon frames
21531         when looking for frames that need to be redisplayed.  (Bug#21597)
21533 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
21535         Attempt to fix slow redisplay caused by last changes
21537         * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
21538         (try_cursor_movement): Relax requirements for redisplay
21539         optimizations for the selected frame.  (Bug#21597)
21541 2015-10-01  Stephen Leake  <stephen_leake@stephe-leake.org>
21543         * src/dired.c (Ffile_name_completion, Ffile_name_all_completions):
21544         Improve doc string.
21546 2015-10-01  Stephen Leake  <stephen_leake@stephe-leake.org>
21548         * lisp/minibuffer.el (minibuffer-completion-help):
21549         Set default base-size, in case completion table does not set it.
21551 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
21553         Fix GUD display of GDB output with non-ASCII text
21555         * lisp/progmodes/gdb-mi.el (gdb-mi-decode-strings): New defcustom.
21556         (gdb-mi-decode): New function.
21557         (gud-gdbmi-marker-filter): If gdb-mi-decode-strings is non-nil,
21558         decode octal escapes in GDB output.  (Bug#21572)
21560 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
21562         * nt/INSTALL: Document where to find XPM support files.
21564 2015-10-01  Tassilo Horn  <tsdh@gnu.org>
21566         Un- and re-prettification are not exclusive
21568         * lisp/progmodes/prog-mode.el (prettify-symbols--post-command-hook):
21569         Re-apply prettification to previous symbol also when unprettifying
21570         next one.
21572 2015-10-01  Tassilo Horn  <tsdh@gnu.org>
21574         Don't unprettify symbol at point by default
21576         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
21577         Default to disabled (nil).
21579 2015-09-30  Artur Malabarba  <bruce.connor.am@gmail.com>
21581         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
21582         Support unprettifying when point is after a symbol.
21584         * etc/NEWS: Document `prettify-symbols-unprettify-at-point'.
21586 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
21588         Avoid assertion violations in push_prefix_prop
21590         * src/xdisp.c (push_prefix_prop): Avoid assertion violations when
21591         a line that has a line-prefix defined starts with an image.  (Bug#21428)
21593 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
21595         Disable some display optimizations when frames need redisplay
21597         These optimizations were previously disabled by the
21598         windows_or_buffers_changed flag, which now is not set
21599         when only some frames need to be redrawn.
21600         * src/xdisp.c (redisplay_internal): Redisplay any frame whose
21601         'redisplay' flag is set.
21602         (try_window_reusing_current_matrix, try_window_id)
21603         (try_cursor_movement): Disable these optimizations when the
21604         frame's 'redisplay' flag is set.
21606 2015-09-30  Tassilo Horn  <tsdh@gnu.org>
21608         Don't modify buffer by unprettification
21610         * lisp/progmodes/prog-mode.el (prettify-symbols--compose-symbol):
21611         (prettify-symbols--post-command-hook, prettify-symbols-mode): Don't
21612         modify buffer when setting/removing custom prettify-symbols-start/end
21613         text properties.  Add them to font-lock-extra-managed-props, too.
21615 2015-09-30  Stefan Monnier  <monnier@iro.umontreal.ca>
21617         Try to avoid redisplaying all frames when creating a new one
21619         * src/xfns.c (x_set_menu_bar_lines, x_change_tool_bar_height):
21620         * src/xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
21621         (Finternal_set_lisp_face_attribute, update_face_from_frame_parameter):
21622         * src/frame.c (x_set_screen_gamma): Set the specific frame's
21623         `redisplay' bit rather than windows_or_buffers_changed.
21625         * src/window.c (apply_window_adjustment): Remove redundant setting of
21626         windows_or_buffers_changed.
21628         * src/xdisp.c (redisplay_internal): Set the specific frame's
21629         `redisplay' bit rather than update_mode_lines in response to
21630         cursor_type_changed.
21631         (syms_of_xdisp): Use hash-tables for redisplay_*_cause tables.
21632         (AINC): Adjust accordingly.
21634 2015-09-30  Tassilo Horn  <tsdh@gnu.org>
21636         Implement unprettification of symbol at point
21638         * lisp/progmodes/prog-mode.el: Implement feature for unprettifying the
21639         symbol at point.
21640         (prettify-symbols--current-symbol-bounds): New variable.
21641         (prettify-symbols--post-command-hook): New function.
21642         (prettify-symbols-unprettify-at-point): New defcustom.
21643         (prettify-symbols-mode): Use it.
21644         (prettify-symbols--compose-symbol): Use them.
21646 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
21648         * src/macfont.m (mac_font_descriptor_supports_languages):
21649         Regard "zh" as synonym of "zh-Hans".
21651 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
21653         Work around crash when displaying etc/HELLO on OS X 10.11
21655         * src/macfont.m (mac_font_get_weight)
21656         (mac_font_descriptor_get_adjusted_weight): New functions.
21657         (macfont_store_descriptor_attributes): Adjust weight.
21659 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
21661         * src/macfont.m: Fix compilation with USE_CT_GLYPH_INFO.
21663 2015-09-30  Nicolas Petton  <nicolas@petton.fr>
21665         * lisp/arc-mode.el (archive-rar-summarize): Better alignment
21666         of the columns.
21668 2015-09-30  Nicolas Petton  <nicolas@petton.fr>
21670         Use unar and lsar to handle RAR archives in arc-mode
21672         * lisp/arc-mode.el (archive-rar-extract, archive-extract-by-file): Rely
21673         on unar and lsar instead of unrar-free for RAR archives (bug#17663).
21675 2015-09-30  Wieland Hoffmann  <themineo@gmail.com>  (tiny change)
21677         Clarify :create in auth-source's docs
21679         * lisp/gnus/auth-source.el (auth-source-search):
21680         Clarify :create's meaning.
21682 2015-09-30  Phil Sainty  <psainty@orcon.net.nz>
21684         Avoid empty -path arguments in rgrep
21686         * lisp/progmodes/grep.el (rgrep-default-command): Remove nil from
21687         the list produced according to grep-find-ignored-directories,
21688         before passing it to Find/Grep invocation.  (Bug#21548)
21690 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
21692         Clarify documentation of pos-visible-in-window-p
21694         * src/window.c (Fpos_visible_in_window_p): Clarify the meaning of
21695         t for POS.  See
21696         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg01040.html
21697         for the original report.
21699         * doc/lispref/windows.texi (Window Start and End): Clarify the
21700         meaning of t for the POSITION argument of pos-visible-in-window-p.
21702 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
21704         * lisp/progmodes/prolog.el: Fix various indentation cases.
21705         (prolog-operator-chars): New const (add \\).
21706         (prolog-smie-forward-token, prolog-smie-backward-token): Use it.
21707         (prolog-smie-rules): Add rules according to bug#21526.
21709 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
21711         * lisp/progmodes/sh-script.el: Old "dumb" continued line indent.
21712         (sh-indent-after-continuation): Add new value `always' (bug#17620)
21713         (sh-smie-sh-rules): Remove old handling of continued lines.
21714         (sh-smie--indent-continuation): New function.
21715         (sh-set-shell): Use it.
21717 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
21719         * lisp/progmodes/octave.el: Use grammar more; Handle enumeration fun.
21720         Remove redundant :group keyword args.
21721         (octave-begin-keywords, octave-else-keywords, octave-end-keywords):
21722         Remove variables.
21723         (octave-operator-table, octave-smie-bnf-table): Use let-when-compile to
21724         turn them into compile-time variables.
21725         Auto-generate the "foo ... end" rules from the "foo ... endfoo" rules.
21726         Add rules for break, continue, return, global, and persistent.
21727         Refine the rule for "until".
21728         (octave-smie--funcall-p, octave-smie--end-index-p)
21729         (octave-smie--in-parens-p): New functions.
21730         (octave-smie-backward-token, octave-smie-forward-token): Use them to
21731         distinguish the "enumeration" function and the "end" index from
21732         their corresponding keywords.
21733         (octave--block-offset-keywords): New constant.
21734         (octave-smie-rules): Use it.  Adjust rules for new global/persistent
21735         parsing.
21736         (octave-reserved-words): Redefine using octave-smie-grammar.
21737         (octave-font-lock-keywords): Use octave-smie--funcall-p and
21738         octave-smie--end-index-p.
21740 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
21742         * lisp/emacs-lisp/lisp-mode.el (let-when-compile): Work like let*.
21744 2015-09-29  Eli Zaretskii  <eliz@gnu.org>
21746         * nt/INSTALL: Remove references to GTK site.
21747         That site no longer offers Windows downloads.
21749 2015-09-29  Eli Zaretskii  <eliz@gnu.org>
21751         * nt/INSTALL: Add instructions for installing Git.
21753 2015-09-29  Katsumi Yamaoka  <yamaoka@jpl.org>
21755         * lisp/net/shr.el (shr-colorize-region): Allow 88-color tty to
21756         use colors.  Suggested by Eli Zaretskii.
21758 2015-09-28  Katsumi Yamaoka  <yamaoka@jpl.org>
21760         * lisp/net/shr.el (shr-colorize-region): Don't do it on a system
21761         not supporting 256 above colors (bug#21557).
21763 2015-09-28  Dmitry Gutov  <dgutov@yandex.ru>
21765         Revert "Don't rely on defaults in decoding UTF-8 encoded Lisp files"
21767         This reverts commit db828f62f6f17414fbbc3206dac123dc73dd6055.
21769 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
21771         Add documentation for seq.el
21773         * doc/lispref/sequences.texi: Add documentation regarding extending
21774         seq.el, as well as missing documentation for seq-elt, seq-length, seq-p,
21775         seq-do and seq-map.
21777 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
21779         Better documentation for seq-some
21781         * doc/lispref/sequences.texi:
21782         * lisp/emacs-lisp/seq.el: Update the documentation of seq-some to
21783         guarantee that the returned value is the first non-nil value that
21784         resulted from applying the predicate.
21786 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
21788         * lisp/arc-mode.el: Sharp-quote function arguments.
21790 2015-09-28  Eli Zaretskii  <eliz@gnu.org>
21792         Avoid redisplay error in ediff-regions-wordwise
21794         * lisp/vc/ediff-util.el
21795         (ediff-clone-buffer-for-region-comparison): Make sure the mark is
21796         set before activating it.  (Bug#21567)
21798 2015-09-28  Eli Zaretskii  <eliz@gnu.org>
21800         Another attempt to fix crashes due to prematurely freed faces
21802         * src/xdisp.c (redisplay_internal): Inhibit freeing of realized
21803         faces for as long as we might have desired matrices that reference
21804         those faces.  (Bug#21428)
21806 2015-09-28  Tassilo Horn  <tsdh@gnu.org>
21808         Add auctex development list email address
21810 2015-09-28  Tassilo Horn  <tsdh@gnu.org>
21812         * admin/MAINTAINERS: Add entries for AUCTeX team and myself.
21814 2015-09-28  Arash Esbati  <esbati@gmx.de>  (tiny change)
21816         Improve wrapfig package support and caption parsing
21818         * lisp/textmodes/reftex-vars.el (reftex-label-alist-builtin):
21819         Correct description string and add wraptable environment.
21820         (reftex-default-context-regexps): Improve caption regexp.
21822 2015-09-28  Anders Lindgren  <andlind@gmail.com>
21824         Respect value of frame_resize_pixelwise when handling fullscreen state
21826         * src/nsterm.m (handleFS): Respect frame_resize_pixelwise when
21827         setting size increments.
21829 2015-09-27  Michael Albinus  <michael.albinus@gmx.de>
21831         * src/gfilenotify.c (Fgfile_add_watch): Cleanup temporary variable.
21833 2015-09-27  Simen Heggestøyl  <simenheg@gmail.com>
21835         Add prettify-symbols-alist for js-mode
21837         * lisp/progmodes/js.el (js--prettify-symbols-alist): New defconst.
21838         (js-mode): Use it.
21840 2015-09-27  Eli Zaretskii  <eliz@gnu.org>
21842         * nt/subdirs.el: File deleted (no longer used).
21844 2015-09-26  Alan Mackenzie  <acm@muc.de>
21846         Fix follow-scroll-up/down, making them replacements for scroll-up/down
21848         1. Allow point to move between follow windows in scroll operations.
21849         2. Fix bug where `right-char' just before EOB caused spurious scrolling,
21850         when EOB was isolated in the last follow window.
21852         * lisp/follow.el (follow-fixed-window): New variable.
21853         (follow-get-scrolled-point): New function.
21854         (follow-scrol-up, follow-scroll-down): Add autoload cookies.
21855         Reformulate the code.  Put `scroll-command' properties on the functions.
21856         Correct minor errors in ...-down's doc string and code.
21857         (follow-calc-win-end): Amend incomplete doc string.  Use
21858         `pos-visible-in-window-p' to check whether EOB is in the window.
21859         (follow-estimate-first-window-start): Correct an off-by-1 error.
21860         (follow-adjust-window): Add handling for explicit scrolling operations.
21862 2015-09-26  Paul Eggert  <eggert@cs.ucla.edu>
21864         * admin/MAINTAINERS: Add self, plus list some more files
21865         sans maintaners.
21867 2015-09-26  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
21869         New DWIM commands for changing letter-case
21871         * lisp/simple.el (upcase-dwim, downcase-dwim, capitalize-dwim):
21872         New functions.  (Bug#21501)
21874 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
21876         * etc/PROBLEMS: Document problems with pasting on MS-Windows.
21878 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
21880         Make face realization be more frame-specific
21882         * src/frame.h (struct f): New flag face_change.
21883         * src/xfaces.c (Finternal_make_lisp_face)
21884         (Finternal_copy_lisp_face, Finternal_set_lisp_face_attribute)
21885         (update_face_from_frame_parameter): Set the face_change flag only
21886         for the frame whose faces are affected.
21887         * src/xdisp.c (init_iterator): If a frame's face_change flag is
21888         set, free faces only on that frame.
21889         (redisplay_internal): Disable "display optimization 1" if the
21890         frame's face_change flag is set.
21891         (redisplay_window): Don't allow skipping a window's redisplay if
21892         its frame's face_change flag is set.
21893         * src/frame.c (x_set_screen_gamma): Instead of calling
21894         Fclear_face_cache, call clear_face_cache and set
21895         windows_or_buffers_changed to a non-zero value.  This avoids
21896         setting the global face_change flag that triggers face realization
21897         on all frames and thorough redisplay of all of them.
21899         * lisp/term/tty-colors.el (tty-register-default-colors): Don't
21900         clear face cache if the selected frame is a GUI frame.
21902 2015-09-26  Tassilo Horn  <tsdh@gnu.org>
21904         Remove font-latex specific check
21906         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
21907         Use syntax-ppss data to identify verbatim contents.
21909 2015-09-25  Tassilo Horn  <tsdh@gnu.org>
21911         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
21912         Fix some false negatives.
21914 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
21916         Reorder Windows version in Emacs manifests
21918         * nt/emacs-x64.manifest:
21919         * nt/emacs-x86.manifest: Reorder Windows version from lowest to
21920         highest.
21922 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
21924         Update Emacs manifest files for Windows 10
21926         * nt/emacs-x86.manifest:
21927         * nt/emacs-x64.manifest: Declare compatibility with Windows 10.
21929 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
21931         Avoid non-ASCII decoding errors in C src files
21933         * src/nsterm.m:
21934         * src/lisp.h:
21935         * src/editfns.c:
21936         * src/doprnt.c: Add 'coding' cookies -- these files include
21937         Unicode characters and should be decoded as UTF-8.
21939 2015-09-25  Alan Mackenzie  <acm@muc.de>
21941         Resurrect edebug-set-initial-mode, repurposing it to set the global mode
21943         * lisp/emacs-lisp/edebug.el (edebug-initial-mode-alist): Uncomment, and
21944         amend to match current modes and functions.
21945         (edebug-set-initial-mode): Uncomment and change from setting a defun's
21946         `edebug-initial-mode''s property to setting the variable
21947         `edebug-initial-mode'.
21948         (top level): Create new binding C-x C-a C-m for
21949         `edebug-set-initial-mode'.
21951         * doc/lispref/edebug.texi (Edebug Execution Modes): Document
21952         `edebug-set-initial-mode' and its new key binding.
21953         (Edebug Options): Mention the new command in the pertinent place.
21955         * etc/NEWS: Write entry for this change.
21957 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
21959         Avoid non-ASCII decoding errors in Texinfo files
21961         * doc/misc/tramp.texi:
21962         * doc/lispref/strings.texi:
21963         * doc/lispref/positions.texi:
21964         * doc/lispref/help.texi:
21965         * doc/lispref/functions.texi:
21966         * doc/lispintro/emacs-lisp-intro.texi:
21967         * doc/emacs/text.texi:
21968         * doc/emacs/modes.texi:
21969         * doc/emacs/mini.texi:
21970         * doc/emacs/display.texi:
21971         * doc/emacs/custom.texi:
21972         * doc/emacs/basic.texi: Add 'coding' cookies -- these files use
21973         Unicode characters and should be decoded as UTF-8.
21974         * doc/lispref/frames.texi (Size Parameters): Don't use a non-ASCII
21975         apostrophe unnecessarily.
21977 2015-09-25  Paul Eggert  <eggert@cs.ucla.edu>
21979         Merge from gnulib
21981         This incorporates:
21982         2015-09-25 c-ctype: rewrite to use inline functions
21983         2015-09-24 maint: add coding cookies to non-ASCII sources
21984         2015-09-24 gitlog-to-changelog: trim only trailing whitespaces
21985         * build-aux/gitlog-to-changelog, doc/misc/texinfo.tex:
21986         * lib/acl-internal.c, lib/acl-internal.h, lib/c-ctype.c:
21987         * lib/c-ctype.h, lib/get-permissions.c, lib/qcopy-acl.c:
21988         * lib/set-permissions.c:
21989         Copy from gnulib.
21991 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
21993         Update publicsuffix.txt from upstream
21995         * etc/publicsuffix.txt: Update from
21996         https://publicsuffix.org/list/effective_tld_names.dat
21997         dated 2015-09-24 17:29:21 UTC.
21999 2015-09-24  Eli Zaretskii  <eliz@gnu.org>
22001         Prevent timers from messing up TTY menus
22003         * src/term.c (tty_menu_activate): Inhibit redisplay for as long as
22004         the TTY menu is open.  (Bug#21530)
22006 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
22008         No need to mention K&R C in c-mode intro
22010 2015-09-24  Stefan Monnier  <monnier@iro.umontreal.ca>
22012         Fix recent bootstrap problems
22014         * src/syntax.c (parse_sexp_propertize): Fix last fix.
22015         * lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): Fix paren typo.
22016         * lisp/emacs-lisp/lisp-mode.el: Require cl-lib for cl-progv.
22018 2015-09-24  Michael Albinus  <michael.albinus@gmx.de>
22020         * src/gfilenotify.c (Fgfile_add_watch): Decrease polling rate.
22022 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
22024         Properly quote nested xml comments (Bug#6267) (Bug#20001)
22026         * lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): New function.
22027         (nxml-mode): Set comment-quote-nested-function.
22029 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
22031         Allow major-modes full control over quoting nested comments
22033         * lisp/newcomment.el (comment-quote-nested-function): New variable.
22034         (comment-quote-nested-default): New function.
22035         (comment-quote-nested): Use `comment-quote-nested-function'.
22037 2015-09-23  Paul Eggert  <eggert@cs.ucla.edu>
22039         Prefer CALLN in a few more places
22041         * src/macfont.m (macfont_set_family_cache):
22042         * src/nsterm.m (append2):
22043         * src/xterm.c (x_cr_export_frames):
22044         Prefer CALLN to allocating the arg arrays by hand.
22046 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
22048         Adapt file-notify-test02-events test case
22050         * test/automated/file-notify-tests.el (file-notify-test02-events):
22051         Create a new watch for every test.
22053 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
22055         Continue gfilenotify.c implementation of missing parts
22057         * lisp/filenotify.el (file-notify-add-watch): Append `flags' to
22058         `gfile-add-watch' call.
22059         (file-notify-rm-watch): Modify `file-notify-descriptors' only
22060         after calling the low level functions.
22062         * src/gfilenotify.c (dir_monitor_callback): Check, whether
22063         event_type is expected.
22064         (Fgfile_add_watch): Allow also `change'and `attribute-change' for FLAGS.
22065         (Fgfile_rm_watch): Fix typo.
22066         (syms_of_gfilenotify): Declare Qchange and Qattribute_change.
22068 2015-09-23  Stefan Monnier  <monnier@iro.umontreal.ca>
22070         * src/syntax.c (parse_sexp_propertize): Handle spurious
22071         e_property_truncated flag.
22072         (update_syntax_table_forward): Remove invalid assertion.
22074 2015-09-23  Eli Zaretskii  <eliz@gnu.org>
22076         * src/xdisp.c (produce_stretch_glyph): Support ':relative-width'
22077         space display spec on text-mode terminals, by calling
22078         PRODUCE_GLYPHS instead of x_produce_glyphs.  Remove the
22079         HAVE_WINDOW_SYSTEM guards from the supporting code, as well as the
22080         test for a GUI frame.
22082 2015-09-23  Oleh Krehel  <ohwoeowho@gmail.com>
22084         Move let-when-compile to lisp-mode.el
22086         This fixes the bootstrapping problem of `let-when-compile' using
22087         `cl-progv' while being in subr.el (i.e. before cl stuff was loaded).
22089 2015-09-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
22091         * lisp/url/url-http.el (url-http-parse-headers): Do not
22092         automatically include Authorization header in redirect.
22093         (Bug#21350)
22095 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
22097         Clarify documentation of ':relative-width'
22099         * doc/lispref/display.texi (Specified Space): Document that
22100         ':relative-width' is only supported on GUI frames.
22102 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
22104         Fix 'current-column' in presence of :relative-width
22106         * src/indent.c (check_display_width): Support ':relative-width'
22107         in a display spec that specifies a stretch glyph.  (Bug#21533)
22109 2015-09-22  Ken Manheimer  <ken.manheimer@gmail.com>
22111         Reformat the pdbtrack remote-file fix ChangeLog.2 entry
22113         ... to conform better to CONTRIBUTE guidelines.
22115 2015-09-22  Stefan Monnier  <monnier@iro.umontreal.ca>
22117         * lisp/progmodes/prolog.el: Fix indentation of empty line
22119         * lisp/emacs-lisp/smie.el (smie-rules-function): Document new
22120         `empty-line-token' element.
22121         (smie-indent-empty-line): New function.
22122         (smie-indent-functions): Add it.
22124         * lisp/progmodes/prolog.el (prolog-smie-rules): Fix :list-intro
22125         behavior and use the new `empty-line-token' element (bug#21526).
22126         (prolog-mode-variables): Fix comment-start-skip setting to match
22127         comment-start.
22129         * test/indent/prolog.prolog: Add nested indentation tests.
22131         * lisp/newcomment.el (comment-normalize-vars): Fix default value of
22132         comment-start-skip not to misuse submatch 1.
22134 2015-09-22  Alan Mackenzie  <acm@muc.de>
22136         Make description of `edebug-initial-mode' user friendly
22138         Fixes bug#21365.
22140         * doc/lispref/edebug.texi (Edebug Execution Modes): Change the
22141         description of `edebug-initial-mode' from that of its implementation
22142         to that of its visual effect and use.  Move the paragraph higher up.
22144 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
22146         lisp/progmodes/gud.el (gud-format-command): Fix last commit
22148         * lisp/progmodes/gud.el (gud-format-command): Don't use Tramp internal
22149         functions 'tramp-file-name-localname' and 'tramp-dissect-file-name'.
22151 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
22153         Improve last commit to process.c
22155 2015-09-22  Michael Albinus  <michael.albinus@gmx.de>
22157         Implement gfile-valid-p
22159         * lisp/filenotify.el (file-notify-callback): Fix typo.
22160         (gfile-valid-p): Remove defalias.
22162         * src/gfilenotify.c (dir_monitor_callback): Cancel the monitor if
22163         the file or directory to be watched is deleted.
22164         (Fgfile_add_watch): Make watch_object a triple.
22165         (Fgfile_rm_watch): Check, whether watch is cancelled already.
22166         (Fgfile_valid_p): New defun.
22167         (syms_of_gfilenotify): Declare Sgfile_valid_p.
22169 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
22171         Remove callback-handled channels from Available set
22173         * src/process.c (wait_reading_process_output): Remove channel from
22174         Available set if it is handled by a callback, e.g., dbus or
22175         inotify (bug#21313).
22177 2015-09-21  Mark Oteiza  <mvoteiza@udel.edu>
22179         Use lunate epsilon for TeX \epsilon
22181         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
22182         Add \varepsilon using GREEK SMALL LETTER EPSILON, and change
22183         \epsilon to use GREEK LUNATE EPSILON SYMBOL
22185 2015-09-21  Stefan Monnier  <monnier@iro.umontreal.ca>
22187         * lisp/progmodes/prolog.el: Fix nested electric if-then-else
22189         * lisp/progmodes/prolog.el (prolog-find-unmatched-paren): Use innermost
22190         rather than outermost paren (bug#21526).
22192 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
22194         Improve git diff hunk headers for .el, .texi
22196         Problem reported by Alan Mackenzie in:
22197         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00826.html
22198         * .gitattributes (*.el, *.texi): New patterns.
22199         * autogen.sh: Configure diff.elisp.xfuncname and
22200         diff.texinfo.xfuncname if using Git.
22202 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
22204         Don't rely on defaults in decoding UTF-8 encoded Lisp files
22206         * lisp/replace.el:
22207         * lisp/textmodes/rst.el:
22208         * lisp/whitespace.el: Add an explicit UTF-8 encoding tag.
22210 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
22212         Clarify or replace a few \u escapes
22214         * doc/lispref/nonascii.texi (Character Properties)
22215         More-detailed commentary for \u escapes.
22216         * lisp/progmodes/python.el (python--prettify-symbols-alist):
22217         * lisp/replace.el (query-replace-from-to-separator):
22218         * lisp/textmodes/rst.el (rst-bullets, rst-re-alist-def)
22219         (rst-mode-syntax-table):
22220         * lisp/whitespace.el (whitespace-display-mappings):
22221         Prefer actual character to \u escape when this makes the code
22222         easier to follow in the usual case where Unicode chars can be
22223         displayed.
22225 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
22227         Pacify GCC -Wmaybe-uninitialized in xdisp.c
22229         * src/xdisp.c (face_before_or_after_it_pos): Use do-while rather
22230         than while loop to avoid GCC -Wmaybe-uninitialized diagnostic with
22231         charpos.  The loop should always execute at least once anyway.
22233 2015-09-21  Tassilo Horn  <tsdh@gnu.org>
22235         Signal error on invalid regexp
22237         * lisp/textmodes/reftex-cite.el (reftex-extract-bib-entries):
22238         Signal an error when the user tries searching with a regexp
22239         matching the empty string.
22241 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
22243         Another fix of file-notify-tests for w32notify
22245         * test/automated/file-notify-tests.el (file-notify-test02-events):
22246         Further adaptation for w32notify: reduce the number of expected
22247         'changed' events.  (Bug#21435)
22249 2015-09-21  Michael Albinus  <michael.albinus@gmx.de>
22251         Adapt tests and manual for w32notify
22253         * doc/lispref/os.texi (File Notifications): w32notify does not
22254         send `attribute-changed' events.
22256         * test/automated/file-notify-tests.el (file-notify--test-with-events):
22257         Simplify parameters.  Adapt all callees.
22258         (file-notify-test02-events): w32notify does not send
22259         `attribute-changed' events.
22260         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
22261         Do not skip in case of w32notify.  Simply ignore this part of the test.
22263 2015-09-21  Dima Kogan  <dima@secretsauce.net>
22265         Fix setting breakpoints when remote-debugging
22267         * lisp/progmodes/gud.el (gud-format-command): Send localized file
22268         names to the debugger running on the remote.  (Bug#13304)
22270 2015-09-21  Nicolas Petton  <nicolas@petton.fr>
22272         Better docstring and parameter name for seq-find
22274         * lisp/emacs-lisp/seq.el (seq-find): Improve the docstring and rename
22275         the parameter `sentinel' to `default'.
22277         * doc/lispref/sequences.texi (Sequence Functions): Update the
22278           documentation for `seq-find' accordingly.
22280 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
22282         Avoid infinite recursion while displaying box face
22284         * src/xdisp.c (face_before_or_after_it_pos): Fix calculation of
22285         the previous string/buffer character position under bidi
22286         iteration.  (Bug#21428)
22288 2015-09-21  Anders Lindgren  <andlind@gmail.com>
22290         Keep upper edge unchanged when changing size of NS frame
22292         * src/nsterm.m (x_set_window_size): Keep upper frame edge unchanged
22293         (Bug#21415).
22295 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
22297         * lisp/progmodes/prolog.el: Improve handling of if/then/else.
22298         (prolog-smie-rules): Accommodate standard if/then/else special
22299         indentation.
22300         (prolog-mode): Add . to electric-indent-chars.
22301         (prolog-electric--if-then-else): Re-indent the line before adding space
22302         after the new char (bug#21526).
22304 2015-09-20  Mark Oteiza  <mvoteiza@udel.edu>
22306         Add prettify symbols to python-mode
22308         * lisp/progmodes/python.el (python-prettify-symbols-alist):
22309         New variable.
22310         (python-mode): Use it
22312 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
22314         * lisp/emacs-lisp/syntax.el (syntax-begin-function): Make obsolete.
22316 2015-09-20  Jostein Kjønigsen  <jostein@secure.kjonigsen.net>  (tiny change)
22318         (compilation-error-regexp-alist-alist): Tone down guile-file
22320         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
22321         Make guile-file a bit less enthusiastic (bug#21496).
22323 2015-09-20  Drew Csillag  <drew@thecsillags.com>
22325         * lisp/progmodes/m4-mode.el (m4-font-lock-keywords):
22326         Fix m4_* highlighting.
22328         * lisp/progmodes/m4-mode.el (m4-font-lock-keywords): Fix recognition
22329         of commands when they have a "m4_" prefix.
22331 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
22333         '.' -> `.' in doc string
22335         * lisp/emacs-lisp/timer.el (run-at-time): In doc string, quote
22336         individual chars with grave quotes instead of straight quotes, as
22337         this works better when they are translated to curved quotes.
22339 2015-09-20  Michael Albinus  <michael.albinus@gmx.de>
22341         Improve file notifications, especially for Tramp
22343         * doc/lispref/files.texi (Magic File Names):
22344         Mention `file-notify-valid-p'.
22346         * doc/lispref/os.texi (File Notifications):
22347         Describe `file-notify-valid-p'.
22349         * etc/NEWS: Add `file-notify-valid-p'.
22351         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-notify-add-watch):
22352         Improve implementation.
22353         (tramp-gvfs-monitor-file-process-filter): Rename from
22354         `tramp-gvfs-file-gvfs-monitor-file-process-filter'.  Delete
22355         process if appropriate.
22357         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
22358         Improve implementation.
22359         (tramp-sh-gvfs-monitor-dir-process-filter): Rename from
22360         `tramp-sh-file-gvfs-monitor-dir-process-filter'.  Delete process
22361         if appropriate.
22362         (tramp-sh-inotifywait-process-filter): Rename from
22363         `tramp-sh-file-inotifywait-process-filter'.  Delete process if
22364         appropriate.
22366         * lisp/net/tramp.el (tramp-handle-file-notify-rm-watch):
22367         Use `delete-process'.
22368         (tramp-handle-file-notify-valid-p): Check also, that file or
22369         directory to be watched still exists.
22371         * test/automated/file-notify-tests.el (file-notify--test-timeout):
22372         New defun.  Use it at all places a timeout is needed.
22373         (file-notify--test-cleanup): Delete directories recursively.
22374         Cleanup also Tramp connections.
22375         (file-notify-test02-events): Add tests for `attribute-change'.
22376         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
22377         Add tests for `file-notify-rm-watch'.
22379 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
22381         Use %s to format strings instead of splicing them
22383         If FOO might contain quotes that are part of a file or variable
22384         name, the quotes should not be translated when showing FOO’s name
22385         in a diagnostic.  So, for example, (message (concat (FOO ": bar")))
22386         is not quite right, as it would translate FOO’s quotes.
22387         Change it to (message "%s: bar" FOO) instead.
22388         * lisp/allout.el (allout-process-exposed):
22389         * lisp/calc/calc-ext.el (calc-do-prefix-help):
22390         * lisp/calc/calc-store.el (calc-store-into):
22391         * lisp/calendar/todo-mode.el (todo-category-completions):
22392         * lisp/cedet/semantic/complete.el (semantic-completion-message):
22393         * lisp/org/ob-latex.el (convert-pdf):
22394         * lisp/org/org-crypt.el (org-crypt-check-auto-save):
22395         * lisp/org/ox-latex.el (org-latex-compile):
22396         * lisp/org/ox-man.el (org-man-compile):
22397         * lisp/org/ox-odt.el (org-odt--export-wrap):
22398         * lisp/org/ox-texinfo.el (org-texinfo-compile):
22399         * lisp/progmodes/ruby-mode.el (ruby-in-ppss-context-p):
22400         * lisp/progmodes/verilog-mode.el (verilog-batch-execute-func)
22401         (verilog-signals-combine-bus, verilog-read-defines)
22402         (verilog-getopt-file, verilog-expand-dirnames)
22403         (verilog-modi-lookup, verilog-modi-modport-lookup-one):
22404         * lisp/term/ns-win.el (ns-spi-service-call):
22405         Use %s to avoid translating quotes of file names etc. in diagnostics.
22407 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
22409         * lisp/progmodes/js.el (js--syntax-begin-function): Remove.
22410         (js-mode): Don't set syntax-begin-function.
22412 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
22414         * lisp/font-lock.el (font-lock-compile-keywords): Don't assume
22415         syntax-begin-function is a symbol.
22417 2015-09-20  Eli Zaretskii  <eliz@gnu.org>
22419         Improve documentation of 'run-at-time'
22420         * lisp/emacs-lisp/timer.el (run-at-time): Improve the doc string.
22421         In particular, don't refer to 'diary-entry-time', because it is
22422         unavailable until diary-lib is loaded.  Also, refer to
22423         'timer-duration-words', not 'timer-duration', as the latter's doc
22424         string says nothing about the accepted strings.
22426 2015-09-19  Jay Belanger  <jay.p.belanger@gmail.com>
22428         * lisp/calc/calc-ext.el (calc-do-prefix-help): Tidy up error message.
22430 2015-09-19  Ken Manheimer  <ken.manheimer@gmail.com>
22432         Repair pdbtrack remote file tracking
22433         * lisp/progmodes/python.el (python-pdbtrack-set-tracked-buffer):
22434         Rectify pdbtrack so it follows transitions from one remote source
22435         file to the next.
22437 2015-09-19  Artur Malabarba  <bruce.connor.am@gmail.com>
22439         * lisp/emacs-lisp/timer.el (run-at-time): Docstring formatting.
22441 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
22443         Adapt vc-src to the old-new vc-checkin API
22444         * lisp/vc/vc-src.el (vc-src-checkin): Accept and ignore an
22445         additional optional parameter.
22447 2015-09-19  Simen Heggestøyl  <simenheg@gmail.com>
22449         Add overflow module to CSS property list
22450         * lisp/textmodes/css-mode.el (css-property-ids): Add properties
22451         from CSS Overflow Module Level 3.
22453 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
22455         Fix documentation of "C-u C-x v v"
22456         * doc/emacs/maintaining.texi (Advanced C-x v v): Make the
22457         documentation of "C-u C-x v v" match what the code does.
22459         Resurrect the ability to specify a revision in vc-next-action
22460         * lisp/vc/vc-bzr.el (vc-bzr-checkin):
22461         * lisp/vc/vc-dav.el (vc-dav-checkin):
22462         * lisp/vc/vc-git.el (vc-git-checkin):
22463         * lisp/vc/vc-hg.el (vc-hg-checkin):
22464         * lisp/vc/vc-mtn.el (vc-mtn-checkin): Accept and silently ignore
22465         an additional optional argument, the revision to checkin.
22466         * lisp/vc/vc-sccs.el (vc-sccs-checkin):
22467         * lisp/vc/vc-cvs.el (vc-cvs-checkin):
22468         * lisp/vc/vc-rcs.el (vc-rcs-checkin): Allow to optionally specify
22469         a revision to checkin.
22470         * lisp/vc/vc.el (vc-next-action): Allow to optionally specify the
22471         revision when checking in files.
22472         See http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00688.html
22473         for the details.
22475 2015-09-18  Wilson Snyder  <wsnyder@wsnyder.org>
22477         * lisp/progmodes/verilog-mode.el (verilog-forward-sexp-function)
22478         (verilog-decls-princ, verilog-modport-princ)
22479         (verilog-modi-modport-lookup-one): Fix checkdoc warnings.
22481 2015-09-17  Jay Belanger  <jay.p.belanger@gmail.com>
22483         Fix the routine for help on Calc's prefixes
22484         * lisp/calc/calc-ext.el (calc-prefix-help-retry): New variable.
22485         (calc-do-prefix-help): Use `read-char' to determine the next Calc
22486         command.
22488 2015-09-17  Stefan Monnier  <monnier@iro.umontreal.ca>
22490         * lisp/font-lock.el (font-lock-beginning-of-syntax-function): Remove.
22491         (font-lock-fontify-block): Don't let-bind it.
22492         (font-lock-compile-keywords): Don't use it.
22493         (font-lock-set-defaults): Don't set it.  Allow the variable alist to
22494         start one slot earlier, instead.
22495         * lisp/emacs-lisp/syntax.el (font-lock-beginning-of-syntax-function):
22496         Don't declare.
22497         (syntax-ppss): Don't use it either.
22498         * lisp/font-core.el (font-lock-defaults): Remove SYNTAX-BEGIN
22499         from docstring.
22500         * doc/emacs/display.texi (Font Lock): Don't mention
22501         font-lock-beginning-of-syntax-function.
22502         * doc/lispref/modes.texi (Font Lock Basics): Update description of
22503         font-lock-defaults.
22504         (Syntactic Font Lock): Remove font-lock-beginning-of-syntax-function.
22505         * lisp/loadhist.el (unload-feature-special-hooks):
22506         Remove font-lock-beginning-of-syntax-function.
22507         * lisp/obsolete/lazy-lock.el (lazy-lock-fontify-region):
22508         * lisp/emacs-lisp/lisp.el (beginning-of-defun-raw): Don't let-bind
22509         font-lock-beginning-of-syntax-function.
22511 2015-09-17  Paul Eggert  <eggert@cs.ucla.edu>
22513         Backslash cleanup in Elisp source files
22514         This patch should not change behavior.  It typically omits backslashes
22515         where they are redundant (e.g., in the string literal "^\$").
22516         In a few places, insert backslashes where they make regular
22517         expressions clearer: e.g., replace "^\*" (equivalent to "^*") with
22518         "^\\*", which has the same effect as a regular expression.
22519         Also, use ‘\ %’ instead of ‘\%’ when avoiding confusion with SCCS IDs,
22520         and similarly use ‘\ $’ instead of ‘\$’ when avoiding confusion with
22521         RCS IDs, as that makes it clearer that the backslash is intended.
22523         Some more minor backslash fixes
22524         * test/automated/compile-tests.el (compile-tests--test-regexps-data):
22525         * test/automated/info-xref.el (info-xref-test-write-file):
22526         Double backslashes in strings.
22528         Fix several backslash typos in Elisp strings
22529         * lisp/calendar/todo-mode.el (todo-files, todo-rename-file)
22530         (todo-find-filtered-items-file, todo-reset-nondiary-marker)
22531         (todo-reset-done-string, todo-reset-comment-string)
22532         (todo-reset-highlight-item):
22533         * lisp/erc/erc-networks.el (erc-networks-alist):
22534         * lisp/gnus/gnus-art.el (gnus-button-handle-library):
22535         * lisp/gnus/gnus-group.el (gnus-read-ephemeral-gmane-group-url):
22536         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
22537         (nntp-telnet-shell-prompt):
22538         * lisp/gnus/spam-report.el (spam-report-gmane-regex):
22539         * lisp/image-dired.el (image-dired-rotate-original):
22540         (image-dired-get-exif-file-name):
22541         * lisp/international/latin1-disp.el (latin1-display-ucs-per-lynx):
22542         * lisp/mail/undigest.el (rmail-digest-parse-rfc1153strict):
22543         * lisp/mh-e/mh-letter.el (mh-file-is-vcard-p):
22544         * lisp/mh-e/mh-mime.el (mh-file-mime-type-substitutions):
22545         * lisp/net/shr-color.el (shr-color->hexadecimal):
22546         * lisp/org/org-bibtex.el (org-bibtex-fields):
22547         * lisp/org/org-docview.el (org-docview-export):
22548         * lisp/org/org-entities.el (org-entities):
22549         * lisp/org/ox-icalendar.el (org-icalendar-cleanup-string):
22550         * lisp/progmodes/cperl-mode.el (cperl-indent-exp):
22551         * lisp/progmodes/ebnf2ps.el (ebnf-file-suffix-regexp)
22552         (ebnf-style-database):
22553         * lisp/progmodes/idlw-help.el (idlwave-do-context-help1):
22554         * lisp/progmodes/ruby-mode.el (ruby-imenu-create-index-in-block):
22555         * lisp/progmodes/sql.el (sql-product-alist):
22556         * lisp/progmodes/verilog-mode.el (verilog-error-regexp-emacs-alist)
22557         (verilog-error-font-lock-keywords)
22558         (verilog-assignment-operator-re):
22559         * lisp/progmodes/vhdl-mode.el (vhdl-compiler-alist):
22560         * lisp/textmodes/reftex-parse.el (reftex-parse-from-file):
22561         * lisp/vc/add-log.el (change-log-version-number-regexp-list):
22562         Fix typo by replacing ‘\’ with ‘\\’ in a string literal.
22563         For example, to get the regular expression ‘\.’ use the string
22564         literal "\\.", not "\." (which is equivalent to ".").
22565         * lisp/emulation/viper-util.el (viper-glob-unix-files):
22566         Remove stray ‘\j’ from string.
22567         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
22568         (nntp-telnet-shell-prompt):
22569         Treat > like $ when matching a shell prompt.
22570         * lisp/progmodes/make-mode.el (makefile-browse):
22571         Properly quote a diagnostic.
22573         Fix minor quoting problems in diagnostics
22574         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
22575         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
22576         Follow text-quoting-style in diagnostic, and quote a file name.
22578 2015-09-17  Eli Zaretskii  <eliz@gnu.org>
22580         * doc/lispref/frames.texi (Cursor Parameters):
22581         Document 'x-stretch-cursor'.
22583 2015-09-16  Paul Eggert  <eggert@cs.ucla.edu>
22585         Omit unnecessary \ before paren in C docstrings
22586         Although \( is needed in docstrings in Elisp code, it is not needed in
22587         docstrings in C code, since C function definitiions do not start with
22588         a parenthesis.  The backslashes made the docstrings a bit harder to
22589         read and to format in columns.  Also, some C docstrings had ( in
22590         column 1 and this did not appear to be causing any problems.  So,
22591         simplify C docstrings by replacing \( with ( and \) with ).
22593         A few more minor quoting fixes in a script and a text file
22595         Minor quoting fixes in scripts and doc
22596         Prefer straight quotes in random script files, as they are not
22597         converted.  Prefer grave quotes in a couple of places in the manual
22598         that were missed earlier, as these quotes are converted.
22600         Minor backslash fixes in manuals and scripts
22601         * Makefile.in (install-arch-indep):
22602         * admin/charsets/compact.awk:
22603         * admin/charsets/gb180302.awk (gb_to_index):
22604         * admin/charsets/gb180304.awk (gb_to_index):
22605         Avoid undefined behavior in Awk regular expression backslashes.
22606         * doc/misc/efaq.texi (Matching parentheses):
22607         Omit unnecessary backslashes.
22608         * doc/misc/gnus-faq.texi (FAQ 5-8):
22609         Avoid undefined behavior in suggested sed backslash usage.
22611         Add -Wswitch to --enable-gcc-warnings
22612         Make --enable-gcc-warnings a bit pickier, by also using -Wswitch.
22613         * configure.ac (WERROR_CFLAGS): Don’t add -Wno-switch.
22614         * lib-src/etags.c (main, consider_token, C_entries):
22615         * src/coding.c (encode_invocation_designation):
22616         * src/data.c (Ftype_of):
22617         * src/eval.c (Fdefvaralias, default_toplevel_binding)
22618         (Fbacktrace__locals, mark_specpdl):
22619         * src/lisp.h (record_xmalloc):
22620         * src/syntax.c (scan_lists, scan_sexps_forward):
22621         * src/window.c (window_relative_x_coord):
22622         * src/xdisp.c (push_it, pop_it):
22623         * src/xterm.c (xg_scroll_callback, x_check_fullscreen):
22624         Error out or do nothing (as appropriate) if a switch statement
22625         with an enum value does not cover all of the enum.
22626         * src/dispextern.h (struct iterator_stack_entry.u.comp):
22627         Remove unused member discovered by using -Wswitch.
22628         * src/lisp.h (record_xmalloc): Add a ‘+ 0’ to pacify -Wswitch.
22629         * src/vm-limit.c (check_memory_limits):
22630         Simplify warning-diagnostic computation by using a table.
22632         etags ‘fatal’ function is now printf-like
22633         * lib-src/etags.c (fatal): Now printf-like.  All callers changed.
22634         Also, now static; not clear why it needed to be extern.
22635         (verror): New function, with most of the old contents of ‘error’.
22636         (fatal, error): Use it.
22638 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
22640         More adaptations in file-notify-tests.el
22641         * test/automated/file-notify-tests.el
22642         (file-notify-test05-dir-validity): Skip for w32notify in
22643         batch-mode.  (Bug#21432)
22645 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
22647         Adapt test in file-notify-tests.el
22648         * test/automated/file-notify-tests.el
22649         (file-notify-test04-file-validity): Skip for w32notify in
22650         batch-mode.  Add test lost last commit.
22652 2015-09-16  Dima Kogan  <dima@secretsauce.net>
22654         winner no longer holds on to dead frames
22655         * lisp/winner.el (winner-change-fun): Cull dead frames.
22656         This prevents a potentially massive memory leak.  See:
22657         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00619.html
22659 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
22661         Use common report_file_notify_error function
22662         * src/fileio.c (report_file_notify_error): New function.
22663         * src/inotify.c (report_inotify_error): Remove function.
22664         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
22665         (Finotify_rm_watch): Use report_file_notify_error.
22666         * src/lisp.h (report_file_notify_error): Declare external function.
22667         * src/w32notify.c (report_w32notify_error): Remove function.
22668         (Fw32notify_add_watch, Fw32notify_rm_watch):
22669         Use report_file_notify_error.
22671 2015-09-16  Jay Belanger  <jay.p.belanger@gmail.com>
22673         Fix documentation.
22674         * doc/misc/calc.texi (Single-Variable Statistics): Fix the wording of
22675         the documentation of the root mean square.
22677 2015-09-16  Martin Rudalics  <rudalics@gmx.at>
22679         Remove tool_bar_redisplayed_once and associated code.
22680         * src/frame.h (tool_bar_redisplayed_once): Remove slot.
22681         * src/frame.c (make_frame, x_set_font): Remove initialization of
22682         f->tool_bar_redisplayed_once.
22683         * src/w32fns.c (x_change_tool_bar_height):
22684         * src/xfns.c (x_change_tool_bar_height): Don't check for
22685         f->tool_bar_redisplayed_once.
22686         * src/xdisp.c (redisplay_internal): Remove handling of
22687         f->tool_bar_redisplayed_once.
22689 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
22691         Restore some of the quoting in the manuals
22692         * doc/lispref/windows.texi (Coordinates and Windows)
22693         (Coordinates and Windows):
22694         * doc/lispref/variables.texi (Lexical Binding)
22695         (File Local Variables):
22696         * doc/lispref/text.texi (Format Properties):
22697         * doc/lispref/symbols.texi (Symbol Components):
22698         * doc/lispref/strings.texi (Creating Strings):
22699         * doc/lispref/sequences.texi (Sequence Functions):
22700         * doc/lispref/searching.texi (Regexp Special, Regexp Search)
22701         (Search and Replace):
22702         * doc/lispref/processes.texi (Bindat Spec):
22703         * doc/lispref/os.texi (Idle Timers):
22704         * doc/lispref/objects.texi (Basic Char Syntax):
22705         * doc/lispref/numbers.texi (Float Basics, Random Numbers):
22706         * doc/lispref/nonascii.texi (Character Properties):
22707         * doc/lispref/modes.texi (Major Mode Conventions, Mode Hooks)
22708         (Mode Line Variables):
22709         * doc/lispref/minibuf.texi (Text from Minibuffer):
22710         * doc/lispref/loading.texi (Autoload):
22711         * doc/lispref/keymaps.texi (Controlling Active Maps):
22712         * doc/lispref/frames.texi (Frame Layout, Size and Position)
22713         (Size Parameters, Implied Frame Resizing):
22714         * doc/lispref/files.texi (Changing Files, Magic File Names):
22715         * doc/lispref/eval.texi (Self-Evaluating Forms):
22716         * doc/lispref/display.texi (Progress, Abstract Display)
22717         (Abstract Display Example, Bidirectional Display):
22718         * doc/lispref/commands.texi (Event Mod):
22719         * doc/emacs/windows.texi (Displaying Buffers):
22720         * doc/emacs/trouble.texi (Bug Criteria, Checklist):
22721         * doc/emacs/text.texi (Enriched Text):
22722         * doc/emacs/programs.texi (MixedCase Words):
22723         * doc/emacs/picture-xtra.texi (Insert in Picture)
22724         (Tabs in Picture):
22725         * doc/emacs/misc.texi (Emacs Server, Printing):
22726         * doc/emacs/mini.texi (Minibuffer History):
22727         * doc/emacs/maintaining.texi (Old Revisions, VC Change Log)
22728         (Pulling / Pushing):
22729         * doc/emacs/killing.texi (Yanking, Cut and Paste, Clipboard):
22730         * doc/emacs/help.texi (Help, Help Echo):
22731         * doc/emacs/glossary.texi (Glossary):
22732         * doc/emacs/frames.texi (Mouse Commands, Creating Frames)
22733         (Frame Commands):
22734         * doc/emacs/files.texi (Reverting, Saving, Directories):
22735         * doc/emacs/entering.texi (Exiting):
22736         * doc/emacs/emacs.texi (Top):
22737         * doc/emacs/cmdargs.texi (Window Size X, Icons X):
22738         * doc/emacs/anti.texi (Antinews): Restore quoting of text where
22739         appropriate or replace quoting with @dfn.
22740         * doc/misc/ediff.texi (Window and Frame Configuration):
22741         * doc/lispref/processes.texi (Network Feature Testing):
22742         * doc/lispref/display.texi (Display Margins): Quote the phrase
22743         after "a.k.a." where appropriate.
22745 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
22747         Clarify reftex-extra-bindings docs
22748         * lisp/textmodes/reftex-vars.el (reftex-extra-bindings):
22749         * doc/misc/reftex.texi (Key Bindings): Document that the variable
22750         only has an effect at load-time.
22752 2015-09-16  Daniel McClanahan  <danieldmcclanahan@gmail.com>  (tiny change)
22754         * lisp/emacs-lisp/lisp-mode.el (lisp--el-match-keyword): Fix
22755         search argument.  (Bug#21492) (Bug#21493)
22757 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
22759         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
22760         Add pretty symbols for \qquad and \varrho.
22762 2015-09-15  Jay Belanger  <jay.p.belanger@gmail.com>
22764         Add new functions for the root mean square of a (Calc) vector
22765         * lisp/calc/calc-stat.el (calcFunc-rms, calc-vector-rms):
22766         New functions.
22767         * lisp/calc/calc-ext.el (calc-init-extensions): Add keybinding for
22768         `calc-vector-rms', add autoloads for `calc-vector-rms' and
22769         `calcFunc-rms'.
22770         * lisp/calc/calc-map.el (calc-u-oper-keys): Add entry for
22771         `calcFunc-rms'.
22772         * lisp/calc/calc-menu.el (calc-vectors-menu): Add entry for
22773         `calc-vector-rms'.
22774         * doc/misc/calc.texi (Single-Variable Statistics): Document the rms
22775         command.
22777 2015-09-15  Stephen Leake  <stephen_leake@stephe-leake.org>
22779         Add monotone EDE generic project
22780         * lisp/cedet/ede/generic.el (ede-enable-generic-projects):
22781         Add monotone generic project.
22783         Revert premature commit
22784         * doc/lispref/files.texi: Revert premature commit of change to
22785         file-name-all-completions.
22787         Fix a bug in elisp--xref-find-definitions related to cl-generic defaults
22788         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions): Fix bug
22789         with cl-generic defaults.
22790         (elisp--xref-find-references): Add doc string.
22791         * test/automated/elisp-mode-tests.el (xref-elisp-generic-*): Improve
22792         tests to find bug.
22794         Fix bugs in eieio-oref-default related to class symbols
22795         * lisp/emacs-lisp/eieio-core.el (class-p): Handle symbol properly.
22796         (eieio-oref-default): Handle class properly.
22798 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
22800         Quote “fullboth” when defining it
22801         * doc/lispref/frames.texi (Size Parameters): Use @dfn for “fullboth”
22802         and rewrite the containing paragraph, which was awkward.  (Bug#21472).
22804 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
22806         Minor doc fix in emacs/ack.texi
22807         * doc/emacs/ack.texi (Acknowledgments): Fix an xref missing the
22808         first argument.
22810 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
22812         Adapt tests in auto-revert-tests.el
22813         * test/automated/auto-revert-tests.el (auto-revert--timeout):
22814         Make it a defconst.
22815         (auto-revert--wait-for-revert): New defun.
22816         (auto-revert-test00-auto-revert-mode)
22817         (auto-revert-test01-auto-revert-tail-mode)
22818         (auto-revert-test02-auto-revert-mode-dired): Use it.
22820 2015-09-15  Stefan Monnier  <monnier@iro.umontreal.ca>
22822         * lisp/emacs-lisp/lisp-mode.el (lisp-mode-symbol-regexp): New const.
22823         Use it everywhere "\\(\\sw\\|\\s_\\|\\\\.\\)+" was used.
22824         (cl-lib-fdefs): Add defgeneric.
22825         (cl-kw): Add all elements of eieio-kw and cl-lib-kw.
22826         (eieio-kw, cl-lib-kw, el-kw): Remove.
22828 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
22830         Quote less in manuals
22831         The manuals often used quotes ``...'' when it is better to use @dfn or
22832         @code or capitalized words or no quoting at all.  For example, there is
22833         no need for the `` and '' in “if a variable has one effect for
22834         @code{nil} values and another effect for ``non-@code{nil}'' values”.
22835         Reword the Emacs, Lisp intro, and Lisp reference manuals to eliminate
22836         unnecessary quoting like this, and to use @dfn etc. instead when called
22837         for (Bug#21472).
22839 2015-09-15  Mark Oteiza  <mvoteiza@udel.edu>
22841         * lisp/custom.el (load-theme): Only compute hash when needed.
22843 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
22845         Pacify --enable-gcc-warnings
22846         * src/inotify.c (report_inotify_error): Declare it _Noreturn.
22848 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
22850         Improve error reports in inotify.c
22851         * src/inotify.c (report_inotify_error): New function.  Clone of
22852         report_w32notify_error.
22853         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
22854         (Finotify_rm_watch): Use it.
22856 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
22858         Fix the file-notify tests for watch validation on w32
22859         * test/automated/file-notify-tests.el
22860         (file-notify-test04-file-validity): Move the directory deletion
22861         out of the file-notify--test-with-events macro.
22862         (file-notify-test04-file-validity)
22863         (file-notify-test05-dir-validity): Enlarge the timeout of
22864         read-event to 0.5, as 0.1 is borderline on w32.  (Bug#21432)
22866 2015-09-15  Tassilo Horn  <tsdh@gnu.org>
22868         Use OPEN BOX instead of space for \quad.
22869         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist): Use OPEN BOX
22870         character for \quad instead of a space.
22872 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
22874         Add missing *.pbm images
22875         * etc/images/connect.pbm: New file.
22876         * etc/images/custom/down-pushed.pbm: New file.
22877         * etc/images/custom/down.pbm: New file.
22878         * etc/images/custom/right-pushed.pbm: New file.
22879         * etc/images/custom/right.pbm: New file.
22880         * etc/images/describe.pbm: New file.
22881         * etc/images/disconnect.pbm: New file.
22882         * etc/images/ezimage/bits.pbm: New file.
22883         * etc/images/ezimage/bitsbang.pbm: New file.
22884         * etc/images/ezimage/box-minus.pbm: New file.
22885         * etc/images/ezimage/box-plus.pbm: New file.
22886         * etc/images/ezimage/box.pbm: New file.
22887         * etc/images/ezimage/checkmark.pbm: New file.
22888         * etc/images/ezimage/dir-minus.pbm: New file.
22889         * etc/images/ezimage/dir-plus.pbm: New file.
22890         * etc/images/ezimage/dir.pbm: New file.
22891         * etc/images/ezimage/doc-minus.pbm: New file.
22892         * etc/images/ezimage/doc-plus.pbm: New file.
22893         * etc/images/ezimage/doc.pbm: New file.
22894         * etc/images/ezimage/info.pbm: New file.
22895         * etc/images/ezimage/key.pbm: New file.
22896         * etc/images/ezimage/label.pbm: New file.
22897         * etc/images/ezimage/lock.pbm: New file.
22898         * etc/images/ezimage/mail.pbm: New file.
22899         * etc/images/ezimage/page-minus.pbm: New file.
22900         * etc/images/ezimage/page-plus.pbm: New file.
22901         * etc/images/ezimage/page.pbm: New file.
22902         * etc/images/ezimage/tag-gt.pbm: New file.
22903         * etc/images/ezimage/tag-minus.pbm: New file.
22904         * etc/images/ezimage/tag-plus.pbm: New file.
22905         * etc/images/ezimage/tag-type.pbm: New file.
22906         * etc/images/ezimage/tag-v.pbm: New file.
22907         * etc/images/ezimage/tag.pbm: New file.
22908         * etc/images/ezimage/unlock.pbm: New file.
22909         * etc/images/gnus/important.pbm: New file.
22910         * etc/images/gnus/mail-send.pbm: New file.
22911         * etc/images/gnus/receipt.pbm: New file.
22912         * etc/images/gnus/toggle-subscription.pbm: New file.
22913         * etc/images/gnus/unimportant.pbm: New file.
22914         * etc/images/gud/all.pbm: New file.
22915         * etc/images/gud/rcont.pbm: New file.
22916         * etc/images/gud/recstart.pbm: New file.
22917         * etc/images/gud/recstop.pbm: New file.
22918         * etc/images/gud/rfinish.pbm: New file.
22919         * etc/images/gud/rnext.pbm: New file.
22920         * etc/images/gud/rnexti.pbm: New file.
22921         * etc/images/gud/rstep.pbm: New file.
22922         * etc/images/gud/rstepi.pbm: New file.
22923         * etc/images/gud/thread.pbm: New file.
22924         * etc/images/lock-broken.pbm: New file.
22925         * etc/images/lock-ok.pbm: New file.
22926         * etc/images/lock.pbm: New file.
22927         * etc/images/mail/copy.pbm: New file.
22928         * etc/images/mail/forward.pbm: New file.
22929         * etc/images/mail/not-spam.pbm: New file.
22930         * etc/images/mail/outbox.pbm: New file.
22931         * etc/images/mail/preview.pbm: New file.
22932         * etc/images/mail/save-draft.pbm: New file.
22933         * etc/images/mh-logo.pbm: New file.
22934         * etc/images/mpc/add.pbm: New file.
22935         * etc/images/mpc/ffwd.pbm: New file.
22936         * etc/images/mpc/next.pbm: New file.
22937         * etc/images/mpc/pause.pbm: New file.
22938         * etc/images/mpc/play.pbm: New file.
22939         * etc/images/mpc/prev.pbm: New file.
22940         * etc/images/mpc/rewind.pbm: New file.
22941         * etc/images/mpc/stop.pbm: New file.
22942         * etc/images/redo.pbm: New file.
22943         * etc/images/smilies/braindamaged.pbm: New file.
22944         * etc/images/smilies/cry.pbm: New file.
22945         * etc/images/smilies/dead.pbm: New file.
22946         * etc/images/smilies/evil.pbm: New file.
22947         * etc/images/smilies/forced.pbm: New file.
22948         * etc/images/smilies/grin.pbm: New file.
22949         * etc/images/smilies/indifferent.pbm: New file.
22950         * etc/images/sort-ascending.pbm: New file.
22951         * etc/images/sort-column-ascending.pbm: New file.
22952         * etc/images/sort-criteria.pbm: New file.
22953         * etc/images/sort-descending.pbm: New file.
22954         * etc/images/sort-row-ascending.pbm: New file.
22955         * etc/images/unchecked.pbm: New file.
22956         * etc/images/zoom-in.pbm: New file.
22957         * etc/images/README: Update instructions for PBM files.
22959         Add separator.pbm tool-bar image
22960         * etc/images/separator.pbm: New file.  Having it avoids the side
22961         effect of changing the tool-bar height when the default font's size
22962         changes and XPM image support is not available, due to the SPC
22963         characters that are left in the Lisp string used to display the tool
22964         bar, because there are no images to display instead of those SPC
22965         characters.
22967         Make show-paren-match face visible on mono-color displays
22968         * lisp/faces.el (show-paren-match): Use the underline face for
22969         mono-color displays.  (Bug#21481)
22971 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
22973         Don’t double-encode non-ASCII mail clipboard
22974         * lisp/mail/mailclient.el (mailclient-send-it):
22975         Also fix the case when mailclient-place-body-on-clipboard-flag
22976         is non-nil.  Problem reported by Eli Zaretskii (Bug#21471#37).
22978 2015-09-14  Michael Albinus  <michael.albinus@gmx.de>
22980         Adapt file-notify-tests.el test cases
22981         * lisp/filenotify.el (file-notify-rm-watch): Ignore `file-notify-error'.
22982         * src/inotify.c (Finotify_valid_p): Adapt docstring.
22983         * test/automated/file-notify-tests.el
22984         (file-notify-test03-autorevert)
22985         (file-notify-test04-file-validity)
22986         (file-notify-test04-file-validity-remote)
22987         (file-notify-test05-dir-validity)
22988         (file-notify-test05-dir-validity-remote): Adapt docstring.
22989         (file-notify-test04-file-validity): Let events arrive before
22990         calling final `file-notify-valid-p'.  Do not ignore errors.
22991         (file-notify-test05-dir-validity): Do not manipulate
22992         `temporary-file-directory', it isn't necessary.  Let events arrive
22993         before calling final `file-notify-valid-p'.  Do not ignore errors.
22995 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
22997         Don’t double-encode non-ASCII for mail client
22998         * lisp/mail/mailclient.el (mailclient-encode-string-as-url):
22999         Use RFC 6068’s list of unreserved characters.
23000         (mailclient-send-it): When encoding the body as a URL,
23001         first decode it as per Content-Type: and Content-Transfer-Encoding:,
23002         as URLs must use percent-encoded UTF-8 (Bug#21471).
23003         * doc/misc/url.texi (mailto): Update RFC number.
23005 2015-09-14  Stefan Monnier  <monnier@iro.umontreal.ca>
23007         * lisp/progmodes/cc-langs.el (c-make-init-lang-vars-fun): Use dolist.
23009 2015-09-14  Alan Mackenzie  <acm@muc.de>
23011         Replace `cadar' with `cadr/car', since `cadar' is problematic on Emacs
23012         (c-make-init-lang-vars-fun): Replace two occurrences of `cadar' with
23013         `cadr/car'.
23015 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
23017         Clarify documentation of char-table extra slots
23018         * doc/lispref/sequences.texi (Char-Tables): Clarify that extra
23019         slot numbers are zero-based.  (Bug#21467)
23021 2015-09-14  Alan Mackenzie  <acm@muc.de>
23023         Elisp mode: Make font-lock and imenu handle escaped characters in symbols
23024         Fixes bug#21449.
23025         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression)
23026         (lisp--el-match-keyword, lisp-el-font-lock-keywords-1)
23027         (lisp-cl-font-lock-keywords-1, lisp-el-font-lock-keywords-2)
23028         (lisp-cl-font-lock-keywords-2, lisp-string-in-doc-position-p):
23029         Insert "\\|\\\\." into regexps which match symbols.
23031 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
23033         Improve the doc string of w32notify-valid-p
23034         * src/w32notify.c (Fw32notify_valid_p): Mention in the doc string
23035         that removing a watch makes its object invalid.
23037 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
23039         Fix tests for file-notify-valid-p
23040         * test/automated/file-notify-tests.el (file-notify--test-cleanup):
23041         Use delete-directory to delete file-notify--test-tmpfile if it is
23042         a directory.  Likewise for file-notify--test-tmpfile1.
23043         (file-notify-test04-file-validity)
23044         (file-notify-test05-dir-validity): Delete the parent directory of
23045         the test.  Ignore errors when cleaning up after the test.
23047 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
23049         Report file-notify-error in w32notify.c
23050         * src/w32notify.c (report_w32notify_error): New function.
23051         (Fw32notify_add_watch, Fw32notify_rm_watch): Use it to report
23052         errors, instead of calling report_file_error.  (Bug#21432)
23054         Implement w32notify-valid-p
23055         * src/w32notify.c (Fw32notify_valid_p): New function.  (Bug#21432)
23056         * lisp/filenotify.el (w32notify-valid-p): No longer an alias for
23057         'identity'.
23059 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
23061         Test file-notify-valid-p
23062         * test/automated/file-notify-tests.el
23063         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
23064         New tests.
23066 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
23068         Fix markup in ELisp manual
23069         * doc/lispref/frames.texi (Font and Color Parameters): Fix markup
23070         of the 'alpha' parameter value.  (Bug#21470)
23072 2015-09-13  Michael Albinus  <michael.albinus@gmx.de>
23074         Introduce `file-notify-valid-p'
23075         * lisp/filenotify.el (file-notify-valid-p): New defun.
23076         (gfile-valid-p, w32notify-valid-p): Make them an alias to `identity'.
23077         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist)
23078         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist)
23079         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist)
23080         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist)
23081         <file-notify-valid-p>: Add handler.
23082         * lisp/net/tramp.el (tramp-file-name-for-operation):
23083         Add `file-notify-valid-p'.
23084         (tramp-handle-file-notify-valid-p): New defun.
23085         * src/inotify.c (Finotify_valid_p): New defun.
23086         (syms_of_inotify): Declare Sinotify_valid_p.
23088 2015-09-13  Paul Eggert  <eggert@cs.ucla.edu>
23090         Port Unicode char detection to FreeBSD+svgalib
23091         Problem reported by Ashish SHUKLA in:
23092         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00531.html
23093         * configure.ac: Check for struct unipair.unicode instead of for
23094         <linux/kd.h>, since that’s more specific to what the code
23095         actually needs.
23096         * src/terminal.c: Use HAVE_STRUCT_UNIPAIR_UNICODE, not HAVE_LINUX_KD_H.
23098         * src/indent.c (Fvertical_motion): Simplify bugfix (Bug#21468).
23100 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
23102         Fix vertical cursor motion across overlay strings with newlines
23103         * src/indent.c (Fvertical_motion): Don't leave point in the middle
23104         of an overlay string with newlines, as that will position the
23105         cursor after the string at whatever column is there.  (Bug#21468)
23107 2015-09-12  Michael Albinus  <michael.albinus@gmx.de>
23109         Fix tests in file-notify-tests.el
23110         * test/automated/file-notify-tests.el: Remove Tramp declarations.
23111         (file-notify-test00-availability): Print remote command w/o Tramp
23112         internal functions.
23113         (file-notify-test02-events, file-notify-test02-events-remote):
23114         Adapt docstring.
23115         (file-notify-test03-autorevert): Use `format-message' when
23116         inspecting *Messages* buffer.
23118 2015-09-12  Stefan Monnier  <monnier@iro.umontreal.ca>
23120         Bind inhibit-modification-hooks rather than a/b-c-f
23121         * lisp/wid-edit.el (widget-editable-list-insert-before)
23122         (widget-editable-list-delete-at):
23123         * lisp/progmodes/cperl-mode.el (cperl-find-pods-heres)
23124         (cperl-font-lock-unfontify-region-function):
23125         * lisp/progmodes/antlr-mode.el (save-buffer-state-x):
23126         * lisp/obsolete/longlines.el (longlines-mode):
23127         * lisp/obsolete/fast-lock.el (save-buffer-state):
23128         * lisp/mouse.el (mouse-save-then-kill-delete-region):
23129         * lisp/gnus/message.el (message-hide-headers):
23130         * lisp/eshell/esh-mode.el (eshell-send-input, eshell-output-filter):
23131         * lisp/ibuffer.el (ibuffer-update-title-and-summary)
23132         (ibuffer-redisplay-engine): Bind inhibit-modification-hooks to t rather
23133         than after/before-change-functions to nil.
23135 2015-09-11  Stefan Monnier  <monnier@iro.umontreal.ca>
23137         (jit-lock-deferred-fontify): Pay attention to skipped redisplays
23138         * lisp/jit-lock.el (jit-lock-deferred-fontify): Make sure we refresh
23139         the buffers, even if the forced redisplay is interrupted.
23141         * lisp/emacs-lisp/eieio-core.el (class-p): Accept class objects
23143         Merge syntax-propertize--done and parse-sexp-propertize-done
23144         * lisp/emacs-lisp/syntax.el (syntax-propertize--done): Remove.
23145         (syntax-propertize): Set syntax-propertize--done even if
23146         syntax-propertize-function is nil.  Avoid recursive invocations.
23147         (syntax-propertize-chunks): New var.
23148         (internal--syntax-propertize): Use it.  Rename from syntax--jit-propertize.
23149         Simplify.
23150         (parse-sexp-propertize-function): Don't set any more.
23151         * src/syntax.c (SETUP_SYNTAX_TABLE): Call parse_sexp_propertize as needed.
23152         (parse_sexp_propertize): Don't assume charpos is not yet propertized.
23153         Call Qinternal__syntax_propertize instead of
23154         Vparse_sexp_propertize_function.  Truncate e_property if needed.
23155         (update_syntax_table_forward): Streamline.
23156         (syms_of_syntax): Define Qinternal__syntax_propertize.
23157         (syntax_propertize__done): Rename from parse_sexp_propertize_done.
23159 2015-09-11  Paul Eggert  <eggert@cs.ucla.edu>
23161         Prefer straight quoting in some text files
23162         Mostly this just changes ` to ' in static text.  Some exceptions:
23163         * INSTALL.REPO: Use curved quotes, as the diagnostic in question
23164         typically does that now.
23165         * admin/quick-install-emacs (TRY, top level):
23166         Use straight quoting in diagnostics.
23167         * src/README: Fix working-directory confusion.
23169         * CONTRIBUTE: Move send-email here from git-workflow.
23171 2015-09-11  Michael Albinus  <michael.albinus@gmx.de>
23173         Improve file notifications in Tramp
23174         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
23175         Set proper events to watch for.
23176         (tramp-sh-file-gvfs-monitor-dir-process-filter): Report only
23177         watched events.
23179 2015-09-11  Eli Zaretskii  <eliz@gnu.org>
23181         Fix NS build with --enable-checking='glyphs'
23182         * src/nsfns.m (unwind_create_frame): Make the preprocessor
23183         conditionals for referencing 'dpyinfo' consistent throughout the
23184         function.  (Bug#21426)
23186 2015-09-10  Nicolas Petton  <nicolas@petton.fr>
23188         Add seq-find
23189         This function is similar to `seq-some' but returns the found element.
23190         In the cases where nil can be the found element, a sentinel optional
23191         argument can be provided to avoid ambiguities.
23192         * lisp/emacs-lisp/seq.el (seq-find): New function.
23193         * test/automated/seq-tests.el (test-seq-find): Add tests for `seq-find'.
23194         * doc/lispref/sequences.texi (Sequence Functions): Add documentation for
23195         seq-find.
23197 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
23199         Document file-notify--test-with-events.
23200         * test/automated/file-notify-tests.el (file-notify--test-with-events):
23201         Add docstring.
23203 2015-09-10  Michael Albinus  <michael.albinus@gmx.de>
23205         Report used native library in file-notify-tests.el
23206         * test/automated/file-notify-tests.el
23207         (tramp-get-remote-gvfs-monitor-dir)
23208         (tramp-get-remote-inotifywait): Declare them.
23209         (file-notify-test00-availability): Print used native library.
23211 2015-09-10  Mark Oteiza  <mvoteiza@udel.edu>
23213         * lisp/mpc.el (mpc--proc-connect): Use file-name-absolute-p.
23214         (mpc-file-local-copy): Check for absolute path.  Check more config
23215         locations.
23217 2015-09-10  Eli Zaretskii  <eliz@gnu.org>
23219         Improve documentation of categories
23220         * doc/lispref/syntax.texi (Categories): Clarify the example of
23221         using define-category and modify-category-entry.  (Bug#21448)
23223 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
23225         Revert some stray curved quotes I missed earlier
23226         Problem reported by David Kastrup in:
23227         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00440.html
23228         * lisp/international/mule-cmds.el (leim-list-header):
23229         Use format-message with an ASCII-only format.
23231         Prefer NUMBERP to spelling it out
23232         * src/editfns.c (styled_format):
23233         * src/frame.h (NUMVAL):
23234         * src/image.c (parse_image_spec):
23235         * src/lisp.h (CHECK_NUMBER_OR_FLOAT)
23236         (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER):
23237         * src/process.c (Fsignal_process):
23238         * src/xdisp.c (calc_pixel_width_or_height, on_hot_spot_p):
23239         * src/xfaces.c (check_lface_attrs):
23240         * src/xselect.c (x_fill_property_data, x_send_client_event):
23241         Use NUMBERP rather than INTEGERP || FLOATP.
23243 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
23245         Improve file-notify-tests
23246         * test/automated/file-notify-tests.el: Use lexical-binding.
23247         (file-notify--test-cleanup): New function.
23248         (file-notify-test00-availability, file-notify-test01-add-watch)
23249         (file-notify-test02-events, file-notify-test03-autorevert): Use it.
23250         (file-notify--test-with-events): New macro.
23251         (file-notify-test02-events): Use it.
23253 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
23255         Add patch-sending instructions to git-workflow
23256         From a suggestion by Mitchel Humpherys in:
23257         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00421.html
23258         * admin/notes/git-workflow (Sending patches): New section.
23260         Port to GIFLIB 5.0.6 and later
23261         Problem reported by Mitchel Humpherys in:
23262         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00420.html
23263         * src/image.c (HAVE_GIFERRORSTRING) [HAVE_GIF]: New macro.
23264         (GifErrorString, init_gif_functions) [HAVE_GIF && WINDOWSNT]:
23265         (gif_load) [HAVE_GIF]: Use it.
23267 2015-09-10  Glenn Morris  <rgm@gnu.org>
23269         * lisp/cedet/ede/auto.el (ede-project-autoload): Doc fix.
23271 2015-09-09  Glenn Morris  <rgm@gnu.org>
23273         * test/automated/file-notify-tests.el (file-notify-test02-events):
23274         Fix recent change.
23276 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
23278         Refix movemail GCC pacification
23279         Problem reported by Ken Brown in:
23280         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00406.html
23281         * lib-src/movemail.c (main): Fix previous change.
23283 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
23285         * lisp/calendar/time-date.el (time-to-seconds, time-less-p):
23286         Mark unused vars with underscore.
23288         * src/syntax.c (SETUP_SYNTAX_TABLE): Move truncation...
23289         (parse_sexp_propertize): ...from here.
23291         * lisp/filenotify.el: Use lexical-binding
23292         (file-notify-add-watch): Avoid add-to-list.
23294 2015-09-09  Tassilo Horn  <tsdh@gnu.org>
23296         Start checking event types in file-notify tests
23297         * test/automated/file-notify-tests.el (file-notify--test-events):
23298         New variable.
23299         (file-notify--test-event-handler): Append received event to
23300         file-notify--test-events for later analysis.
23301         (file-notify-test02-events): Assert that the expected notifications have
23302         arrived in the expected order.
23304 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
23306         Merge from gnulib and texinfo
23307         This incorporates:
23308         2015-08-03 Improve port of stdalign to C++11
23309         * lib/stdalign.in.h: Copy from gnulib.
23310         * doc/misc/texinfo.tex: Copy from texinfo.
23312 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
23314         Make syntax.c call syntax-propertize on demand
23315         * lisp/emacs-lisp/syntax.el (syntax--jit-propertize): New function.
23316         (parse-sexp-propertize-function): Use it.
23317         (syntax-propertize): Disable parse-sexp-propertize-function.
23318         * src/syntax.c (parse_sexp_propertize, update_syntax_table_forward):
23319         New functions.
23320         (syms_of_syntax): New vars `parse-sexp-propertize-done' and
23321         `parse-sexp-propertize-function'.
23322         * src/syntax.h (struct gl_state_s): Add `e_property_truncated' field.
23323         (UPDATE_SYNTAX_TABLE_FORWARD): Use update_syntax_table_forward.
23324         (SETUP_BUFFER_SYNTAX_TABLE): Set e_property_truncated.
23325         * lisp/progmodes/elisp-mode.el (elisp-byte-code-syntax-propertize):
23326         Don't assume `point' is set.
23328 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
23330         Fix indentation of an @example in ELisp manual
23331         * doc/lispref/syntax.texi (Categories): Untabify the example.
23332         (Bug#21448)
23334 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
23336         Define internal-char-font even if --without-x
23337         The function is used now even in non-graphical environments.
23338         Problem reported by Glenn Morris in:
23339         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00401.html
23340         * src/font.c (Finternal_char_font): Move here ...
23341         * src/fontset.c (Finternal_char_font): ... from here.
23343 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
23345         * lisp/emacs-lisp/cl-generic.el (cl-generic-generalizers):
23346         Remove warning.
23348 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
23350         Fix display of complex local data types in GDB-MI
23351         * lisp/progmodes/gdb-mi.el (gdb-locals-handler-custom): If a
23352         variable has no value, display "<complex data type>" as a
23353         placeholder, instead of a confusing "nil".  (Bug#21438)
23355 2015-09-09  Oleh Krehel  <ohwoeowho@gmail.com>
23357         Remove redundant redefinition of seq-drop-while from seq.el
23358         * lisp/emacs-lisp/seq.el (seq-drop-while): Define only once.
23360 2015-09-09  Phil Sainty  <psainty@orcon.net.nz>
23362         * lisp/emacs-lisp/package.el (package--ensure-init-file):
23363         More robust check for `package-initialize' calls in init file.
23364         This function accepts an optional argument, but calls passing
23365         an argument would not have been detected.
23367 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
23369         Port movemail to RHEL 6 with --enable-gcc-warnings
23370         * lib-src/movemail.c (main): Declare local only if needed.
23372         Port recent Linux console changes to RHEL 6
23373         * src/terminal.c [HAVE_LINUX_KD_H]: Include <sys/ioctl.h>.
23375         Improvements for curved quotes on Linux consule
23376         This should help Emacs work better out-of-the-box on Linux consoles,
23377         which have only limited support for displaying Unicode characters.
23378         Also, undo the recent change that caused text-quoting-style to
23379         affect quote display on terminals, so that the two features are
23380         independent.  See Alan Mackenzie in:
23381         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00244.html
23382         Finally, add a style parameter to startup--setup-quote-display,
23383         so that this function can also be invoked after startup, with
23384         different styles depending on user preference at the time.
23385         * configure.ac: Check for linux/kd.h header.
23386         * doc/emacs/display.texi (Text Display): Document quote display.
23387         * doc/lispref/display.texi (Active Display Table):
23388         * etc/NEWS:
23389         * lisp/startup.el (startup--setup-quote-display, command-line):
23390         text-quoting-style no longer affects quote display.
23391         * doc/lispref/frames.texi (Terminal Parameters): Fix typo.
23392         * lisp/international/mule-util.el (char-displayable-p):
23393         * lisp/startup.el (startup--setup-quote-display):
23394         On a text terminal supporting glyph codes, use the reported
23395         glyph codes instead of the terminal coding system, as this
23396         is more accurate on the Linux console.
23397         * lisp/startup.el (startup--setup-quote-display):
23398         New optional arg STYLE.
23399         * src/fontset.c (Finternal_char_font):
23400         Report glyph codes for a text terminal, if they are available.
23401         Currently this is supported only for the Linux console.
23402         * src/termhooks.h (struct terminal): New member glyph-code-table.
23403         * src/terminal.c [HAVE_LINUX_KD_H]: Include <errno.h>, <linux/kd.h>.
23404         (calculate_glyph_code_table) [HAVE_LINUX_KD_H]: New function.
23405         (terminal_glyph_code): New function.
23407 2015-09-08  Juri Linkov  <juri@linkov.net>
23409         * lisp/info.el (Info-fontify-node): Don't stop at the non-title
23410         underline.  (Bug#21433)
23412 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
23414         * lisp/calendar/time-date.el (with-decoded-time-value): Fix debug spec.
23416 2015-09-08  Tassilo Horn  <tsdh@gnu.org>
23418         Fix double-reporting of rename events with inotify
23419         * lisp/filenotify.el (file-notify-callback): Fix double-reporting
23420         of rename events with inotify (bug#21435).
23422 2015-09-08  Vasilij Schneidermann  <v.schneidermann@gmail.com>  (tiny change)
23424         * lisp/play/tetris.el (tetris-move-down): New command (bug#21360).
23425         (tetris-mode-map): Use it.
23427 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
23429         Remove a few simple cases of global redisplay
23430         * src/dispnew.c (redraw_frame): Don't redisplay all frames.
23431         * src/xdisp.c (echo_area_display): Set the frame's `redisplay' bit
23432         rather than returning a "resized_p" boolean.
23433         (redisplay_internal): Adjust call accordingly.
23434         * src/xfaces.c (free_realized_faces): Don't redisplay all frames.
23435         (free_all_realized_faces): Set windows_or_buffers_changed so as to ease
23436         tracking of this undesirable situation.
23438         * src/process.c (status_notify): Avoid global redisplay (bug#11822)
23439         * src/process.c (status_notify): Only set the update_mode_line on the
23440         relevant buffers rather than setting it globally.
23442 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
23444         * lisp/electric.el (electric-quote-post-self-insert-function):
23445         Don't use syntax-ppss if comment-use-syntax is nil (e.g. message-mode).
23446         (electric-quote-mode): Activate everywhere in message-mode.
23448 2015-09-07  Paul Eggert  <eggert@cs.ucla.edu>
23450         Go back to grave quoting in source-code docstrings etc.
23451         This reverts almost all my recent changes to use curved quotes
23452         in docstrings and/or strings used for error diagnostics.
23453         There are a few exceptions, e.g., Bahá’í proper names.
23454         * admin/unidata/unidata-gen.el (unidata-gen-table):
23455         * lisp/abbrev.el (expand-region-abbrevs):
23456         * lisp/align.el (align-region):
23457         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet)
23458         (outlineify-sticky):
23459         * lisp/apropos.el (apropos-library):
23460         * lisp/bookmark.el (bookmark-default-annotation-text):
23461         * lisp/button.el (button-category-symbol, button-put)
23462         (make-text-button):
23463         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
23464         * lisp/calc/calc-embed.el (calc-do-embedded):
23465         * lisp/calc/calc-ext.el (calc-user-function-list):
23466         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
23467         * lisp/calc/calc-help.el (calc-describe-key)
23468         (calc-describe-thing, calc-full-help):
23469         * lisp/calc/calc-lang.el (calc-c-language)
23470         (math-parse-fortran-vector-end, math-parse-tex-sum)
23471         (math-parse-eqn-matrix, math-parse-eqn-prime)
23472         (calc-yacas-language, calc-maxima-language, calc-giac-language)
23473         (math-read-giac-subscr, math-read-math-subscr)
23474         (math-read-big-rec, math-read-big-balance):
23475         * lisp/calc/calc-misc.el (calc-help, report-calc-bug):
23476         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
23477         (calc-auto-recompute):
23478         * lisp/calc/calc-prog.el (calc-fix-token-name)
23479         (calc-read-parse-table-part, calc-user-define-invocation)
23480         (math-do-arg-check):
23481         * lisp/calc/calc-store.el (calc-edit-variable):
23482         * lisp/calc/calc-units.el (math-build-units-table-buffer):
23483         * lisp/calc/calc-vec.el (math-read-brackets):
23484         * lisp/calc/calc-yank.el (calc-edit-mode):
23485         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
23486         * lisp/calendar/appt.el (appt-display-message):
23487         * lisp/calendar/diary-lib.el (diary-check-diary-file)
23488         (diary-mail-entries, diary-from-outlook):
23489         * lisp/calendar/icalendar.el (icalendar-export-region)
23490         (icalendar--convert-float-to-ical)
23491         (icalendar--convert-date-to-ical)
23492         (icalendar--convert-ical-to-diary)
23493         (icalendar--convert-recurring-to-diary)
23494         (icalendar--add-diary-entry):
23495         * lisp/calendar/time-date.el (format-seconds):
23496         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
23497         (timeclock-make-hours-explicit, timeclock-log-data):
23498         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
23499         (todo-item-mark, todo-check-format)
23500         (todo-insert-item--next-param, todo-edit-item--next-key)
23501         (todo-mode):
23502         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
23503         * lisp/cedet/mode-local.el (describe-mode-local-overload)
23504         (mode-local-print-binding, mode-local-describe-bindings-2):
23505         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
23506         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
23507         * lisp/cus-start.el (standard):
23508         * lisp/cus-theme.el (describe-theme-1):
23509         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
23510         (custom--sort-vars-1, load-theme):
23511         * lisp/descr-text.el (describe-text-properties-1, describe-char):
23512         * lisp/dired-x.el (dired-do-run-mail):
23513         * lisp/dired.el (dired-log):
23514         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
23515         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
23516         (ad-disable-advice, ad-remove-advice, ad-set-argument)
23517         (ad-set-arguments, ad--defalias-fset, ad-activate)
23518         (ad-deactivate):
23519         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
23520         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
23521         (byte-optimize-while, byte-optimize-apply):
23522         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
23523         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
23524         (byte-compile-log-file, byte-compile-format-warn)
23525         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
23526         (byte-compile-cl-warn)
23527         (byte-compile-warn-about-unresolved-functions)
23528         (byte-compile-file, byte-compile--declare-var)
23529         (byte-compile-file-form-defmumble, byte-compile-form)
23530         (byte-compile-normal-call, byte-compile-check-variable)
23531         (byte-compile-variable-ref, byte-compile-variable-set)
23532         (byte-compile-subr-wrong-args, byte-compile-setq-default)
23533         (byte-compile-negation-optimizer)
23534         (byte-compile-condition-case--old)
23535         (byte-compile-condition-case--new, byte-compile-save-excursion)
23536         (byte-compile-defvar, byte-compile-autoload)
23537         (byte-compile-lambda-form)
23538         (byte-compile-make-variable-buffer-local, display-call-tree)
23539         (batch-byte-compile):
23540         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use):
23541         * lisp/emacs-lisp/chart.el (chart-space-usage):
23542         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
23543         (check-declare-warn, check-declare-file)
23544         (check-declare-directory):
23545         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
23546         (checkdoc-message-text-engine):
23547         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer)
23548         (cl--describe-class):
23549         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
23550         (cl--generic-describe, cl-generic-generalizers):
23551         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
23552         (cl-symbol-macrolet):
23553         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
23554         * lisp/emacs-lisp/copyright.el (copyright)
23555         (copyright-update-directory):
23556         * lisp/emacs-lisp/edebug.el (edebug-read-list):
23557         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
23558         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
23559         (eieio-oref):
23560         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
23561         * lisp/emacs-lisp/eieio-speedbar.el:
23562         (eieio-speedbar-child-make-tag-lines)
23563         (eieio-speedbar-child-description):
23564         * lisp/emacs-lisp/eieio.el (defclass, change-class):
23565         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
23566         (elint-init-form, elint-check-defalias-form)
23567         (elint-check-let-form):
23568         * lisp/emacs-lisp/ert.el (ert-get-test, ert-results-mode-menu)
23569         (ert-results-pop-to-backtrace-for-test-at-point)
23570         (ert-results-pop-to-messages-for-test-at-point)
23571         (ert-results-pop-to-should-forms-for-test-at-point)
23572         (ert-describe-test):
23573         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
23574         (find-function-library):
23575         * lisp/emacs-lisp/generator.el (iter-yield):
23576         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
23577         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
23578         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
23579         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
23580         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
23581         (advice--make, define-advice):
23582         * lisp/emacs-lisp/package-x.el (package-upload-file):
23583         * lisp/emacs-lisp/package.el (package-version-join)
23584         (package-disabled-p, package-activate-1, package-activate)
23585         (package--download-one-archive)
23586         (package--download-and-read-archives)
23587         (package-compute-transaction, package-install-from-archive)
23588         (package-install, package-install-selected-packages)
23589         (package-delete, package-autoremove, describe-package-1)
23590         (package-install-button-action, package-delete-button-action)
23591         (package-menu-hide-package, package-menu--list-to-prompt)
23592         (package-menu--perform-transaction)
23593         (package-menu--find-and-notify-upgrades):
23594         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
23595         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
23596         * lisp/emacs-lisp/ring.el (ring-previous, ring-next):
23597         * lisp/emacs-lisp/rx.el (rx-check, rx-anything)
23598         (rx-check-any-string, rx-check-any, rx-check-not, rx-=)
23599         (rx-repeat, rx-check-backref, rx-syntax, rx-check-category)
23600         (rx-form):
23601         * lisp/emacs-lisp/smie.el (smie-config-save):
23602         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
23603         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
23604         * lisp/emacs-lisp/testcover.el (testcover-1value):
23605         * lisp/emacs-lisp/timer.el (timer-event-handler):
23606         * lisp/emulation/viper-cmd.el (viper-toggle-parse-sexp-ignore-comments)
23607         (viper-toggle-search-style, viper-kill-buffer)
23608         (viper-brac-function):
23609         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
23610         * lisp/env.el (setenv):
23611         * lisp/erc/erc-button.el (erc-nick-popup):
23612         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login, english):
23613         * lisp/eshell/em-dirs.el (eshell/cd):
23614         * lisp/eshell/em-glob.el (eshell-glob-regexp)
23615         (eshell-glob-entries):
23616         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
23617         * lisp/eshell/esh-opt.el (eshell-show-usage):
23618         * lisp/facemenu.el (facemenu-add-new-face)
23619         (facemenu-add-new-color):
23620         * lisp/faces.el (read-face-name, read-face-font, describe-face)
23621         (x-resolve-font-name):
23622         * lisp/files-x.el (modify-file-local-variable):
23623         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
23624         (set-auto-mode, hack-one-local-variable--obsolete)
23625         (dir-locals-set-directory-class, write-file, basic-save-buffer)
23626         (delete-directory, copy-directory, recover-session)
23627         (recover-session-finish, insert-directory)
23628         (file-modes-char-to-who, file-modes-symbolic-to-number)
23629         (move-file-to-trash):
23630         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer):
23631         * lisp/find-cmd.el (find-generic, find-to-string):
23632         * lisp/finder.el (finder-commentary):
23633         * lisp/font-lock.el (font-lock-fontify-buffer):
23634         * lisp/format.el (format-write-file, format-find-file)
23635         (format-insert-file):
23636         * lisp/frame.el (get-device-terminal, select-frame-by-name):
23637         * lisp/fringe.el (fringe--check-style):
23638         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
23639         * lisp/help-fns.el (help-fns--key-bindings)
23640         (help-fns--compiler-macro, help-fns--parent-mode)
23641         (help-fns--obsolete, help-fns--interactive-only)
23642         (describe-function-1, describe-variable):
23643         * lisp/help.el (describe-mode)
23644         (describe-minor-mode-from-indicator):
23645         * lisp/image.el (image-type):
23646         * lisp/international/ccl.el (ccl-dump):
23647         * lisp/international/fontset.el (x-must-resolve-font-name):
23648         * lisp/international/mule-cmds.el (prefer-coding-system)
23649         (select-safe-coding-system-interactively)
23650         (select-safe-coding-system, activate-input-method)
23651         (toggle-input-method, describe-current-input-method)
23652         (describe-language-environment):
23653         * lisp/international/mule-conf.el (code-offset):
23654         * lisp/international/mule-diag.el (describe-character-set)
23655         (list-input-methods-1):
23656         * lisp/mail/feedmail.el (feedmail-run-the-queue):
23657         * lisp/mouse.el (minor-mode-menu-from-indicator):
23658         * lisp/mpc.el (mpc-playlist-rename):
23659         * lisp/msb.el (msb--choose-menu):
23660         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
23661         * lisp/net/imap.el (imap-interactive-login):
23662         * lisp/net/mairix.el (mairix-widget-create-query):
23663         * lisp/net/newst-backend.el (newsticker--sentinel-work):
23664         * lisp/net/newst-treeview.el (newsticker--treeview-load):
23665         * lisp/net/rlogin.el (rlogin):
23666         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
23667         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
23668         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
23669         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
23670         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
23671         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
23672         (org-babel-goto-named-result):
23673         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
23674         * lisp/org/ob-ref.el (org-babel-ref-resolve):
23675         * lisp/org/org-agenda.el (org-agenda-prepare):
23676         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
23677         (org-clock-resolve):
23678         * lisp/org/org-ctags.el (org-ctags-ask-rebuild-tags-file-then-find-tag):
23679         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
23680         * lisp/org/org-habit.el (org-habit-parse-todo):
23681         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
23682         (org-mouse-context-menu):
23683         * lisp/org/org-table.el (org-table-edit-formulas):
23684         * lisp/org/ox.el (org-export-async-start):
23685         * lisp/proced.el (proced-log):
23686         * lisp/progmodes/ada-mode.el (ada-get-indent-case)
23687         (ada-check-matching-start, ada-goto-matching-start):
23688         * lisp/progmodes/ada-prj.el (ada-prj-display-page):
23689         * lisp/progmodes/ada-xref.el (ada-find-executable):
23690         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
23691         * lisp/progmodes/etags.el (etags-tags-apropos-additional):
23692         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
23693         (flymake-start-syntax-check-process):
23694         * lisp/progmodes/python.el (python-shell-get-process-or-error)
23695         (python-define-auxiliary-skeleton):
23696         * lisp/progmodes/sql.el (sql-comint):
23697         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
23698         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate):
23699         * lisp/recentf.el (recentf-open-files):
23700         * lisp/replace.el (query-replace-read-from)
23701         (occur-after-change-function, occur-1):
23702         * lisp/scroll-bar.el (scroll-bar-columns):
23703         * lisp/server.el (server-get-auth-key):
23704         * lisp/simple.el (execute-extended-command)
23705         (undo-outer-limit-truncate, list-processes--refresh)
23706         (compose-mail, set-variable, choose-completion-string)
23707         (define-alternatives):
23708         * lisp/startup.el (site-run-file, tty-handle-args, command-line)
23709         (command-line-1):
23710         * lisp/subr.el (noreturn, define-error, add-to-list)
23711         (read-char-choice, version-to-list):
23712         * lisp/term/common-win.el (x-handle-xrm-switch)
23713         (x-handle-name-switch, x-handle-args):
23714         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
23715         * lisp/textmodes/reftex-ref.el (reftex-label):
23716         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
23717         * lisp/textmodes/two-column.el (2C-split):
23718         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
23719         (tutorial--find-changed-keys):
23720         * lisp/type-break.el (type-break-noninteractive-query):
23721         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
23722         (wdired-do-perm-changes):
23723         * lisp/whitespace.el (whitespace-report-region):
23724         Prefer grave quoting in source-code strings used to generate help
23725         and diagnostics.
23726         * lisp/faces.el (face-documentation):
23727         No need to convert quotes, since the result is a docstring.
23728         * lisp/info.el (Info-virtual-index-find-node)
23729         (Info-virtual-index, info-apropos):
23730         Simplify by generating only curved quotes, since info files are
23731         typically that ways nowadays anyway.
23732         * lisp/international/mule-diag.el (list-input-methods):
23733         Don’t assume text quoting style is curved.
23734         * lisp/org/org-bibtex.el (org-bibtex-fields):
23735         Revert my recent changes, going back to the old quoting style.
23737 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
23739         * lisp/emacs-lisp/package.el: Reduce autoloading before compiling.
23740         (package--autoloads-file-name)
23741         (package--activate-autoloads-and-load-path): New function.
23742         (package-activate-1): Delegate autoloading and load-path
23743         configuration to `package--activate-autoloads-and-load-path'.
23744         (package--compile): Before compilation, call
23745         `package--activate-autoloads-and-load-path' instead of
23746         `package-activate-1'.
23748 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
23750         * src/keyboard.c (read_key_sequence): Complete last fix (bug#21403).
23752 2015-09-07  Eli Zaretskii  <eliz@gnu.org>
23754         Fix deletion of symlinks to directories on MS-Windows
23755         * src/w32.c (sys_unlink): If 'unlink' fails, and the argument is a
23756         symlink to a directory, try again with 'rmdir'.
23757         (is_symlink): If the argument is a symlink to a directory, set a
23758         bit in the return value to indicate that fact.
23760 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
23762         * lisp/emacs-lisp/package.el (package-initialize): Set enable-at-startup
23763         When `package-initialize' is called as part of loading the init file,
23764         the user probably doesn't want it to be called again afterwards.
23765         In this situation, `package-initialize' now sets
23766         `package-enable-at-startup' to nil to prevent that.  The user can have
23767         the old behavior by setting this variable to t after the call to
23768         `package-initialize'.  (Bug#21423)
23769         * doc/emacs/package.texi (Package Installation): Document it.
23770         * doc/lispref/package.texi (Packaging Basics): Document it.
23771         * etc/NEWS: Document it.
23773 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
23775         Bump version of ntlm.el to 2.00
23776         * lisp/net/ntlm.el: Bump version to 2.00.  New maintainer.
23777         Add comm keyword.
23779 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
23781         * doc/misc/gnus.texi (Mail Source Specifiers):
23782         Allow :mailbox to be a list.
23784 2015-09-06  Dmitry Gutov  <dgutov@yandex.ru>
23786         * lisp/progmodes/etags.el (etags-tags-completion-table):
23787         Allow even one non-regular character before the implicit tag name.
23788         Reported at http://emacs.stackexchange.com/questions/15269/.
23790 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
23792         Add support for NTLMv2 authentication
23793         * lisp/net/ntlm.el (ntlm): New customization group.
23794         (ntlm-compatibility-level): New defcustom.
23795         (ntlm-compute-timestamp): New function.
23796         (ntlm-generate-nonce): Likewise.
23797         (ntlm-build-auth-response): Add support for NTLMv2 authentication.
23799 2015-09-06  Artur Malabarba  <bruce.connor.am@gmail.com>
23801         * lisp/emacs-lisp/package.el: Rename custom faces.
23802         All of the recently introduced faces, like `package-name-face', have
23803         been renamed to no end in `-face' to comply with the convention
23804         described in (info "(elisp) Defining Faces").
23805         (package-name, package-description)
23806         (package-status-built-in, package-status-external)
23807         (package-status-available, package-status-new)
23808         (package-status-held, package-status-disabled)
23809         (package-status-installed, package-status-dependency)
23810         (package-status-unsigned, package-status-incompat)
23811         (package-status-avail-obso): New faces.
23812         (package-menu--print-info-simple): Use them.
23814 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
23816         mail-source.el: Make the imap mail-source's :mailbox handle a list
23817         * lisp/gnus/mail-source.el (mail-source-fetch-imap):
23818         Allow :mailbox to be  a list.
23820 2015-09-06  Eric Abrahamsen  <eric@ericabrahamsen.net>
23822         nnimap.el: Handle nil arg to nnimap-request-group
23823         * lisp/gnus/nnimap.el (nnimap-request-group): Handle nil "info" arg.
23824         This arg isn't always passed in, check it's not nil before making it
23825         into a list.  The active arg will also be nil if the group is new,
23826         check for that.
23828 2015-09-06  Michael Albinus  <michael.albinus@gmx.de>
23830         File notifications: Support renaming over directory boundaries
23831         * lisp/filenotify.el (file-notify-handle-event):
23832         (file-notify--pending-event): Adapt docstring.
23833         (file-notify--descriptor, file-notify-callback): Reimplement in
23834         order to support renaming over directory boundaries.
23835         (file-notify-add-watch): Adapt `file-notify--descriptor' call.
23836         * doc/lispref/os.texi (File Notifications): Remove limitation of
23837         file renaming to the same directory.
23839 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
23841         Spelling fix (Bug#21420)
23843 2015-09-05  Nicolas Petton  <nicolas@petton.fr>
23845         Improve the semantic of map-some
23846         Update map-some to return the returned by the predicate, similar to
23847         seq-some.
23848         * lisp/emacs-lisp/map.el (map-some): Update the function to return the
23849           return value of the predicate.
23850         * test/automated/map-tests.el (test-map-some): Update the test to check
23851           for non-nil values only.
23853         Rename map-contains-key-p and map-some-p
23854         Remove the "-p" suffix from both function names.
23855         * lisp/emacs-lisp/map.el (map-contains-key, map-some):
23856           Rename the functions.
23857         * test/automated/map-tests.el (test-map-contains-key, test-map-some):
23858           Update both test functions.
23860         Improve the semantic of seq-some
23861         Update seq-some to return non-nil if the predicate returns non-nil for
23862         any element of the seq, in which case the returned value is the one
23863         returned by the predicate.
23864         * lisp/emacs-lisp/seq.el (seq-some): Update the function and its
23865           docstring.
23866         * test/automated/seq-tests.el (test-seq-some): Add a regression test.
23867         * doc/lispref/sequences.texi (Sequence Functions): Update the
23868           documentation for seq-some.
23870         Rename seq-some-p to seq-some and seq-contains-p to seq-contains
23871         * lisp/emacs-lisp/seq.el (seq-some, seq-contains): Rename the functions
23872           without the "-p" prefix.
23873         * test/automated/seq-tests.el (test-seq-some, test-seq-contains): Update
23874           the tests accordingly.
23875         * doc/lispref/sequences.texi (Sequence Functions): Update the
23876           documentation for seq.el.
23878 2015-09-05  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
23880         text-quoting-style for usage of fn names with ‘’
23881         * lisp/help.el (help--docstring-quote): Don’t assume
23882         text-quoting-style is ‘curve’ when generating usage strings for
23883         functions whose names contain curved quotes.
23885 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
23887         Fix fix for describe-function keybinding confusion
23888         This fixes a bug introduced by the previous patch.
23889         * lisp/help-fns.el (help-fns--signature):
23890         Last arg of help-fns--signature is now a buffer, or nil if a
23891         raw signature is wanted.  All callers changed.
23892         (describe-function-1): Use this to do the right thing with signatures.
23894 2015-09-05  Johan Bockgård  <bojohan@gnu.org>
23896         * doc/lispref/frames.texi (Mouse Tracking): Fix typo.
23898         Use PAT rather than UPAT in pcase macros
23899         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
23900         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>: Use PAT rather
23901           than UPAT.
23903 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
23905         Fix describe-function keybinding confusion
23906         * lisp/help-fns.el (describe-function-1): Compute signature
23907         in the original buffer, not in standard-output, so that
23908         substitute-command-keys uses the proper keybindings.
23909         This fixes Bug#21412, introduced in commit
23910         2015-06-11T10:23:46-0700!eggert@cs.ucla.edu.
23912 2015-09-05  Xue Fuqiao  <xfq.free@gmail.com>
23914         * doc/emacs/programs.texi (Program Modes): Remove an index entry.
23916 2015-09-05  Robert Pluim  <rpluim@gmail.com>  (tiny change)
23918         Avoid read error messages from 'inotify'
23919         * src/process.c (wait_reading_process_output): Add a
23920         'tls_available' set and manipulate it instead of 'Available' when
23921         checking TLS inputs.  Assign the value to 'Available' only if we
23922         find any TLS data waiting to be read.  This avoids error messages
23923         from 'inotify' that tries to read data it shouldn't.  (Bug#21337)
23925 2015-09-05  Eli Zaretskii  <eliz@gnu.org>
23927         Avoid errors in thing-at-point with 2nd argument non-nil
23928         * lisp/thingatpt.el (thing-at-point): Only call 'length' on
23929         sequences.  (Bug#21391)
23931 2015-09-05  Philip  <pipcet@gmail.com>  (tiny change)
23933         Fix segfaults due to using a stale face ID
23934         * src/xdisp.c (forget_escape_and_glyphless_faces): New function.
23935         (display_echo_area_1, redisplay_internal): Call it to avoid
23936         reusing stale face IDs for 'escape-glyph' and 'glyphless-char'
23937         faces, which could case a segfault if the frame's face cache was
23938         freed since the last redisplay.  (Bug#21394)
23939         * src/xfaces.c (free_realized_faces):
23940         Call forget_escape_and_glyphless_faces.
23941         * src/dispextern.h (forget_escape_and_glyphless_faces): Add prototype.
23943 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
23945         Fix minor problems with " in manual
23947 2015-09-04  Michael Albinus  <michael.albinus@gmx.de>
23949         * doc/misc/tramp.texi (Frequently Asked Questions): New item for ad-hoc
23950         multi-hop files.
23952 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
23954         Support automated ‘make check’ in non-C locale
23955         This lets the builder optionally test Emacs behavior in other locales.
23956         The C locale is still the default for tests.
23957         * test/automated/Makefile.in (TEST_LOCALE): New macro.
23958         (emacs): Use it.
23959         * test/automated/flymake-tests.el (flymake-tests--current-face):
23960         Use C locale for subprocesses so that tests behave as expected.
23961         * test/automated/python-tests.el:
23962         (python-shell-prompt-validate-regexps-1)
23963         (python-shell-prompt-validate-regexps-2)
23964         (python-shell-prompt-validate-regexps-3)
23965         (python-shell-prompt-validate-regexps-4)
23966         (python-shell-prompt-validate-regexps-5)
23967         (python-shell-prompt-validate-regexps-6)
23968         (python-shell-prompt-set-calculated-regexps-1):
23969         Adjust expected output to match locale.
23970         * test/automated/tildify-tests.el (tildify-test--test)
23971         (tildify-space-test--test, tildify-space-undo-test--test):
23972         This test assumes UTF-8 encoding.
23974 2015-09-03  Paul Eggert  <eggert@cs.ucla.edu>
23976         Fix some more docstring etc. quoting problems
23977         Mostly these fixes prevent the transliteration of apostrophes
23978         that should stay apostrophes.  Also, prefer curved quotes in
23979         Bahá’í proper names, as that’s the preferred Bahá’í style and
23980         these names are chock-full of non-ASCII characters anyway.
23981         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-autoload)
23982         (eieio-defclass-internal):
23983         * lisp/emacs-lisp/eieio.el (defclass):
23984         * lisp/hi-lock.el (hi-lock-mode):
23985         Don’t transliterate Lisp apostrophes when generating a
23986         doc string or diagnostic.
23987         * lisp/international/mule-diag.el (list-coding-systems-1):
23988         * lisp/international/ogonek.el (ogonek-jak, ogonek-how):
23989         * lisp/mail/sendmail.el (sendmail-query-user-about-smtp):
23990         * lisp/vc/ediff-mult.el (ediff-redraw-registry-buffer):
23991         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
23992         Substitute quotes before putting them in the help buffer.
23994 2015-09-03  Stefan Monnier  <monnier@iro.umontreal.ca>
23996         Re-add the notion of echo_prompt lost in the translation
23997         * src/keyboard.h (struct kboard): Replace echo_after_prompt with new
23998         echo_prompt which contains the actual string.  Update all uses.
23999         * src/keyboard.c (kset_echo_prompt): New function.
24000         (echo_update): Add echo_prompt at the very beginning.
24001         (read_char): Remove workaround for bug#19875, not needed any more.
24002         (read_key_sequence): Set echo_prompt rather than echo_string
24003         (bug#21403).
24004         (mark_kboards): Mark echo_prompt.
24006         Fix disassembly of non-compiled lexical functions (bug#21377)
24007         * lisp/emacs-lisp/bytecomp.el (byte-compile): Handle `closure' arg.
24008         * lisp/emacs-lisp/disass.el: Use lexical-binding.
24009         (disassemble): Recognize `closure's as well.
24010         (disassemble-internal): Use indirect-function and
24011         help-function-arglist, and accept `closure's.
24012         (disassemble-internal): Use interactive-form.
24013         (disassemble-1): Use functionp.
24015         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
24016         Don't compose inside verbatim blocks!
24018 2015-09-03  Mark Oteiza  <mvoteiza@udel.edu>
24020         * lisp/thingatpt.el (thing-at-point-uri-schemes): Add "man:"
24021         (bug#19441).
24023         * lisp/mpc.el (mpc--proc-connect): Handle unix sockets (bug#19394).
24025 2015-09-03  Dmitry Gutov  <dgutov@yandex.ru>
24027         vc-git-mode-line-string: Explicitly re-apply the face
24028         * lisp/vc/vc-git.el (vc-git-mode-line-string): Explicitly re-apply
24029         the face (bug#21404).
24031 2015-09-02  Paul Eggert  <eggert@cs.ucla.edu>
24033         Treat initial-scratch-message as a doc string
24034         * doc/emacs/building.texi (Lisp Interaction):
24035         * doc/lispref/os.texi (Startup Summary):
24036         * etc/NEWS: Document this.
24037         * lisp/startup.el (initial-scratch-message):
24038         Look up find-file’s key rather than hardcoding it.
24039         (command-line-1): Substitute the doc string.
24040         This also substitutes the quotes, which will help test display
24041         quoting at startup.
24043         Fix describe-char bug with glyphs on terminals
24044         * lisp/descr-text.el (describe-char): Terminals can have glyphs in
24045         buffers too, so don’t treat them differently from graphic displays.
24046         Without this fix, describe-char would throw an error on a terminal
24047         if given a glyph with a non-default face.
24049         Follow text-quoting-style in display table init
24050         This attempts to fix a problem reported by Alan Mackenzie in:
24051         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00112.html
24052         * doc/lispref/display.texi (Active Display Table):
24053         Mention how text-quoting-style affects it.
24054         * doc/lispref/help.texi (Keys in Documentation):
24055         Say how to set text-quoting-style in ~/.emacs.
24056         * etc/NEWS: Document the change.
24057         * lisp/startup.el (startup--setup-quote-display):
24058         Follow user preference if text-quoting-style is set.
24059         (command-line): Setup quote display again if user expresses
24060         a preference in .emacs.
24062 2015-09-02  K. Handa  <handa@gnu.org>
24064         Fix typo
24065         * src/ftfont.c (ftfont_drive_otf): otf_positioning_type_components_mask
24066         -> OTF_positioning_type_components_mask.
24068         Fix previous change
24069         * src/ftfont.c (ftfont_drive_otf): Remember some bits of
24070         OTF_Glyph->positioning_type in MFLTGlyphFT->libotf_positioning_type.
24072 2015-09-01  David Caldwell  <david@porkrind.org>  (tiny change)
24074         * lisp/vc/vc-hooks.el (vc-refresh-state): New command.
24075         Rename from vc-find-file-hook and make interactive.
24076         (vc-find-file-hook): Redefine as obsolete alias.
24078 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
24080         Escape ` and ' in doc
24081         Escape apostrophes and grave accents in docstrings if they are
24082         are supposed to stand for themselves and are not quotes.  Remove
24083         apostrophes from docstring examples like ‘'(calendar-nth-named-day
24084         -1 0 10 year)’ that confuse source code with data.  Do some other
24085         minor docstring fixups as well, e.g., insert a missing close quote.
24087 2015-09-01  Stefan Monnier  <monnier@iro.umontreal.ca>
24089         Generalize the prefix-command machinery of C-u
24090         * lisp/simple.el (prefix-command-echo-keystrokes-functions)
24091         (prefix-command-preserve-state-hook): New hooks.
24092         (internal-echo-keystrokes-prefix): New function.
24093         (prefix-command--needs-update, prefix-command--last-echo): New vars.
24094         (prefix-command-update, prefix-command-preserve): New functions.
24095         (reset-this-command-lengths): New compatibility definition.
24096         (universal-argument--mode): Call prefix-command-update.
24097         (universal-argument, universal-argument-more, negative-argument)
24098         (digit-argument): Call prefix-command-preserve-state.
24099         * src/keyboard.c: Call internal-echo-keystrokes-prefix to build
24100         the "prefix argument" to echo.
24101         (this_command_key_count_reset, before_command_key_count)
24102         (before_command_echo_length): Delete variables.
24103         (echo_add_key): Always add a space.
24104         (echo_char): Remove.
24105         (echo_dash): Don't give up when this_command_key_count is 0, since that
24106         is now the case after a prefix command.
24107         (echo_update): New function, extracted from echo_now.
24108         (echo_now): Use it.
24109         (add_command_key, read_char, record_menu_key): Remove old disabled code.
24110         (command_loop_1): Don't refrain from pushing an undo boundary when
24111         prefix-arg is set.  Remove other prefix-arg special case, now handled
24112         directly in the prefix commands instead.  But call echo_now if there's
24113         a prefix state to echo.
24114         (read_char, record_menu_key): Use echo_update instead of echo_char.
24115         (read_key_sequence): Use echo_now rather than echo_dash/echo_char.
24116         (Freset_this_command_lengths): Delete function.
24117         (syms_of_keyboard): Define Qinternal_echo_keystrokes_prefix.
24118         (syms_of_keyboard): Don't defsubr Sreset_this_command_lengths.
24119         * lisp/simple.el: Use those new hooks for C-u.
24120         (universal-argument--description): New function.
24121         (prefix-command-echo-keystrokes-functions): Use it.
24122         (universal-argument--preserve): New function.
24123         (prefix-command-preserve-state-hook): Use it.
24124         (command-execute): Call prefix-command-update if needed.
24125         * lisp/kmacro.el (kmacro-step-edit-prefix-commands)
24126         (kmacro-step-edit-prefix-index): Delete variables.
24127         (kmacro-step-edit-query, kmacro-step-edit-insert): Remove ad-hoc
24128         support for prefix arg commands.
24129         (kmacro-step-edit-macro): Don't bind kmacro-step-edit-prefix-index.
24130         * lisp/emulation/cua-base.el (cua--prefix-override-replay)
24131         (cua--shift-control-prefix): Use prefix-command-preserve-state.
24132         Remove now unused arg `arg'.
24133         (cua--prefix-override-handler, cua--prefix-repeat-handler)
24134         (cua--shift-control-c-prefix, cua--shift-control-x-prefix):
24135         Update accordingly.
24136         (cua--prefix-override-timeout): Don't call reset-this-command-lengths
24137         any more.
24138         (cua--keep-active, cua-exchange-point-and-mark): Don't set mark-active
24139         if the mark is not set.
24141 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
24143         Rework quoting in Emacs Lisp Introduction
24144         * doc/lispintro/emacs-lisp-intro.texi (Sample let Expression)
24145         (if in more detail, type-of-animal in detail, else): Rework the
24146         early example to use " rather than ' so that we don’t burden
24147         complete novices with the low-priority detail of text quoting style.
24148         (Complete zap-to-char, kill-region, Complete copy-region-as-kill)
24149         (kill-new function, kill-ring-yank-pointer)
24150         (Complete forward-sentence, Loading Files)
24151         (Code for current-kill, Code for current-kill, yank):
24152         Resurrect the Emacs 22 versions of the code, which uses grave
24153         quoting style in doc strings.
24154         (Complete zap-to-char): Mention how quoting works in doc strings.
24156         Setup quote display only if interactive
24157         * lisp/startup.el (command-line):
24158         Skip call to startup--setup-quote-display if noninteractive.
24159         Without this change, python-shell-prompt-validate-regexps-1
24160         fails in test/automated/python-tests.el when run in an
24161         en_US.utf8 locale on Fedora.
24163 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
24165         Use defalias at the top level
24166         * lisp/gnus/gnus-util.el (gnus-format-message):
24167         * lisp/net/tls.el (tls-format-message): Use defalias at the top level
24168         so as to make eval-and-compile unnecessary.  Thanks to Stefan Monnier.
24170 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
24172         terminal-init-w32console mimics command-line
24173         Problem reported by Eli Zaretskii.
24174         * lisp/startup.el (startup--setup-quote-display):
24175         New function, refactored from a part of ‘command-line’.
24176         (command-line): Use it.
24177         * lisp/term/w32console.el (terminal-init-w32console):
24178         Use it, so that this function stays consistent with ‘command-line’.
24180         Display replacement quotes with shadow glyphs
24181         * lisp/startup.el (command-line): When displaying ASCII
24182         replacements for curved quotes, use a shadow glyph instead of a
24183         regular one, to avoid ambiguity.
24185 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
24187         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Mask "Password:".
24189 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
24191         Docstring fixes re quotes in C code
24192         Fix some docstring quoting problems, mostly by escaping apostrophe.
24194 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
24196         Some Tramp password fixes
24197         * lisp/net/tramp.el (tramp-clear-passwd): Clear also the passwords
24198         of the hops.
24199         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Move "-p" "Password:"
24200         at the beginning of the command.  Otherwise, it could be
24201         interpreted as password prompt if the remote host echoes the
24202         command.
24203         (tramp-remote-coding-commands): Add "openssl enc -base64".
24205 2015-09-01  Dmitry Gutov  <dgutov@yandex.ru>
24207         Make vc-git-working-revision always return the commit hash
24208         * lisp/vc/vc-git.el (vc-git-working-revision):
24209         Return the commit hash (bug#21383).
24210         (vc-git--symbolic-ref): New function, extracted from above.
24211         (vc-git-mode-line-string): Use it.
24213 2015-09-01  K. Handa  <handa@gnu.org>
24215         Use the new type MFLTGlyphFT for MFLTGlyphString.glyphs
24216         * src/ftfont.c (MFLTGlyphFT): New type.
24217         (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_drive_otf)
24218         (ftfont_shape_by_flt): Make MFLTGlyphFT the actual type of
24219         elements in the array MFLTGlyphString.glyphs.
24221 2015-09-01  Stephen Leake  <stephen_leake@stephe-leake.org>
24223         Improve comments in elisp-mode.el, elisp-mode-tests.el
24224         * lisp/progmodes/elisp-mode.el: Clean up FIXMEs, comments.
24226         Delete Emacs 25 test in mode-local.el
24227         * lisp/cedet/mode-local.el (describe-mode-local-overload):
24228         Fix missed an edit in previous commit.
24230         Show all known mode-local overrides in *Help*
24231         * lisp/cedet/mode-local.el (describe-mode-local-overload):
24232         Assume Emacs 25. Add all known mode-local overrides.
24234 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
24236         * lisp/gnus/gnus-sum.el (gnus-summary-search-article):
24237         Ensure that the article where the search word is found is displayed
24238         and pointed to in the summary buffer.
24240 2015-08-31  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
24242         * lisp/newcomment.el (comment-dwim): Use `use-region-p'.
24243         When the region is active, but is empty (length 0), act as though
24244         the region was not active; that is, put a comment at the end of
24245         the line.  (Bug#21119)
24247 2015-08-31  Katsumi Yamaoka  <yamaoka@jpl.org>
24249         Port tls.el to older Emacs
24250         * lisp/net/tls.el (tls-format-message):
24251         Alias to format-message, or format if not available.
24252         (open-tls-stream): Use it.
24254 2015-08-31  Rüdiger Sonderfeld  <ruediger@c-plusplus.net>
24256         hideif.el: Recognize .h++ as C++ header
24257         * lisp/progmodes/hideif.el (hide-ifdef-header-regexp): Add .h++.
24259         isearch: Document character folding mode
24260         * lisp/isearch.el (isearch-forward):
24261         Mention `isearch-toggle-character-fold' in doc string.
24263 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
24265         Quoting fixes in ERC and Eshell
24266         * lisp/erc/erc-autoaway.el (erc-autoaway-set-away):
24267         * lisp/erc/erc-backend.el (define-erc-response-handler):
24268         * lisp/erc/erc-fill.el (erc-fill-static-center):
24269         * lisp/eshell/em-dirs.el (eshell-save-some-last-dir):
24270         * lisp/eshell/em-glob.el (eshell-glob-entries):
24271         * lisp/eshell/em-hist.el (eshell-save-some-history):
24272         * lisp/eshell/em-unix.el (eshell-remove-entries, eshell/rm)
24273         (eshell-shuffle-files):
24274         * lisp/eshell/esh-cmd.el (eshell-do-eval):
24275         * lisp/eshell/esh-proc.el (eshell-process-interact)
24276         (eshell-query-kill-processes):
24277         Respect ‘text-quoting-style’ in diagnostics and doc strings.
24279         Quoting fixes in Gnus
24280         * lisp/gnus/gnus-agent.el:
24281         (gnus-agent-possibly-synchronize-flags-server):
24282         * lisp/gnus/gnus-art.el (gnus-article-browse-delete-temp-files):
24283         * lisp/gnus/gnus-eform.el (gnus-edit-form):
24284         * lisp/gnus/gnus-group.el (gnus-group-edit-group)
24285         (gnus-group-nnimap-edit-acl):
24286         * lisp/gnus/gnus-topic.el (gnus-topic-edit-parameters):
24287         * lisp/gnus/mail-source.el (mail-source-delete-old-incoming):
24288         * lisp/gnus/message.el (message-strip-subject-encoded-words)
24289         (message-check-recipients, message-send-form-letter):
24290         * lisp/gnus/mm-decode.el (mm-display-part):
24291         * lisp/gnus/mm-uu.el (mm-uu-pgp-signed-extract-1):
24292         * lisp/gnus/mml-smime.el (mml-smime-get-dns-cert)
24293         (mml-smime-get-ldap-cert):
24294         * lisp/gnus/spam-report.el (spam-report-process-queue):
24295         Respect ‘text-quoting-style’ in diagnostics.
24296         * lisp/gnus/gnus-art.el (article-display-face)
24297         * lisp/gnus/gnus-fun.el (gnus-display-x-face-in-from):
24298         Use straight quoting in email.
24299         * lisp/gnus/rfc2231.el (rfc2231-decode-encoded-string):
24300         Escape apostrophes in doc strings.
24302         Quoting fixes in lisp mail, mh-e, net, url
24303         * lisp/mail/emacsbug.el (report-emacs-bug)
24304         (report-emacs-bug-hook): Use straight quotes in outgoing email,
24305         * lisp/mail/feedmail.el (feedmail-message-action-help-blat):
24306         * lisp/mail/rmail.el (rmail-unknown-mail-followup-to):
24307         * lisp/mail/rmailout.el (rmail-output-read-file-name):
24308         * lisp/net/imap.el (imap-interactive-login):
24309         * lisp/net/tls.el (open-tls-stream):
24310         * lisp/url/url-auth.el (url-register-auth-scheme):
24311         Respect ‘text-quoting-style’ in diagnostics.
24312         * lisp/mh-e/mh-e.el (mh-sortm-args):
24313         Quote docstring example using text quotes, not as a Lisp quote.
24315 2015-08-31  Stephen Leake  <stephen_leake@stephe-leake.org>
24317         Fix some byte-compiler warnings in EDE
24318         This fixes a bug that caused ede-generic-new-autoloader to overwrite the
24319         existing autoloader list, rather than add to it.
24320         * lisp/cedet/ede/auto.el (ede-project-class-files): Delete obsolete name
24321         argument to eieio class constructor.
24322         (ede-show-supported-projects): New.
24323         (ede-add-project-autoload): Replace obsolete `eieio-object-name-string'
24324         with (oref ... name).
24325         (ede-auto-load-project): Use slot name, not initarg key.
24326         * lisp/cedet/ede/generic.el (ede-generic-load)
24327         (ede-generic-find-matching-target): Use slot name, not initarg key.
24328         (ede-find-target): Use oref-default on class name.
24329         (ede-generic-new-autoloader): Delete obsolete name argument to eieio
24330         class constructor.
24331         (ede-enable-generic-projects): Make project type names unique.
24333 2015-08-31  Eli Zaretskii  <eliz@gnu.org>
24335         Fix directory accessibility tests for w32 network volumes
24336         * src/w32.c (faccessat): Don't fail with network volumes without a
24337         share.
24338         (w32_accessible_directory_p): Handle network volumes without a
24339         share.
24341         Fix handling long file names in readdir on MS-Windows
24342         * src/w32.c (sys_readdir): Append "\*" to the directory after
24343         converting it to UTF-16/ANSI, not before, to avoid overflowing the
24344         260-character limit on file names in filename_to_utf16/ansi.
24346         Make file-accessible-directory-p reliable on MS-Windows
24347         * src/w32.c (w32_accessible_directory_p): New function.
24348         * src/w32.h (w32_accessible_directory_p): Add prototype.
24349         * src/fileio.c (file_accessible_directory_p) [WINDOWSNT]: Call
24350         w32_accessible_directory_p to test a directory for accessibility
24351         by the current user.  (Bug#21346)
24352         (Ffile_accessible_directory_p): Remove the w32 specific caveat
24353         from the doc string.
24355 2015-08-31  Martin Rudalics  <rudalics@gmx.at>
24357         Don't call do_pending_window_change in signal handlers (Bug#21380)
24358         * src/gtkutil.c (xg_frame_resized):
24359         * src/xterm.c (x_set_window_size):
24360         * src/w32term.c (x_set_window_size): Don't call
24361         do_pending_window_change.
24363 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
24365         Quoting fixes in lisp/org
24366         * lisp/org/org-agenda.el (org-search-view, org-todo-list)
24367         (org-tags-view):
24368         * lisp/org/org-capture.el (org-capture-mode)
24369         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
24370         (org-ctags-ask-append-topic):
24371         * lisp/org/org.el (org-time-string-to-time)
24372         (org-time-string-to-absolute):
24373         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
24374         (org-ctags-ask-append-topic):
24375         * lisp/org/org.el (org-time-string-to-time)
24376         (org-time-string-to-absolute):
24377         Respect ‘text-quoting-style’ in diagnostics.
24378         * lisp/org/org-agenda.el (org-agenda-custom-commands)
24379         (org-agenda-dim-blocked-tasks): Plural of TODO is TODOs, not TODO’s.
24380         * lisp/org/org-capture.el (org-capture-fill-template):
24381         Avoid contraction in output file that might be ASCII.
24382         * lisp/org/org-compat.el (format-message):
24383         Define if not already defined, for backward compatibility.
24384         * lisp/org/org-src.el (org-edit-src-save):
24385         * lisp/org/org.el (org-cycle, org-ctrl-c-ctrl-c):
24386         Escape apostrophes in diagnostics.
24388         Treat “instead” strings as docstrings
24389         * lisp/emacs-lisp/bytecomp.el (byte-compile-form):
24390         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
24391         Substitute quotes in instead strings.
24393 2015-08-31  Nicolas Petton  <nicolas@petton.fr>
24395         Better documentation of seq-let
24396         * doc/lispref/sequences.texi (Sequence Functions): Rephrase the
24397         documentation of seq-let.
24399 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
24401         * lisp/international/ccl.el: Fix quoting.
24403         Quoting fixes in lisp/international and lisp/leim
24404         * lisp/international/ccl.el (ccl-dump, ccl-dump-call):
24405         * lisp/international/ja-dic-utl.el (skkdic-lookup-key):
24406         * lisp/international/mule-cmds.el:
24407         (select-safe-coding-system-interactively, leim-list-file-name):
24408         * lisp/international/quail.el (quail-use-package, quail-help):
24409         * lisp/international/titdic-cnv.el (tit-process-header)
24410         (miscdic-convert):
24411         Respect text quoting style in doc strings and diagnostics.
24412         * lisp/international/quail.el (lisp/international/quail.el):
24413         * lisp/leim/quail/ethiopic.el ("ethiopic"):
24414         Escape apostrophes in doc strings.
24416         Make ‘text-quoting-style’ a plain defvar
24417         It doesn’t need customization, as it’s likely useful only by experts.
24418         Suggested by Stefan Monnier in:
24419         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg01020.html
24420         * lisp/cus-start.el: Remove doc.c section for builtin customized vars.
24422         Quoting fixes in lisp/textmodes
24423         * lisp/textmodes/bibtex.el (bibtex-validate)
24424         (bibtex-validate-globally, bibtex-search-entries):
24425         * lisp/textmodes/ispell.el (ispell-command-loop):
24426         * lisp/textmodes/page-ext.el (search-pages, pages-directory):
24427         * lisp/textmodes/texinfmt.el (texinfmt-version)
24428         (texinfo-format-region, texinfo-format-buffer-1):
24429         * lisp/textmodes/two-column.el (2C-split):
24430         Respect text quoting style in doc strings and diagnostics.
24431         * lisp/textmodes/conf-mode.el (conf-mode-map, conf-quote-normal):
24432         * lisp/textmodes/sgml-mode.el (sgml-specials, sgml-mode):
24433         Escape apostrophes in doc strings.
24435         Documentation fixes re quotes
24436         Prefer curved quotes in examples if users will typically see
24437         curved quotes when the examples run.
24438         Mention format-message when appropriate.
24439         Don’t use @code in examples.
24440         Quote an apostrophe with @kbd.
24442         Quoting fixes in lisp/progmodes
24443         * lisp/progmodes/cc-engine.el (c-bos-report-error):
24444         * lisp/progmodes/cpp.el (cpp-edit-reset):
24445         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
24446         * lisp/progmodes/etags.el (etags-tags-apropos-additional)
24447         (etags-tags-apropos, list-tags, tags-apropos):
24448         * lisp/progmodes/executable.el (executable-set-magic):
24449         * lisp/progmodes/octave.el (octave-sync-function-file-names)
24450         (octave-help, octave-find-definition-default-filename)
24451         (octave-find-definition):
24452         Respect text quoting style in doc strings and diagnostics.
24453         * lisp/progmodes/cc-langs.el (c-populate-syntax-table):
24454         * lisp/progmodes/verilog-mode.el (verilog-auto-reset-widths):
24455         * lisp/progmodes/vhdl-mode.el (vhdl-electric-quote):
24456         Escape apostrophes in doc strings.
24457         * lisp/progmodes/cmacexp.el (c-macro-expansion):
24458         Use straight quoting in ASCII comment.
24459         * lisp/progmodes/idlwave.el (idlwave-auto-fill-split-string)
24460         (idlwave-pad-keyword):
24461         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate)
24462         (vhdl-electric-open-bracket, vhdl-electric-close-bracket):
24463         (vhdl-electric-semicolon, vhdl-electric-comma)
24464         (vhdl-electric-period, vhdl-electric-equal):
24465         Use directed quotes in diagnostics and doc strings.
24467 2015-08-30  Xue Fuqiao  <xfq.free@gmail.com>
24469         Minor documentation and NEWS tweak
24470         * doc/lispintro/emacs-lisp-intro.texi (fwd-para let):
24471         Add an index entry.
24472         * etc/NEWS: Fix a typo in character-fold-to-regexp.
24474 2015-08-30  Michael Albinus  <michael.albinus@gmx.de>
24476         * lisp/net/tramp-sh.el (tramp-convert-file-attributes):
24477         Revert patch from 2015-08-24.  Tramp shall behave like for local files.
24478         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
24479         Adapt test.
24481 2015-08-30  Paul Eggert  <eggert@cs.ucla.edu>
24483         Text quoting fixes in cedet, emulation, emacs-lisp
24484         * lisp/cedet/ede.el (ede-check-project-directory):
24485         * lisp/cedet/semantic/analyze/debug.el
24486         (semantic-analyzer-debug-insert-include-summary):
24487         * lisp/cedet/semantic/bovine/c.el (semantic-c-describe-environment):
24488         * lisp/cedet/semantic/decorate/include.el
24489         (semantic-decoration-unknown-include-describe)
24490         (semantic-decoration-all-include-summary):
24491         * lisp/cedet/semantic/ia.el (semantic-ia-fast-jump):
24492         * lisp/emulation/edt.el (edt-load-keys):
24493         * lisp/emulation/viper-cmd.el
24494         (viper-display-current-destructive-command)
24495         (viper-query-replace, viper-brac-function):
24496         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-compile):
24497         * lisp/emulation/viper-macs.el (viper-unrecord-kbd-macro):
24498         Respect text quoting style in doc string or diagnostic.
24499         * lisp/cedet/mode-local.el (describe-mode-local-overload):
24500         Use format-message to avoid overtranslating quotes.
24501         * lisp/emacs-lisp/checkdoc.el (checkdoc-in-sample-code-p):
24502         Escape an apostrophe in a docstring.
24503         * lisp/emacs-lisp/warnings.el (lwarn): Fix doc string.
24505 2015-08-29  Daniel Colascione  <dancol@dancol.org>
24507         Fix which-func for curly quotes: look for symbol, not message
24508         * lisp/progmodes/which-func.el (which-func-ff-hook): Look for new
24509         imenu-unavailable error symbol instead of trying to match message
24510         exactly.
24511         * lisp/imenu.el (imenu-unavailable): New error.
24512         (imenu-unavailable-error): New function.
24514 2015-08-29  Eli Zaretskii  <eliz@gnu.org>
24516         Fix Python tests on MS-Windows
24517         * test/automated/python-tests.el
24518         (python-shell-calculate-command-1): Run python-shell-interpreter
24519         through shell-quote-argument before comparing with what
24520         python-shell-calculate-command returns.
24521         (python-shell-calculate-pythonpath-1)
24522         (python-shell-calculate-pythonpath-2)
24523         (python-shell-calculate-process-environment-2): Use path-separator
24524         instead of a literal ':'.
24525         (python-shell-calculate-exec-path-2)
24526         (python-shell-calculate-exec-path-3)
24527         (python-shell-calculate-exec-path-4)
24528         (python-shell-with-environment-1)
24529         (python-shell-with-environment-2): Run "/env/bin" through
24530         expand-file-name before comparing with exec-path.  (Bug#21375)
24532 2015-08-29  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
24534         Use Core Text types/functions/variables/enumerators directly
24535         * src/macfont.h (FontDescriptorRef, FontRef, FontSymbolicTraits)
24536         (CharacterCollection): Remove typedefs.  All uses replaced with
24537         definitions.
24538         (MAC_FONT_NAME_ATTRIBUTE, MAC_FONT_FAMILY_NAME_ATTRIBUTE)
24539         (MAC_FONT_TRAITS_ATTRIBUTE, MAC_FONT_SIZE_ATTRIBUTE)
24540         (MAC_FONT_CASCADE_LIST_ATTRIBUTE)
24541         (MAC_FONT_CHARACTER_SET_ATTRIBUTE, MAC_FONT_LANGUAGES_ATTRIBUTE)
24542         (MAC_FONT_FORMAT_ATTRIBUTE, MAC_FONT_SYMBOLIC_TRAIT)
24543         (MAC_FONT_WEIGHT_TRAIT, MAC_FONT_WIDTH_TRAIT)
24544         (MAC_FONT_SLANT_TRAIT): Remove macros.  All uses replaced with
24545         definitions.
24546         (MAC_FONT_TRAIT_ITALIC, MAC_FONT_TRAIT_BOLD)
24547         (MAC_FONT_TRAIT_MONO_SPACE, MAC_FONT_TRAIT_COLOR_GLYPHS)
24548         (MAC_FONT_FORMAT_BITMAP)
24549         (MAC_CHARACTER_COLLECTION_IDENTITY_MAPPING)
24550         (MAC_CHARACTER_COLLECTION_ADOBE_JAPAN1): Remove enumerators.
24551         All uses replaced with definitions.
24552         (kCTFontTraitItalic, kCTFontTraitBold, kCTFontTraitMonoSpace)
24553         (kCTFontTraitColorGlyphs, kCTCharacterCollectionIdentityMapping)
24554         (kCTCharacterCollectionAdobeJapan1 kCTFontOrientationDefault):
24555         Add compatibility enumerators for older versions.
24556         (mac_font_descriptor_create_with_attributes)
24557         (mac_font_descriptor_create_matching_font_descriptors)
24558         (mac_font_descriptor_create_matching_font_descriptor)
24559         (mac_font_descriptor_copy_attribute)
24560         (mac_font_descriptor_supports_languages)
24561         (mac_font_create_with_name, mac_font_get_size)
24562         (mac_font_copy_family_name, mac_font_copy_character_set)
24563         (mac_font_get_glyphs_for_characters, mac_font_get_ascent)
24564         (mac_font_get_descent, mac_font_get_leading)
24565         (mac_font_get_underline_position)
24566         (mac_font_get_underline_thickness, mac_font_copy_graphics_font)
24567         (mac_font_copy_non_synthetic_table): Remove macros.  All uses
24568         replaced with definitions.
24569         (mac_font_create_preferred_family_for_attributes)
24570         (mac_font_get_advance_width_for_glyph)
24571         (mac_font_get_bounding_rect_for_glyph)
24572         (mac_font_create_available_families, mac_font_shape):
24573         Remove macros for renamed functions.
24574         (mac_nsctfont_copy_font_descriptor): Remove unused macro.
24575         * src/macfont.m (mac_font_descriptor_supports_languages):
24576         Rename from mac_ctfont_descriptor_supports_languages.
24577         (mac_font_create_preferred_family_for_attributes): Rename from
24578         mac_ctfont_create_preferred_family_for_attributes.
24579         (mac_font_get_advance_width_for_glyph): Rename from
24580         mac_ctfont_get_advance_width_for_glyph.
24581         Use kCTFontOrientationDefault also for older versions.
24582         (mac_font_get_bounding_rect_for_glyph): Rename from
24583         mac_ctfont_get_bounding_rect_for_glyph.
24584         Use kCTFontOrientationDefault also for older versions.
24585         (mac_font_create_available_families): Rename from
24586         mac_ctfont_create_available_families.
24587         (mac_font_equal_in_postscript_name): Rename from
24588         mac_ctfont_equal_in_postscript_name.  All uses changed.
24589         (mac_font_create_line_with_string_and_font): Rename from
24590         mac_ctfont_create_line_with_string_and_font.  All uses changed.
24591         (mac_font_shape): Rename from mac_ctfont_shape.
24592         (mac_font_family_compare): Remove unused declaration.
24594 2015-08-29  Paul Eggert  <eggert@cs.ucla.edu>
24596         Fix minor text quoting in calc, calendar, vc
24597         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
24598         * lisp/calc/calc-help.el (calc-j-prefix-help):
24599         * lisp/calc/calc-misc.el (calc-help):
24600         * lisp/calc/calc.el (calc-algebraic-mode, calc-mode):
24601         Escape an apostrophe in a docstring.
24602         * lisp/calc/calc-forms.el (calc-hms-notation):
24603         * lisp/calc/calc-mode.el (calc-display-raw, calc-algebraic-mode):
24604         Escape an apostrophe in a diagnostic.
24605         * lisp/calc/calc-misc.el (calc-help):
24606         * lisp/calendar/diary-lib.el (diary-include-files):
24607         * lisp/calendar/todo-mode.el (todo-prefix, todo-item-mark):
24608         * lisp/vc/diff-mode.el (diff-delete-trailing-whitespace):
24609         * lisp/vc/ediff-diff.el (ediff-same-contents):
24610         * lisp/vc/ediff-merg.el (ediff-re-merge):
24611         * lisp/vc/ediff-ptch.el (ediff-patch-file-internal):
24612         * lisp/vc/ediff-util.el (ediff-test-save-region)
24613         (ediff-status-info):
24614         * lisp/vc/ediff.el (ediff-merge-revisions)
24615         (ediff-merge-revisions-with-ancestor):
24616         * lisp/vc/pcvs.el (cvs-mode-checkout, cvs-vc-command-advice):
24617         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
24618         Respect text quoting style in doc string or diagnostic.
24619         * lisp/calc/calc-prog.el (calc-kbd-push, calc-kbd-pop):
24620         * lisp/vc/add-log.el (change-log-goto-source):
24621         Avoid double-formatting.
24622         * lisp/vc/ediff-init.el (format-message):
24623         New backward-compatibility alias.
24625 2015-08-28  Paul Eggert  <eggert@cs.ucla.edu>
24627         Fix minor text quoting problems in lisp top level
24628         * lisp/apropos.el (apropos-describe-plist):
24629         * lisp/cus-theme.el (customize-themes):
24630         * lisp/dired.el (dired-log):
24631         * lisp/help-fns.el (describe-variable):
24632         * lisp/hexl.el (hexl-insert-multibyte-char):
24633         * lisp/info.el (Info-finder-find-node):
24634         * lisp/json.el (json-read-string):
24635         * lisp/novice.el (disabled-command-function)
24636         (disabled-command-function):
24637         * lisp/startup.el (normal-mouse-startup-screen):
24638         * lisp/woman.el (WoMan-log, WoMan-warn):
24639         Respect text quoting style in doc string or diagnostic.
24640         * lisp/replace.el (replace-character-fold):
24641         * src/syntax.c (Fmodify_syntax_entry):
24642         Escape an apostrophe in a docstring.
24643         * lisp/tempo.el (tempo-define-template):
24644         Remove confusing apostrophe from docstring.
24645         * lisp/whitespace.el (whitespace-mark-x):
24646         Use directed quotes in docstring.
24648 2015-08-28  Simen Heggestøyl  <simenheg@gmail.com>
24650         Fix indentation rule in css-mode
24651         * lisp/textmodes/css-mode.el (css-smie-rules): Fix indentation of
24652         brackets in presence of pseudo-selectors.  (Bug#21328)
24654 2015-08-28  Eli Zaretskii  <eliz@gnu.org>
24656         Fix a bug in recording a macro while flyspell-mode is active
24657         * lisp/subr.el (sit-for): Don't call read-event when recording a
24658         macro.  (Bug#21329)
24660 2015-08-27  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
24662         Tweak startup screen quoting
24663         * lisp/startup.el (normal-splash-screen): Use standard
24664         "M-" abbrevation rather than a confusingly-different one.
24665         (normal-no-mouse-startup-screen): Follow ‘text-quoting-style’.
24667 2015-08-27  Paul Eggert  <eggert@cs.ucla.edu>
24669         Add test case for ‘format’ bug and refactor
24670         * src/editfns.c (styled_format): Refactor internally, mostly by
24671         moving declarations closer to uses.  This should not affect behavior.
24672         * test/automated/textprop-tests.el (textprop-tests-format): New test.
24674         Fix ‘format’ bug with property offsets
24675         * src/editfns.c (styled_format): Fix recently-introduced ‘format’
24676         bug in calculating string property offsets (Bug#21351).
24678         Use straight quotes in lib-src diagnostics
24679         These auxiliary programs can’t use Emacs’s text-quoting-style,
24680         and it’s too much trouble to redo that mechanism by hand.
24681         So just use straight quotes for now.
24682         * lib-src/ebrowse.c (main):
24683         * lib-src/emacsclient.c (decode_options, main):
24684         * lib-src/etags.c (Ada_help, default_C_help, Cplusplus_help)
24685         (Forth_help, HTML_help, Lisp_help, Makefile_help, Objc_help)
24686         (Perl_help, PHP_help, Python_help, Scheme_help, TeX_help, auto_help)
24687         (none_help, print_language_names, print_help, add_regex)
24688         (suggest_asking_for_help):
24689         * lib-src/make-docfile.c (write_c_args, scan_c_stream):
24690         Use straight quotes in diagnostics.
24692         ‘text-quoting-style’ fixes for admin
24693         * admin/admin.el (cusver-scan, cusver-check):
24694         * admin/authors.el (authors-canonical-file-name):
24695         * admin/bzrmerge.el (bzrmerge-missing):
24696         Respect ‘text-quoting-style’ in diagnostics.
24698 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
24700         Assume GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS
24701         This removes the need for GCPRO1 etc.  Suggested by Stefan Monnier in:
24702         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00918.html
24703         * doc/lispref/internals.texi (Writing Emacs Primitives):
24704         * etc/NEWS:
24705         Document the change.
24706         * src/alloc.c (gcprolist, dump_zombies, MAX_ZOMBIES, zombies)
24707         (nzombies, ngcs, avg_zombies, max_live, max_zombies, avg_live)
24708         (Fgc_status, check_gcpros, relocatable_string_data_p, gc-precise):
24709         * src/bytecode.c (mark_byte_stack) [BYTE_MARK_STACK]:
24710         * src/eval.c (gcpro_level) [DEBUG_GCPRO]:
24711         * src/lisp.h (struct handler.gcpro, struct gcpro, GC_MARK_STACK)
24712         (GC_USE_GCPROS_AS_BEFORE, GC_MAKE_GCPROS_NOOPS)
24713         (GC_MARK_STACK_CHECK_GCPROS, GC_USE_GCPROS_CHECK_ZOMBIES)
24714         (BYTE_MARK_STACK, GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5, GCPRO6)
24715         (GCPRO7, UNGCPRO, RETURN_UNGCPRO):
24716         Remove.  All uses removed.  The code now assumes
24717         GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS.
24718         * src/bytecode.c (relocate_byte_stack):
24719         Rename from unmark_byte_stack, since it now only relocates.
24720         All callers changed.
24721         * src/frame.c (make_frame): Add an IF_LINT to pacify GCC 5.2
24722         with GCPROs removed.
24723         * src/systime.h: Use EMACS_LISP_H as the canary instead of GCPRO1.
24724         * test/automated/finalizer-tests.el (finalizer-basic)
24725         (finalizer-circular-reference, finalizer-cross-reference)
24726         (finalizer-error):
24727         * test/automated/generator-tests.el (cps-test-iter-close-finalizer):
24728         Remove tests, as they depend on gc-precise.
24730 2015-08-26  Nicolas Petton  <nicolas@petton.fr>
24732         Improve seq-concatenate for new sequence types
24733         Use the new `seq-into-sequence' in seqs passed to `seq-concatenate' to
24734         ensure that concatenation happens on sequences only.  This makes it
24735         possible to use `seq-concatenate' for new types of seqs.
24736         * lisp/emacs-lisp/seq.el (seq-into-sequence, seq-concatenate):
24737         New function used in `seq-concatenate'.
24738         * test/automated/seq-tests.el (test-seq-into-sequence): New unit test
24739         for seq-into-sequence.
24741 2015-08-26  Stephen Leake  <stephen_leake@stephe-leake.org>
24743         Add mode local overrides to xref-find-definitions
24744         * lisp/cedet/mode-local.el (xref-mode-local--override-present)
24745         (xref-mode-local-overload): New; add mode local overrides to
24746         xref-find-definitions.
24747         * test/automated/elisp-mode-tests.el: Add mode local override tests.
24748         (xref-elisp-test-run): Handle indented defuns.
24749         (xref-elisp-generic-*): Improve doc strings.
24750         * lisp/progmodes/elisp-mode.el (elisp-xref-find-def-functions): New.
24751         (elisp--xref-find-definitions): Use it.
24753         Add mode local overrides to describe-function
24754         * lisp/cedet/mode-local.el (describe-mode-local-overload):
24755         New; add mode local overrides to describe-function.
24756         * etc/NEWS: Document change.
24758 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
24760         Prefer straight quoting in some etc text files
24761         These files are plain text and might be used by non-Emacs apps.
24762         They’re mostly ASCII, so just use straight quotes.
24764         Fix quoting in ‘message_with_string’
24765         * src/nsfont.m (nsfont_open): Use directed quotes in format; they
24766         should work now.
24767         * src/xdisp.c (message_to_stderr): New function, refactored from
24768         part of ‘message3_nolog’.
24769         (message3_nolog): Use it.
24770         (message_with_string): Use it.  Don’t mishandle NUL bytes when
24771         noninteractive.  Prefer AUTO_STRING when it’s most likely faster.
24772         Use ‘format-message’, not ‘format’, so that quotes are translated.
24774 2015-08-26  Eli Zaretskii  <eliz@gnu.org>
24776         Mention false positives of file-accessible-directory on w32
24777         * src/fileio.c (Ffile_accessible_directory_p): Doc fix.
24778         (Bug#21346)
24780 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
24782         Treat error strings as help
24783         * src/print.c (print_error_message): Translate quotes and command
24784         keys in errmsg so that users see, e.g., "Symbol’s value as
24785         variable is void: foo" when text-quoting-style is curved.
24787 2015-08-26  Michael Albinus  <michael.albinus@gmx.de>
24789         * lisp/net/tramp-cache.el (top): Use `message', not `format-message'.
24791 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
24793         Top-level elisp files respect ‘text-quoting-style’
24794         In top-level elisp files, use format-message in diagnostic formats,
24795         so that they follow user preference as per ‘text-quoting-style’
24796         rather than being hard-coded to quote `like this'.
24797         * lisp/allout.el (allout-get-configvar-values):
24798         * lisp/apropos.el (apropos-symbols-internal):
24799         * lisp/dired-aux.el (dired-do-shell-command, dired-create-files)
24800         (dired-do-create-files-regexp, dired-create-files-non-directory):
24801         * lisp/dired-x.el (dired-do-run-mail):
24802         * lisp/dired.el (dired-log, dired-dnd-handle-local-file):
24803         * lisp/disp-table.el (standard-display-european):
24804         * lisp/find-dired.el (find-dired):
24805         * lisp/forms.el (forms-mode):
24806         * lisp/ido.el (ido-buffer-internal):
24807         * lisp/info.el (Info-index-next):
24808         * lisp/outline.el (outline-invent-heading):
24809         * lisp/printing.el (pr-ps-outfile-preprint, pr-i-ps-send):
24810         * lisp/proced.el (proced-log):
24811         * lisp/ps-print.el (ps-print-preprint, ps-get-size):
24812         * lisp/recentf.el (recentf-open-files, recentf-save-list):
24813         * lisp/savehist.el (savehist-save):
24814         * lisp/server.el (server-ensure-safe-dir):
24815         * lisp/ses.el (ses-rename-cell):
24816         * lisp/simple.el (list-processes--refresh):
24817         * lisp/startup.el (command-line):
24818         * lisp/strokes.el (strokes-unset-last-stroke)
24819         (strokes-execute-stroke):
24820         Use format-message so that quotes are restyled.
24821         * lisp/cus-edit.el (custom-raised-buttons, customize-browse):
24822         Don’t quote ‘raised’.
24823         * lisp/descr-text.el (describe-char):
24824         * lisp/dirtrack.el (dirtrack-debug-message):
24825         * lisp/hexl.el (hexl-insert-multibyte-char):
24826         Apply substitute-command-keys to help string.
24827         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
24828         (wdired-do-perm-changes):
24829         Let dired-log do the formatting.
24831 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
24833         Go back to grave quoting in Tramp
24834         * lisp/net/tramp-adb.el:
24835         * lisp/net/tramp-cache.el:
24836         * lisp/net/tramp-compat.el:
24837         * lisp/net/tramp-gvfs.el:
24838         * lisp/net/tramp-gw.el:
24839         * lisp/net/tramp-sh.el:
24840         * lisp/net/tramp-smb.el:
24841         * lisp/net/tramp.el:
24842         Stick with grave quoting in diagnostics strings.  This is more
24843         portable to older Emacs, desirable for Tramp.
24844         * lisp/net/tramp-cache.el: Use ‘format-message’, not ‘format’,
24845         for diagnostic that needs requoting.
24846         * lisp/net/tramp-compat.el (format-message):
24847         Fall back on simple ‘format’, since that’s good enough now.
24849         Go back to grave quoting in Gnus
24850         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
24851         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
24852         (gnus-agent-fetch-headers):
24853         * lisp/gnus/gnus-int.el (gnus-start-news-server):
24854         * lisp/gnus/gnus-registry.el:
24855         (gnus-registry--split-fancy-with-parent-internal)
24856         (gnus-registry-post-process-groups):
24857         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
24858         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
24859         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
24860         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
24861         * lisp/gnus/spam.el (spam-check-blackholes):
24862         Stick with grave quoting in diagnostics strings.  This is more
24863         portable to older Emacs, desirable for Gnus.
24865         Fix customization of text-quoting-style
24866         * lisp/cus-edit.el (custom-guess-type, custom-variable-documentation):
24867         * lisp/wid-edit.el (widget-docstring):
24868         Get raw docstring here since it’s cooked later and should not be
24869         cooked twice.
24870         * lisp/cus-edit.el (custom-group-value-create):
24871         Cook the docstring before inserting it.
24872         * lisp/cus-start.el (text-quoting-style): Quote the customization
24873         docstrings according to the new rules.  Give curved examples.
24875         format-message now curves ` and '
24876         That way, the caller doesn’t have to use curved quotes to
24877         get diagnostics that match the text-quoting-style preferences.
24878         Suggested by Dmitry Gutov in:
24879         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00893.html
24880         This means we no longer need %qs, so remove that format.
24881         While we’re at it, fix an unlikely bug and lessen the pressure
24882         on the garbage collector by processing the string once rather
24883         than twice in the usual case.
24884         * doc/lispref/strings.texi (Formatting Strings):
24885         * etc/NEWS: Document this.
24886         * lisp/subr.el (format-message): Remove; now done in C.
24887         * src/callint.c (Fcall_interactively):
24888         * src/editfns.c (Fmessage, Fmessage_box):
24889         Use Fformat_message instead of Finternal__text_restyle
24890         followed by Fformat.
24891         * src/doc.c (LSQM, RSQM): Remove; all uses changed to use
24892         uLSQM and uRSQM.
24893         (Fsubstitute_command_keys): Prefer AUTO_STRING to build_string
24894         when pure ASCII now suffices.  Fix unlikely bug when parsing
24895         unibyte string containing non-ASCII bytes.  Use inline code
24896         rather than memcpy, as it’s a tiny number of bytes.
24897         (Finternal__text_restyle): Remove; no longer used.
24898         (syms_of_doc): Don’t declare it.
24899         * src/editfns.c (Fformat): Rewrite in terms of new function
24900         ‘styled_format’.
24901         (Fformat_message): New function, moved here from subr.el.
24902         (styled_format): New function, with the old guts of Fformat,
24903         except it now optionally transliterates quotes, and it transliterates
24904         traditional grave accent and apostrophe quoting as well.
24905         Remove recently-added q flag; no longer needed or used.
24906         (syms_of_editfns): Define format-message.
24907         * src/lisp.h (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
24908         Remove; no longer need to be global symbols.
24909         * src/xdisp.c (vadd_to_log): Use Fformat_message, not Fformat,
24910         so that callers can use `%s'.
24911         * src/image.c (image_size_error, xbm_load_image, xbm_load)
24912         (xpm_load, pbm_load, png_load_body, jpeg_load_body, tiff_load)
24913         (gif_load, imagemagick_load_image, imagemagick_load, svg_load)
24914         (svg_load_image, gs_load, x_kill_gs_process):
24915         * src/lread.c (load_warn_old_style_backquotes):
24916         * src/xfaces.c (load_pixmap):
24917         * src/xselect.c (x_clipboard_manager_error_1):
24918         Use `%s' instead of %qs in formats.
24920 2015-08-25  Eli Zaretskii  <eliz@gnu.org>
24922         Minor fixes in doc/emacs/search.texi
24923         * doc/emacs/search.texi (Basic Isearch): Fix a typo.
24924         (Special Isearch): Use @w{} to generate several consecutive spaces
24925         with Texinfo 6.  (Bug#21345)
24927 2015-08-25  Michael Albinus  <michael.albinus@gmx.de>
24929         * lisp/net/tramp-sh.el (tramp-awk-encode, tramp-awk-decode)
24930         (tramp-awk-coding-test): New defconsts.
24931         (tramp-remote-coding-commands): Use them.
24932         (tramp-find-inline-encoding): Check for Perl only if necessary.
24934 2015-08-25  Xue Fuqiao  <xfq.free@gmail.com>
24936         * doc/lispintro/emacs-lisp-intro.texi (Run a Program): Add some
24937         index entries for the special form `quote'.
24939 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
24941         Spelling fixes
24943         Gnus format-message typo fix
24944         * lisp/gnus/gnus-util.el (gnus-format-message):
24945         Fix typo when running in older Emacs.
24947         Prefer directed to neutral quotes in docstings and diagnostics.
24948         In docstrings, escape apostrophes that would otherwise be translated
24949         to curved quotes using the newer, simpler rules.
24950         * admin/unidata/unidata-gen.el (unidata-gen-table):
24951         * lisp/align.el (align-region):
24952         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet):
24953         * lisp/bookmark.el (bookmark-default-annotation-text):
24954         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
24955         * lisp/calc/calc-lang.el (math-read-giac-subscr)
24956         (math-read-math-subscr):
24957         * lisp/calc/calc-misc.el (report-calc-bug):
24958         * lisp/calc/calc-prog.el (calc-fix-token-name)
24959         (calc-read-parse-table-part):
24960         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
24961         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
24962         * lisp/dabbrev.el (dabbrev-expand):
24963         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
24964         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
24965         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
24966         * lisp/emulation/viper-cmd.el (viper-toggle-search-style):
24967         * lisp/erc/erc-button.el (erc-nick-popup):
24968         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login):
24969         * lisp/eshell/em-dirs.el (eshell/cd):
24970         * lisp/eshell/em-glob.el (eshell-glob-regexp):
24971         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
24972         * lisp/eshell/esh-arg.el (eshell-parse-arguments):
24973         * lisp/eshell/esh-opt.el (eshell-show-usage):
24974         * lisp/files-x.el (modify-file-local-variable):
24975         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer)
24976         (filesets-update-pre010505):
24977         * lisp/find-cmd.el (find-generic, find-to-string):
24978         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
24979         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
24980         (gnus-agent-fetch-headers):
24981         * lisp/gnus/gnus-int.el (gnus-start-news-server):
24982         * lisp/gnus/gnus-registry.el:
24983         (gnus-registry--split-fancy-with-parent-internal):
24984         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
24985         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
24986         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
24987         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
24988         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
24989         * lisp/gnus/spam.el (spam-check-blackholes):
24990         * lisp/mail/feedmail.el (feedmail-run-the-queue):
24991         * lisp/mpc.el (mpc-playlist-rename):
24992         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
24993         * lisp/net/mairix.el (mairix-widget-create-query):
24994         * lisp/net/tramp-cache.el:
24995         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
24996         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
24997         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
24998         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
24999         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
25000         (org-babel-goto-named-result):
25001         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
25002         * lisp/org/ob-ref.el (org-babel-ref-resolve):
25003         * lisp/org/org-agenda.el (org-agenda-prepare):
25004         * lisp/org/org-bibtex.el (org-bibtex-fields):
25005         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
25006         (org-clock-resolve):
25007         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
25008         * lisp/org/org-habit.el (org-habit-parse-todo):
25009         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
25010         (org-mouse-context-menu):
25011         * lisp/org/org-table.el (org-table-edit-formulas):
25012         * lisp/org/ox.el (org-export-async-start):
25013         * lisp/play/dunnet.el (dun-score, dun-help, dun-endgame-question)
25014         (dun-rooms, dun-endgame-questions):
25015         * lisp/progmodes/ada-mode.el (ada-goto-matching-start):
25016         * lisp/progmodes/ada-xref.el (ada-find-executable):
25017         * lisp/progmodes/antlr-mode.el (antlr-options-alists):
25018         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
25019         (flymake-start-syntax-check-process):
25020         * lisp/progmodes/python.el (python-define-auxiliary-skeleton):
25021         * lisp/progmodes/sql.el (sql-comint):
25022         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
25023         * lisp/server.el (server-get-auth-key):
25024         * lisp/subr.el (version-to-list):
25025         * lisp/textmodes/reftex-ref.el (reftex-label):
25026         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
25027         * lisp/vc/ediff-diff.el (ediff-same-contents):
25028         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
25029         * test/automated/tramp-tests.el (tramp-test33-asynchronous-requests):
25030         Use directed rather than neutral quotes in diagnostics.
25032         Treat ' like ’ even when not matching `
25033         This is simpler and easier to explain, and should encourage better
25034         typography.  Do this in Electric Quote mode and when translating
25035         quotes in docstrings.  Inspired by a suggestion by Dmitry Gutov in:
25036         https://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00806.html
25037         * doc/emacs/text.texi (Quotation Marks):
25038         * doc/lispref/help.texi (Keys in Documentation):
25039         * etc/NEWS:
25040         Document this.
25041         * lisp/electric.el (electric-quote-post-self-insert-function):
25042         * src/doc.c (Fsubstitute_command_keys):
25043         Always treat ' like ’ even when not matched by an open quote.
25045 2015-08-25  Glenn Morris  <rgm@gnu.org>
25047         * doc/emacs/cal-xtra.texi (Holiday Customizing): Fix typo in example.
25048         * lisp/calendar/holidays.el (calendar-holidays): Fix doc typo.
25050 2015-08-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
25052         * src/macfont.m (macfont_create_family_with_symbol):
25053         Accept localized names.
25055 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
25057         Tramp diagnostics as per ‘text-quoting-style’
25058         * lisp/net/tramp-adb.el (tramp-adb-handle-file-truename)
25059         (tramp-adb-get-ls-command, tramp-adb-handle-make-directory)
25060         (tramp-adb-handle-delete-directory)
25061         (tramp-adb-handle-delete-file)
25062         (tramp-adb-handle-file-local-copy)
25063         (tramp-adb-handle-write-region, tramp-adb-handle-copy-file)
25064         (tramp-adb-send-command-and-check, tramp-adb-wait-for-output)
25065         (tramp-adb-maybe-open-connection):
25066         * lisp/net/tramp-cache.el:
25067         * lisp/net/tramp-compat.el (tramp-compat-temporary-file-directory)
25068         (tramp-compat-octal-to-decimal)
25069         (tramp-compat-coding-system-change-eol-conversion):
25070         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler)
25071         (tramp-gvfs-do-copy-or-rename-file)
25072         (tramp-gvfs-handle-delete-directory)
25073         (tramp-gvfs-handle-delete-file)
25074         (tramp-gvfs-handle-expand-file-name)
25075         (tramp-gvfs-handle-file-local-copy)
25076         (tramp-gvfs-handle-file-notify-add-watch)
25077         (tramp-gvfs-handle-make-directory)
25078         (tramp-gvfs-handle-write-region, tramp-gvfs-url-file-name):
25079         * lisp/net/tramp-gw.el (tramp-gw-gw-proc-sentinel)
25080         (tramp-gw-aux-proc-sentinel, tramp-gw-open-connection):
25081         * lisp/net/tramp-sh.el (tramp-sh-handle-file-truename)
25082         (tramp-sh-handle-set-visited-file-modtime)
25083         (tramp-sh-handle-set-file-modes)
25084         (tramp-sh-handle-file-name-all-completions)
25085         (tramp-sh-handle-add-name-to-file, tramp-do-copy-or-rename-file)
25086         (tramp-do-copy-or-rename-file-directly)
25087         (tramp-do-copy-or-rename-file-out-of-band)
25088         (tramp-sh-handle-make-directory)
25089         (tramp-sh-handle-delete-directory, tramp-sh-handle-delete-file)
25090         (tramp-sh-handle-insert-directory, tramp-process-sentinel)
25091         (tramp-sh-handle-start-file-process)
25092         (tramp-sh-handle-file-local-copy)
25093         (tramp-sh-handle-write-region, tramp-sh-handle-vc-registered)
25094         (tramp-sh-handle-file-notify-add-watch, tramp-maybe-send-script)
25095         (tramp-find-file-exists-command, tramp-open-shell)
25096         (tramp-find-shell)
25097         (tramp-open-connection-setup-interactive-shell)
25098         (tramp-find-inline-encoding, tramp-find-inline-compress)
25099         (tramp-compute-multi-hops, tramp-maybe-open-connection)
25100         (tramp-wait-for-output, tramp-send-command-and-check)
25101         (tramp-send-command-and-read, tramp-get-remote-path)
25102         (tramp-get-ls-command, tramp-get-ls-command-with-dired)
25103         (tramp-get-ls-command-with-quoting-style)
25104         (tramp-get-test-command, tramp-get-remote-ln)
25105         (tramp-get-remote-perl, tramp-get-remote-stat)
25106         (tramp-get-remote-readlink, tramp-get-remote-trash)
25107         (tramp-get-remote-touch, tramp-get-remote-gvfs-monitor-dir)
25108         (tramp-get-remote-inotifywait, tramp-get-remote-id)
25109         (tramp-get-remote-python):
25110         * lisp/net/tramp-smb.el (tramp-smb-errors)
25111         (tramp-smb-handle-add-name-to-file, tramp-smb-handle-copy-file)
25112         (tramp-smb-handle-delete-directory)
25113         (tramp-smb-handle-delete-file)
25114         (tramp-smb-handle-file-local-copy)
25115         (tramp-smb-handle-make-directory)
25116         (tramp-smb-handle-make-directory-internal)
25117         (tramp-smb-handle-make-symbolic-link)
25118         (tramp-smb-handle-rename-file, tramp-smb-handle-set-file-acl)
25119         (tramp-smb-handle-set-file-modes)
25120         (tramp-smb-handle-write-region, tramp-smb-get-file-entries):
25121         * lisp/net/tramp.el (tramp-debug-message, tramp-error)
25122         (tramp-process-actions):
25123         Generate diagnostics according to ‘text-quoting-style’, by
25124         using curved quotes in format strings and ‘format-message’
25125         when appropriate.
25126         * lisp/net/tramp-compat.el (format-message):
25127         Define a replacement, if it’s an older version of Emacs
25128         that doesn’t have it already.
25130         * etc/NEWS: Clarify text-quoting-style and electric-quote-mode.
25132 2015-08-24  Xue Fuqiao  <xfq.free@gmail.com>
25134         Fix documentation for `save-excursion'
25135         * doc/lispref/positions.texi (Excursions):
25136         * doc/lispintro/emacs-lisp-intro.texi (save-excursion)
25137         (Template for save-excursion, Point and mark): `save-excursion'
25138         does not save&restore the mark any more.
25140 2015-08-24  Michael Albinus  <michael.albinus@gmx.de>
25142         * lisp/net/tramp-sh.el (tramp-stat-marker, tramp-stat-quoted-marker):
25143         New defconsts.
25144         (tramp-do-file-attributes-with-stat)
25145         (tramp-do-directory-files-and-attributes-with-stat): Use them.
25146         (tramp-convert-file-attributes): Remove double slashes in symlinks.
25147         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
25148         Handle symlinks with "//" in the file name.
25150         Revert fbb5531fa11d13854b274d28ccd329c9b6652cfc for tramp.el.
25152 2015-08-24  Nicolas Petton  <nicolas@petton.fr>
25154         Fix cl-subseq and cl-concatenate
25155         * lisp/emacs-lisp/cl-extra.el (cl-subseq, cl-concatenate): Do not use
25156         seq functions.
25157         * lisp/emacs-lisp/seq.el (seq-concatenate): Call cl-concatenate in
25158         seq-concatenate.
25160 2015-08-24  Pip Cet  <pipcet@gmail.com>  (tiny change)
25162         Fix full-screen code when there is no window manager (Bug#21317)
25163         * src/xterm.h (x_wm_supports): Declare external.
25164         * src/xterm.c (wm_suppports): Rename to `x_wm_supports', export.
25165         (do_ewmh_fullscreen, x_ewmh_activate_frame): Adjust for rename.
25166         (x_check_fullscreen): Call `x_wm_set_size_hint', restore
25167         `fullscreen' frame parameter.
25168         * src/gtkutil.c (x_wm_set_size_hint): Set size hints when running
25169         without a window manager.
25171 2015-08-24  Glenn Morris  <rgm@gnu.org>
25173         * lisp/version.el (emacs-version): No longer include build host.
25174         * doc/lispref/intro.texi (Version Info): Update example.
25176 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
25178         * doc/lispref/elisp.texi: Fix typo in previous change.
25180         More-conservative ‘format’ quote restyling
25181         Instead of restyling curved quotes for every call to ‘format’,
25182         create a new function ‘format-message’ that does the restyling,
25183         and using the new function instead of ‘format’ only in contexts
25184         where this seems appropriate.
25185         Problem reported by Dmitry Gutov and Andreas Schwab in:
25186         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00826.html
25187         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00827.html
25188         * doc/lispref/commands.texi (Using Interactive):
25189         * doc/lispref/control.texi (Signaling Errors, Signaling Errors):
25190         * doc/lispref/display.texi (Displaying Messages, Progress):
25191         * doc/lispref/elisp.texi:
25192         * doc/lispref/help.texi (Keys in Documentation):
25193         * doc/lispref/minibuf.texi (Minibuffer Misc):
25194         * doc/lispref/strings.texi (Formatting Strings):
25195         * etc/NEWS:
25196         Document the changes.
25197         * lisp/abbrev.el (expand-region-abbrevs):
25198         * lisp/apropos.el (apropos-library):
25199         * lisp/calc/calc-ext.el (calc-record-message)
25200         (calc-user-function-list):
25201         * lisp/calc/calc-help.el (calc-describe-key, calc-full-help):
25202         * lisp/calc/calc-lang.el (math-read-big-balance):
25203         * lisp/calc/calc-store.el (calc-edit-variable):
25204         * lisp/calc/calc-units.el (math-build-units-table-buffer):
25205         * lisp/calc/calc-yank.el (calc-edit-mode):
25206         * lisp/calendar/icalendar.el (icalendar-export-region)
25207         (icalendar--add-diary-entry):
25208         * lisp/cedet/mode-local.el (mode-local-print-binding)
25209         (mode-local-describe-bindings-2):
25210         * lisp/cedet/semantic/complete.el (semantic-completion-message):
25211         * lisp/cedet/semantic/edit.el (semantic-parse-changes-failed):
25212         * lisp/cedet/semantic/wisent/comp.el (wisent-log):
25213         * lisp/cedet/srecode/insert.el (srecode-insert-show-error-report):
25214         * lisp/descr-text.el (describe-text-properties-1, describe-char):
25215         * lisp/dframe.el (dframe-message):
25216         * lisp/dired-aux.el (dired-query):
25217         * lisp/emacs-lisp/byte-opt.el (byte-compile-log-lap-1):
25218         * lisp/emacs-lisp/bytecomp.el (byte-compile-log)
25219         (byte-compile-log-file, byte-compile-warn, byte-compile-form):
25220         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
25221         (cconv-analyze-form):
25222         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
25223         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
25224         * lisp/emacs-lisp/cl-macs.el (cl-symbol-macrolet):
25225         * lisp/emacs-lisp/edebug.el (edebug-format):
25226         * lisp/emacs-lisp/eieio-core.el (eieio-oref):
25227         * lisp/emacs-lisp/eldoc.el (eldoc-minibuffer-message)
25228         (eldoc-message):
25229         * lisp/emacs-lisp/elint.el (elint-file, elint-log):
25230         * lisp/emacs-lisp/find-func.el (find-function-library):
25231         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
25232         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
25233         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
25234         * lisp/emacs-lisp/package.el (package-compute-transaction)
25235         (package-install-button-action, package-delete-button-action)
25236         (package-menu--list-to-prompt):
25237         * lisp/emacs-lisp/timer.el (timer-event-handler):
25238         * lisp/emacs-lisp/warnings.el (lwarn, warn):
25239         * lisp/emulation/viper-cmd.el:
25240         (viper-toggle-parse-sexp-ignore-comments)
25241         (viper-kill-buffer, viper-brac-function):
25242         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
25243         * lisp/facemenu.el (facemenu-add-new-face):
25244         * lisp/faces.el (face-documentation, read-face-name)
25245         (face-read-string, read-face-font, describe-face):
25246         * lisp/files.el (find-alternate-file, hack-local-variables)
25247         (hack-one-local-variable--obsolete, write-file)
25248         (basic-save-buffer, delete-directory):
25249         * lisp/format.el (format-write-file, format-find-file)
25250         (format-insert-file):
25251         * lisp/help-fns.el (help-fns--key-bindings)
25252         (help-fns--compiler-macro, help-fns--obsolete)
25253         (help-fns--interactive-only, describe-function-1)
25254         (describe-variable):
25255         * lisp/help.el (describe-mode):
25256         * lisp/info-xref.el (info-xref-output):
25257         * lisp/info.el (Info-virtual-index-find-node)
25258         (Info-virtual-index, info-apropos):
25259         * lisp/international/kkc.el (kkc-error):
25260         * lisp/international/mule-cmds.el:
25261         (select-safe-coding-system-interactively)
25262         (select-safe-coding-system, describe-input-method):
25263         * lisp/international/mule-conf.el (code-offset):
25264         * lisp/international/mule-diag.el (describe-character-set)
25265         (list-input-methods-1):
25266         * lisp/international/quail.el (quail-error):
25267         * lisp/minibuffer.el (minibuffer-message):
25268         * lisp/mpc.el (mpc--debug):
25269         * lisp/msb.el (msb--choose-menu):
25270         * lisp/net/ange-ftp.el (ange-ftp-message):
25271         * lisp/net/gnutls.el (gnutls-message-maybe):
25272         * lisp/net/newst-backend.el (newsticker--sentinel-work):
25273         * lisp/net/newst-treeview.el (newsticker--treeview-load):
25274         * lisp/net/nsm.el (nsm-query-user):
25275         * lisp/net/rlogin.el (rlogin):
25276         * lisp/net/soap-client.el (soap-warning):
25277         * lisp/net/tramp.el (tramp-debug-message):
25278         * lisp/nxml/nxml-outln.el (nxml-report-outline-error):
25279         * lisp/nxml/nxml-parse.el (nxml-parse-error):
25280         * lisp/nxml/rng-cmpct.el (rng-c-error):
25281         * lisp/nxml/rng-match.el (rng-compile-error):
25282         * lisp/nxml/rng-uri.el (rng-uri-error):
25283         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
25284         * lisp/org/org-ctags.el:
25285         (org-ctags-ask-rebuild-tags-file-then-find-tag):
25286         * lisp/proced.el (proced-log):
25287         * lisp/progmodes/ebnf2ps.el (ebnf-log):
25288         * lisp/progmodes/flymake.el (flymake-log):
25289         * lisp/progmodes/vhdl-mode.el (vhdl-warning-when-idle):
25290         * lisp/replace.el (occur-1):
25291         * lisp/simple.el (execute-extended-command)
25292         (undo-outer-limit-truncate, define-alternatives):
25293         * lisp/startup.el (command-line):
25294         * lisp/subr.el (error, user-error, add-to-list):
25295         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
25296         (tutorial--find-changed-keys):
25297         * src/callint.c (Fcall_interactively):
25298         * src/editfns.c (Fmessage, Fmessage_box):
25299         Restyle the quotes of format strings intended for use as a
25300         diagnostic, when restyling seems appropriate.
25301         * lisp/subr.el (format-message): New function.
25302         * src/doc.c (Finternal__text_restyle): New function.
25303         (syms_of_doc): Define it.
25305 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
25307         * etc/NEWS: The new ‘q’ flag is not an incompatible change.
25309 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
25311         python.el: Fix python-shell-buffer-substring on indented code
25312         (Bug#21086)
25313         * lisp/progmodes/python.el (python-shell-buffer-substring):
25314         Respect current line indentation when calculating string.
25315         * test/automated/python-tests.el
25316         (python-shell-buffer-substring-10)
25317         (python-shell-buffer-substring-11)
25318         (python-shell-buffer-substring-12): New tests.
25320 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
25322         Fix minor glitches from ‘format’ reversion
25323         * doc/lispref/strings.texi (Formatting Strings):
25324         After reversion, ‘text-quoting-style’ is documented in ‘Keys in
25325         Documentation’, not below.
25326         * src/syntax.c (Finternal_describe_syntax_value):
25327         Prefer AUTO_STRING to build_string where either will do, as
25328         AUTO_STRING is a bit faster.
25330 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
25332         python.el: Defer shell setup code until first interactive prompt
25333         * lisp/progmodes/python.el
25334         (python-shell-comint-watch-for-first-prompt-output-filter):
25335         New function.
25336         (inferior-python-mode): Use it.
25337         (python-shell-first-prompt-hook): New hook.
25338         (python-shell-send-setup-code)
25339         (python-shell-completion-native-turn-on-maybe-with-msg): Attach to
25340         this hook instead of inferior-python-hook.
25342 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
25344         Remove the calls to `seq-into` from `seq-concatenate`
25345         Since most new types of seq would have to be defined as sequences (cons
25346         cells or CL structs, mostly), there is no need to convert the seqs to
25347         sequences (which can be a fairly expensive operation).
25348         * lisp/emacs-lisp/seq.el (seq-concatenate): Do not ensure that seqs are
25349         sequences.
25351 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
25353         python.el: Fix completion for pdb interactions
25354         * lisp/progmodes/python.el (python-shell-completion-setup-code):
25355         Simplify.  Toggle print_mode for native wrapped completer.
25356         (python-shell-completion-native-setup): Ensure process buffer.
25357         Add print_mode attribute to completer wrapper to toggle returning
25358         or printing candidates.
25359         (python-shell-completion-native-get-completions): Cleanup.
25360         (python-shell-completion-get-completions): Cleanup.
25361         (python-shell-completion-at-point): Perform prompt checks.
25362         Force fallback completion in pdb interactions.
25364 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
25366         Make seq.el more extensible by using cl-defmethod
25367         * lisp/emacs-lisp/seq.el: Define seq.el functions using cl-defmethod to
25368         make it easier to extend seq.el with new "seq types".
25369         * test/automated/seq-tests.el (test-setf-seq-elt): New test.
25370         * lisp/emacs-lisp/cl-extra.el (cl-subseq): Move back the definition of
25371         subseq in cl-extra.el, and use it in seq.el.
25373 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
25375         python.el: Fix prompt detection with user overridden interpreter
25376         * lisp/progmodes/python.el (python-shell-prompt-detect):
25377         Honor buffer local python-shell-interpreter and
25378         python-shell-interpreter-interactive-arg.
25380 2015-08-23  Eli Zaretskii  <eliz@gnu.org>
25382         Support exec-directory with non-ASCII characters on Windows
25383         * src/w32proc.c (sys_spawnve): Make sure exec-directory is encoded
25384         in the system's ANSI codepage, when it is used for invoking
25385         cmdproxy.
25387 2015-08-23  Andreas Schwab  <schwab@linux-m68k.org>
25389         Revert "Extend ‘format’ to translate curved quotes"
25390         This reverts commit 244c801689d2f7a80480d83cd7d092d4762ebe08.
25392         Revert "Prefer ‘format’ to ‘substitute-command-keys’"
25393         This reverts commit 6af5aad26411ffe21c3fe4bc5438347110910111.
25395 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
25397         * doc/lispintro/emacs-lisp-intro.texi (Switching Buffers):
25398         Clarify "invisible window".
25400 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
25402         * doc/emacs/modes.texi (Choosing Modes): Minor doc fix for
25403         magic-fallback-mode-alist.
25405 2015-08-22  Fabián Ezequiel Gallina  <fgallina@gnu.org>
25407         python.el: fallback completion, ffap and eldoc setup enhancements
25408         Setup codes are now sent continuously so that the current frame is
25409         always taken into account.  This allows working within debuggers
25410         and always keeping a fresh version of setup codes that will return
25411         proper results.
25412         * lisp/progmodes/python.el (python-shell-setup-codes): Cleanup.
25413         (python-shell-send-setup-code): Send code only when
25414         python-shell-setup-codes is non-nil.
25415         (python-shell-completion-string-code): Cleanup trailing newline.
25416         (python-shell-completion-get-completions): Always use
25417         python-shell-completion-setup-code.
25418         (python-ffap-setup-code): Work with any object, not only modules.
25419         (python-ffap-string-code): Cleanup trailing newline.
25420         (python-ffap-module-path): Always use python-ffap-setup-code.
25421         (python-eldoc-string-code): Cleanup trailing newline.
25422         (python-eldoc--get-doc-at-point): Always use
25423         python-eldoc-setup-code.  Return non-nil only if docstring is
25424         found.
25426         python.el: Increase native completion robustness
25427         * lisp/progmodes/python.el (python-shell-completion-native-setup):
25428         Make completer print real candidates and just return dummy ones to
25429         avoid input modification.
25430         (python-shell-completion-native-get-completions): Set
25431         comint-redirect-insert-matching-regexp to non-nil and make
25432         comint-redirect-finished-regexp match the last dummy candidate.
25433         Use python-shell-accept-process-output to wait for the full list
25434         of candidates.
25436 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
25438         Fix invocation of programs via cmdproxy.exe
25439         * src/w32proc.c (sys_spawnve): Use exec-directory, not
25440         invocation-directory, for finding cmdproxy.exe.  When Emacs is
25441         run from the source tree, look for cmdproxy.exe in the same source
25442         tree.  (Bug#21323)
25444 2015-08-22  Simen Heggestøyl  <simenheg@gmail.com>
25446         Handle comments inside unquoted URIs in css-mode
25447         * lisp/textmodes/css-mode.el (css--uri-re): New defconst.
25448         (css-syntax-propertize-function): New defconst.
25449         (css--font-lock-keywords): Handle parens around unquoted URIs.
25450         (css-mode): Set `syntax-propertize-function'.
25452 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
25454         Support invocation of Hunspell with multiple dictionaries
25455         * lisp/textmodes/ispell.el (ispell-parse-hunspell-affix-file):
25456         Support lists of dictionaries of the form "DICT1,DICT2,...".
25457         (ispell-hunspell-add-multi-dic): New command.  (Bug#20495)
25459         Minor formatting changes in ispell.el
25460         * lisp/textmodes/ispell.el (ispell-create-debug-buffer)
25461         (ispell-print-if-debug, ispell-aspell-find-dictionary)
25462         (ispell-aspell-add-aliases, ispell-hunspell-dict-paths-alist)
25463         (ispell-hunspell-dictionary-alist)
25464         (ispell-hunspell-fill-dictionary-entry)
25465         (ispell-find-hunspell-dictionaries, ispell-send-replacement)
25466         (ispell-buffer-with-debug, ispell-complete-word)
25467         (ispell-current-dictionary, ispell-current-personal-dictionary)
25468         (ispell-accept-output, ispell-minor-mode)
25469         (ispell-personal-dictionary, ispell-dictionary-alist)
25470         (ispell-really-aspell, ispell-really-hunspell)
25471         (ispell-encoding8-command, ispell-aspell-supports-utf8)
25472         (ispell-aspell-dictionary-alist, ispell-set-spellchecker-params):
25473         Fix whitespace, inconsistent capitalization, and arguments in doc
25474         strings.
25476 2015-08-22  Martin Rudalics  <rudalics@gmx.at>
25478         * lisp/window.el (adjust-window-trailing-edge): Fix bug where this
25479         function refused to resize a size-preserved window.
25481 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
25483         * doc/lispref/windows.texi (Selecting Windows): Improve
25484         documentation and indexing of 'window-use-time'.
25486 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
25488         * lisp/progmodes/cc-vars.el, lisp/progmodes/cc-styles.el:
25489         * lisp/progmodes/cc-mode.el, lisp/progmodes/cc-menus.el:
25490         * lisp/progmodes/cc-langs.el, lisp/progmodes/cc-guess.el:
25491         * lisp/progmodes/cc-fonts.el, lisp/progmodes/cc-engine.el:
25492         * lisp/progmodes/cc-defs.el, lisp/progmodes/cc-cmds.el:
25493         * lisp/progmodes/cc-bytecomp.el, lisp/progmodes/cc-awk.el:
25494         * lisp/progmodes/cc-align.el, lisp/net/soap-client.el:
25495         Fix up commenting style.
25497 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
25499         text-quoting-style in emacs-lisp diagnostics
25500         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
25501         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
25502         (ad-disable-advice, ad-remove-advice, ad-set-argument)
25503         (ad-set-arguments):
25504         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
25505         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
25506         (byte-optimize-while, byte-optimize-apply):
25507         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
25508         (byte-compile-log-file, byte-compile-format-warn)
25509         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
25510         (byte-compile-cl-warn)
25511         (byte-compile-warn-about-unresolved-functions)
25512         (byte-compile-file, byte-compile-fix-header)
25513         (byte-compile--declare-var, byte-compile-file-form-defmumble)
25514         (byte-compile-form, byte-compile-normal-call)
25515         (byte-compile-variable-ref, byte-compile-variable-set)
25516         (byte-compile-subr-wrong-args, byte-compile-setq-default)
25517         (byte-compile-negation-optimizer)
25518         (byte-compile-condition-case--old)
25519         (byte-compile-condition-case--new, byte-compile-save-excursion)
25520         (byte-compile-defvar, byte-compile-autoload)
25521         (byte-compile-lambda-form)
25522         (byte-compile-make-variable-buffer-local, display-call-tree)
25523         (batch-byte-compile):
25524         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
25525         (cconv-analyze-form):
25526         * lisp/emacs-lisp/chart.el (chart-space-usage):
25527         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
25528         (check-declare-warn, check-declare-file)
25529         (check-declare-directory):
25530         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
25531         (checkdoc-message-text-engine):
25532         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer):
25533         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
25534         (cl-symbol-macrolet):
25535         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
25536         * lisp/emacs-lisp/copyright.el (copyright)
25537         (copyright-update-directory):
25538         * lisp/emacs-lisp/edebug.el (edebug-read-list):
25539         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
25540         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
25541         (eieio-oref, eieio-oset-default):
25542         * lisp/emacs-lisp/eieio-speedbar.el:
25543         (eieio-speedbar-child-make-tag-lines)
25544         (eieio-speedbar-child-description):
25545         * lisp/emacs-lisp/eieio.el (defclass, change-class):
25546         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
25547         (elint-init-form, elint-check-defalias-form)
25548         (elint-check-let-form):
25549         * lisp/emacs-lisp/ert.el (ert-get-test):
25550         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
25551         (find-function-library):
25552         * lisp/emacs-lisp/generator.el (iter-yield):
25553         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
25554         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
25555         * lisp/emacs-lisp/package-x.el (package-upload-file):
25556         * lisp/emacs-lisp/package.el (package-version-join)
25557         (package-disabled-p, package-activate-1, package-activate)
25558         (package--download-one-archive)
25559         (package--download-and-read-archives)
25560         (package-compute-transaction, package-install-from-archive)
25561         (package-install, package-install-selected-packages)
25562         (package-delete, package-autoremove)
25563         (package-install-button-action, package-delete-button-action)
25564         (package-menu-hide-package, package-menu--list-to-prompt)
25565         (package-menu--perform-transaction)
25566         (package-menu--find-and-notify-upgrades):
25567         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
25568         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
25569         * lisp/emacs-lisp/ring.el (ring-next, ring-previous):
25570         * lisp/emacs-lisp/rx.el (rx-check, rx-anything):
25571         * lisp/emacs-lisp/smie.el (smie-config-save):
25572         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
25573         * lisp/emacs-lisp/testcover.el (testcover-1value):
25574         Use curved quotes in diagnostic format strings.
25576 2015-08-21  Fabián Ezequiel Gallina  <fgallina@gnu.org>
25578         python.el: Ensure remote process-environment on non-interactive processes
25579         * lisp/progmodes/python.el
25580         (python-shell-tramp-refresh-process-environment): New function.
25581         (python-shell-with-environment): Use it.
25582         * test/automated/python-tests.el (python-shell-with-environment-2):
25583         Update.
25585         python.el: Enhancements to process environment setup.
25586         * lisp/progmodes/python.el (python-shell-process-environment)
25587         (python-shell-extra-pythonpaths, python-shell-exec-path)
25588         (python-shell-virtualenv-root): Update docstring.  Remove :safe.
25589         (python-shell-setup-codes): Remove :safe.
25590         (python-shell-remote-exec-path): New defcustom.
25591         (python-shell--add-to-path-with-priority): New macro.
25592         (python-shell-calculate-pythonpath): Give priority to
25593         python-shell-extra-pythonpaths.  Update docstring.
25594         (python-shell-calculate-process-environment): Give priority to
25595         python-shell-process-environment.  Update docstring.
25596         (python-shell-calculate-exec-path): Give priority to
25597         python-shell-exec-path and calculated virtualenv bin directory.
25598         Update docstring.
25599         (python-shell-tramp-refresh-remote-path): New function.
25600         (python-shell-with-environment): Use it when working remotely and
25601         do not modify tramp-remote-path.  Allow nesting.
25602         (python-shell-calculate-command): Remove useless
25603         python-shell-with-environment call.
25604         * test/automated/python-tests.el (python-shell-calculate-pythonpath-1)
25605         (python-shell-calculate-pythonpath-2)
25606         (python-shell-calculate-process-environment-6)
25607         (python-shell-calculate-process-environment-7)
25608         (python-shell-calculate-process-environment-8)
25609         (python-shell-calculate-exec-path-3)
25610         (python-shell-calculate-exec-path-4)
25611         (python-shell-calculate-exec-path-5)
25612         (python-shell-calculate-exec-path-6)
25613         (python-shell-with-environment-3): New tests.
25614         (python-shell-calculate-process-environment-2)
25615         (python-shell-calculate-process-environment-3)
25616         (python-shell-calculate-process-environment-4)
25617         (python-shell-calculate-process-environment-5)
25618         (python-shell-calculate-exec-path-1)
25619         (python-shell-calculate-exec-path-2)
25620         (python-shell-with-environment-1)
25621         (python-shell-with-environment-2): Update and simplify.
25623 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
25625         Avoid hard-coding "M-x command" in docstrings
25626         * lisp/calendar/todo-mode.el (todo-mode):
25627         * lisp/desktop.el (desktop-save-mode):
25628         * lisp/edmacro.el (edit-kbd-macro):
25629         * lisp/emacs-lisp/package.el (package-menu-execute):
25630         * lisp/emulation/viper-cmd.el (viper-ask-level):
25631         * lisp/emulation/viper-init.el (viper-expert-level):
25632         * lisp/filesets.el (filesets-add-buffer):
25633         * lisp/follow.el (follow-mode):
25634         * lisp/gnus/auth-source.el (auth-sources):
25635         * lisp/international/ogonek.el (ogonek-informacja)
25636         (ogonek-information):
25637         * lisp/net/tramp.el (tramp-process-actions):
25638         * lisp/org/org-gnus.el (org-gnus-no-new-news):
25639         * lisp/org/org.el (org-ellipsis):
25640         * lisp/progmodes/python.el (python-shell-get-process-or-error):
25641         * lisp/progmodes/vhdl-mode.el (vhdl-mode):
25642         * lisp/server.el (server-start):
25643         * lisp/type-break.el (type-break-noninteractive-query):
25644         * lisp/userlock.el (ask-user-about-supersession-help):
25645         * lisp/whitespace.el (whitespace-report-region):
25646         Prefer (substitute-command-keys "`\\[foo-command]'")
25647         to "`M-x foo-command'" in docstrings and the like.
25649 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
25651         Use add-function for prettify-symbols-compose-predicate
25652         * lisp/textmodes/tex-mode.el (tex-common-initialization): Set
25653         prettify-symbols-compose-predicate in terms of add-function.
25654         * etc/NEWS: Mention prettify-symbols-compose-predicate and
25655         prettify-symbols-mode support in tex-mode.
25657 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
25659         * lisp/emacs-lisp/smie.el (smie-indent-current-column): New fun.
25660         (smie-indent-exps, smie-indent-keyword): Use it.
25661         * test/indent/css-mode.css: Test alignment with leading comment.
25663 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
25665         Respect text-quoting-style in (*Finder*) menus
25666         * lisp/info.el (info--prettify-description):
25667         Treat description as a docstring, so that it's requoted as
25668         per text-quoting-style.
25670 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
25672         Document `window-use-time' in Elisp manual
25673         * doc/lispref/windows.texi (Selecting Windows): Document
25674         `window-use-time'.
25676 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
25678         * src/w32uniscribe.c (_WIN32_WINNT): Define to 0x0600.
25679         This is a cleaner fix for Bug#21260 than the previous change.
25681 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
25683         Respect text-quoting-style in calc
25684         In calc, tespect text-quoting-style preference in diagnostic
25685         formats and fix a few similar problems in docstrings.
25686         * lisp/calc/calc-aent.el (math-read-factor):
25687         * lisp/calc/calc-embed.el (calc-do-embedded):
25688         * lisp/calc/calc-ext.el (calc-user-function-list)
25689         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
25690         * lisp/calc/calc-help.el (calc-describe-key)
25691         (calc-describe-thing):
25692         * lisp/calc/calc-lang.el (calc-c-language)
25693         (math-parse-fortran-vector-end, math-parse-tex-sum)
25694         (math-parse-eqn-matrix, math-parse-eqn-prime)
25695         (calc-yacas-language, calc-maxima-language, calc-giac-language)
25696         (math-read-big-rec, math-read-big-balance):
25697         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
25698         (calc-auto-recompute):
25699         * lisp/calc/calc-prog.el (calc-user-define-invocation)
25700         (math-do-arg-check):
25701         * lisp/calc/calc-store.el (calc-edit-variable):
25702         * lisp/calc/calc-units.el (math-build-units-table-buffer):
25703         * lisp/calc/calc-vec.el (math-read-brackets):
25704         * lisp/calc/calc-yank.el (calc-edit-mode):
25705         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
25706         Use curved quotes in diagnostic format strings.
25707         * lisp/calc/calc-help.el (calc-describe-thing):
25708         Format docstrings with substitute-command-keys.
25709         * lisp/calc/calc-help.el (calc-j-prefix-help):
25710         * lisp/calc/calc-misc.el (calc-help):
25711         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
25712         Escape a docstring "`".
25714 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
25716         Fix documentation of 'menu-set-font' and 'set-frame-font'
25717         * lisp/menu-bar.el (menu-set-font): Doc fix.  (Bug#21303)
25718         * doc/lispref/frames.texi (Frame Font): Document that
25719         set-frame-font with the last argument 't' will also make the font
25720         the default for the future GUI frames.
25722         Document '--create-frame' option to emacsclient
25723         * doc/emacs/misc.texi (emacsclient Options): Document the
25724         '--create-frame' option.  (Bug#21308)
25726 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
25728         * lisp/progmodes/js.el (js-mode): Don't eagerly syntax propertize.
25730 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
25732         Document 'get-mru-window' in the ELisp manual
25733         * doc/lispref/windows.texi (Cyclic Window Ordering): Document
25734         'get-mru-window'.  (Bug#21306)
25736         Clarify documentation of 'get-buffer-window-list'
25737         * doc/lispref/windows.texi (Buffers and Windows): Mention that the
25738         current window, if relevant, will be the first in the list
25739         returned by 'get-buffer-window-list'.
25740         * lisp/window.el (get-buffer-window-list): Doc fix.  (Bug#21305)
25742 2015-08-21  Vasilij Schneidermann  <v.schneidermann@gmail.com>
25744         In `ielm' use `pop-to-buffer-same-window' (Bug#20848)
25745         * lisp/ielm.el (ielm): Use `pop-to-buffer-same-window' instead of
25746         `switch-to-buffer'.
25748 2015-08-21  Kaushal Modi  <kaushal.modi@gmail.com>  (tiny change)
25750         In woman.el use `display-buffer' instead of `switch-to-buffer' (Bug#21047)
25751         * lisp/woman.el (woman-really-find-file, WoMan-find-buffer): Use
25752         `display-buffer' instead of `switch-to-buffer'.
25754 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
25756         Follow user preference in calendar diagnostics
25757         Respect text-quoting-style preference in diagnostic formats by
25758         using curved quotes (which are translated as per text-quoting-style)
25759         instead of grave accent and apostrophe (which are not).
25760         * lisp/calendar/appt.el (appt-display-message):
25761         * lisp/calendar/diary-lib.el (diary-check-diary-file)
25762         (diary-mail-entries, diary-from-outlook):
25763         * lisp/calendar/icalendar.el (icalendar-export-region)
25764         (icalendar--convert-float-to-ical)
25765         (icalendar--convert-date-to-ical)
25766         (icalendar--convert-ical-to-diary)
25767         (icalendar--convert-recurring-to-diary)
25768         (icalendar--add-diary-entry):
25769         * lisp/calendar/time-date.el (format-seconds):
25770         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
25771         (timeclock-make-hours-explicit):
25772         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
25773         (todo-item-mark, todo-check-format)
25774         (todo-insert-item--next-param, todo-edit-item--next-key)
25775         (todo-mode):
25776         Use curved quotes in diagnostic format strings.
25777         * lisp/calendar/icalendar.el (icalendar-import-format-sample):
25778         * test/automated/icalendar-tests.el (icalendar--import-format-sample):
25779         Just use straight quoting for simple test case.
25781 2015-08-21  Michael Albinus  <michael.albinus@gmx.de>
25783         * src/gfilenotify.c (Fgfile_add_watch):
25784         Handle errors from g_file_monitor.
25786 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
25788         In frames.texi use "minibuffer-less frame" instead of "non-minibuffer frame"
25789         * doc/lispref/frames.texi (Frame Layout): Use "minibuffer-less
25790         frame" instead of "non-minibuffer frame".
25792         Fix frame geometry related text
25793         * doc/lispref/frames.texi (Frame Layout):
25794         Rename `x-frame-geometry' to `frame-geometry'.
25795         * doc/lispref/frames.texi (Mouse Position):
25796         * doc/lispref/windows.texi (Coordinates and Windows):
25797         Use `set-mouse-absolute-pixel-position' instead of
25798         `x-set-mouse-absolute-pixel-position'.
25800         Sanitize frame geometry related functions
25801         * src/nsfns.m (Fx_frame_geometry): Rename to Fns_frame_geometry.
25802         (Fx_frame_edges): Rename to Fns_frame_edges.
25803         * src/w32fns.c (Fx_frame_geometry): Rename to Fw32_frame_geometry.
25804         (Fx_frame_edges): Rename to Fw32_frame_edges.
25805         (Fx_mouse_absolute_pixel_position): Rename to
25806         Fw32_mouse_absolute_pixel_position.
25807         (Fx_set_mouse_absolute_pixel_position): Rename to
25808         Fw32_set_mouse_absolute_pixel_position.
25809         * lisp/frame.el (x-frame-geometry, w32-frame-geometry)
25810         (ns-frame-geometry, x-frame-edges, w32-frame-edges)
25811         (ns-frame-edges, w32-mouse-absolute-pixel-position)
25812         (x-mouse-absolute-pixel-position)
25813         (w32-set-mouse-absolute-pixel-position)
25814         (x-set-mouse-absolute-pixel-position): Declare.
25815         (frame-geometry, mouse-absolute-pixel-position)
25816         (set-mouse-absolute-pixel-position): New functions.
25817         (frame-edges): Rewrite in terms of x-/w32-/ns-frame-edges.
25819 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
25821         Fix MinGW64 build broken by latest w32uniscribe.c changes
25822         * src/w32uniscribe.c (UNISCRIBE_OPENTYPE): Define to 0x0100, for
25823         MinGW64.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
25824         (Bug#21260)
25826 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
25828         Add TeX defaults for prettify-symbol-mode
25829         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
25830         Rename from tex-prettify-symbols-alist.
25831         (tex--prettify-symbols-compose-p): New function.
25832         (tex-common-initialization): Use them as prettify-symbols-alist
25833         and prettify-symbols-compose-predicate.
25835         Generalize prettify-symbols to arbitrary modes
25836         * lisp/progmodes/prog-mode.el
25837         (prettify-symbols-default-compose-p): New function.
25838         (prettify-symbols-compose-predicate): New variable.
25839         (prettify-symbols--compose-symbol): Use it.
25841 2015-08-20  Paul Eggert  <eggert@cs.ucla.edu>
25843         Don't quote symbols 'like-this' in docstrings etc.
25844         * admin/unidata/uvs.el (uvs-insert-fields-as-bytes):
25845         * lisp/allout-widgets.el (allout-widgets-count-buttons-in-region):
25846         * lisp/allout.el (allout-add-resumptions, allout-mode):
25847         * lisp/calculator.el (calculator-operators):
25848         * lisp/cedet/data-debug.el (dd-propertize):
25849         * lisp/cedet/ede/proj-prog.el (ede-proj-target-makefile-program):
25850         * lisp/cedet/semantic/analyze/debug.el:
25851         (semantic-analyzer-debug-global-miss-text):
25852         * lisp/cedet/semantic/lex-spp.el:
25853         (semantic-lex-spp-replace-or-symbol-or-keyword):
25854         * lisp/cedet/semantic/symref.el:
25855         (semantic-symref-cleanup-recent-buffers-fcn):
25856         * lisp/cedet/semantic/tag.el (semantic-tag-class):
25857         * lisp/cedet/srecode/el.el (srecode-semantic-handle-:el-custom):
25858         * lisp/gnus/nnmairix.el (nnmairix-propagate-marks-upon-close):
25859         * lisp/gnus/pop3.el (pop3-authentication-scheme):
25860         * lisp/help-fns.el (describe-function-orig-buffer):
25861         * lisp/imenu.el (imenu--history-list):
25862         * lisp/mail/feedmail.el (feedmail-confirm-outgoing)
25863         (feedmail-display-full-frame, feedmail-deduce-bcc-where)
25864         (feedmail-queue-default-file-slug)
25865         (feedmail-queue-buffer-file-name):
25866         * lisp/net/mairix.el (mairix-searches-mode-map):
25867         * lisp/net/newst-backend.el (newsticker-retrieval-method)
25868         (newsticker-auto-mark-filter-list):
25869         * lisp/obsolete/vi.el (vi-mode):
25870         * lisp/progmodes/cc-engine.el (c-literal-type):
25871         * lisp/progmodes/cpp.el (cpp-face):
25872         * lisp/progmodes/ebrowse.el (ebrowse-electric-list-looper):
25873         * lisp/progmodes/elisp-mode.el (elisp--xref-make-xref):
25874         * lisp/progmodes/pascal.el (pascal-auto-lineup):
25875         * lisp/progmodes/prog-mode.el (prog-widen):
25876         * lisp/progmodes/verilog-mode.el (verilog-regexp-words)
25877         (verilog-auto-lineup, verilog-auto-reset-widths)
25878         (verilog-auto-arg-format, verilog-auto-inst-template-numbers):
25879         * lisp/textmodes/flyspell.el (flyspell-maybe-correct-transposition)
25880         (flyspell-maybe-correct-doubling):
25881         * lisp/textmodes/table.el (table-justify, table-justify-cell)
25882         (table-justify-row, table-justify-column, table-insert-sequence)
25883         (table--justify-cell-contents):
25884         * lisp/url/url-auth.el (url-get-authentication):
25885         * lisp/window.el (display-buffer-record-window):
25886         * lisp/xml.el (xml-parse-file, xml-parse-region):
25887         * src/gfilenotify.c (Fgfile_add_watch):
25888         Don't quote symbols with apostrophes in doc strings.
25889         Use asymmetric quotes instead.
25890         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
25891         Likewise for symbol in diagnostic.
25892         * lisp/image.el (image-extension-data):
25893         * lisp/register.el (frame-configuration-to-register):
25894         * src/buffer.c (syms_of_buffer):
25895         Remove bogus apostrophes after symbols.
25896         * lisp/thumbs.el (thumbs-conversion-program):
25897         Quote Lisp string values using double-quotes, not apostrophes.
25899 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
25901         Describe frame geometry and related functions in Elisp manual
25902         * doc/lispref/display.texi (Size of Displayed Text, Line Height)
25903         (Showing Images): Update references.
25904         * doc/lispref/elisp.texi (Top): Update node listing.
25905         * doc/lispref/frames.texi (Frame Geometry): New node.
25906         Move `Size and Position' section here.
25907         (Size Parameters): Update references.
25908         (Mouse Position): Update references and nomenclature.
25909         Describe new functions `x-mouse-absolute-pixel-position' and
25910         `x-set-mouse-absolute-pixel-position'.
25911         * doc/lispref/windows.texi (Window Sizes): Update references.
25912         (Resizing Windows): Update references.  Move description of
25913         `fit-frame-to-buffer' here.
25914         (Coordinates and Windows): Update nomenclature and references.
25915         Describe new arguments of `window-edges'.  Comment out
25916         descriptions of `window-left-column', `window-top-line',
25917         `window-pixel-left' and `window-pixel-top'.  Describe
25918         `window-absolute-pixel-position'.
25920 2015-08-20  Alan Mackenzie  <acm@muc.de>
25922         Handling of `c-parse-state'.  Fix low level bug.
25923         * lisp/progmodes/cc-engine.el (c-remove-stale-state-cache-backwards):
25924         Add "CASE 3.5" to handle `cache-pos' being only slightly before `here'.
25926 2015-08-20  Andreas Politz  <politza@hochschule-trier.de>
25928         * lisp/wid-edit.el (widget-color--choose-action): Quit *Color*
25929         window instead of deleting it.
25931 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
25933         In w32fns.c's Fx_frame_geometry rewrite check whether frame has a titlebar
25934         * src/w32fns.c (Fx_frame_geometry): Use title_bar.rgstate[0] to
25935         determine whether frame has a titlebar.
25936         Suggested by Eli Zaretskii <eliz@gnu.org>
25938 2015-08-20  Tassilo Horn  <tsdh@gnu.org>
25940         Add a prettify-symbols-alist for (La)TeX
25941         * lisp/textmodes/tex-mode.el (tex-prettify-symbols-alist):
25942         New variable holding an alist suitable as prettify-symbols-alist in
25943         (La)TeX modes.
25945 2015-08-19  Alan Mackenzie  <acm@muc.de>
25947         Make electric-pair-mode, delete-selection-mode and CC Mode cooperate.
25948         Fixes debbugs#21275.
25949         In Emacs >= 25, let electric-pair-mode take precedence over
25950         delete-selection-mode.
25951         * lisp/delsel.el (delete-selection-uses-region-p): New function,
25952         previously a lambda expression in a property value for
25953         `self-insert-command'.
25954         (top-level): Set the `delete-selection' property of
25955         `self-insert-command' to `delete-selection-uses-region-p'.
25956         * lisp/progmodes/cc-cmds.el (top-level): Give the `delete-selection'
25957         property for c-electric-\(brace\|paren\) the value
25958         `delete-selection-uses-region-p' when the latter function exists.
25960 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
25962         Fix key binding quoting in tutorial *Help*
25963         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
25964         When generating help for custom key bindings, use the user-preferred
25965         quoting style rather than hardcoding the grave style.
25967 2015-08-19  Eli Zaretskii  <eliz@gnu.org>
25969         Improve and future-proof OTF fonts support in w32uniscribe.c
25970         * src/w32uniscribe.c (uniscribe_otf_capability): Add commentary
25971         about the expected results and why the new Uniscribe APIs are not
25972         used in this function.
25973         (ScriptGetFontScriptTags_Proc, ScriptGetFontLanguageTags_Proc)
25974         (ScriptGetFontFeatureTags_Proc): New function typedefs.
25975         (uniscribe_new_apis): New static variable.
25976         (uniscribe_check_features): New function, implements OTF features
25977         verification while correctly accounting for features in the list
25978         after the nil member, if any.
25979         (uniscribe_check_otf_1): New function, retrieves the features
25980         supported by the font for the requested script and language using
25981         the Uniscribe APIs available from Windows Vista onwards.
25982         (uniscribe_check_otf): If the new Uniscribe APIs are available,
25983         use them in preference to reading the font data directly.  Call
25984         uniscribe_check_features to verify that the requested features are
25985         supported, replacing the original incomplete code.
25986         (syms_of_w32uniscribe): Initialize function pointers for the new
25987         Uniscribe APIs.  (Bug#21260)
25988         (otf_features): Scan the script, langsys, and feature arrays back
25989         to front, so that the result we return has them in alphabetical
25990         order, like ftfont.c does.
25991         * src/w32fns.c (syms_of_w32fns) <w32-disable-new-uniscribe-apis>:
25992         New variable for debugging w32uniscribe.c code.
25994 2015-08-19  Artur Malabarba  <bruce.connor.am@gmail.com>
25996         * lisp/isearch.el (isearch-search-fun-default): Revert a5bdb87
25997         Remove usage of `isearch-lax-whitespace' inside the `iearch-word'
25998         clause of `isearch-search-fun-default'.  That lax variable does not
25999         refer to lax-whitespacing.  Related to (bug#21777).
26000         This reverts commit a5bdb872edb9f031fe041faf9a8c0be432e5f64c.
26001         * lisp/character-fold.el (character-fold-search): Set to nil.
26002         Default to nil for now, until someone implements proper
26003         lax-whitespacing with char-fold searching.
26005 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
26007         Fix doc-string of `help-mode-finish'.
26008         * lisp/help-mode.el (help-mode-finish): Fix doc-string.
26010         In nsimage.m include coding.h (Bug#21292)
26011         * src/nsimage.m (top-level): Include coding.h (Bug#21292).
26013         Move window edge functions to Elisp.
26014         * src/window.c (Fwindow_edges, Fwindow_pixel_edges)
26015         (Fwindow_absolute_pixel_edges, Fwindow_inside_edges)
26016         (Fwindow_inside_pixel_edges, Fwindow_inside_absolute_pixel_edges):
26017         Move to window.el.
26018         (calc_absolute_offset): Remove.
26019         * lisp/frame.el (frame-edges): New function.
26020         * lisp/window.el (window-edges, window-pixel-edges)
26021         (window-absolute-pixel-edges): Move here from window.c.
26022         (window-body-edges, window-body-pixel-edges)
26023         (window-absolute-body-pixel-edges): Move here from window.c and
26024         rename "inside" to "body".  Keep old names as aliases.
26025         (window-absolute-pixel-position): New function.
26027 2015-08-19  Katsumi Yamaoka  <yamaoka@jpl.org>
26029         [Gnus]: Use overlay functions directly
26030         * lisp/gnus/gnus-art.el (gnus-mime-inline-part, gnus-mm-display-part)
26031         (gnus-insert-mime-button, gnus-mime-buttonize-attachments-in-header)
26032         (gnus-article-highlight-signature, gnus-article-extend-url-button)
26033         (gnus-article-add-button, gnus-insert-prev-page-button)
26034         (gnus-insert-next-page-button, gnus-insert-mime-security-button):
26035         * lisp/gnus/gnus-cite.el (gnus-cite-delete-overlays)
26036         (gnus-cite-add-face):
26037         * lisp/gnus/gnus-html.el (gnus-html-wash-tags):
26038         * lisp/gnus/gnus-salt.el (gnus-tree-read-summary-keys)
26039         (gnus-tree-recenter, gnus-highlight-selected-tree):
26040         * lisp/gnus/gnus-sum.el (gnus-summary-show-all-threads)
26041         (gnus-summary-show-thread, gnus-summary-hide-thread)
26042         (gnus-highlight-selected-summary):
26043         * lisp/gnus/gnus-util.el (gnus-put-overlay-excluding-newlines):
26044         * lisp/gnus/message.el (message-fix-before-sending)
26045         (message-toggle-image-thumbnails):
26046         * lisp/gnus/mm-decode.el (mm-convert-shr-links):
26047         * lisp/gnus/sieve.el (sieve-highlight, sieve-insert-scripts):
26048         Use overlay functions directly instead of using gnus-overlay-*,
26049         message-overlay-*, and sieve-overlay-*.
26050         * lisp/gnus/gnus-sum.el (gnus-remove-overlays):
26051         * lisp/gnus/gnus.el (gnus-make-overlay, gnus-copy-overlay)
26052         (gnus-delete-overlay, gnus-overlay-get, gnus-overlay-put)
26053         (gnus-move-overlay, gnus-overlay-buffer, gnus-overlay-start)
26054         (gnus-overlay-end, gnus-overlays-at, gnus-overlays-in):
26055         * lisp/gnus/message.el (message-delete-overlay, message-make-overlay)
26056         (message-overlay-get, message-overlay-put, message-overlays-in):
26057         * lisp/gnus/sieve.el (sieve-make-overlay, sieve-overlay-put)
26058         (sieve-overlays-at): Remove.
26060 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
26062         In w32fns.c condition TITLEBAR_INFO declaration on WINDOWS version
26063         * src/w32fns.c (TITLEBAR_INFO): Make it a typedef so MinGW64
26064         builds can use the declaration from the system headers.
26065         (GetTitleBarInfo_Proc, Fx_frame_geometry): Adapt to new
26066         definition of TITLEBAR_INFO.
26067         Suggested by Eli Zaretskii  <eliz@gnu.org>
26069 2015-08-19  Glenn Morris  <rgm@gnu.org>
26071         * lisp/gnus/nnmaildir.el (nnmaildir-flag-mark-mapping): Add "P".
26073 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
26075         Use new q ‘format’ flag when fixing quotes in C
26076         * src/image.c (image_size_error): New function.  All uses of
26077         image_error with "Invalid image size ..."  changed to use it.
26078         * src/image.c (image_size_error, xbm_load_image, xbm_load)
26079         (xpm_load, xpm_load_image, xpm_load, pbm_load, png_load_body)
26080         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
26081         (imagemagick_load, svg_load, svg_load_image, gs_load)
26082         (x_kill_gs_process):
26083         * src/lread.c (load_warn_old_style_backquotes):
26084         * src/xfaces.c (load_pixmap):
26085         * src/xselect.c (x_clipboard_manager_error_1):
26086         Use %qs, not uLSQM and uRSQM.
26087         * src/syntax.c (Finternal_describe_syntax_value):
26088         Prefer Fsubstitute_command_keys to Fformat, as this lets
26089         us use AUTO_STRING.
26090         * src/xdisp.c (vadd_to_log): Use AUTO_STRING on the format argument,
26091         as it's now guaranteed to be ASCII.
26092         * src/xselect.c (x_clipboard_manager_error_2):
26093         Avoid grave accent in low-level stderr diagnostic.
26095 2015-08-19  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
26097         New q flag for ‘format’
26098         * doc/lispref/processes.texi (Sentinels):
26099         Don't hardwire grave quoting style in example.
26100         * doc/lispref/strings.texi (Formatting Strings):
26101         * etc/NEWS:
26102         Document new q flag.
26103         * src/editfns.c (Fformat): Implement it.
26105 2015-08-18  Daiki Ueno  <ueno@gnu.org>
26107         pinentry.el: Add debugging support
26108         * lisp/net/pinentry.el (pinentry-debug): New variable.
26109         (pinentry-debug-buffer): New variable.
26110         (pinentry--process-filter): Send input to the debug buffer, if
26111         `pinentry-debug' is set.
26113         pinentry.el: Improve multiline prompt
26114         * lisp/net/pinentry.el (pinentry--prompt): Simplify the interface.
26115         (pinentry--process-filter): Use `pinentry--prompt' for CONFIRM
26116         command.
26118 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
26120         Fix multibyte confusion in diagnostics
26121         * src/print.c (print_error_message):
26122         Don't assume that the caller's name is unibyte.
26123         * src/xdisp.c (vadd_to_log):
26124         Don't assume that the formatted diagnostic is unibyte.
26126         Fix file name encodings in diagnostics
26127         Also, close some minor races when opening image files, by opening
26128         them once instead of multiple times.
26129         * src/gtkutil.c (xg_get_image_for_pixmap):
26130         * src/image.c (xpm_load, tiff_load, gif_load, imagemagick_load)
26131         (svg_load):
26132         * src/nsimage.m (allocInitFromFile:):
26133         * src/xfns.c (xg_set_icon):
26134         Encode file name, since x_find_image_file no longer does that.
26135         * src/image.c (x_find_image_fd): New function.
26136         (x_find_image_file): Use it.  Do not encode resulting file name,
26137         since callers sometimes need it decoded.
26138         (slurp_file): File arg is now a fd, not a file name.
26139         All callers changed.  This saves us having to open the file twice.
26140         (xbm_load, xpm_load, pbm_load, png_load_body, jpeg_load_body)
26141         (svg_load):
26142         Use x_find_image_fd and fdopen to save a file-open.
26143         Report file name that failed.
26144         * src/lread.c (openp): If PREDICATE is t, open the file in binary mode.
26146 2015-08-18  Dmitry Gutov  <dgutov@yandex.ru>
26148         Allow blink-matching-paren to jump off screen
26149         * doc/emacs/programs.texi (Matching): Mention the
26150         `blink-matching-paren' value `jump-offscreen'.
26151         * lisp/simple.el (blink-matching-paren): New possible value.
26152         (blink-matching-paren-on-screen): Clarify the docstring.
26153         (blink-matching-open): Handle `jump-offscreen' (bug#21286).
26155         Refine the previous change
26156         * lisp/simple.el (blink-matching-open): Use minibuffer-message
26157         outside of save-excursion (bug#21286).
26159 2015-08-18  Martin Rudalics  <rudalics@gmx.at>
26161         Rewrite and add frame geometry related functions.
26162         * src/frame.c (Fframe_position): New function.
26163         (Fset_frame_position): Rename parameters and rewrite doc-string.
26164         (syms_of_frame): Remove Qframe_position, Qframe_outer_size,
26165         Qtitle_height and Qframe_inner_size.  Add Qouter_edges,
26166         Qouter_position, Qouter_size, Qnative_edges, Qinner_edges,
26167         Qtitle_bar_size.
26168         * src/nsfns.m (frame_geometry): New function.
26169         (Fx_frame_geometry): Call frame_geometry.
26170         (Fx_frame_edges): New function.
26171         * src/w32fns.c (C_CHILDREN_TITLEBAR, TITLEBAR_INFO)
26172         (GetTitleBarInfo_Proc): Define these so we can use the
26173         GetTitleBarInfo API.
26174         (Fw32_frame_menu_bar_size, Fw32_frame_rect): Remove.
26175         (Fx_frame_geometry): Rewrite.
26176         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
26177         (Fx_set_mouse_absolute_pixel_position): New functions.
26178         * src/xfns.c (frame_geometry): New function.
26179         (Fx_frame_geometry): Call frame_geometry.
26180         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
26181         (Fx_set_mouse_absolute_pixel_position): New functions.
26183 2015-08-18  Michael Albinus  <michael.albinus@gmx.de>
26185         Improve Tramp's compatibility
26186         * lisp/net/tramp.el (tramp-get-method-parameter):
26187         * lisp/net/tramp-adb.el (tramp-adb-parse-device-names)
26188         (tramp-adb-get-device):
26189         * lisp/net/trampver.el (tramp-repository-get-version):
26190         Use `tramp-compat-replace-regexp-in-string'.
26192 2015-08-18  Pierre Téchoueyres  <pierre.techoueyres@free.fr>  (tiny change)
26194         * lisp/net/tramp-cmds.el (tramp-reporter-dump-variable):
26195         Encode/decode string.
26197 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
26199         Clarify what happens to match data on failure
26200         Problem reported by Ernesto Alfonso (Bug#21279).
26201         * doc/lispref/searching.texi (Regexp Search, Simple Match Data):
26202         Document more carefully what happens to match data after a failed
26203         search.
26204         * src/search.c (Fmatch_beginning, Fmatch_end): Document that
26205         the return value is undefined if the last search failed.
26206         (Fmatch_data): Simplify doc string line 1.
26208 2015-08-18  Daiki Ueno  <ueno@gnu.org>
26210         Revert "pinentry.el: Support external passphrase cache"
26211         This reverts commit e086e55a664ec27fbca7b3231c4b32cb78a89337.
26212         pinentry.el shouldn't directly interact with the secrets service,
26213         but ask the caller to cache the passphrase.
26215 2015-08-17  Xue Fuqiao  <xfq.free@gmail.com>
26217         * doc/emacs/sending.texi (Mail Misc): Fix two index entries for
26218         Message mode hooks.
26220 2015-08-17  Daiki Ueno  <ueno@gnu.org>
26222         epg.el: Make gpgconf output parsing future proof
26223         * lisp/epg.el (epg--start): Count the number of fields in "gpgconf
26224         --list-options" output.
26226         pinentry.el: Support external passphrase cache
26227         * lisp/net/pinentry.el (pinentry-use-secrets): New user option.
26228         (pinentry--allow-external-password-cache): New local variable.
26229         (pinentry--key-info): New local variable.
26230         (secrets-enabled, secrets-search-items, secrets-get-secret):
26231         Declare.
26232         (pinentry--send-passphrase): New function, split from
26233         `pinentry--process-filter'.
26234         (pinentry--process-filter): Use secrets.el to retrieve passphrase
26235         from login keyring.
26237         pinentry.el: Popup window for multiline prompt
26238         * lisp/net/pinentry.el (pinentry): New custom group.
26239         (pinentry-popup-prompt-window): New user option.
26240         (pinentry-prompt-window-height): New user option.
26241         (pinentry--prompt-buffer): New variable.
26242         (pinentry-prompt-mode-map): New variable.
26243         (pinentry-prompt-mode): New function.
26244         (pinentry--prompt): New function.
26245         (pinentry--process-filter): Use `pinentry--prompt' instead of
26246         `read-passwd' and `y-or-n-p'.
26248 2015-08-17  Katsumi Yamaoka  <yamaoka@jpl.org>
26250         message.el: Silent the byte compiler
26251         * lisp/gnus/message.el (message-overlay-put, message-make-overlay)
26252         (message-kill-all-overlays, message-overlays-in, message-overlay-get)
26253         (message-delete-overlay, message-window-inside-pixel-edges):
26254         Declare before using.
26256         * lisp/gnus/message.el (message-overlay-get, message-overlays-in)
26257         (message-window-inside-pixel-edges): XEmacs compatible functions.
26259 2015-08-17  Lars Magne Ingebrigtsen  <larsi@gnus.org>
26261         * lisp/gnus/message.el (message-toggle-image-thumbnails): New command.
26263 2015-08-17  Noah Friedman  <friedman@splode.com>
26265         * lisp/simple.el (blink-matching-open): Restore point before
26266         calling minibuffer-message.
26268 2015-08-17  Ronnie Schnell  <ronnie@driver-aces.com>
26270         * lisp/play/dunnet.el: Update version number in header (now
26271         matches help).
26273 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
26275         Curved quotes in --batch diagnostics in non-UTF-8
26276         When run with --batch, check that curved quotes are compatible with
26277         the system locale before outputting them in diagnostics.
26278         Problem reported by Eli Zaretskii in:
26279         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00594.html
26280         * lisp/startup.el (command-line): Set internal--text-quoting-flag
26281         after the standard display table is initialized.
26282         * src/doc.c (default_to_grave_quoting_style): New function.
26283         (text_quoting_style): Use it.
26284         (text_quoting_flag): New static var, visible to Lisp as
26285         internal--text-quoting-flag.
26286         * src/emacs.c: Include <wchar.h> if available.
26287         (using_utf8): New function.
26288         (main): Use it to initialize text_quoting_flag.
26289         * src/regex.h (btowc) [WIDE_CHAR_SUPPORT && emacs]:
26290         Don't define, as it's not needed and it clashes with wchar.h.
26292 2015-08-17  Glenn Morris  <rgm@gnu.org>
26294         * doc/misc/tramp.texi (Configuration): Reword to avoid warning
26295         from makeinfo about spurious "Note:" cross-reference, and for grammar.
26297 2015-08-17  Ilya Zakharevich  <ilya@math.berkeley.edu>
26299         Minor change in variable initialization on MS-Windows
26300         * src/w32fns.c <after_dead_key>: Initialize to -1.
26301         (deliver_wm_chars): If after_deadkey is zero, don't set after_dead
26302         non-zero.
26304         Fix a bug with LWindow key remapping on MS-Windows
26305         * src/w32fns.c (deliver_wm_chars): Fix a typo.  (Bug#21276)
26307 2015-08-17  Eli Zaretskii  <eliz@gnu.org>
26309         Improve fontset support for latest OTF script tags
26310         * lisp/international/fontset.el (otf-script-alist): Add some
26311         missing script tags.
26312         (setup-default-fontset): Include settings for v2 versions of the
26313         script tags used by some modern OTF/TTF fonts.
26315 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
26317         Spelling fixes
26319 2015-08-16  Paul Eggert  <eggert@cs.ucla.edu>
26321         Use curved quotes in core elisp diagnostics
26322         In the core elisp files, use curved quotes in diagnostic formats,
26323         so that they follow user preference as per ‘text-quoting-style’
26324         rather than being hard-coded to quote `like this'.
26325         * lisp/abbrev.el (expand-region-abbrevs):
26326         * lisp/button.el (button-category-symbol, button-put)
26327         (make-text-button):
26328         * lisp/cus-start.el:
26329         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
26330         (custom--sort-vars-1, load-theme):
26331         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
26332         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
26333         (cl-generic-generalizers):
26334         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
26335         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
26336         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
26337         (advice--make, define-advice):
26338         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
26339         * lisp/emacs-lisp/timer.el (timer-event-handler):
26340         * lisp/env.el (setenv):
26341         * lisp/facemenu.el (facemenu-add-new-face)
26342         (facemenu-add-new-color):
26343         * lisp/faces.el (face-documentation, read-face-name)
26344         (face-read-string, read-face-font, face-spec-set-match-display)
26345         (read-color, x-resolve-font-name):
26346         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
26347         (set-auto-mode, hack-local-variables)
26348         (hack-one-local-variable--obsolete)
26349         (dir-locals-set-directory-class, write-file)
26350         (basic-save-buffer, delete-directory, copy-directory)
26351         (recover-session, recover-session-finish, insert-directory)
26352         (file-modes-char-to-who, file-modes-symbolic-to-number)
26353         (move-file-to-trash):
26354         * lisp/font-lock.el (font-lock-fontify-buffer):
26355         * lisp/format.el (format-write-file, format-find-file)
26356         (format-insert-file):
26357         * lisp/frame.el (get-device-terminal, select-frame-by-name):
26358         * lisp/fringe.el (fringe--check-style):
26359         * lisp/help.el (describe-minor-mode-from-indicator):
26360         * lisp/image.el (image-type):
26361         * lisp/international/fontset.el (x-must-resolve-font-name):
26362         * lisp/international/mule-cmds.el (prefer-coding-system)
26363         (select-safe-coding-system-interactively)
26364         (select-safe-coding-system, activate-input-method)
26365         (toggle-input-method, describe-current-input-method):
26366         * lisp/international/mule-conf.el (code-offset):
26367         * lisp/mouse.el (minor-mode-menu-from-indicator):
26368         * lisp/replace.el (query-replace-read-from)
26369         (occur-after-change-function, occur-1):
26370         * lisp/scroll-bar.el (scroll-bar-columns):
26371         * lisp/simple.el (execute-extended-command)
26372         (undo-outer-limit-truncate, compose-mail, set-variable)
26373         (choose-completion-string, define-alternatives):
26374         * lisp/startup.el (site-run-file, tty-handle-args)
26375         (command-line, command-line-1):
26376         * lisp/subr.el (noreturn, define-error, add-to-list)
26377         (read-char-choice):
26378         * lisp/term/common-win.el (x-handle-xrm-switch)
26379         (x-handle-name-switch, x-handle-args):
26380         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
26381         Use curved quotes in diagnostics.
26382         * lisp/international/mule.el (find-auto-coding):
26383         Use " to quote in a diagnostic, to be consistent with the rest of
26384         this file.
26386         Convert lisp/term/x-win.el to UTF-8
26387         * lisp/term/x-win.el: Convert to UTF-8.  This doesn't affect
26388         runtime behavior, and the file is multilingual so compile-time
26389         appearance shouldn't be an issue.
26390         * admin/notes/unicode: Document this.
26392 2015-08-16  Wilson Snyder  <wsnyder@wsnyder.org>
26394         Update verilog-mode.el to 2015-05-14-6232468-vpo-GNU.
26395         * lisp/progmodes/verilog-mode.el: Fix some non-automated indent
26396         issues and comments, bug#943.
26397         (verilog-type-font-keywords): Cycle delay operators like ##1 and
26398         ##[0:$] are now highlighted in their entirety similarly to the #
26399         delay-control operator.  Likewise, the followed-by operators #-#
26400         and #=# are no longer partially highlighed.
26401         (verilog-backward-syntactic-ws-quick)
26402         (verilog-skip-backward-comments): Minor performance improvements
26403         to buffer traversal functions for reduced latency.
26404         (verilog-calc-1, verilog-in-deferred-immediate-final-p): When the
26405         keyword 'final' follows 'assert/assume/cover', then it is part of
26406         a deferred immediate assertion item and should not be treated as a
26407         final construct for indentation.  Reported by Yuri Sugihara.
26408         (verilog-do-indent): Virtual task/function/class definition lines
26409         should not be considered as declarations.  Reported by Enzo Chi.
26410         (verilog-do-indent): Do not falsely indent to '=' of
26411         property/sequence operators on subsequent lines of a multi-line
26412         statement.
26413         (verilog-assignment-operator-re): Fix '!==' operator and add
26414         support for '<->', ':/', '#-#', and '#=#' operators.
26415         (verilog-calculate-indent, verilog-label-be): Enable
26416         case-sensitive regular expression parsing when looking for
26417         keywords.
26418         (verilog-calc-1): Detect 'pure virtual method' declarations which
26419         exist in abstract classes.  Reported by Enzo Chi and Kaushal Modi.
26420         (verilog-backward-ws&directives): When moving back to the start of
26421         a line and the preceeding line ended with an escaped-newline, then
26422         jump up one line.  This properly consumes a multi-line
26423         pre-processor directive.  Reported by Kaushal Modi.
26424         (verilog-dpi-import-export-re, verilog-extended-complete-re)
26425         (verilog-calc-1): Teach verilog-mode to properly indent after a
26426         DPI import/export statement that resides outside of a module.
26427         Reported by Kaushal Modi.
26428         (verilog-extended-complete-re): Update regexp to match both
26429         "DPI-C" and "DPI".  Reported by Kaushal Modi.
26431 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
26433         substitute-command-keys a few more doc strings
26434         * lisp/allout.el (outlineify-sticky):
26435         * lisp/files.el (hack-one-local-variable--obsolete):
26436         * lisp/help-fns.el (help-fns--obsolete, describe-variable):
26437         Use substitute-command-keys on some doc strings so that
26438         they don't use hard-coded key bindings or quoting styles.
26440         Fix quoting in Fformat calls
26441         * src/image.c (xbm_read_bitmap_data, xbm_load_image, xbm_load)
26442         (xpm_load, xpm_load_image, pbm_load, png_load_body)
26443         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
26444         (imagemagick_load, svg_load, svg_load_image, gs_load)
26445         (x_kill_gs_process):
26446         * src/lread.c (load_warn_old_style_backquotes):
26447         * src/xfaces.c (load_pixmap):
26448         * src/xselect.c (x_clipboard_manager_error_1):
26449         Quote diagnostics according to user preference when calling
26450         Fformat or its derivatives.
26452 2015-08-15  Glenn Morris  <rgm@gnu.org>
26454         * admin/admin.el (set-version, set-copyright): Remove deleted files.
26456 2015-08-15  Stephen Leake  <stephen_leake@stephe-leake.org>
26458         Allow describe-function helpers to access buffer-local values
26459         This will be used by cedet/mode-local.el `describe-mode-local-override'
26460         on `help-fns-describe-function-functions' in upstream CEDET.
26461         * lisp/help-fns.el (describe-function-orig-buffer): New, let-bound in
26462         `describe-function'.
26463         (describe-function): Bind it, save it on the help xref stack.
26465         Handle pulse-background being nil
26466         * lisp/cedet/pulse.el (pulse-lighten-highlight): Inherit
26467         pulse-background, handle it being nil.
26469 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
26471         Fix "\`" confusion in Lisp strings
26472         * admin/authors.el (authors-canonical-author-name):
26473         Fix typo by using "\\`" not "\`" in string RE.
26474         * lisp/obsolete/complete.el (PC-complete-as-file-name):
26475         * lisp/obsolete/vi.el (vi-backward-blank-delimited-word):
26476         * lisp/progmodes/verilog-mode.el (verilog-mode-map):
26477         Use plain "`", not the equivalent-but-confusing "\`", in strings.
26478         * lisp/textmodes/texinfmt.el: Fix comment likewise.
26480 2015-08-15  Dani Moncayo  <dmoncayo@gmail.com>
26482         * nt/zipdist.bat: Remove -- no longer used.
26484 2015-08-15  Jürgen Hötzel  <juergen@archlinux.org>
26486         * lisp/net/tramp-sh.el (tramp-remote-selinux-p): Use "selinuxenabled"
26487         rather than "getenforce".
26488         (tramp-sh-handle-set-file-selinux-context): Do not
26489         cache SELinux context if not all context components are given.
26491 2015-08-15  Eli Zaretskii  <eliz@gnu.org>
26493         Add doc strings to 2 help-mode.el functions
26494         * lisp/help-mode.el (help-mode-setup, help-mode-finish): Add doc
26495         strings.  (Bug#21263)
26497         Remove files used by the old MS-Windows specific build procedure
26498         * admin/unidata/makefile.w32-in:
26499         * doc/emacs/makefile.w32-in:
26500         * doc/lispintro/makefile.w32-in:
26501         * doc/lispref/makefile.w32-in:
26502         * doc/misc/makefile.w32-in:
26503         * leim/makefile.w32-in:
26504         * lib-src/makefile.w32-in:
26505         * lib/makefile.w32-in:
26506         * lisp/makefile.w32-in:
26507         * nt/INSTALL.OLD:
26508         * nt/config.nt:
26509         * nt/emacs-src.tags:
26510         * nt/envadd.bat:
26511         * nt/gmake.defs:
26512         * nt/makefile.w32-in:
26513         * nt/multi-install-info.bat:
26514         * nt/nmake.defs:
26515         * nt/paths.h:
26516         * src/makefile.w32-in: Files deleted.
26517         * nt/configure.bat: Remove everything except the blurb about the
26518         new build procedure.
26519         * make-dist: Remove references to makefile.w32-in in various
26520         directories, and to files in nt/ that were deleted.
26521         * etc/NEWS: Mention the fact that the files were dropped.
26523 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
26525         * doc/emacs/mule.texi (Charsets): Give fuller title for ISO-IR.
26526         (Bug#21248)
26528 2015-08-14  Paul Eggert  <eggert@cs.ucla.edu>
26530         Default to inotify instead of gfile
26531         * configure.ac (with_file_notification): Fix typo that
26532         prevented suppression of file notification if HAVE_NS.
26533         (NOTIFY_OBJ): Prefer inotify to gfile if both exist and
26534         with_file_notification is 'yes' (Bug#21241).
26535         * etc/NEWS: Mention this.
26537         Fix broken URLs for ISO-IR
26538         * doc/emacs/mule.texi (Charsets):
26539         * lisp/international/mule-conf.el:
26540         Fix broken URL (Bug#21248).
26542         Low-level diagnostics now use ‘text-quoting-style’
26543         * src/doprnt.c (doprnt):
26544         Format ` and ' as per ‘text-quoting-style’.
26545         * src/xdisp.c (vmessage, message): Mention that the format should
26546         not contain ` or '.
26548         Prefer ‘format’ to ‘substitute-command-keys’
26549         * src/character.h (uLSQM, uRSQM): Move here ...
26550         * src/doc.c (uLSQM, uRSQM): ... from here.
26551         * src/doc.c (Fsubstitute_command_keys):
26552         * src/syntax.c (Finternal_describe_syntax_value):
26553         * lisp/cedet/mode-local.el (mode-local-print-binding)
26554         (mode-local-describe-bindings-2):
26555         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
26556         * lisp/cus-theme.el (describe-theme-1):
26557         * lisp/descr-text.el (describe-text-properties-1, describe-char):
26558         * lisp/emacs-lisp/cl-extra.el (cl--describe-class):
26559         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
26560         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
26561         * lisp/emacs-lisp/package.el (describe-package-1):
26562         * lisp/faces.el (describe-face):
26563         * lisp/help-fns.el (help-fns--key-bindings)
26564         (help-fns--compiler-macro, help-fns--parent-mode)
26565         (help-fns--obsolete, help-fns--interactive-only)
26566         (describe-function-1, describe-variable):
26567         * lisp/help.el (describe-mode):
26568         Prefer ‘format’ to ‘substitute-command-keys’ when either will do
26569         to implement quoting style.  This generally makes the code simpler.
26571         Extend ‘format’ to translate curved quotes
26572         This is a followup to the recent doc string change, and deals with
26573         diagnostics and the like.  This patch is more conservative than
26574         the doc string change, in that the behavior of ‘format’ changes
26575         only if its first arg contains curved quotes and the user prefers
26576         straight or grave quotes.  (Come to think of it, perhaps we should
26577         be similarly conservative with doc strings too, but that can wait.)
26578         The upside of this conservatism is that existing usage is almost
26579         surely unaffected.  The downside is that we'll eventually have to
26580         change Emacs's format strings to use curved quotes in places where
26581         the user might want curved quotes, but that's a simple and
26582         mechanical translation that I'm willing to do later.  (Bug#21222)
26583         * doc/lispref/help.texi (Keys in Documentation):
26584         Move description of text-quoting-style from here ...
26585         * doc/lispref/strings.texi (Formatting Strings):
26586         ... to here, and describe new behavior of ‘format’.
26587         * etc/NEWS: Describe new behavior.
26588         * lisp/calc/calc-help.el (calc-describe-thing):
26589         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
26590         * lisp/info.el (Info-find-index-name):
26591         Use ‘concat’ rather than ‘format’ to avoid misinterpretation
26592         of recently-added curved quotes.
26593         * src/doc.c (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
26594         Move from here ...
26595         * src/lisp.h: ... to here.
26596         * src/doc.c (text_quoting_style): New function.
26597         (Fsubstitute_command_keys): Use it.
26598         * src/editfns.c (Fformat): Implement new behavior.
26599         * src/lisp.h (enum text_quoting_style): New enum.
26601 2015-08-14  Stefan Monnier  <monnier@iro.umontreal.ca>
26603         * src/keyboard.c: Use false/true instead of 0/1 for booleans.
26604         * src/keyboard.h (struct kboard): Mark kbd_queue_has_data as boolean.
26606 2015-08-14  Michael Albinus  <michael.albinus@gmx.de>
26608         * lisp/net/tramp-sh.el (tramp-sh-handle-file-acl): Do not redirect
26609         stderr to /dev/null, this is done in `tramp-send-command-and-check'.
26611 2015-08-14  Jürgen Hötzel  <juergen@archlinux.org>
26613         Flush file properties in Tramp
26614         * lisp/net/tramp-sh.el (tramp-sh-handle-set-file-modes)
26615         (tramp-sh-handle-set-file-times):
26616         * lisp/net/tramp-adb.el (tramp-adb-handle-set-file-modes)
26617         (tramp-adb-handle-set-file-times): Flush the file properties of
26618         the directory.
26620 2015-08-14  Ronnie Schnell  <ronnie@driver-aces.com>
26622         * doc/emacs/misc.texi (Amusements): Fixed typo.
26624 2015-08-14  Eli Zaretskii  <eliz@gnu.org>
26626         Don't miss warnings about removing string text properties while dumping
26627         * src/alloc.c (purecopy): Warn about removing a string's text
26628         properties even when the same string was already pure-copied
26629         earlier.
26630         * lisp/progmodes/elisp-mode.el (elisp--xref-format)
26631         (elisp--xref-format-extra): Fix the commentary.
26633 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
26635         * lisp/progmodes/sh-script.el (sh-mode): Handle .cshrc (bug#21049).
26637 2015-08-13  Magnus Henoch  <magnus.henoch@gmail.com>
26639         * lisp/progmodes/compile.el: Use lexical-binding.
26640         (compilation-move-to-column): Assume 8-wide TABs (bug#21038).
26642 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
26644         (uniquify-ask-about-buffer-names-p): Remove, unused (bug#21037)
26645         * lisp/uniquify.el: Remove redundant `:group's.
26647 2015-08-13  Jürgen Hötzel  <juergen@archlinux.org>
26649         * lisp/net/tramp-adb.el
26650         (tramp-adb-handle-directory-files-and-attributes): Make a copy of
26651         result to prevent modification of the tramp-cache by side effects.
26652         Use the correct cache key.
26654 2015-08-13  Paul Eggert  <eggert@cs.ucla.edu>
26656         Make add_to_log varargs
26657         * src/alloc.c (run_finalizer_handler):
26658         * src/charset.c (load_charset_map_from_vector):
26659         * src/nsimage.m (ns_load_image):
26660         * src/xfaces.c (load_pixmap, load_color2):
26661         Simplify, now that add_to_log has a variable number of args.
26662         * src/image.c (image_error): Take a variable number of args.
26663         Callers simplified.
26664         * src/lisp.h (add_to_log, vadd_to_log): Adjust to new APIs.
26665         * src/xdisp.c (format_nargs, vadd_to_log): New functions.
26666         (add_to_log): Make varargs, and reimplement in terms of vadd_to_log.
26667         * src/xfaces.c (merge_face_ref): Fix typo that omitted color name.
26669         Optional args for holiday-greek-orthodox-easter
26670         * etc/NEWS: Document this.
26671         * lisp/calendar/holidays.el (holiday-greek-orthodox-easter):
26672         Add optional args N and STRING, mimicking the API and code of
26673         ‘holiday-easter-etc’.  From suggestion by Foivos S. Zakkak (Bug#21256).
26675 2015-08-13  Stephen Leake  <stephen_leake@stephe-leake.org>
26677         xref-find-definitions: Exclude more generic function items.
26678         * lisp/emacs-lisp/cl-generic.el (cl--generic-search-method):
26679         Add doc string.
26680         (cl--generic-find-defgeneric-regexp): New.
26681         (find-function-regexp-alist): Add it.
26682         * lisp/emacs-lisp/find-func.el (find-feature-regexp): Move here from
26683         elisp-mode.el, change to search for ";;; Code:"
26684         (find-alias-regexp): Move here from elisp-mode.el, cleaned up.
26685         (find-function-regexp-alist): Add them.
26686         * lisp/progmodes/elisp-mode.el:
26687         (elisp--xref-format, elisp--xref-format-extra): Change back to
26688         defvar due to bug#21237.
26689         (elisp--xref-find-definitions): Exclude co-located default methods for
26690         generic functions.  Also exclude implicitly declared defgeneric.
26691         (elisp--xref-find-definitions): Handle C source properly.  Exclude minor
26692         mode variables defined by 'define-minor-mode'.
26693         * test/automated/elisp-mode-tests.el: Declare generic functions, add
26694         tests for them.
26695         (xref-elisp-test-run): Fix bug.
26696         (emacs-test-dir): Improve initial value.
26697         (find-defs-defun-defvar-el): Don't expect defvar.
26698         (find-defs-feature-el): Match change to find-feature-regexp.
26700 2015-08-13  Eli Zaretskii  <eliz@gnu.org>
26702         Improve warning about purecopy of strings with properties
26703         * src/alloc.c (purecopy): Show the offending string with the
26704         warning about removing its text properties.
26706 2015-08-12  Alan Mackenzie  <acm@muc.de>
26708         Introduce new macros to cover Emacs's new names in cl-lib.el
26709         This also eliminates `mapcan' warnings in XEmacs.
26710         * lisp/progmodes/cc-defs.el (c--mapcan-status): New variable to
26711         characterise [X]Emacs versions.
26712         (top-level): Require either 'cl or 'cl-lib, depending on
26713         c--mapcan-status.
26714         Change this back to cc-external-require from an eval-when-compile
26715         require.
26716         (c--mapcan, c--set-difference, c--intersection, c--macroexpand-all)
26717         (c--delete-duplicates): New macros which expand into either old or new
26718         names.
26719         (c-make-keywords-re, c-lang-defconst, c-lang-const): Use the new macros
26720         rather than the old names.
26721         * lisp/progmodes/cc-engine.el (c-declare-lang-variables): Use c--mapcan
26722         rather than mapcan.
26723         * lisp/progmodes/cc-fonts.el (c-compose-keywords-list): Use c--mapcan.
26724         * lisp/progmodes/cc-langs.el (top-level): Require either 'cl or 'cl-lib,
26725         depending on c--mapcan-status.
26726         (c-filter-ops, c-all-op-syntax-tokens, c-assignment-op-regexp)
26727         (c-type-start-kwds, c-prefix-spec-kwds, c-specifier-key)
26728         (c-not-decl-init-keywords, c-not-primitive-type-keywords)
26729         (c-paren-any-kwds, c-<>-sexp-kwds, c-block-stmt-kwds, c-expr-kwds)
26730         (c-decl-block-key, c-keywords, c-keywords-obarray)
26731         (c-regular-keywords-regexp, c-primary-expr-regexp)
26732         (c-primary-expr-regexp, c-block-prefix-disallowed-chars)
26733         (c-known-type-key, c-nonlabel-token-key)
26734         (c-make-init-lang-vars-fun): Use the new macros rather than the old
26735         names.
26737 2015-08-12  Oleh Krehel  <ohwoeowho@gmail.com>
26739         loadhist.el (read-feature): Conform to completing-read
26740         * lisp/loadhist.el (read-feature): According to `completing-read'
26741         documentation, if collection is a list, then it must be a list of
26742         strings, not a list of symbols like before.
26744 2015-08-12  David Kastrup  <dak@gnu.org>
26746         Deal gracefully with up-events (Bug#19746)
26747         * src/keyboard.c (apply_modifiers_uncached, parse_solitary_modifier)
26748         (parse_modifiers_uncached): React gracefully to "up-" modifiers:
26749         those may easily be injected by user-level Lisp code.
26750         (read_key_sequence): Discard unbound up-events like unbound
26751         down-events: they are even more likely only relevant for special
26752         purposes.
26753         While Emacs will not produce up-events on its own currently (those are
26754         converted to drag or click events before being converted to
26755         Lisp-readable structures), the input queue can be made to contain them
26756         by synthesizing events to `unread-command-events'.  Emacs should deal
26757         consistently with such events.
26759 2015-08-12  Eli Zaretskii  <eliz@gnu.org>
26761         Fix display of thin lines whose newline has line-height property of t
26762         * src/xdisp.c (append_space_for_newline): Don't try to fix ascent
26763         and descent values of non-empty glyph rows, since they could have
26764         forced low values deliberately.  (Bug#21243)
26766 2015-08-12  Richard Stallman  <rms@gnu.org>
26768         Offer to combine multiple To or CC fields.
26769         * lisp/mail/sendmail.el (mail-combine-fields): New function.
26770         (mail-send): Call 'mail-combine-fields'.
26772         Don't decrypt encrypted files.
26773         * lisp/mail/mail-utils.el (mail-file-babyl-p): Bind epa-inhibit to t.
26775         Handle encrypted mbox files.
26776         * lisp/mail/rmailout.el (rmail-output-as-mbox): Decrypt and reencrypt
26777         the mbox file if necessary.
26779         Re-enable mime processing after decryption.  Add 'decrypt' keyword.
26780         * lisp/mail/rmail.el (rmail-epa-decrypt-1): New subroutine.
26781         (rmail-epa-decrypt): rmail-epa-decrypt-1 broken out.
26782         In a mime message, reenable Mime and show the parts that
26783         were shown before.
26784         Add keyword "decrypt" if anything decrypted.
26786         epa-inhibit inhibits auto-recognition of .gpg files
26787         * lisp/epa-file.el (epa-inhibit): New variable.
26788         (epa-file-handler): Check epa-inhibit.
26790 2015-08-12  Artur Malabarba  <bruce.connor.am@gmail.com>
26792         * lisp/emacs-lisp/lisp-mnt.el (lm-header): Add save-excursion.
26794 2015-08-11  Fabián Ezequiel Gallina  <fgallina@gnu.org>
26796         Respect python.el imenu when semantic-mode is off
26797         Fixes bug#21220
26798         * lisp/cedet/semantic/wisent/python.el: Do not force
26799         wisent-python-default-setup on python-mode-hook.
26801 2015-08-11  Paul Eggert  <eggert@cs.ucla.edu>
26803         Give names to Unicode code points in C code
26804         * src/character.h (NO_BREAK_SPACE, SOFT_HYPHEN)
26805         (ZERO_WIDTH_NON_JOINER, ZERO_WIDTH_JOINER, HYPHEN)
26806         (NON_BREAKING_HYPHEN, LEFT_SINGLE_QUOTATION_MARK)
26807         (RIGHT_SINGLE_QUOTATION_MARK, PARAGRAPH_SEPARATOR)
26808         (LEFT_POINTING_ANGLE_BRACKET, RIGHT_POINTING_ANGLE_BRACKET)
26809         (LEFT_ANGLE_BRACKET, RIGHT_ANGLE_BRACKET)
26810         (OBJECT_REPLACEMENT_CHARACTER):
26811         New named constants for Unicode code points.
26812         * src/bidi.c (bidi_fetch_char, CANONICAL_EQU):
26813         * src/composite.c (char_composable_p):
26814         * src/lread.c (readevalloop, read1):
26815         * src/xdisp.c (get_next_display_element):
26816         Use them.
26817         * src/doc.c (LEFT_SINGLE_QUOTATION_POINT):
26818         Remove; now in character.h.
26820 2015-08-11  Stephen Leake  <stephen_leake@stephe-leake.org>
26822         elisp--xref-find-definitions handle cl-defstuct default constructor
26823         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Add FIXME.
26824         (elisp--xref-format-extra): Rename from elisp--xref-format-cl-defmethod.
26825         (elisp--xref-find-definitions): Handle cl-defstuct default constructor.
26826         * test/automated/elisp-mode-tests.el (xref-elisp-test-run): Split out
26827         from xref-elisp-test for ease of debugging.
26828         (xref-elisp-deftest): Rename from xref-elisp-test.
26829         (find-defs-constructor): New test.
26830         (find-defs-defgeneric-el): Match batch test config.
26831         (compile): Required for find-defs compilation-minor-mode test.
26832         (find-defs-defvar-el): Match code change.
26833         (find-defs-face-el): Match code change.
26834         * lisp/progmodes/xref.el (xref-find-function, xref-find-definitions):
26835         Improve doc string.
26837 2015-08-11  Stefan Monnier  <monnier@iro.umontreal.ca>
26839         * lisp/replace.el (perform-replace): Document `replacements'.
26840         (perform-replace): Move the description of the format of `replacements'
26841         from the body's comment to the doc string.
26843 2015-08-11  Jürgen Hötzel  <juergen@archlinux.org>
26845         * lisp/net/tramp-adb.el (tramp-adb-prompt): Match leading escape
26846         sequence.  Recent adb version send initial escape sequences, even
26847         when terminal type is set to TERM=dumb.
26849 2015-08-10  Stephen Leake  <stephen_leake@stephe-leake.org>
26851         Rewrite elisp--xref-find-definitions to handle many more cases; add tests
26852         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
26853         Function deleted.
26854         (elisp--xref-format-cl-defmethod): New defconst.
26855         (find-feature-regexp, find-alias-regexp): New defcustoms.
26856         (elisp--xref-make-xref): New function.
26857         (elisp--xref-find-definitions): Rewrite using the above, handle many
26858         more cases.  Always output all available definitions.
26859         (xref-location-marker): No need for special cases.
26860         * test/automated/elisp-mode-tests.el: Add more tests of
26861         elisp--xref-find-definitions, improve current tests.
26863 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
26865         Fix recording of events pushed onto unread-command-events
26866         * src/keyboard.c (read_char): Make sure events read from
26867         unread-command-events and unread-post-input-method-events are
26868         always recorded by record_char.  Reported by David Kastrup
26869         <dak@gnu.org>, see
26870         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00193.html.
26872 2015-08-10  Samer Masterson  <samer@samertm.com>
26874         Set file buffer as current for "--file"
26875         * lisp/startup.el (command-line-1): Set file buffer as current before
26876         it is displayed so it can be used with options like "--eval".
26877         (Bug#21095)
26879 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
26881         Avoid setting LC_NUMERIC on MS-Windows to anything but "C"
26882         * src/emacs.c (synchronize_locale) [WINDOWSNT]: Call fixup_locale
26883         after setting LC_ALL to the desired locale, to avoid affecting how
26884         numbers are read and printed.  (Bug#21223)
26886 2015-08-10  Alan Mackenzie  <acm@muc.de>
26888         Fix "Invalid search bound (wrong side of point)" in fontification
26889         * lisp/progmodes/cc-fonts.el (c-font-lock-declarators): After skipping
26890         an initialization expression, check point is not beyond the
26891         fontification limit.
26893 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
26895         Fix DPI calculation when Xft/DPI is default
26896         * src/xsettings.c (parse_settings): Don't use Xft/DPI default
26897         value of -1, which evaluates to 2**32 - 1 (Bug#21152).
26898         Remove unnecessary cast while we're in the neighborhood.
26900 2015-08-09  Dmitry Gutov  <dgutov@yandex.ru>
26902         Add project-vc-search-path and project-vc-ignores
26903         * lisp/progmodes/project.el (project-vc): New group.
26904         (project-vc-search-path, project-vc-ignores): New variables.
26905         (project--value-in-dir): Utility function.
26906         (project-search-path, project-ignores): Use them.
26907         * lisp/progmodes/xref.el (xref--rgrep-command): Only replace `./'
26908         at bos.  Don't add extra `/'.  Don't prepend with `*' if replaced.
26910 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
26912         Fix some minor quoting issues with grave accent
26913         * src/dispnew.c (add_window_display_history) [GLYPH_DEBUG]:
26914         Remove redundant quotes.
26915         * src/doc.c (uLSQM, uRSQM): New macros.
26916         * src/doc.c (Fsubstitute_command_keys):
26917         * src/syntax.c (Finternal_describe_syntax_value): Follow the user
26918         preference for quotes rather than hardcoding the ‘grave’ style.
26919         * src/regex.c (PUSH_FAILURE_POINT, POP_FAILURE_POINT)
26920         (re_match_2_internal) [DEBUG]: In debugging output, quote C
26921         strings with "...", not `...'.
26923         ChangeLog.2 ignores remote-tracking merges
26924         * build-aux/gitlog-to-emacslog: Ignore commit logs matching
26925         "Merge remote-tracking branch '.*'" too.  See Eli Zaretskii in:
26926         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00384.html
26928 2015-08-09  Nicolas Richard  <youngfrog@members.fsf.org>
26930         Use kpsewhich in ffap-latex-mode, if available
26931         * lisp/ffap.el (ffap-latex-guess-rules): New variable.
26932         (ffap-latex-mode): Use kpsewhich if available.
26934         ffap: disallow braces in filenames for tex modes
26935         * lisp/ffap.el (ffap-string-at-point-mode-alist): Don't allow
26936         braces in tex-related modes.
26938         Remove useless backslashes from ffap-string-at-point-mode-alist
26939         * lisp/ffap.el (ffap-string-at-point-mode-alist): Remove useless and
26940         misleading backslashes from default value.
26942         Augment docstring of ffap-string-at-point-mode-alist
26943         * lisp/ffap.el (ffap-string-at-point-mode-alist): Describe how BEG
26944         and END are handled.
26946 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
26948         * lisp/org/org-src.el (org-edit-src-code)
26949         (org-edit-fixed-width-region):
26950         * lisp/simple.el (completion-setup-function):
26951         Remove calls to substitute-command-keys that always just return
26952         their argument.
26954 2015-08-09  Daiki Ueno  <ueno@gnu.org>
26956         * lisp/epa.el (epa-exit-buffer-function): Set to `quit-window'.
26957         (Bug#21210)
26959 2015-08-09  Ivan Kanis  <ivan@kanis.fr>
26961         Fix link to source code in help window
26962         * lisp/help-fns.el (find-lisp-object-file-name): Remove code that
26963         will never work due to Glenn Morris change a6d63d9 on Apr 20 2013
26964         'No longer include timestamp in header of .elc files'.  Add code
26965         that will return .el source file in load-path.
26967 2015-08-09  Artur Malabarba  <bruce.connor.am@gmail.com>
26969         * lisp/isearch.el (isearch-search-fun-default): (Bug#21164)
26970         Respect `isearch-lax-whitespace' when searching through
26971         `isearch-word'.
26973 2015-08-08  Stefan Monnier  <monnier@iro.umontreal.ca>
26975         * test/automated/ert-tests.el (ert-test-deftest): Add FIXME.
26977         * lisp/org/org.el: Fix up some lexical scoping warnings, and use dolist
26978         * lisp/org/org.el (org-set-regexps-and-options-for-tags, org-goto-map)
26979         (org-set-regexps-and-options, org-assign-fast-keys)
26980         (org-contextualize-keys, org-contextualize-validate-key)
26981         (org-notes-order-reversed-p, org-local-logging, org-map-entries)
26982         (org-find-olp, org-find-exact-heading-in-directory)
26983         (org-cycle-agenda-files, org-release-buffers, org-fill-template)
26984         (org-agenda-prepare-buffers, org-occur-in-agenda-files)
26985         (org-replace-escapes): Use dolist.
26986         (org-mode): Optimize away XEmacs-only code.
26987         (org-refile-get-targets): Remove unused var `f'.
26988         (org-fast-todo-selection): Remove unused var `e'.
26989         (org-make-tags-matcher): Use dolist.  Remove unused var `term'.
26990         (org-fast-tag-selection): Use dolist.  Remove unused var `e'.
26991         (org-format-latex): Use dolist.  Remove unused var `e'.
26992         (org-toggle-heading): Access vars lexically rather than dynamically.
26993         (org-backward-sentence, org-forward-sentence, org-meta-return)
26994         (org-kill-line): Mark arg as unused.
26995         (org-submit-bug-report): Silence compiler warning.
26996         (org-occur-in-agenda-files): Don't use add-to-list on local vars.
26997         (org-get-cursor-date): Remove unused var `tm'.
26998         (org-comment-or-uncomment-region): Use standard name `_'.
26999         (reftex-docstruct-symbol, reftex-cite-format): Declare to
27000         silence byte-compiler.
27001         (org-reftex-citation): Add `org--' prefix to dynamically scoped
27002         `rds' var.
27004 2015-08-08  Paul Eggert  <eggert@cs.ucla.edu>
27006         Electric quote if coding is undecided or no conv
27007         * lisp/electric.el (electric--insertable-p): Also say that a
27008         string is insertable if the buffer file coding system is undecided
27009         or uses no conversion, as curved quotes will work in either case.
27011         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Simplify configuration.
27013 2015-08-08  Eli Zaretskii  <eliz@gnu.org>
27015         Fix overlay string display regressions introduced in Emacs 24.5
27016         * src/xdisp.c (pop_it): Reset the flag to ignore overlays at this
27017         buffer position, if we move the iterator to a new position as
27018         result of jumping over text covered by a "replacing" display
27019         property.
27020         * test/redisplay-testsuite.el (test-redisplay-4): Add 2 new tests.
27022         Support recovery from C stack overflow on MS-Windows
27023         * src/w32fns.c (w32_reset_stack_overflow_guard)
27024         (stack_overflow_handler): New functions for handling C stack
27025         overflow exceptions.
27026         (my_exception_handler): Handle EXCEPTION_STACK_OVERFLOW exceptions
27027         specially, and zero out except_addr if we do.
27028         (globals_of_w32fns): Initialize dwMainThreadId in non-interactive
27029         mode.
27030         * src/sysdep.c [HAVE_STACK_OVERFLOW_HANDLING]: Add !WINDOWSNT to
27031         the condition, as HAVE_STACK_OVERFLOW_HANDLING is now defined for
27032         the MinGW build, but the code guarded by that is for Posix hosts.
27033         * src/keyboard.c (command_loop) [WINDOWSNT]:
27034         Call w32_reset_stack_overflow_guard.
27035         * nt/inc/ms-w32.h (sigjmp_buf): New typedef.
27036         (sigsetjmp): New macro.
27037         (w32_reset_stack_overflow_guard): Declare the prototype.
27038         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Set to 1 for MinGW.
27040 2015-08-07  Phillip Lord  <phillip.lord@newcastle.ac.uk>
27042         Improve error signaling for seq-subseq
27043         * lisp/emacs-lisp/seq.el (seq-subseq): The existing behavior is to error
27044         when indexes are too large, but to silently ignore numbers which
27045         are too negative for lists.  String and vector handling errors in
27046         both cases.  This has been regularized.  Error signaling behavior
27047         has been explicitly added to the doc string.
27049         * lisp/cl-extra.el (cl-subseq): Defers to (seq-subseq) and is
27050         therefore also impacted by this change.  Update the doc string
27051         to reflect this.
27053         * test/automated/seq-tests.el (test-seq-subseq): Tests have been
27054         added for these exceptional cases, as well as one non exceptional
27055         base case.
27057 2015-08-07  Jürgen Hötzel  <juergen@archlinux.org>
27059         Improve error checking in tramp-adb.el
27060         * lisp/net/tramp-adb.el (tramp-adb-ls-output-name-less-p):
27061         Improve error checking.  "ls -l" on Android in Enforcing mode can
27062         print "lstat './FILENAME failed: Permission denied".
27064 2015-08-07  Stefan Monnier  <monnier@iro.umontreal.ca>
27066         * lisp/emacs-lisp/cl-generic.el (cl--generic-struct-tag): Don't burp on
27067         non-struct vectors.
27069 2015-08-07  Stephen Leake  <stephen_leake@stephe-leake.org>
27071         Fix typo in lisp/window.el, more `display-buffer-use-some-frame'
27072         * lisp/window.el: Fix typo that broke build.
27073         (display-buffer--action-function-custom-type):
27074         Add `display-buffer-use-some-frame'.
27075         (display-buffer): Add `display-buffer-use-some-frame' to doc string.
27077         Add support for 'inhibit-same-window in 'display-buffer-use-some-frame'
27078         * lisp/window.el (display-buffer-use-some-frame): Add support for
27079         'inhibit-same-window in alist.
27080         * doc/lispref/windows.texi (display-buffer-use-some-frame):
27081         Doc support for 'inhibit-same-window in alist.
27083 2015-08-07  Eli Zaretskii  <eliz@gnu.org>
27085         Avoid infinite loop in display of invisible text in strings
27086         * src/xdisp.c (handle_invisible_prop): If the next change of
27087         invisibility spec does not mean the beginning of a visible text,
27088         update the string position from which to start the search for the
27089         next invisibility change.  This avoids an infinite loop when we
27090         have more than one invisibility spec that are made inactive by
27091         buffer-invisibility-spec.  Simplify code.  (Bug#21200)
27092         * test/redisplay-testsuite.el (test-redisplay-4): Add a test case
27093         for the situation that caused bug #21200.
27095 2015-08-06  Artur Malabarba  <bruce.connor.am@gmail.com>
27097         * lisp/emacs-lisp/package.el: Simplify describe-package-1
27098         (package-help-section-name-face): New face.
27099         (package--print-help-section): New function.
27100         (describe-package-1): Refactor section printing.
27101         (package-make-button): Use face instead of font-lock-face, which
27102         doesn't work on buttons.
27104         * lisp/emacs-lisp/package.el: Define custom faces
27105         (package-name-face, package-description-face)
27106         (package-status-built-in-face, package-status-external-face)
27107         (package-status-available-face, package-status-new-face)
27108         (package-status-held-face, package-status-disabled-face)
27109         (package-status-installed-face, package-status-dependency-face)
27110         (package-status-unsigned-face, package-status-incompat-face)
27111         (package-status-avail-obso-face): New faces.
27112         (package-menu--print-info-simple): Use them.
27114 2015-08-05  Paul Eggert  <eggert@cs.ucla.edu>
27116         Fix some confusion with ‘format’
27117         * lisp/allout-widgets.el (allout-widgets-before-change-handler)
27118         (allout-graphics-modification-handler):
27119         Protect arbitrary string in a format context with "%s" format.
27120         * lisp/avoid.el:
27121         * lisp/cedet/semantic/bovine/scm.el: Fix comment.
27122         * lisp/calendar/icalendar.el (icalendar--convert-sexp-to-ical):
27123         * lisp/erc/erc-button.el (erc-button-beats-to-time):
27124         * lisp/gnus/message.el (message-send-form-letter):
27125         * lisp/org/ob-core.el (org-babel-check-evaluate)
27126         (org-babel-confirm-evaluate):
27127         * lisp/org/ob-fortran.el (org-babel-fortran-var-to-fortran):
27128         * lisp/org/ox-latex.el (org-latex-compile):
27129         * lisp/org/ox-man.el (org-man-compile):
27130         * lisp/org/ox-odt.el (org-odt-template):
27131         * lisp/org/ox-texinfo.el (org-texinfo-compile):
27132         * lisp/progmodes/prolog.el (prolog-help-info)
27133         (prolog-view-predspec):
27134         * lisp/progmodes/ruby-mode.el (ruby-parse-partial):
27135         * lisp/progmodes/verilog-mode.el (verilog-showscopes):
27136         * lisp/textmodes/rst.el (rst-replace-lines):
27137         Change (message (format ...)) to (message ...), and likewise
27138         for ‘error’.  This lessens the probability of confusion when the
27139         output of ‘format’ contains ‘%’.
27141 2015-08-05  Artur Malabarba  <bruce.connor.am@gmail.com>
27143         * lisp/replace.el (replace-character-fold): Default to nil.
27145         * lisp/character-fold.el: Fix lax whitespace.
27146         (character-fold-table): Don't make space match other whitespace chars.
27147         (character-fold-to-regexp): Simplify lax behavior.
27149 2015-08-05  Dmitry Gutov  <dgutov@yandex.ru>
27151         Preserve window point in xref-find-definitions-other-window
27152         Fix the problem reported by Ingo Logmar in
27153         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00152.html
27154         * lisp/progmodes/xref.el (xref--goto-char): Extract from
27155         xref--goto-location.
27156         (xref--pop-to-location): Use it.  Replace xref--goto-location with
27157         a direct xref-location-marker call.
27158         (xref--show-location): Likewise.
27159         (xref--display-position): Use xref--goto-char.
27161         * lisp/progmodes/project.el: Add a paragraph to the front matter.
27163 2015-08-04  David Kastrup  <dak@gnu.org>
27165         * lisp/vc/emerge.el (emerge-show-file-name):
27166         * lisp/progmodes/vhdl-mode.el (vhdl-electric-dash)
27167         (vhdl-comment-insert, vhdl-hooked-abbrev):
27168         * lisp/progmodes/octave.el (inferior-octave-dynamic-list-input-ring):
27169         * lisp/progmodes/fortran.el (fortran-window-create-momentarily):
27170         * lisp/progmodes/ebrowse.el (ebrowse-hack-electric-buffer-menu):
27171         * lisp/progmodes/cperl-mode.el (cperl-putback-char):
27172         * lisp/obsolete/vip.el (vip-escape-to-emacs)
27173         (vip-prefix-arg-value, vip-prefix-arg-com):
27174         * lisp/obsolete/terminal.el (te-escape-extended-command-unread):
27175         * lisp/leim/quail/tibetan.el (quail-tibetan-update-translation)
27176         (quail-tibkey-update-translation):
27177         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
27178         * lisp/leim/quail/lao.el (quail-lao-update-translation):
27179         * lisp/leim/quail/japanese.el (quail-japanese-update-translation)
27180         (quail-japanese-self-insert-and-switch-to-alpha):
27181         * lisp/leim/quail/hangul.el (hangul2-input-method)
27182         (hangul3-input-method, hangul390-input-method):
27183         * lisp/language/hanja-util.el (hangul-to-hanja-char):
27184         * lisp/international/robin.el (robin-input-method):
27185         * lisp/international/quail.el (quail-start-translation)
27186         (quail-start-conversion):
27187         * lisp/gnus/gnus-art.el (gnus-article-describe-key)
27188         (gnus-article-describe-key-briefly):
27189         * lisp/eshell/em-hist.el (eshell-list-history):
27190         * lisp/term.el (term-dynamic-list-input-ring)
27191         (term-dynamic-list-completions):
27192         * lisp/subr.el (momentary-string-display):
27193         * lisp/simple.el (read-quoted-char):
27194         * lisp/pcomplete.el (pcomplete-show-completions):
27195         * lisp/kmacro.el (kmacro-repeat-on-last-key):
27196         * lisp/info.el (Info-summary):
27197         * lisp/ehelp.el (electric-help-command-loop):
27198         * lisp/ebuff-menu.el (electric-buffer-list)
27199         (Electric-buffer-menu-exit):
27200         * lisp/double.el (double-translate-key):
27201         * lisp/comint.el (comint-dynamic-list-input-ring)
27202         (comint-dynamic-list-completions): Do not overwrite preexisting
27203         contents of `unread-command-events' when putting new events into it.
27205 2015-08-04  Daniel Colascione  <dancol@dancol.org>
27207         Improve ansi-color filtering of unrecognized escape sequences
27208         * lisp/ansi-color.el (ansi-color-drop-regexp): Recognize mode-setting
27209         escape sequences.
27210         (ansi-color-filter-apply, ansi-color-apply): Filter out
27211         unrecognized escape sequences.
27213 2015-08-04  Artur Malabarba  <bruce.connor.am@gmail.com>
27215         * lisp/emacs-lisp/package.el (package-menu-mode-map): Convert menu
27216         definitions to `easy-menu-define', improve a couple to account for
27217         async, and add a couple of new commands.
27219 2015-08-03  Jürgen Hötzel  <juergen@archlinux.org>
27221         * lisp/net/tramp-cache.el (tramp-set-file-property): Fix code typo.
27223 2015-08-03  Ingo Lohmar  <i.lohmar@gmail.com>
27225         Add new 'calendar-weekend-days' option
27226         Make the days receiving the 'calendar-weekend-header' face freely
27227         customizable, as they differ by region/culture.
27228         * doc/emacs/calendar.texi (Move to Beginning or End): Document the
27229         new variable.
27230         * lisp/calendar/calendar.el (calendar-generate-month): New variable
27231         calendar-weekend-days to customize day header fontification.
27233 2015-08-03  Paul Eggert  <eggert@cs.ucla.edu>
27235         Redo text-quoting-style variable
27236         Rename help-quote-translation to text-quoting-style,
27237         and use symbols rather than characters as values.
27238         This follows suggestions along these lines by Alan Mackenzie in:
27239         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00343.html
27240         and by Drew Adams in:
27241         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00048.html
27242         * doc/lispref/help.texi (Keys in Documentation)
27243         * etc/NEWS:
27244         * lisp/cus-start.el (standard):
27245         * src/doc.c (Fsubstitute_command_keys, syms_of_doc):
27246         Document and/or implement the new behavior instead of the old.
27247         (syms_of_doc): New symbols 'grave' and 'straight'.
27249 2015-08-03  Nikolaus Rath  <Nikolaus@rath.org>
27251         nnimap.el: Use IMAP MOVE extension if available
27252         * lisp/gnus/nnimap.el (nnimap-request-move-article)
27253         (nnimap-process-expiry-targets, nnimap-split-incoming-mail):
27254         Use MOVE extension if available.
27256         nnimap.el: Explicitly ask for server capabilities
27257         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Don't assume full
27258         capabilities will be returned in the login-result.
27260 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
27262         Treat help strings like other doc strings
27263         * doc/lispref/text.texi (Special Properties), etc/NEWS: Document this.
27264         * lisp/epa.el (epa--select-keys): Remove no-longer-needed calls to
27265         substitute-command-keys.
27266         * src/keyboard.c (show_help_echo, parse_menu_item): Call
27267         substitute-command-keys on the help string before displaying it.
27269         Also mention "curly quotes"
27270         See Drew Adams's email in:
27271         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00040.html
27272         * doc/lispref/help.texi (Keys in Documentation):
27273         Add index entry "curly quotes".
27274         * etc/NEWS: Use the phrase "curly quotes" too.
27276         ede-proj-target-makefile docstring tweaks
27277         * lisp/cedet/ede/proj.el (ede-proj-target-makefile):
27278         Consistently use "all:" to describe the all: target,
27279         replacing three different and confusingly-quoted usages.
27281 2015-08-02  Evgeny Fraimovitch  <johnlen7@gmail.com>  (tiny change)
27283         Don't abort emacsclientw when -a was specified
27284         * lib-src/emacsclient.c (set_tcp_socket) [WINDOWSNT]: Don't error
27285         out if we are in emacsclientw and -a was specified.
27287 2015-08-02  Eli Zaretskii  <eliz@gnu.org>
27289         Fix handling of 1st keystroke on MS-Windows
27290         * src/w32fns.c (globals_of_w32fns): Initialize after_deadkey to -1.
27291         This is needed to correctly handle the session's first keystroke,
27292         if it has any modifiers.  (Bug#19994)
27294 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
27296         Substitute some customization etc. doc strings
27297         These changes apply substitute-command-keys to some
27298         doc strings that were going through untranslated
27299         when creating customization or other widgets.
27300         * lisp/cus-edit.el (custom-group-value-create):
27301         * lisp/wid-edit.el (widget-default-create):
27302         (widget-push-button-value-create):
27303         Treat the widget tag as a doc string.
27304         * lisp/emacs-lisp/cl-extra.el (cl--describe-class-slot):
27305         Treat the :documentation value as a doc string.
27306         * lisp/wid-edit.el (widget-choose):
27307         Treat the choice names as doc strings.
27308         (widget-default-create): Treat the :doc value as a doc string.
27309         (widget-toggle-value-create): Treat the :on and :off values
27310         as doc strings.
27311         (widget-documentation-string-value-create):
27312         Substitute the doc string.
27314 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
27316         Add a second argument to project-ignores
27317         * lisp/progmodes/project.el (project-ignores): Add a second
27318         argument DIR.
27319         * lisp/progmodes/project.el (project-ignores): Only include the VC
27320         ignores if DIR is the VC root.
27321         * lisp/progmodes/xref.el (xref-find-regexp): Update accordingly.
27323 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
27325         Prevent incorrect display when 'line-spacing' variable is set
27326         * src/xdisp.c (try_window_id): Give up this optimization if the
27327         buffer has its 'line-spacing' variable set non-nil.
27329 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
27331         Don't pass NOVISIT to find-file
27332         * lisp/progmodes/etags.el (next-file):
27333         Don't pass NOVISIT to find-file (bug#21175).
27335         Ignore buffer restriction for tags-loop-eval
27336         * lisp/progmodes/etags.el (tags-loop-continue): Ignore buffer
27337         restriction (bug#21167).
27339 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
27341         Fix a thinko in 'ffap-gopher-at-point'
27342         * lisp/ffap.el (ffap-gopher-at-point): Fix last change.  (Bug#21168)
27344         Honor 'line-spacing' for empty lines
27345         * src/xdisp.c (append_space_for_newline): Honor 'line-height'
27346         property and 'line-spacing' frame parameter or variable or
27347         property for empty lines, by doing the same processing as in
27348         x_produce_glyph for newline characters.  (Bug#21165)
27350 2015-08-01  Paul Eggert  <eggert@cs.ucla.edu>
27352         Simplify by assuming C99 integer division
27353         * src/floatfns.c (ceiling2, floor2, truncate2):
27354         Assume C99 (i.e., Fortran) semantics for integer division.
27355         This simplifies the code.
27357 2015-07-31  Paul Eggert  <eggert@cs.ucla.edu>
27359         Don't overflow if computing approximate percentage
27360         * lisp/align.el (align-region):
27361         * lisp/cedet/semantic.el (semantic-repeat-parse-whole-stream):
27362         * lisp/cedet/semantic/wisent.el (wisent-parse-region):
27363         * lisp/cus-edit.el (custom-buffer-create-internal):
27364         * lisp/emacs-lisp/checkdoc.el (checkdoc-interactive-ispell-loop)
27365         (checkdoc-message-interactive-ispell-loop, checkdoc-next-error)
27366         (checkdoc-next-message-error):
27367         * lisp/emacs-lisp/eieio-opt.el (eieio-display-method-list):
27368         * lisp/epa.el (epa-progress-callback-function):
27369         * lisp/erc/erc-dcc.el (erc-dcc-do-LIST-command):
27370         * lisp/ffap.el (ffap-menu-rescan):
27371         * lisp/gnus/nnbabyl.el (nnbabyl-retrieve-headers):
27372         * lisp/gnus/nndiary.el (nndiary-retrieve-headers):
27373         * lisp/gnus/nneething.el (nneething-retrieve-headers):
27374         * lisp/gnus/nnmbox.el (nnmbox-retrieve-headers):
27375         * lisp/gnus/nnmh.el (nnmh-retrieve-headers):
27376         * lisp/gnus/nnml.el (nnml-retrieve-headers):
27377         * lisp/gnus/nnspool.el (nnspool-retrieve-headers):
27378         * lisp/gnus/nntp.el (nntp-retrieve-headers)
27379         (nntp-retrieve-articles):
27380         * lisp/imenu.el (imenu--relative-position):
27381         * lisp/international/ja-dic-cnv.el (skkdic-collect-okuri-nasi)
27382         (skkdic-convert-okuri-nasi):
27383         * lisp/net/ange-ftp.el (ange-ftp-process-handle-hash):
27384         * lisp/nxml/rng-valid.el (rng-compute-mode-line-string):
27385         * lisp/org/org-list.el (org-update-checkbox-count):
27386         * lisp/org/org.el (org-table-map-tables)
27387         (org-update-parent-todo-statistics):
27388         * lisp/play/decipher.el (decipher-insert-frequency-counts)
27389         (decipher-analyze-buffer):
27390         * lisp/profiler.el (profiler-format-percent):
27391         * lisp/progmodes/cc-cmds.el (c-progress-update):
27392         * lisp/progmodes/cpp.el (cpp-highlight-buffer):
27393         * lisp/progmodes/idlwave.el (idlwave-convert-xml-system-routine-info)
27394         (idlwave-list-load-path-shadows):
27395         * lisp/progmodes/opascal.el (opascal-step-progress):
27396         * lisp/progmodes/vhdl-mode.el (vhdl-update-progress-info)
27397         (vhdl-scan-directory-contents):
27398         * lisp/textmodes/bibtex.el (bibtex-progress-message):
27399         * lisp/textmodes/flyspell.el (flyspell-small-region)
27400         (flyspell-external-point-words):
27401         * lisp/textmodes/table.el (table-recognize):
27402         Prefer (floor (* 100.0 NUMERATOR) DENOMINATOR) when calculating
27403         progress-report percentages and the like.  This avoids problems
27404         if (* 100 NUMERATOR) would overflow.
27405         * lisp/gnus/gnus-registry.el (gnus-registry-import-eld):
27406         * lisp/gnus/registry.el (registry-reindex):
27407         Use (* 100.0 ...) rather than (* 100 ...) to avoid int overflow issues.
27408         * lisp/descr-text.el (describe-char):
27409         * lisp/org/org-colview.el (org-nofm-to-completion):
27410         * lisp/ps-print.el (ps-plot):
27411         * lisp/simple.el (what-cursor-position):
27412         Prefer (round (* 100.0 NUMERATOR) DENOMINATOR) to a
27413         more-complicated and less-accurate approximation.
27415         Fix some int overflows in profiler.c
27416         * src/profiler.c (make_log): Make args EMACS_INT, not int,
27417         to avoid unwanted behavior on 'int' overflow.
27418         (make_log, evict_lower_half, record_backtrace):
27419         Use ptrdiff_t, not int, for object indexes.
27421         Port to pedantic memcpy
27422         * src/keyboard.c (menu_bar_items, tool_bar_items):
27423         * src/xrdb.c (magic_db):
27424         Port to pedantic memcpy implementations that reject memcpy (0, 0, 0).
27426         Merge from gnulib
27427         This incorporates:
27428         2015-07-29 time_rz: port to pedantic memcpy
27429         * lib/time_rz.c: Copy from gnulib.
27431 2015-07-31  Artur Malabarba  <bruce.connor.am@gmail.com>
27433         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
27434         When updating the very last entry, tabulated-list-print would
27435         erase it and then try to look at the next one (which obviously
27436         isn't there).
27438 2015-07-31  Eli Zaretskii  <eliz@gnu.org>
27440         Allow to use the old key processing code on MS-Windows
27441         * src/w32fns.c (syms_of_w32fns) <w32-use-fallback-wm-chars-method>:
27442         New variable.
27443         (w32_wnd_proc): Use it to invoke the old code that processed
27444         character keys, as fallback, when this variable is non-nil.
27445         Fix typos in comments.  (Bug#19994)
27447 2015-07-31  Ilya Zakharevich  <ilya@math.berkeley.edu>
27449         Improve handling of Unicode keyboard input on MS-Windows
27450         * src/w32fns.c (get_wm_chars, deliver_wm_chars): New functions.
27451         (FPRINTF_WM_CHARS) [DEBUG_WM_CHARS]: New macro for debugging.
27452         (w32_wnd_proc): Call deliver_wm_chars to process non-special keys
27453         upon receiving WM_KEYDOWN or WM_SYSKEYDOWN messages.  If that is
27454         successful, don't call TranslateMessage.  (Bug#19994)
27456 2015-07-30  Dmitry Gutov  <dgutov@yandex.ru>
27458         Fix default-directory in changeset diffs after vc-print-log
27459         * lisp/vc/log-view.el (log-view-diff-common): Move the
27460         revision-granularity check back into log-view-diff-changeset.
27461         (log-view-diff-changeset): Bind default-directory to the current
27462         VC root.
27464         Rename project-directories to project-roots
27465         * lisp/progmodes/project.el (project-search-path-function)
27466         (project-search-path): Update the docstring.
27467         (project-directories): Rename to `project-roots', update all
27468         callers and implementations accordingly.
27469         (project-root): Remove.
27470         * lisp/progmodes/xref.el (xref-find-regexp): Use * instead of *.*
27471         as the default file mask.
27473 2015-07-30  Eli Zaretskii  <eliz@gnu.org>
27475         Support long URLs in w32-shell-execute
27476         * src/w32fns.c (Fw32_shell_execute): Don't use filename_to_utf16
27477         and filename_to_ansi to convert the DOCUMENT argument, as it could
27478         be a URL that is not limited to MAX_PATH characters.  Instead, use
27479         MultiByteToWideChar directly, and allocate heap storage as
27480         required to accommodate the converted string.  Likewise with
27481         non-Unicode operation.  Ensure OPERATION is null-terminated, even
27482         if it is longer than 32K bytes.  (Bug#21158)
27484 2015-07-30  Stephen Leake  <stephen_leake@stephe-leake.org>
27486         * lisp/vc/vc-mtn.el (vc-mtn-find-revision): Handle null rev.
27488 2015-07-29  Stephen Leake  <stephen_leake@stephe-leake.org>
27490         Add docs for display-buffer action display-buffer-use-some-frame
27491         * lisp/window.el (display-buffer-use-some-frame): Improve doc string.
27492         * doc/lispref/windows.texi (Display Action Functions):
27493         Add display-buffer-use-some-frame.
27494         * etc/NEWS: Mention display-buffer-use-some-frame.
27496         Add display-buffer action display-buffer-use-some-frame
27497         * lisp/window.el (display-buffer-use-some-frame): New.
27499         Handle vc-mtn error more gently
27500         * lisp/vc/vc-mtn.el (vc-mtn-mode-line-string): Return "" when
27501         branch is nil.
27503 2015-07-29  Michael Albinus  <michael.albinus@gmx.de>
27505         Fix Tramp problems with multihops, and nc
27506         * lisp/net/tramp-cache.el (tramp-get-file-property)
27507         (tramp-set-file-property, tramp-flush-file-property)
27508         (tramp-get-connection-property, tramp-set-connection-property)
27509         (tramp-flush-connection-property): Remove hop from vector.
27510         * lisp/net/tramp-gw.el (tramp-gw-process-filter): Ignore errors.
27511         * lisp/net/tramp-sh.el (tramp-methods) <nc>: Separate STDERR.
27512         (tramp-do-copy-or-rename-file-out-of-band): Increase timeout of
27513         netstat to 60".
27514         (tramp-sh-handle-start-file-process): Do not show hops in prompt.
27515         * lisp/net/tramp.el (tramp-handle-file-name-as-directory)
27516         (tramp-handle-file-name-directory, tramp-handle-file-remote-p):
27517         Keep hop in result.
27518         * test/automated/tramp-tests.el (tramp-test02-file-name-dissect):
27519         Add hop tests.
27521 2015-07-29  Eli Zaretskii  <eliz@gnu.org>
27523         Resurrect highlighting of repeated words by Flyspell Mode
27524         * lisp/textmodes/flyspell.el (flyspell-word): Leave some non-word
27525         characters between point and the doublon candidate, so that
27526         flyspell-word-search-backward finds it.  (Bug#21157)
27528         Fix redisplay of large images on expose events
27529         * src/xdisp.c (expose_window, expose_area): Avoid comparisons
27530         between signed negative values and unsigned values.  This
27531         prevented redisplay on expose events when the window showed a very
27532         large image.
27534 2015-07-29  Paul Eggert  <eggert@cs.ucla.edu>
27536         Remove unnecessary stack overflow dependency
27537         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING):
27538         Don't worry about $ac_cv_header_sys_resource_h and
27539         $ac_cv_func_getrlimit, as they're no longer needed for this.
27540         Problem reported by Eli Zaretskii in:
27541         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00443.html
27543 2015-07-28  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
27545         Pacify compilation -Wincompatible-pointer-types warnings
27546         * src/w32proc.c (Fw32_get_codepage_charset): Avoid compilation
27547         warning.
27548         (CompareStringW_Proc): New typedef.
27549         (w32_compare_strings): Use it, to pacify compiler warnings under
27550         "-Wincompatible-pointer-types".
27551         * src/w32fns.c (GetDiskFreeSpaceExW_Proc)
27552         (GetDiskFreeSpaceExA_Proc): New typedefs.
27553         (Ffile_system_info): Use them, to pacify compiler warnings under
27554         "-Wincompatible-pointer-types".
27556 2015-07-28  Paul Eggert  <eggert@cs.ucla.edu>
27558         Fix subscript error in calculate_direct_scrolling
27559         Use slightly-longer cost vectors.  Without this change,
27560         calculate_direct_scrolling can have a subscript violation when
27561         FRAME_LINES (frame) <= delta.
27562         * src/scroll.c (calculate_scrolling, calculate_direct_scrolling)
27563         (line_ins_del, do_line_insertion_deletion_costs):
27564         Allocate and use slightly-larger cost vectors, ones based on
27565         FRAME_TOTAL_LINES instead of FRAME_LINES.
27567         Fix uninitalized value in encode_coding_object
27568         * src/coding.c (encode_coding_object): Also initialize
27569         coding->src_pos and coding->src_pos_byte when NILP (src_object).
27570         This avoids later use of uninitialized storage.
27572 2015-07-27  Xue Fuqiao  <xfq.free@gmail.com>
27574         * doc/lispref/variables.texi (Variable Aliases): Typo fix.
27575         (Bug#21141)
27577 2015-07-27  Paul Eggert  <eggert@cs.ucla.edu>
27579         Merge from gnulib
27580         This incorporates:
27581         2015-07-27 time_rz: port better to MinGW
27582         2015-07-27 time: port __need_time_t to MinGW
27583         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
27584         * lib/strftime.c, lib/time.in.h, lib/time_rz.c: Copy from gnulib.
27585         * lib/time-internal.h: New file, from gnulib.
27587 2015-07-27  Eli Zaretskii  <eliz@gnu.org>
27589         Handle NULL pointers in w32heap.c allocation routines
27590         * src/w32heap.c (FREEABLE_P): Consider a NULL pointer "not
27591         freeable".
27592         (realloc_after_dump, realloc_before_dump, free_before_dump):
27593         Handle NULL pointers gracefully, as Emacs now seems to expect that.
27595         Fix Cairo build without PNG
27596         * src/image.c: Define PNG function when USE_CAIRO is defined, even
27597         if HAVE_PNG is not.  (Bug#21133)
27599         MS-Windows follow-up for recent TZ-related changes
27600         * nt/mingw-cfg.site (ac_cv_header_pthread_h)
27601         (gl_cv_sys_struct_timespec_in_pthread_h): Force to "no", to avoid
27602         picking up 'struct timespec' from pthread.h, if it is installed on
27603         the user's system.  We want either the definitions from MinGW
27604         system headers, if available, or the Gnulib replacements if not.
27605         * nt/inc/ms-w32.h <struct timespec>: Don't define, as we now use
27606         lib/time.h.
27607         * lib/time.in.h: Don't let __need_* symbols affect what happens on
27608         MinGW.  These symbols are defined by MinGW system headers, but we
27609         don't want that to affect whether Gnulib portions of the header
27610         are or aren't used.
27612 2015-07-26  Paul Eggert  <eggert@cs.ucla.edu>
27614         * src/ftfont.c (ftfont_close): Add comment re Bug#20890.
27616         New optional ZONE arg for format-time-string etc.
27617         This simplifies time conversions in other time zones.
27618         It also prevents display-time-world tampering with TZ (Bug#21020).
27619         * admin/admin.el (add-release-logs):
27620         Use improved add-log-time-format API.
27621         * admin/merge-gnulib (GNULIB_MODULES): Add time_rz, timegm.
27622         (GNULIB_TOOL_FLAGS): Avoid flexmember, setenv, unsetenv.
27623         * configure.ac (tzalloc): Remove test for this, since
27624         Emacs no longer uses HAVE_TZALLOC directly.
27625         * doc/lispref/os.texi (Time of Day, Time Conversion)
27626         (Time Parsing):
27627         * etc/NEWS: Document the new behavior.
27628         Merge from gnulib, incorporating:
27629         2015-07-25 strftime: fix newly-introduced bug on Solaris
27630         2015-07-23 fprintftime, strftime: use timezone_t args
27631         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
27632         * lib/strftime.c, lib/strftime.h, lib/time.in.h, m4/sys_time_h.m4:
27633         * m4/time_h.m4:
27634         Update from gnulib.
27635         * lib/time_rz.c, lib/timegm.c, m4/time_rz.m4, m4/timegm.m4:
27636         New files from gnulib.
27637         * lisp/time-stamp.el (time-stamp-string):
27638         * lisp/time.el (display-time-world-list)
27639         (display-time-world-display):
27640         Use new API, with time zone arg.
27641         * lisp/time.el (display-time-world-display):
27642         Fix race when current-time advances while we're running.
27643         * lisp/vc/add-log.el (add-log-iso8601-time-zone)
27644         (add-log-iso8601-time-string): Accept optional time zone arg.
27645         * lisp/vc/add-log.el (add-change-log-entry):
27646         * lisp/vc/log-edit.el (log-edit-changelog-ours-p): Use new arg.
27647         * nt/gnulib.mk: Propagate lib/gnulib.mk changes here.
27648         Add rules for the time module, since they're now needed
27649         for tzalloc etc.
27650         * src/conf_post.h (getenv_TZ, setenv_TZ): New macros.
27651         (emacs_getenv_TZ, emacs_setenv_TZ): New decls.
27652         * src/editfns.c: Include errno.h.
27653         (set_time_zone_rule): Omit unnecessary forward decl.
27654         (initial_tz): Remove, replacing with ...
27655         (local_tz, wall_clock_tz, utc_tz): New static vars and constants.
27656         (tzeqlen): New constant; prefer it to (sizeof "TZ=" - 1).
27657         (emacs_localtime_rz, emacs_mktime_z, xtzalloc, xtzfree)
27658         (tzlookup): New static functions.
27659         (init_editfns): New arg DUMPING.  All uses changed.
27660         (init_editfns): Omit most initialization if dumping, not if
27661         !initialized.  Initialize wall_clock_tz and local_tz.
27662         (emacs_nmemftime, format_time_string): Time zone argument can now
27663         be any time zone, not just a boolean for UTC or local time.  All
27664         callers changed.
27665         (Fformat_time_string, Fencode_time, Fcurrent_time_string)
27666         (Fcurrent_time_zone): New optional arg ZONE.
27667         (Fdecode_time, Fset_time_zone_rule): ZONE arg can now also take
27668         the same form as with the other new additions.
27669         (decode_time_zone): Remove; no longer needed.
27670         (tzvalbuf): Now file-scope.
27671         (emacs_getenv_TZ, emacs_setenv_TZ): New functions.
27672         (syms_of_editfns): Define Qwall.
27673         * src/editfns.c (mktime_z) [!HAVE_TZALLOC]:
27674         * src/systime.h (mktime_z, timezone_t, tzalloc, tzfree)
27675         [!HAVE_TZALLOC]:
27676         Remove; now supplied by gnulib.
27677         * src/emacs.c (main):
27678         * src/lisp.h (init_editfns): Adjust to init_editfns API change.
27680 2015-07-26  Shigeru Fukaya  <shigeru.fukaya@gmail.com>
27682         Fix infinite loop in delete-consecutive-dups
27683         * lisp/subr.el (delete-consecutive-dups): Work even if the last
27684         element is nil (Bug#20588).  Avoid rescan of a circular list in
27685         deletion of last element.
27687 2015-07-26  Martin Rudalics  <rudalics@gmx.at>
27689         Have `x-frame-geometry' return nil for terminal and initial
27690         frames (Bug#21132)
27691         * src/nsfns.m (Fx_frame_geometry):
27692         * src/xfns.c (Fx_frame_geometry): Return nil for initial and
27693         terminal frames.
27694         * src/w32fns.c (Fw32_frame_menu_bar_size, Fw32_frame_rect)
27695         (Fx_frame_geometry): Return nil for terminal frames
27697 2015-07-26  HOSOYA Kei  <hosoyakei.free@gmail.com>  (tiny change)
27699         * etc/tutorials/TUTORIAL.ja: Improve translation.
27701 2015-07-25  Eli Zaretskii  <eliz@gnu.org>
27703         Avoid crashes when w32 GUI functions are called in -batch
27704         * src/w32fns.c (Fx_frame_geometry, Fw32_frame_rect)
27705         (Fw32_frame_menu_bar_size, Fw32_send_sys_command): Don't call
27706         FRAME_W32_WINDOW for initial frame.  (Bug#21132)
27708         Fix flyspell-check-previous-highlighted-word
27709         * lisp/textmodes/flyspell.el
27710         (flyspell-check-previous-highlighted-word): Really accept a
27711         numeric argument, as the doc string describes.  Fix an off-by-one
27712         error in looking up overlays, so invocation with point immediately
27713         after a word would check that word.  Clarify the doc string as
27714         Suggested by N. Jackson <nljlistbox2@gmail.com>.  (Bug#21129)
27716 2015-07-24  Michael Albinus  <michael.albinus@gmx.de>
27718         Minor cleanup in tramp-tests.el
27719         * test/automated/tramp-tests.el (tramp-test31-*, tramp-test32-*):
27720         Implement using the documented interface
27721         `tramp-connection-properties', rather than with internal functions.
27723 2015-07-24  Harald Hanche-Olsen  <hanche@math.ntnu.no>  (tiny change)
27725         Pass lambdas to `skeleton-read'
27726         * lisp/skeleton.el (skeleton-read): Allow PROMPT to be a function.
27727         * lisp/textmodes/sgml-mode.el (sgml-attributes, sgml-value): Pass
27728         lambdas to `skeleton-read' (bug#20386).
27730 2015-07-24  Eli Zaretskii  <eliz@gnu.org>
27732         * INSTALL (DETAILED BUILDING AND INSTALLATION):
27733         Mention --without-imagemagick.
27735         Don't require GUI frames and mouse for Flyspell menus
27736         * lisp/textmodes/flyspell.el (flyspell-correct-word-before-point)
27737         (flyspell-emacs-popup): Require neither a GUI frame nor mouse
27738         support, since pop-up menus work with text terminals and can be
27739         controlled via the keyboard.
27741         Improve documentation of Flyspell commands
27742         * doc/emacs/fixit.texi (Spelling): Mention Flyspell commands that
27743         can be invoked via the keyboard.  Mention those commands by name
27744         and add them to the fn index.  (Bug#21125)
27746 2015-07-23  Michael Albinus  <michael.albinus@gmx.de>
27748         Fix some Tramp problems with HP-UX
27749         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
27750         Add "tab0" to stty call.
27751         * test/automated/tramp-tests.el (tramp-persistency-file-name):
27752         Set to nil.
27753         (tramp--test-hpux-p): New defun.
27754         (tramp--test-utf8): Use it.
27756 2015-07-22  Glenn Morris  <rgm@gnu.org>
27758         * build-aux/update-subdirs: Put "no-update-autoloads: t" in output.
27760 2015-07-22  Eli Zaretskii  <eliz@gnu.org>
27762         Fix point positioning in ffap-next-guess
27763         * lisp/ffap.el (ffap-url-at-point): Set ffap-string-at-point-region,
27764         as our callers expect.  This was clobbered as part of fixing
27765         bug#5673.  (Bug#21107)
27766         (ffap-gopher-at-point): Set ffap-string-at-point-region.
27768 2015-07-22  Martin Rudalics  <rudalics@gmx.at>
27770         * lisp/window.el (even-window-sizes): Fix customization type.
27772         Optionally even widths of `display-buffer' windows.  (Bug#21100)
27773         * lisp/window.el (quit-restore-window): Restore width if
27774         requested.
27775         (display-buffer-record-window): Record width when window is
27776         reused and horizontally combined.
27777         (even-window-sizes): New option to allow evening window widths.
27778         (even-window-heights): Defalias to `even-window-sizes'.
27779         (window--even-window-heights): Rename to
27780         `window--even-window-sizes'.  Handle side-by-side windows.
27781         (display-buffer-use-some-window): Call `window--even-window-sizes'
27782         instead of `window--even-window-heights'.
27783         * lisp/help.el (resize-temp-buffer-window): Fix indentation.
27784         * doc/lispref/windows.texi (Choosing Window Options): Describe
27785         `even-window-sizes'.
27786         (Coordinates and Windows): Fix typo.
27788 2015-07-22  Stephen Leake  <stephen_leake@stephe-leake.org>
27790         Add file name to autoload error messages
27791         * lisp/emacs-lisp/autoload.el (autoload-save-buffers):
27792         Add condition-case to add file name to error message.
27794 2015-07-22  Michael Albinus  <michael.albinus@gmx.de>
27796         * lisp/net/tramp-sh.el (tramp-ssh-controlmaster-options):
27797         Use 0.0.0.1 as test host.
27799 2015-07-21  Stefan Monnier  <monnier@iro.umontreal.ca>
27801         (advice--called-interactively-skip): Fix inf-loop (bug#21083)
27802         * lisp/emacs-lisp/nadvice.el (advice--called-interactively-skip):
27803         Fix inf-loop (bug#21083).
27805 2015-07-21  Glenn Morris  <rgm@gnu.org>
27807         * test/automated/package-test.el (package-test-signed):
27808         Update for recent changes.
27810         * test/automated/elisp-mode-tests.el
27811         (elisp-xref-finds-both-function-and-variable)
27812         (elisp-xref-finds-only-function-for-minor-mode):
27813         Update for recent xref name changes.
27815 2015-07-21  Dmitry Gutov  <dgutov@yandex.ru>
27817         Make eldoc timer non-repeatable
27818         * lisp/emacs-lisp/eldoc.el (eldoc-schedule-timer): Make the timer
27819         non-repeatable.  Since it's on post-command hook, that just wasted
27820         CPU cycles.
27822 2015-07-21  Michael Albinus  <michael.albinus@gmx.de>
27824         Mention `tramp-connection-properties' in NEWS
27826         Sync with Tramp repository
27827         * doc/misc/tramp.texi (Configuration): Note, that Tramp must be
27828         required prior changing its configuration.
27829         (Connection caching, Predefined connection information)
27830         (Remote shell setup): Fix typos.
27831         (Predefined connection information): Describe, how to overwrite
27832         parameters of `tramp-methods'.
27833         (Remote programs, Remote processes, Traces and Profiles):
27834         Simplify example.
27835         (Remote programs): Remove superfluous comment.
27836         * doc/misc/trampver.texi: Update release number.
27837         * lisp/net/tramp-cache.el (tramp-connection-properties):
27838         Adapt docstring.
27839         * lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file): New defun.
27840         (tramp-gvfs-handle-copy-file, tramp-gvfs-handle-rename-file): Use it.
27841         (tramp-gvfs-handle-make-directory): Reimplement PARENTS handling,
27842         "gvfs-mkdir -p ..." does not work robust.
27843         (tramp-gvfs-maybe-open-connection):
27844         Adapt `tramp-get-method-parameter' call.
27845         * lisp/net/tramp-sh.el (tramp-methods):
27846         Add `tramp-remote-shell-login' parameter where it fits.
27847         (tramp-get-remote-path): Use it.
27848         (tramp-make-copy-program-file-name): Fix quoting for "psftp" method.
27849         (all): Adapt `tramp-get-method-parameter' calls.
27850         * lisp/net/tramp.el (tramp-methods): Adapt docstring.
27851         (tramp-get-method-parameter): Replace argument METHOD by VEC.
27852         Check also for hits in `tramp-connection-properties'.  Adapt docstring.
27853         (tramp-get-remote-tmpdir): Cache only the local name of tmpdir.
27854         (all): Adapt `tramp-get-method-parameter' calls.
27855         * lisp/net/trampver.el: Update release number.
27856         * test/automated/tramp-tests.el (tramp--instrument-test-case):
27857         Add "^make-symbolic-link not supported$" to `debug-ignored-errors'.
27858         (tramp-test13-make-directory, tramp--test-adb-p)
27859         (tramp--test-smb-or-windows-nt-p): Simplify.
27860         (tramp--test-ftp-p, tramp--test-gvfs-p): New defuns.
27861         (tramp--test-special-characters): Fix docstring.  Add gvfs and
27862         ftp tests.
27863         (tramp--test-utf8): Fix docstring.
27865 2015-07-20  Dmitry Gutov  <dgutov@yandex.ru>
27867         Add new xref-query-replace command
27868         * lisp/progmodes/xref.el (xref--match-buffer-bounds):
27869         New function, extracted from xref-pulse-momentarily.
27870         (xref-query-replace): New command.
27871         (xref--query-replace-1): New helper function.
27872         (xref--xref-buffer-mode-map): Add `r' binding.
27874 2015-07-20  Paul Eggert  <eggert@cs.ucla.edu>
27876         Simplify icalendar decoding of Z dates
27877         * lisp/calendar/icalendar.el (icalendar--decode-isodatetime):
27878         Simplify calculation of time strings with trailing "Z".
27880 2015-07-19  Dmitry Gutov  <dgutov@yandex.ru>
27882         Do not corrupt grep-find-ignored-files
27883         * lisp/progmodes/project.el (project-ignores): Change the order of
27884         the arguments to nconc, in order not to corrupt grep-find-ignored-files.
27886         Add xref-match-item, and use it
27887         * lisp/progmodes/xref.el (xref-match-bounds): New generic function.
27888         (xref-file-location): Add reader for the column slot.
27889         (xref-match-item): New class.
27890         (xref-match-bounds): A method implementation for it.
27891         (xref-make-match): New constructor function.
27892         (xref--current-item): New private variable.
27893         (xref-pulse-momentarily): Use it.
27894         (xref--pop-to-location): Change the first argument to an xref
27895         item, instead of location, bind xref--current-item.
27896         Update all callers.
27897         (xref-next-line, xref-prev-line, xref--next-error-function)
27898         (xref--mouse-2): Look for the property `xref-item',
27899         instead of `xref-location'.
27900         (xref--item-at-point): Likewise.  This function replaces
27901         `xref-location-at-point'.  Update all callers.
27902         (xref--insert-xrefs): Add the `xref-item' text property, instead
27903         of `xref-location'.
27904         (xref--collect-match): Use xref-make-match.
27906         * lisp/progmodes/xref.el (xref-item): Rename from `xref--xref'.
27907         Update all references.
27909         * lisp/progmodes/xref.el (xref--xref): Rename the `description'
27910         slot to `summary'.
27912         vc-hg: Perform the print-log call asynchronously
27913         * lisp/vc/vc-hg.el (vc-hg-print-log): Perform the call
27914         asynchronously (bug#21067).
27916         Add xref-after-jump-hook and xref-after-return-hook
27917         * lisp/progmodes/xref.el (xref-after-jump-hook)
27918         (xref-after-return-hook): New hooks.
27919         (xref-pulse-on-jump): Remove, in favor of the above.
27920         (xref-pulse-momentarily): Rename from xref--maybe-pulse.
27921         (xref--pop-to-location, xref--display-position)
27922         (xref-pop-marker-stack): Use the new hooks, as requested in
27923         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00213.html
27925 2015-07-19  Bozhidar Batsov  <bozhidar@batsov.com>
27927         * lisp/progmodes/js.el (js-mode): Correct the lighter.
27929 2015-07-19  Leo Liu  <sdl.web@gmail.com>
27931         Fix a bug in cfengine3-mode
27932         * lisp/progmodes/cfengine.el (cfengine3-mode): Handle nil
27933         eldoc-documentation-function.
27935 2015-07-18  Julien Danjou  <julien@danjou.info>
27937         sieve-mode: support "body" test command
27938         * lisp/gnus/sieve-mode.el (sieve-font-lock-keywords):
27939         Add missing "body" test command.
27941 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
27943         Fix info-apropos when the default encoding is Latin-N
27944         * lisp/info.el (Info-find-node-2): Reset the buffer's encoding to
27945         'undecided', so that it is set to the encoding of the Info file we
27946         are about to insert.  Otherwise, 'info-apropos' will fail to find
27947         some index nodes in some UTF-8 encoded files, if the buffer's
27948         previous encoding is Latin-N or some such.
27950 2015-07-18  Ivan Andrus  <darthandrus@gmail.com>
27952         * lisp/epg.el (epg--start): Check that gpgconf can be found
27953         before calling it.
27955         Expose more file types to OS X that Emacs understands
27956         * nextstep/Cocoa/Emacs.base/Contents/Info.plist: Add editor role for
27957         sty, dtx, json, and org files.  Export UTIs for el, elc, and org files.
27959 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
27961         Fix visual-order cursor movement when lines are truncated
27962         * src/xdisp.c (Fmove_point_visually): When lines are truncated,
27963         simulate display in a window of infinite width, to allow move_it_*
27964         functions reach positions outside of normal window dimensions.
27965         Remove code that tried to handle a subset of these situations by
27966         manual iteration of buffer text.  (Bug#17777)
27968         Fix following Info cross-references to anchors
27969         * lisp/info.el (Info-read-subfile): Add to the returned value the
27970         length of subfile preamble, after converting it to file's byte
27971         offset, as expected by the caller.  Use bufferpos-to-filepos.
27972         (Info-find-node-2): If searching for a node with a
27973         1000-character slop fails, try again with a 10000-character slop,
27974         to account for known bugs in Texinfo 5.0 and 5.1.  (Bug#21055)
27975         * lisp/international/mule-util.el (bufferpos-to-filepos): New
27976         function.
27977         * etc/NEWS: Mention bufferpos-to-filepos.
27979         Fix scrolling backwards on TTY frames under scroll-conservatively
27980         * src/xdisp.c (move_it_vertically_backward): Fix off-by-one error
27981         in moving backwards on TTY frames.  (Bug#21080)
27983 2015-07-17  Dmitry Gutov  <dgutov@yandex.ru>
27985         Consider a jsdoc tag to be a beginning of a paragraph as well
27986         * lisp/progmodes/js.el (js-mode): Change c-paragraph-start to
27987         consider a jsdoc tag to be a beginning of a paragraph as well.
27989 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
27991         * lisp/emacs-lisp/package.el: Fix warnings.
27993         * lisp/emacs-lisp/package.el (package-buffer-info):
27994         Add author and maintainers to `package-buffer-info'.
27996         * lisp/emacs-lisp/package.el: Many small changes.
27997         Replace all instances of 'face with 'font-lock-face.
27998         (describe-package-1): Improve some strings and move the summary
27999         up the list.
28000         (package-install-file): Update docstring.
28001         (package-menu-hide-package): Bind to `H'.
28003         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
28004         Fix error handling.
28006 2015-07-17  Paul Eggert  <eggert@cs.ucla.edu>
28008         Fix hang with large yanks This should fix the bug fixed by Mike
28009         Crowe's patch in:
28010         https://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00106.html
28011         A problem in this area has been reported by several users; see
28012         Bug#16737, Bug#17101, Bug#17026, Bug#17172, Bug#19320, Bug#20283.
28013         This fix differs from Mike Crowe's patch in that it should avoid a
28014         race condition that could lose SIGIO signals.  ignore_sigio dates
28015         back to the 1980s when some platforms couldn't block signals, and
28016         could only ignore them, which led to races when signals arrived
28017         while being ignored.  We shouldn't have to worry about those old
28018         platforms now.
28019         * src/dispextern.h, src/sysdep.c (ignore_sigio): Remove.
28020         * src/emacs.c (shut_down_emacs):
28021         Don't call ignore_sigio; unrequest_sigio should suffice.
28022         * src/keyboard.c (kbd_buffer_store_buffered_event):
28023         Use unrequest_sigio, not ignore_sigio.
28024         (kbd_buffer_get_event):
28025         Call request_sigio when getting the ball rolling again.
28027 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
28029         * lisp/obsolete/longlines.el (longlines-search-function):
28030         Fallback on `isearch-search-fun-default'.
28032 2015-07-17  Tassilo Horn  <tsdh@gnu.org>
28034         Support @-mentions
28035         * lisp/net/rcirc.el (rcirc-completion-at-point): Support completion
28036         of mentions/messages with @nick instead of just nick.
28038 2015-07-16  Michael Albinus  <michael.albinus@gmx.de>
28040         Fix bug#20943
28041         * lisp/autorevert.el (auto-revert-handler): Do not check for
28042         `buffer-modified-p'.
28043         * lisp/files.el (buffer-stale--default-function): Check for
28044         `buffer-modified-p'.
28045         * test/automated/auto-revert-tests.el
28046         (auto-revert-test02-auto-revert-mode-dired): Adapt test.
28048 2015-07-16  Ari Roponen  <ari.roponen@gmail.com>
28050         Fix delete-dups bug on long lists
28051         * lisp/subr.el (delete-dups):
28052         Don't mistakenly keep some dups when applied to long lists.
28054 2015-07-16  Paul Eggert  <eggert@cs.ucla.edu>
28056         Better heuristic for C stack overflow
28057         Improve the heuristic for distinguishing stack overflows from
28058         other SIGSEGV causes (Bug#21004).  Corinna Vinschen explained that
28059         the getrlimit method wasn't portable to Cygwin; see:
28060         https://www.cygwin.com/ml/cygwin/2015-07/msg00092.html
28061         Corinna suggested pthread_getattr_np but this also has problems.
28062         Instead, replace the low-level system stuff with a simple
28063         heuristic based on known good stack addresses.
28064         * src/eval.c, src/lisp.h (near_C_stack_top): New function.
28065         * src/sysdep.c: Don't include <sys/resource.h>.
28066         (stack_direction): Remove.  All uses removed.
28067         (stack_overflow): New function.
28068         (handle_sigsegv): Use it instead of incorrect getrlimit heuristic.
28069         Make SEGV fatal in non-main threads.
28071 2015-07-16  Daiki Ueno  <ueno@gnu.org>
28073         epg: Automatically start pinentry server
28074         * lisp/epg-config.el (epg-gpgconf-program): New variable.
28075         * lisp/epg.el (epg--start): Call `pinentry-start' if
28076         allow-emacs-pinentry is set in ~/.gnupg/gpg-agent.conf.
28078 2015-07-15  Katsumi Yamaoka  <yamaoka@jpl.org>
28080         * lisp/gnus/nnimap.el: Fix my last bogus change.
28081         Reinstall Stefan Monnier's change that was made in
28082         <83d824bc4041332f338ad7e5e830f443535aa300>.
28084 2015-07-15  Paul Eggert  <eggert@cs.ucla.edu>
28086         Merge from gnulib
28087         This incorporates:
28088         2015-07-05 acl-permissions: Document FreeBSD ACL_TYPE_NFS4 acls
28089         2015-07-05 acl-permissions: Fix on FreeBSD
28090         2015-07-05 file-has-acl, acl-permissions: fix some more HP-UX typos
28091         * lib/acl-internal.c, lib/acl-internal.h, lib/get-permissions.c:
28092         * lib/set-permissions.c: Copy from gnulib.
28094         Port to stricter C99
28095         * src/keyboard.h (kbd_buffer_store_event_hold):
28096         Don't return a void expression.
28098 2015-07-15  Xue Fuqiao  <xfq.free@gmail.com>
28100         * doc/emacs/frames.texi (Creating Frames):
28101         Fix the command `C-x 5 m' runs.
28103 2015-07-14  Michael Albinus  <michael.albinus@gmx.de>
28105         New autorevert tests
28106         * test/automated/auto-revert-tests.el: New file.
28108 2015-07-14  Paul Eggert  <eggert@cs.ucla.edu>
28110         Clear gcprolist etc. after stack overflow
28111         After stack overflow, command_loop calls init_eval, and this needs to
28112         clear gcprolist and byte_stack_list (Bug#20996).
28113         * src/alloc.c (init_alloc):
28114         Move gcprolist and byte_stack_list initialization from here ...
28115         * src/eval.c (init_eval): ... to here.
28117 2015-07-13  Xue Fuqiao  <xfq.free@gmail.com>
28119         * doc/emacs/windows.texi (Pop Up Window): Fix the description
28120         of `C-x 4 m'.
28122 2015-07-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
28124         Avoid deprecated enums in mac-ct font backend driver
28125         * src/macfont.m (mac_font_copy_default_descriptors_for_language)
28126         (mac_ctfont_get_advance_width_for_glyph)
28127         (mac_ctfont_get_bounding_rect_for_glyph): Avoid deprecated enums.
28129         Cache font family in mac-ct font backend driver
28130         * src/macfont.m (macfont_family_cache): New variable.
28131         (syms_of_macfont): Initialize it.
28132         (macfont_available_families_cache): New variable.
28133         (macfont_invalidate_family_cache, macfont_get_family_cache_if_present)
28134         (macfont_set_family_cache, macfont_invalidate_available_families_cache)
28135         (macfont_handle_font_change_notification)
28136         (macfont_init_font_change_handler)
28137         (macfont_copy_available_families_cache): New functions.
28138         (macfont_create_family_with_symbol): Use font family caches.
28139         (macfont_list, macfont_list_family):
28140         Use macfont_copy_available_families_cache instead of
28141         mac_font_create_available_families.
28143 2015-07-12  Dmitry Gutov  <dgutov@yandex.ru>
28145         Show the default value in the prompt
28146         * lisp/progmodes/xref.el: Add `M-?' binding for
28147         xref-find-references.  Declare functions `grep-read-files' and
28148         `grep-expand-template'.
28149         (xref--read-identifier): Show the default value in the prompt.
28151         * lisp/progmodes/xref.el (xref-find-regexp): When called with
28152         prefix argument, ask for file patterns to search as well.  When
28153         prompting for the directory, require an existing one.
28154         (xref-collect-matches): Add a new argument, FILES.  Use it in the
28155         above function.
28157         Add `project-ignores'
28158         * lisp/progmodes/project.el (project-ignores): New generic
28159         function, and an implementation for the VC project type.
28160         * lisp/progmodes/xref.el (xref--rgrep-command): Split, as a
28161         variant of rgrep-default-command that handles a generic list of
28162         ignores.
28163         (xref-collect-matches): Use it, and pass through to it the value
28164         of the newly added argument.
28165         (xref-find-regexp): Handle ignored paths within the project.
28166         Remove outdated comment.
28167         * lisp/vc/vc.el (vc-default-ignore-completion-table):
28168         Skip the comments and the empty lines.
28170 2015-07-12  Xue Fuqiao  <xfq.free@gmail.com>
28172         * doc/emacs/buffers.texi (Misc Buffer): Add a cross reference.
28174 2015-07-11  Eric Abrahamsen  <eric@ericabrahamsen.net>
28176         gnus-registry.el: Correct function argument order
28177         * lisp/gnus/gnus-registry.el (gnus-registry--set/remove-mark):
28178         Reverse the order of function arguments.
28180 2015-07-11  Dmitry Gutov  <dgutov@yandex.ru>
28182         Bind grep-highlight-matches to nil
28183         * lisp/progmodes/xref.el (xref-collect-matches):
28184         Bind grep-highlight-matches to nil (bug#20728).
28186 2015-07-11  Nikolaus Rath  <Nikolaus@rath.org>
28188         nnimap.el: Fix IMAP message size parsing
28189         * lisp/gnus/nnimap.el (nnimap-transform-headers):
28190         Don't assume that UID comes before RFC822.SIZE.
28192 2015-07-10  Stefan Monnier  <monnier@iro.umontreal.ca>
28194         * lisp/gnus/nnimap.el: Clean up "unused var" warnings
28195         (auth-source-creation-prompts): Declare.
28196         (nnimap-retrieve-headers, nnimap-status-message)
28197         (nnimap-request-create-group, nnimap-request-delete-group)
28198         (nnimap-close-group, nnimap-request-move-article)
28199         (nnimap-request-accept-article, nnimap-request-newgroups)
28200         (nnimap-request-post, nnimap-dummy-active-number)
28201         (nnimap-save-mail-spec, nnimap-get-groups): Add _ to unused vars.
28202         (nnimap-parse-flags): Remove unused var `p'.
28203         (nnimap-retrieve-group-data-early): Remove unused var `groups'.
28204         (nnimap-flags-to-marks): Remove unused var `totalp'.
28206 2015-07-10  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
28208         * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 20MB.
28210 2015-07-10  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
28212         * src/macfont.m (macfont_list): Ignore font families lacking
28213         font descriptors.
28215 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
28217         Don't check the exit status, it can be misleading
28218         * lisp/progmodes/xref.el (xref-collect-matches): Don't check the
28219         exit status, it can be misleading.
28221         Introduce a Project API
28222         * lisp/progmodes/project.el: New file.
28223         * lisp/cedet/ede.el (project-try-ede): New function.
28224         (project-root): New implementation.
28225         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
28226         Set project-search-path-function.
28227         (elisp--xref-find-references): Delegate some logic to
28228         project-search-path.
28229         (elisp-search-path): New function.
28230         (elisp-xref-find): Don't implement `matches' anymore.
28231         * lisp/progmodes/etags.el: Don't implement `matches'.
28232         Delegate some logic to project-search-path.
28233         (etags-search-path): New function.
28234         * lisp/progmodes/xref.el (xref-find-function):
28235         Remove `matches' from the API.
28236         (xref-find-regexp): Move whatever common logic was in elisp and
28237         etags implementations, and search the directories returned by
28238         project-directories and project-search-path.
28240 2015-07-09  Nicolas Petton  <nicolas@petton.fr>
28242         * test/automated/map-tests.el (test-map-delete-return-value):
28243         Uncomment test.
28245         Add support for gv.el in map.el
28246         * lisp/emacs-lisp/map.el (map-elt, map-delete): Declare a gv-expander.
28247         * lisp/emacs-lisp/map.el (map-put): Refactor using `setf' and `map-elt'.
28248         * test/automated/map-tests.el: Update tests to work with the new
28249         implementations of map-elt and map-put.
28251 2015-07-09  Glenn Morris  <rgm@gnu.org>
28253         * lisp/emacs-lisp/debug.el (debug-help-follow): Use describe-symbol.
28255 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
28257         Syntax-propertize until the end of the line first
28258         * lisp/progmodes/xref.el (xref--collect-match): Syntax-propertize
28259         until the end of the line first.
28261 2015-07-09  Xue Fuqiao  <xfq.free@gmail.com>
28263         * doc/emacs/files.texi (File Archives): Add a cross reference.
28265 2015-07-08  Nikolaus Rath  <Nikolaus@rath.org>
28267         nnimap.el: Handle plain value for nnimap-stream
28268         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Always query
28269         capabilities, so that a 'plain value for the `nnimap-stream' server
28270         variable is handled correctly.
28271         * doc/misc/gnus.texi (Customizing the IMAP Connection):
28272         Document the 'plain option.
28274 2015-07-08  Leo Liu  <sdl.web@gmail.com>
28276         Fix bug in thing-at-point--bounds-of-well-formed-url
28277         * lisp/thingatpt.el (thing-at-point--bounds-of-well-formed-url): Make
28278         sure boundary contains current point.
28280 2015-07-08  Dmitry Gutov  <dgutov@yandex.ru>
28282         * lisp/progmodes/xref.el (xref-collect-matches): Use `nreverse'
28283         in the end.
28285         Declare whitespace-line-column a safe file-local
28286         * lisp/whitespace.el (whitespace-line-column): Declare to be a
28287         safe file-local when the value is an integer.
28289 2015-07-08  Eric Abrahamsen  <eric@ericabrahamsen.net>
28291         gnus-group.el: Check if group names are already strings
28292         * lisp/gnus/gnus-group.el (gnus-group-group-name):
28293         The group name may already be a string.
28294         Specifically, in the group list reached from the *Server* buffer,
28295         the 'gnus-group text property returns a string.  Everywhere else
28296         it returns a symbol.
28298         nnimap.el: Remove unused let variables
28299         * lisp/gnus/nnimap.el (nnimap-request-group): Variables are not used.
28301 2015-07-08  Eli Zaretskii  <eliz@gnu.org>
28303         Support "maximized" property of runemacs's shortcut
28304         * nt/runemacs.c (WinMain): If runemacs is invoked "maximized", pass
28305         the '--maximized' switch to Emacs.
28307         Support "minimized" property of runemacs's shortcut
28308         * nt/runemacs.c (WinMain): If runemacs is invoked "minimized",
28309         pass the '--iconic' switch to Emacs.  (Bug#20991)
28311 2015-07-08  Xue Fuqiao  <xfq.free@gmail.com>
28313         Doc fixes
28314         * doc/emacs/files.texi (Diff Mode): Fix the description of `C-c
28315         C-w' in Diff mode.
28316         * doc/emacs/arevert-xtra.texi (Auto Reverting the Buffer Menu):
28317         Add a cross reference.
28319 2015-07-08  Nicolas Richard  <youngfrog@members.fsf.org>
28321         * lisp/obsolete/landmark.el: Add Obsolete-since header.
28323 2015-07-07  Glenn Morris  <rgm@gnu.org>
28325         * test/automated/ert-tests.el (ert-test-deftest):
28326         Update for recent changes.
28328 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
28330         (gv-setter, gv-synthetic-place, gv-delay-error): New funs/macros
28331         * lisp/emacs-lisp/gv.el (gv-setter): New function.
28332         (gv-invalid-place): New error.
28333         (gv-get): Use them.
28334         (gv-synthetic-place, gv-delay-error): New places.
28335         * lisp/emacs-lisp/cl-generic.el (cl--generic-setf-rewrite): Remove.
28336         (cl-defgeneric, cl-defmethod): Use gv-setter.
28338 2015-07-07  Fabrice Popineau  <fabrice.popineau@gmail.com>
28340         Make vc-tests work with MSYS svn program
28341         * lisp/vc/vc-svn.el (vc-svn-create-repo): Fix the file:// URL when
28342         svn is an MSYS program.
28344 2015-07-07  Ken Brown  <kbrown@cornell.edu>
28346         Improve recent change to emacsclient on Cygwin
28347         * lisp/server.el (server-process-filter): Remove redundant check
28348         that 'cygwin-convert-file-name-from-windows' is defined as a
28349         function on Cygwin.  Don't call that function unless its argument
28350         starts with a drive letter.
28352 2015-07-07  Artur Malabarba  <bruce.connor.am@gmail.com>
28354         * lisp/emacs-lisp/package.el (package-compute-transaction):
28355         Fix void variable due to `found-something' being in the wrong `let'.
28357 2015-07-07  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
28359         * lisp/play/landmark.el: Move to lisp/obsolete/.
28361 2015-07-07  Martin Rudalics  <rudalics@gmx.at>
28363         Have `x-show-tip' handle `right' and `bottom' frame parameters
28364         * src/nsfns.m (compute_tip_xy, Fx_show_tip)
28365         * src/w32fns.c (compute_tip_xy, Fx_show_tip)
28366         * src/xfns.c (compute_tip_xy, Fx_show_tip): Allow aligning
28367         tooltips also via `right' and `bottom' frame parameters.
28369 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
28371         Add online-help support to describe types
28372         * lisp/help-fns.el (describe-symbol-backends): Move to help-mode.el.
28373         (describe-symbol): Improve the selection of default.
28374         * lisp/help-mode.el: Require cl-lib.
28375         (describe-symbol-backends): Move from help-fns.el.
28376         (help-make-xrefs): Use it.
28377         * lisp/emacs-lisp/cl-extra.el (describe-symbol-backends): Add entry
28378         for types.
28379         (cl--typedef-regexp): New const.
28380         (find-function-regexp-alist): Add entry for types.
28381         (cl-help-type, cl-type-definition): New buttons.
28382         (cl-find-class): New function.
28383         (cl-describe-type): New command.
28384         (cl--describe-class, cl--describe-class-slot)
28385         (cl--describe-class-slots): New functions, moved from eieio-opt.el.
28386         * lisp/emacs-lisp/cl-generic.el (cl--generic-method-documentation)
28387         (cl--generic-all-functions, cl--generic-specializers-apply-to-type-p):
28388         New functions.  Moved from eieio-opt.el.
28389         (cl--generic-class-parents): New function, extracted from
28390         cl--generic-struct-specializers.
28391         (cl--generic-struct-specializers): Use it.
28392         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Use pcase-dolist.
28393         Improve constructor's docstrings.
28394         (cl-struct-unknown-slot): New error.
28395         (cl-struct-slot-offset): Use it.
28396         * lisp/emacs-lisp/cl-preloaded.el (cl-struct-define): Record the type
28397         definition in current-load-list.
28398         * lisp/emacs-lisp/eieio-core.el (eieio--known-slot-names): New var.
28399         (eieio--add-new-slot): Set it.
28400         (eieio-defclass-internal): Use new name for current-load-list.
28401         (eieio-oref): Add compiler-macro to warn about unknown slots.
28402         * lisp/emacs-lisp/eieio.el (defclass): Update eieio--known-slot-names
28403         as compile-time as well.  Improve constructor docstrings.
28404         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
28405         (eieio--help-print-slot, eieio-help-class-slots): Move to cl-extra.el.
28406         (eieio-class-def): Remove button.
28407         (eieio-help-constructor): Use new name for load-history element.
28408         (eieio--specializers-apply-to-class-p, eieio-all-generic-functions)
28409         (eieio-method-documentation): Move to cl-generic.el.
28410         (eieio-display-method-list): Use new names.
28411         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression):
28412         Add "define-linline".
28413         (lisp-fdefs): Remove "defsubst".
28414         (el-fdefs): Add "defsubst", "cl-defsubst", and "define-linline".
28415         * lisp/emacs-lisp/macroexp.el (macroexp--warned): New var.
28416         (macroexp--warn-and-return): Use it to avoid inf-loops.
28417         Add `compile-only' argument.
28419 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
28421         python.el: Fix local/remote shell environment setup
28422         * lisp/progmodes/python.el (python-shell-with-environment):
28423         Fix remote/local environment setup.
28424         * test/automated/python-tests.el (python-shell-with-environment-1)
28425         (python-shell-with-environment-2): New tests.
28427 2015-07-06  Glenn Morris  <rgm@gnu.org>
28429         * lisp/simple.el (set-variable): Tweak recent doc fix.
28431 2015-07-06  Ken Brown  <kbrown@cornell.edu>
28433         * src/sysdep.c (handle_sigsegv) [CYGWIN]: Increase STACK_DANGER_ZONE.
28435 2015-07-06  Glenn Morris  <rgm@gnu.org>
28437         * lisp/simple.el (set-variable): Use user-error for type mismatch.
28439 2015-07-06  Ken Brown  <kbrown@cornell.edu>
28441         * src/emacs.c (main): Don't increase the stack size on Cygwin.
28443 2015-07-06  Stefan Monnier  <monnier@iro.umontreal.ca>
28445         (describe-symbol): Rewrite describe-function-or-variable
28446         * lisp/help-fns.el (describe-symbol-backends): New var.
28447         (help-xref-stack-item): Declare.
28448         (describe-symbol): Rename from describe-function-or-variable.
28449         Rewrite using describe-symbol-backends instead of help-xref-interned.
28450         * lisp/help.el (help-map): Use it.
28451         * lisp/help-mode.el (help-symbol, help-follow-symbol): Use it.
28452         (help-xref-interned): Make it into an obsolete alias.
28454         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-save): Don't ignore
28455         `file' arg (bug#20972).  Always use utf-8-emacs.  Use with-temp-buffer
28456         and cl-letf.
28458 2015-07-06  Wolfgang Jenkner  <wjenkner@inode.at>
28460         Fix parsing glitches in dired-mark-sexp (bug#13575)
28461         * lisp/dired-x.el (dired-x--string-to-number): New function.
28462         (dired-mark-sexp): Use it.  Tweak dired-re-inode-size.  Fix usage
28463         of directory-listing-before-filename-regexp.  Consider
28464         forward-word harmful and replace it.  Add more verbiage in
28465         comments and doc string.
28467 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
28469         python.el: Respect process environment for remote shells
28470         * lisp/progmodes/python.el
28471         (python-shell-calculate-process-environment): Calculate
28472         process-environment or tramp-remote-process-environment depending
28473         whether current file is remote.
28474         (python-shell-calculate-exec-path): Calculate exec-path or
28475         tramp-remote-path depending whether current file is remote.
28476         (python-shell-with-environment): New macro.
28477         (python-shell-prompt-detect, python-shell-calculate-command)
28478         (python-shell-make-comint, python-check): Use it.
28480         python.el: Avoid making let-bound defvars buffer local  (Bug#18244)
28481         * lisp/progmodes/python.el (python-shell--interpreter)
28482         (python-shell--interpreter-args): New vars.
28483         (inferior-python-mode, python-shell-make-comint): Use them.
28485         python.el: Fixes for IPython 3.x  (Bug#20580)
28486         * lisp/progmodes/python.el:
28487         (python-shell-completion-native-setup): Fix IPython 3.x setup.
28488         (python-shell-completion-native-get-completions): Fix timeout
28489         logic.
28491         python.el: Fix mark-defun behavior  (Bug#19665)
28492         * lisp/progmodes/python.el (python-mark-defun): New function.
28493         * test/automated/python-tests.el (python-mark-defun-1)
28494         (python-mark-defun-2, python-mark-defun-3): New tests.
28496 2015-07-05  Glenn Morris  <rgm@gnu.org>
28498         * lisp/progmodes/f90.el (f90-type-def-re): Handle attribute lists
28499         such as "extends(parent), private".  (Bug#20969)
28500         * test/automated/f90.el (f90-test-bug20969, f90-test-bug20969b):
28501         New tests.
28503 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
28505         Avoid duplicate calls to current_timespec
28506         * src/process.c (wait_reading_process_output):
28507         Cache current_timespec results as long as we're not waiting.
28509 2015-07-05  Ian Kelling  <ian@iankelling.org>
28511         Avoid returning early reading process output due to SIGIO
28512         * src/process.c (wait_reading_process_output): Extend the behavior of
28513         not breaking due to not finding output when a timer has lowered the
28514         timeout to include when SIGIO lowers the timeout.
28516         Don't return as fast reading any process output
28517         * src/process.c (wait_reading_process_output):
28518         The patch for Bug#17647 returns too fast sometimes when reading
28519         from any processes.  Revert part of it, and limit the timeout more
28520         sensibly (Bug#20978).
28522         Refactor timeouts in wait_reading_process_output
28523         * src/process.c (wait_reading_process_output):
28524         Simplify timeouts with an enum.  Remove a redundant condition.
28525         (Bug#20978)
28527         Remove ADAPTIVE_READ_BUFFERING ifdef
28528         * src/process.c (make-process, make-pipe-process, deactivate_process)
28529         (wait_reading_process_output, read_process_output, send_process)
28530         (init_process_emacs): ifdef ADAPTIVE_READ_BUFFERING was originally
28531         added in case there was an operating system in which it was not
28532         useful.  That was 11 years ago and it hasn't happened.  Make
28533         development easier by not considering the effect of changes on a
28534         theoretical OS where this is disabled (Bug#20978).
28536 2015-07-05  Glenn Morris  <rgm@gnu.org>
28538         * lisp/simple.el (set-variable): Doc fix.
28540         * lisp/progmodes/fortran.el (fortran-line-length): Doc fix.
28542 2015-07-05  Ian Kelling  <ian@iankelling.org>
28544         accept-process-output fix
28545         This is a followon to the fix for bug#17647 (Bug#20976).
28546         * src/process.c (status_notify): Fix too high return in some cases.
28548 2015-07-05  Artur Malabarba  <bruce.connor.am@gmail.com>
28550         * lisp/character-fold.el (character-fold-table):
28551         Only fold decompositions if at least one character is non-spacing.
28552         (Bug#20975)
28554 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
28556         Merge from gnulib
28557         This incorporates:
28558         2015-07-04 file-has-acl, acl-permissions: fix HP-UX typos
28559         2015-07-03 set-permissions.c: adjust acl_from_mode's cpp guard
28560         2015-07-02 update-copyright: fix test failure with perl >= 5.22
28561         2015-07-01 gnulib-common.m4: change the ARFLAGS default to 'cr'
28562         2015-07-01 acl: fix definition of acl_from_mode on FreeBSD
28563         * build-aux/update-copyright, doc/misc/texinfo.tex, lib/acl-internal.h:
28564         * lib/set-permissions.c, m4/gnulib-common.m4: Copy from gnulib.
28566 2015-07-05  Christoph Wedler  <christoph.wedler@sap.com>
28568         Respect `prog-indentation-context' in python.el
28569         * lisp/progmodes/python.el (python-indent-guess-indent-offset)
28570         (python-indent-context, python-indent--calculate-indentation)
28571         (python-info-current-defun)
28572         (python-info-dedenter-opening-block-message)
28573         (python-info-line-ends-backslash-p)
28574         (python-info-beginning-of-backslash)
28575         (python-info-continuation-line-p): Use `prog-widen'.
28576         (python-indent--calculate-indentation)
28577         (python-indent--calculate-levels)
28578         (python-indent-calculate-indentation): Use `prog-first-column'.
28579         (python-indent--calculate-levels): Simplify.
28580         Ignore also initial empty lines for syntax calculation.
28581         * lisp/progmodes/python.el (python-indent-context): Return
28582         :no-indent for first non-empty line, not just in line 1.
28583         * test/automated/python-tests.el (python-indent-base-case)
28584         (python-indent-inside-paren-1, python-indent-inside-paren-2)
28585         (python-indent-inside-paren-3, python-indent-inside-paren-4)
28586         (python-indent-inside-paren-5, python-indent-inside-paren-6)
28587         (python-indent-after-backslash-1)
28588         (python-indent-after-backslash-2)
28589         (python-indent-after-backslash-3)
28590         (python-indent-after-backslash-4, python-indent-inside-string-1):
28591         Expect :no-indent for first non-empty line.
28593 2015-07-04  Daniel Colascione  <dancol@dancol.org>
28595         Factor isearch word description into new function
28596         * lisp/isearch.el (isearch--describe-word-mode): New function.
28597         (isearch-message-prefix, isearch-query-replace): Use it.
28599 2015-07-04  Eli Zaretskii  <eliz@gnu.org>
28601         Fix mouse pointer on w32 when a menu is active
28602         * src/w32fns.c (w32_wnd_proc): Don't change the mouse pointer
28603         shape while a menu is in use.  This started happening since we now
28604         send WM_EMACS_SHOWCURSOR messages when the mouse moves.
28606 2015-07-04  Martin Rudalics  <rudalics@gmx.at>
28608         Fix processing of alpha parameter for Windows tip frames  (Bug#17344)
28609         * src/w32fns.c (x_create_tip_frame): Fix processing alpha
28610         parameter.  (Bug#17344)
28612         Have `compilation-set-window' use right window for getting fringes
28613         (Bug#20829)
28614         * lisp/progmodes/compile.el (compilation-set-window):
28615         Take `window-fringes' from argument window.
28617 2015-07-03  Glenn Morris  <rgm@gnu.org>
28619         Update eieio tests for recent eieio-core change.
28620         * test/automated/eieio-test-persist.el (persist-test-save-and-compare):
28621         * test/automated/eieio-tests.el
28622         (eieio-test-32-slot-attribute-override-2):
28623         Replace the deleted eieio--class-v with cl--find-class.
28625 2015-07-03  Martin Rudalics  <rudalics@gmx.at>
28627         Fix some issues with `window-divider-mode'
28628         * lisp/frame.el (window-divider-default-places): New option.
28629         (window-divider-mode): Remove option.
28630         (window-divider-mode): Make it a "regular" minor mode.
28631         (window-divider-width-valid-p): Drop frame- prefix.
28632         (window-divider-mode-apply): New argument ENABLE.  Drop frame-
28633         prefix.  Handle `window-divider-default-places'.
28634         (frame--window-divider-mode-set-and-apply): Remove.
28635         (window-divider-default-bottom-width)
28636         (window-divider-default-right-width): Drop :group entries.
28637         * lisp/menu-bar.el (menu-bar-bottom-and-right-window-divider)
28638         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
28639         (menu-bar-no-window-divider): Set `window-divider-default-places'
28640         and call `window-divider-mode'.
28641         * doc/emacs/frames.texi (Window Dividers): Document
28642         `window-divider-default-places'.
28644 2015-07-02  Xue Fuqiao  <xfq.free@gmail.com>
28646         * doc/emacs/display.texi (Displaying Boundaries):
28647         * doc/emacs/search.texi (Word Search): Add cross references.
28649 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
28651         -batch should not affect ‘’ -> `' display
28652         * lisp/startup.el (command-line): Do the ‘’ -> `' check even if
28653         -batch (Bug#20926).
28655 2015-07-02  Stefan Monnier  <monnier@iro.umontreal.ca>
28657         * lisp/emacs-lisp/eieio-core.el (eieio--class-v): Remove
28658         * lisp/emacs-lisp/eieio-core.el, lisp/emacs-lisp/eieio.el:
28659         * lisp/emacs-lisp/eieio-opt.el, lisp/emacs-lisp/eieio-compat.el:
28660         Use cl--find-class instead.
28662         * lisp/term/xterm.el (xterm--query): Fix paren typo (bug#20951).
28664 2015-07-02  Martin Rudalics  <rudalics@gmx.at>
28666         Some further fixes in Change Window node (Bug#20183)
28667         * doc/emacs/windows.texi (Change Window): Replace "rearranging"
28668         by "resizing" in section title.  Add some concept indices.
28669         Suggested by N. Jackson (Bug#20183).
28671         * doc/emacs/windows.texi (Change Window): Reference window
28672         dividers.
28674         Document new `window-divider-mode'.
28675         * lisp/frame.el (window-divider-mode): Fix doc-string.
28676         * doc/emacs/frames.texi (Window Dividers): New section.
28678         Improve accessibility of window dividers (Bug#20183)
28679         * lisp/faces.el (window-divider)
28680         (window-divider-first-pixel, window-divider-last-pixel): Change
28681         membership from `frames' to `window-divider' customization group.
28682         * lisp/frame.el (window-divider): New customization group.
28683         (window-divider-mode): New minor mode.
28684         (window-divider-default-bottom-width)
28685         (window-divider-default-right-width): New options.
28686         (frame--window-divider-previous-mode): New variable.
28687         (frame-window-divider-width-valid-p)
28688         (frame--window-divider-mode-apply)
28689         (frame--window-divider-mode-set-and-apply): New functions.
28690         * lisp/menu-bar.el (menu-bar-options-save): Save
28691         window-divider-mode settings.
28692         (menu-bar-window-divider-customize)
28693         (menu-bar-bottom-and-right-window-divider)
28694         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
28695         (menu-bar-no-window-divider): New functions.
28696         (menu-bar-showhide-window-divider-menu): New variable.
28697         (menu-bar-showhide-menu): Show/hide window divider menu.
28698         * lisp/mouse.el (mouse-split-window-vertically)
28699         (mouse-split-window-horizontally): Replace `error' by
28700         `user-error'.  Bind `window-combination-resize' to nil.
28701         (top-level): Add/reorder mouse key bindings on mode- and
28702         vertical-line.
28704 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
28706         Don't display ‘’ as `' under X in en_GB
28707         The curved quote setup code invokes (char-displayable-p ?‘),
28708         but this isn’t reliable until after the X frame replaces the
28709         terminal frame (Bug#20926).
28710         * lisp/international/mule-cmds.el (set-locale-environment):
28711         Move curved quote setup code from here ...
28712         * lisp/startup.el (command-line): ... to here, after creating
28713         the X frame.
28715 2015-07-01  Nicolas Richard  <youngfrog@members.fsf.org>
28717         * lisp/emacs-lisp/seq.el (seq-difference): Fix typo in docstring.
28719         * lisp/ido.el (ido-restrict-to-matches): Add an optional argument
28720         to reverse the meaning (Bug#15631).
28722 2015-07-01  Eli Zaretskii  <eliz@gnu.org>
28724         Be more tolerant to fonts named "Foobar-12"
28725         * src/frame.c (x_set_font): If font_spec_from_name returns nil,
28726         don't barf; instead, request a new fontset to be generated.  This
28727         avoids unnecessarily rejecting fonts named against XLFD rules.  See
28728         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html,
28729         for the description of the original problem.
28730         * lisp/faces.el (set-face-attribute): Don't be fooled too easily
28731         by a hyphen in a font's name.
28733         Fix value of posn-at-pont in R2L lines
28734         * src/keyboard.c (Fposn_at_x_y, Fposn_at_point): Allow X pixel
28735         coordinate of -1, for a newline in a right-to-left line that
28736         overflowed into the left fringe.
28738 2015-07-01  Stefan Monnier  <monnier@iro.umontreal.ca>
28740         (cl--copy-slot-descriptor): Copy the `props' alist as well
28741         * lisp/emacs-lisp/cl-preloaded.el (cl--copy-slot-descriptor-1):
28742         Rename from cl--copy-slot-descriptor.
28743         (cl--copy-slot-descriptor): New function.  Copy the alist (bug#20914).
28745 2015-06-30  Stefan Monnier  <monnier@iro.umontreal.ca>
28747         * lisp/term/xterm.el (xterm--query): Avoid generating garbage
28748         (xterm-query-timeout): New var.
28749         (xterm--query): Use it.  Fallback on async method if we timeout before
28750         getting the first byte of the reply (bug#12354).
28752 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
28754         Spelling fixes
28755         * lisp/character-fold.el (character-fold-search):
28756         * lisp/emacs-lisp/package.el (package-hidden-regexps):
28757         Fix typos.
28759 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
28761         * doc/emacs/frames.texi (Frame Commands): Typo fix.  (Bug#20946)
28763 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
28765         In strings, prefer plain ` and ' to \` and \'
28766         * lisp/allout.el (allout-insert-listified):
28767         * lisp/emacs-lisp/easy-mmode.el (define-globalized-minor-mode):
28768         * lisp/ls-lisp.el (ls-lisp-UCA-like-collation)
28769         (ls-lisp-string-lessp):
28770         * lisp/menu-bar.el (menu-bar-open):
28771         * lisp/obsolete/otodo-mode.el (todo-top-priorities):
28772         * lisp/progmodes/compile.el (compile):
28773         * lisp/progmodes/etags.el (tags-loop-scan):
28774         * lisp/progmodes/make-mode.el (makefile-browser-insert-continuation):
28775         * lisp/subr.el (posn-actual-col-row):
28776         * lisp/term/pc-win.el (x-list-fonts):
28777         * lisp/textmodes/texinfmt.el (texinfmt-version):
28778         * lisp/textmodes/texnfo-upd.el (texinfo-master-menu):
28779         * lisp/time.el (display-time-world-list):
28780         * lisp/tmm.el (tmm-menubar):
28781         * src/buffer.c (syms_of_buffer):
28782         * src/fileio.c (syms_of_fileio):
28783         Omit unnecessary and confusing backslash before quote.
28784         * lisp/erc/erc.el (erc-cmd-LASTLOG):
28785         * lisp/progmodes/flymake.el (flymake-fix-file-name):
28786         * lisp/progmodes/vhdl-mode.el (vhdl-in-extended-identifier-p):
28787         Fix string that was intended to escape a backslash and not a quote.
28789 2015-06-30  Glenn Morris  <rgm@gnu.org>
28791         * leim/Makefile.in, lisp/Makefile.in: Add missing EXEEXT definition.
28793         * lisp/Makefile.in (MH_E_SRC, TRAMP_SRC, CAL_SRC):
28794         Replace hard-coded lists with wildcard + filter-out.
28796         * configure.ac (system-configuration-features): Add X11, NS.
28798         Improve reproducibility of generated loaddefs file
28799         * lisp/emacs-lisp/autoload.el (autoload-generate-file-autoloads):
28800         Make the return value the modtime of the input file (if no autoloads).
28801         (update-directory-autoloads): In the "no autoloads" section,
28802         use "most recent modtime" rather than "current time".
28804 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
28806         * lisp/emacs-lisp/package.el (package--remove-hidden): Fix logic.
28807         (Bug#20930)
28809 2015-06-30  Nicolas Petton  <nicolas@petton.fr>
28811         * doc/lispref/sequences.texi: Add documentation for seq-min and seq-max.
28813         Add seq-min and seq-max
28814         Bump version number.
28815         * lisp/emacs-lisp/seq.el (seq-min, seq-max): New functions.
28816         * test/automated/seq-tests.el: Add tests for seq-min and seq-max.
28818 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
28820         Make sure sleep-for always delays for as long as it's told
28821         * src/dispnew.c (Fsleep_for): Call wait_reading_process_output in
28822         a loop, to ensure we always wait exactly the required amount of
28823         time.  (Bug#15990)
28825 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
28827         Fix pointer signedness glitch
28828         * src/font.c (font_load_for_lface): Use SSDATA, not SDATA.
28830 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
28832         Don't block changes in mouse pointer inside 'track-mouse'
28833         * etc/NEWS:
28834         * doc/lispref/frames.texi (Mouse Tracking): Document the special
28835         effect of setting 'track-mouse' to 'dragging'.
28836         * lisp/textmodes/artist.el (artist-mouse-draw-continously):
28837         * lisp/ruler-mode.el (ruler-mode-mouse-drag-any-column-iteration):
28838         * lisp/mouse-drag.el (mouse-drag-throw):
28839         * lisp/mouse.el (mouse-drag-line): Set 'track-mouse' to 'dragging'
28840         to avoid changes in the shape of the mouse pointer.
28841         * src/xdisp.c (define_frame_cursor1): Don't change the mouse
28842         pointer shape when do_mouse_tracking has the value of 'dragging',
28843         not just any non-nil value.  (Bug#20934)
28844         (syms_of_xdisp): DEFSYM 'dragging'.
28846 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
28848         * lisp/isearch.el (isearch-toggle-word): Fix toggle.
28850         * lisp/emacs-lisp/package.el (package-compute-transaction):
28851         Don't assume version sorting.
28853         * lisp/emacs-lisp/package.el (package--save-selected-packages):
28854         Don't save before init time, to avoid overwriting configurations.
28855         (Bug#20855)
28857 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
28859         * doc/emacs/display.texi (Standard Faces, Fringes): Add cross
28860         references.
28862 2015-06-29  Ted Zlatanov  <tzz@lifelogs.com>
28864         Update for the upcoming CFEngine 3.7 release: support macros and
28865         quoted context strings; reformat JSON; indent promise attributes 2
28866         units by default; give function parameter descriptions in the eldoc
28867         glue.
28868         * lisp/progmodes/cfengine.el: Update version and docs and fix name.
28869         Autoload `json-pretty-print'.  Support new features in 3.7.
28870         (cfengine-parameters-indent): Set default promise attribute indent to
28871         2 more than the promise itself.
28872         (cfengine3-macro-regex): New variable to match the new macro syntax.
28873         (cfengine3-font-lock-keywords): Use it to highlight macros.
28874         (cfengine3-indent-line): Use it to indent macros to column 0.
28875         (cfengine3-class-selector-regex): Update for the new quoted strings
28876         format.
28877         (cfengine3-reformat-json-string): New function to reformat a JSON
28878         string using `json-pretty-print'.
28879         (cfengine3-format-function-docstring): Use function parameter
28880         description if it's provided by the cf-promises syntax dump.
28882 2015-06-29  Michael R. Mauger  <michael@mauger.com>
28884         Cygwin emacsclient handles w32 file names
28885         * lisp/server.el (server-process-filter): Allow Cygwin's
28886         emacsclient to be used as a file handler on MS-Windows.
28888 2015-06-29  Katsumi Yamaoka  <yamaoka@jpl.org>
28890         * lisp/isearch.el (isearch-exit): Don't call isearch-done twice
28891         (bug#20925).
28893 2015-06-29  Eli Zaretskii  <eliz@gnu.org>
28895         * doc/lispref/text.texi (Sticky Properties): Improve wording.
28896         (Bug#20924)
28898         Allow font names that end in "-NN", where NN is a number
28899         * src/font.c (font_load_for_lface): If the font-spec didn't match
28900         any available fonts, try again without interpreting trailing "-NN"
28901         as the font size.  For the description of the original problem, see
28902         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html
28904         .gdbinit followup to changes in !USE_LSB_TAG
28905         * src/.gdbinit (xgetsym): Don't left-shift $ptr even under
28906         !USE_LSB_TAG, as Emacs no longer does.
28908 2015-06-29  Wolfgang Jenkner  <wjenkner@inode.at>
28910         * lisp/calc-store.el (calc-insert-permanent-variable): Heed case.
28911         Otherwise `s p' of f and F will stomp on each other's value.
28912         (Bug#20916)
28914 2015-06-29  Artur Malabarba  <bruce.connor.am@gmail.com>
28916         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
28917         Don't block remember-pos if buffer isn't displayed.  (Bug#20921)
28919 2015-06-29  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
28921         * lisp/emacs-lisp/package.el (describe-package): Use symbol-at-point
28922         as additional guess.
28924         * lisp/emacs-lisp/package.el (describe-package): Convert the guess
28925         to a string.
28927 2015-06-28  Paul Eggert  <eggert@cs.ucla.edu>
28929         apropos-library quoting fix
28930         * lisp/apropos.el (apropos-library): Quote library consistently
28931         with the rest of the quoting used by apropos.
28933         Clarify interpreter-mode-alist doc
28934         * lisp/files.el (interpreter-mode-alist):
28935         Reword to avoid confusing quoting that wasn't working anyway.
28937 2015-06-28  Michael Albinus  <michael.albinus@gmx.de>
28939         Sync with Tramp 2.2.12
28940         * doc/misc/trampver.texi:
28941         * lisp/net/trampver.el: Update release number.
28942         * test/automated/tramp-tests.el (tramp-test13-make-directory):
28943         Fix cleanup.
28945 2015-06-28  Artur Malabarba  <bruce.connor.am@gmail.com>
28947         * lisp/isearch.el (isearch-mode): Don't char-fold regexps (bug#20913).
28949 2015-06-27  Dmitry Gutov  <dgutov@yandex.ru>
28951         Bind grep-highlight-matches around the rgrep call
28952         * lisp/progmodes/grep.el (zrgrep): Bind grep-highlight-matches
28953         around the rgrep call (bug#20728).
28955         Put "--color" before the other options in grep-command
28956         * lisp/progmodes/grep.el (grep-compute-defaults): Put "--color"
28957         before the other options in grep-command (bug#20912).
28959         Add --color Grep option to the command dynamically
28960         * lisp/progmodes/grep.el (grep-template, grep-find-template):
28961         Update the description for <C>.  (Bug#20728)
28962         (grep-compute-defaults): Don't add the --color option to
28963         grep-options.  Only add it to grep-command.
28964         (grep-expand-keywords): Expand the env value opts into <C>.
28965         (grep-expand-template): Replace cf in the env with the opts list,
28966         that can include -i and --color.
28967         * lisp/progmodes/xref.el (xref-collect-matches): Do not remove
28968         "--color=always" from the template, because we don't have to.
28970 2015-06-27  Paul Eggert  <eggert@cs.ucla.edu>
28972         cl-extra fixes for most-negative-fixnum
28973         * lisp/emacs-lisp/cl-extra.el (cl-gcd, cl-lcm, cl-random):
28974         Don't mishandle an argument equal to most-negative-fixnum,
28975         whose absolute value equals itself.
28976         (cl-gcd, cl-lcm): Use dolist rather than doing it by hand.
28978         Initialize cl--gensym-counter to 0
28979         Previously it was initialized to a random value, which made it
28980         harder to reproduce earlier Emacs runs.  The need for a random
28981         value went away when Emacs introduced and used the #: syntax for
28982         uninterned symbols (Bug#20862).
28983         * doc/misc/cl.texi (Creating Symbols, Common Lisp Compatibility):
28984         Document that cl--gensym-counter now starts with 0.
28985         * lisp/emacs-lisp/cl-lib.el (cl--gensym-counter): Remove.
28986         (cl--random-time): Move to near only remaining use.
28987         * lisp/emacs-lisp/cl-macs.el (cl--gensym-counter): Initialize to 0.
28989         Improve docstring for macroexp-let2
28990         * lisp/emacs-lisp/macroexp.el (macroexp-let2):
28991         Improve as per suggestion by RMS in:
28992         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00621.html
28993         Also, rename args to match new doc string.
28995 2015-06-27  Eli Zaretskii  <eliz@gnu.org>
28997         Fix VC test suite on MS-Windows
28998         * lisp/vc/vc-svn.el (vc-svn-create-repo): Make sure the file: URL
28999         always starts with 3 slashes after the colon.
29000         * test/automated/vc-tests.el (vc-test--create-repo-function): Use
29001         'w32-application-type' to invoke CVS on MS-Windows with properly
29002         formatted CVSROOT directory name.
29004         Add a new function w32-application-type
29005         * src/w32proc.c (Fw32_application_type): New function.
29007         Avoid error in TLS connections due to incorrect format
29008         * src/gnutls.c (Fgnutls_boot): Use the %x conversion specifier in
29009         the call to 'error', instead of the unsupported %u.  Reported by
29010         lo2net <fangtao0901@gmail.com>.  (Bug#20908)
29012 2015-06-26  Artur Malabarba  <bruce.connor.am@gmail.com>
29014         * lisp/replace.el (replace-search): Fix regexp case (bug#20901).
29016 2015-06-26  Leo Liu  <sdl.web@gmail.com>
29018         * lisp/emacs-lisp/cl-indent.el: Fix indentation for
29019         `with-output-to-string' in elisp.
29021         Revert "lisp/emacs-lisp/cl-indent.el: Fix indent of
29022         with-output-to-string".
29023         This reverts commit 659199f2ca5f283fb246faa78a244e5ca25f53dd.
29025 2015-06-26  Eli Zaretskii  <eliz@gnu.org>
29027         Minor corrections in ELisp manual
29028         * doc/lispref/nonascii.texi (Character Properties): Correct
29029         inaccuracies in description of values of the Unicode properties.
29031         Fix invisible mouse pointers on Windows.
29032         * src/w32fns.c: Include windowsx.h.
29033         (w32_wnd_proc): If the mouse moved and the mouse pointer is
29034         invisible, make it visible again even when the main (Lisp)
29035         thread is busy.
29036         * src/w32term.c (w32_toggle_invisible_pointer): Rather then
29037         garbaging the frame have the input thread call SetCursor.
29039 2015-06-26  Martin Rudalics  <rudalics@gmx.at>
29041         Provide invisible mouse pointers on Windows (Bug#6105) (Bug#12922)
29042         * src/w32fns.c (w32_wnd_proc): Handle f->pointer_invisible
29043         for WM_SETCURSOR and WM_EMACS_SETCURSOR cases.
29044         * src/w32term.c (w32_hide_hourglass): Handle f->pointer_invisible.
29045         (w32_toggle_invisible_pointer): New function.
29046         (w32_create_terminal): Add w32_toggle_invisible_pointer as
29047         toggle_invisible_pointer_hook for this terminal.
29049 2015-06-25  Xue Fuqiao  <xfq.free@gmail.com>
29051         Doc fix for deletion commands
29052         'delete-char' does not respect the value of 'delete-active-region'.
29053         * doc/emacs/killing.texi (Deletion):
29054         Fix documentation for some single-char deletion commands.
29056         * doc/emacs/help.texi (Apropos):
29057         Improve documentation of 'apropos-do-all'.
29059         * doc/emacs/help.texi (Help Summary):
29060         Improve documentation of 'describe-mode'.
29062 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
29064         Fix submake dependency bug with .h files
29065         * src/Makefile.in ($(libsrc)/make-docfile$(EXEEXT)):
29066         Depend on $(lib)/libgnu.a, so that we build $(lib)/*/*.h
29067         before the submake in $(libsrc) would spin off a subsubmake
29068         for $(lib) in parallel with our submake for $(lib) (Bug#20894).
29070 2015-06-25  Artur Malabarba  <bruce.connor.am@gmail.com>
29072         * lisp/character-fold.el (character-fold-table): Reuse `table'.
29074 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
29076         Translate undisplayable ‘ to `
29077         * doc/lispref/help.texi (Keys in Documentation):
29078         * lisp/international/mule-cmds.el (set-locale-environment):
29079         * lisp/term/w32console.el (terminal-init-w32console):
29080         * src/doc.c (Fsubstitute_command_keys, Vhelp_quote_translation):
29081         If ‘ is not displayable, transliterate it to `, not to '.  See:
29082         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00542.html
29084         Fix C99 incompatibilities in Cairo code
29085         * src/image.c (xpm_load) [USE_CAIRO]:
29086         * src/xterm.c (x_cr_accumulate_data) [USE_CAIRO]:
29087         Fix pointer signedness problem.
29089 2015-06-25  Oleh Krehel  <ohwoeowho@gmail.com>
29091         lisp/emacs-lisp/cl-indent.el: Fix indent of with-output-to-string
29092         * lisp/emacs-lisp/cl-indent.el (common-lisp-indent-function):
29093         `with-output-to-string' should have the same indent as `progn'.
29094         This is in line with the declaration of `with-output-to-string'.
29096 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
29098         Get ‘./configure; make -C src emacs’ to work
29099         Without this fix, lib/fcntl.h isn't built in time (Bug#20894).
29100         * lib-src/Makefile.in (../lib/libgnu.a):
29101         * src/Makefile.in ($(lib)/libgnu.a): Build all, not libgnu.a.
29103 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
29105         Fix GC bugs --with-wide-int and Qnil == 0
29106         Use the same alignment for the !USE_LSB_TAG case as for the
29107         more-typical USE_LSB_TAG case.  The attempt to support arbitrary
29108         alignments with !USE_LSB_TAG had subtle bugs in garbage collection
29109         once we changed the representation of symbols so that Qnil == 0.
29110         Problem reported by Eli Zaretskii (Bug#20862).
29111         * src/alloc.c (XMALLOC_HEADER_ALIGNMENT) [XMALLOC_OVERRUN_CHECK]:
29112         * src/alloc.c (vector_alignment, union aligned_Lisp_Symbol)
29113         (union aligned_Lisp_Misc, maybe_lisp_pointer, pure_alloc):
29114         Use same alignment for !USE_LSB_TAG as for USE_LSB_TAG.
29115         * src/alloc.c (POINTERS_MIGHT_HIDE_IN_OBJECTS): Remove.
29116         This optimization in the !USE_LSB_TAG case is no longer valid when
29117         symbols are represented via offsets.  Change the only use to
29118         assume that pointers might hide in objects.
29119         * src/lisp.h (alignas) [!USE_LSB_TAG]:
29120         Require support in this case, too.
29121         (TAG_SYMOFFSET, XSYMBOL) [!USE_LSB_TAG]: Do not shift the offset.
29122         This is OK, because the !USE_LSB_TAG case now applies only when
29123         Lisp_Object is wider than void *, so there's no longer any need
29124         to shift the offset.  Not shifting the offset means that
29125         symbol representations have the same alignment as pointers,
29126         which the GC assumes.
29128 2015-06-24  Xue Fuqiao  <xfq.free@gmail.com>
29130         * doc/lispintro/emacs-lisp-intro.texi (Data types):
29131         Improve documentation of 'substring'.
29133 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
29135         * lisp/character-fold.el (character-fold-table): Fix table generation.
29137 2015-06-24  Glenn Morris  <rgm@gnu.org>
29139         * nextstep/Makefile.in (all): Make it the first target.
29140         (../src/emacs${EXEEXT}): Add rule for making it.
29142 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
29144         * etc/NEWS: Fix mention to old function name.
29146         * lisp/character-fold.el: New file (Bug#20887)
29147         (character-fold-to-regexp): New function.
29148         * lisp/replace.el (replace-search): Check value of
29149         `character-fold-search'.
29150         * lisp/isearch.el: Move character-folding code to
29151         character-fold.el
29152         (isearch-toggle-character-fold): New command.
29153         (isearch-mode-map): Bind it to "\M-sf".
29154         (isearch-mode): Check value of `character-fold-search'.
29156 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
29158         lisp/subr.el (remove-from-invisibility-spec): Handle the t case
29159         * lisp/subr.el (remove-from-invisibility-spec): Make sure `element'
29160         is visible even if it's not yet in buffer-invisibility-spec (bug#20468).
29162         * lisp/progmodes/xref.el (xref-location-group, xref-location-marker)
29163         (xref--insert-xrefs, xref-collect-references): Avoid init-args in oref.
29165 2015-06-24  Glenn Morris  <rgm@gnu.org>
29167         * Makefile.in (install-arch-dep): Don't set sticky bit on the binary.
29169 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
29171         lisp/gnus/nnmaildir.el: Silence lexical warnings
29172         * lisp/gnus/nnmaildir.el (nnmaildir--prepare): Use a more
29173         functional style.
29174         (nnmaildir--update-nov): Remove unused var `numdir'.
29175         (nnmaildir-request-type, nnmaildir--scan, nnmaildir-request-newgroups)
29176         (nnmaildir-request-group, nnmaildir-request-create-group)
29177         (nnmaildir-request-post, nnmaildir-request-move-article)
29178         (nnmaildir-request-accept-article, nnmaildir-active-number):
29179         Mark unused args.
29180         (nnmaildir-get-new-mail, nnmaildir-group-alist)
29181         (nnmaildir-active-file): Declare.
29182         (nnmaildir-request-scan): Remove unused vars `group' and `grp-dir'.
29183         (nnmaildir-request-update-info): Remove unused vars `dotfile', `num',
29184         `mark', `end', `new-mark', and `mark-sym'.
29185         (nnmaildir-retrieve-headers): Remove unused args `srv-dir', `dir',
29186         `nlist2'.
29187         (nnmaildir-request-expire-articles):
29188         Remove unused vars `article', `stop' and `nlist2'.
29189         (nnmaildir-request-set-mark): Remove unused vars `begin', `article' and
29190         `end'.  Use nnmaildir--article when dyn-binding is needed.
29191         Give the value directly in the `let' for `del-mark', `del-action',
29192         `add-action', and `set-action'.  Don't use `add-to-list' on a local var.
29193         (nnmaildir-close-server): Declare those local vars that need to be
29194         dyn-bound.
29196 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
29198         * src/keyboard.h (kbd_buffer_store_event_hold): Remove unused local.
29200         Port selection info fix to clang
29201         * src/keyboard.h (kbd_buffer_store_event_hold):
29202         Don't assume C11 semantics for alignof (Bug#20756).
29204         Fix bug that munged selection info
29205         On some optimizing C compilers, copying a structure did not
29206         copy the padding bytes between elements, and the type punning
29207         between struct input_data and struct selection_input_data did
29208         not work.  Change the C code to use a proper union type instead.
29209         Problem reported by YAMAMOTO Mitsuharu (Bug#20756).
29210         * src/keyboard.c (kbd_buffer, kbd_fetch_ptr, kbd_store_ptr)
29211         (readable_events, discard_mouse_events, kbd_buffer_events_waiting)
29212         (kbd_buffer_get_event, process_special_events, stuff_buffered_input)
29213         (mark_kboards):
29214         Use union buffered_input_event, not struct input_event.
29215         (clear_event, deliver_input_available_signal, process_special_events):
29216         Remove unnecessary forward decls.
29217         (kbd_buffer_store_buffered_event): New function, mostly just the
29218         old kbd_buffer_store_event_hold, except its argument is of type
29219         union buffered_input_event, not struct input_event.
29220         (kbd_buffer_unget_event): Define only if HAVE_X11, since it's
29221         not needed otherwise.  Argument is now of type
29222         struct selection_input_event *, not struct input_event *.
29223         All callers changed.
29224         (clear_event): Arg is now of type union buffered_input_event *,
29225         not struct input_event *.  All callers changed.
29226         * src/keyboard.h [HAVE_X11]: Include "xterm.h".
29227         (union buffered_input_event): New type.
29228         (kbd_buffer_store_event_hold): Now an inline function,
29229         defined here.
29230         * src/termhooks.h (EVENT_KIND_WIDTH): New constant.
29231         (struct input_event): Use it.
29232         * src/xselect.c (struct selection_event_queue):
29233         Make elements be of type struct selection_input_event,
29234         not struct input_event.
29235         (selection_input_event_equal): New static function.
29236         (x_queue_event): Use it.
29237         (x_queue_event, x_decline_selection_request)
29238         (x_selection_current_request, x_reply_selection_request)
29239         (x_handle_selection_request, x_handle_selection_clear)
29240         (x_handle_selection_event): Use struct selection_input_event,
29241         not struct input_event.  All callers changed.
29242         (x_convert_selection): Omit unused first arg.  All callers changed.
29243         (Fx_disown_selection_internal): Omit unnecessary union.
29244         * src/xterm.c (handle_one_xevent): Use new union buffered_input_event
29245         rather than rolling our own equivalent.  Prefer sie.kind when
29246         setting up that kind of structure.
29247         Call kbd_buffer_store_buffered_event, not kbd_buffer_store_event_hold.
29248         * src/xterm.h (struct selection_input_event: Use EVENT_KIND_WIDTH.
29249         (SELECTION_EVENT_DISPLAY, SELECTION_EVENT_DPYINFO)
29250         (SELECTION_EVENT_REQUESTOR, SELECTION_EVENT_SELECTION)
29251         (SELECTION_EVENT_TARGET, SELECTION_EVENT_PROPERTY)
29252         (SELECTION_EVENT_TIME, x_handle_selection_event):
29253         Arg is now of type struct selection_input_event *)
29254         not struct input_event *.  All callers changed.
29256 2015-06-23  Glenn Morris  <rgm@gnu.org>
29258         * Makefile.in (install-arch-dep): Simplify with Make conditionals.
29260 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
29262         * lisp/isearch.el: Fold many unicode characters to ASCII.
29263         (isearch-character-fold-search, isearch--character-fold-extras)
29264         (isearch--character-fold-table): New variable.
29265         (isearch--character-folded-regexp): New function.
29266         (isearch-search-fun-default): Use them.
29267         * lisp/replace.el (replace-character-fold): New variable.
29268         (replace-search): Use it.
29269         * etc/NEWS: Document it.
29271 2015-06-23  Glenn Morris  <rgm@gnu.org>
29273         Check for an input event before showing a dialog box.  (Bug#20813)
29274         * lisp/subr.el (y-or-n-p):
29275         * src/fns.c (Fyes_or_no_p): Check last-input-event as well
29276         as last-nonmenu-event.
29278 2015-06-23  Jürgen Hartmann  <juergen_hartman_@hotmail.com>  (tiny change)
29280         Respect ‘switch-to-visible-buffer’ more rigidly.  (Bug#20861)
29281         * lisp/window.el (switch-to-visible-buffer): Doc adjustment.
29282         (switch-to-prev-buffer, switch-to-next-buffer): Respect
29283         switch-to-visible-buffer independent of the windows history.
29285 2015-06-23  Paul Eggert  <eggert@cs.ucla.edu>
29287         * src/keyboard.c (last_timer_event): Remove unused var.
29289 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
29291         * test/automated/package-test.el (package-test-update-listing):
29292         Fix test.
29294 2015-06-23  Glenn Morris  <rgm@gnu.org>
29296         Revert 2014-06-25 nextstep/Makefile change.
29297         * nextstep/Makefile.in (${ns_appbindir}): Remove rule.
29298         (${ns_appbindir}/Emacs, links): Create ns_appbindir in the rule,
29299         not as an order-only prerequisite.
29301         * configure.ac (--with-ns): Enable by default on OS X.
29303 2015-06-23  Leo Liu  <sdl.web@gmail.com>
29305         Fix shell-for/backward-command to exclude spaces
29306         * lisp/shell.el (shell-forward-command, shell-backward-command):
29307           Handle the 'move case from re-search-forward/backward.
29308           fixes debbugs:20873
29310 2015-06-22  Juri Linkov  <juri@linkov.net>
29312         * lisp/replace.el (query-replace-read-from): Add separator to
29313         the local binding of text-property-default-nonsticky.  (Bug#20690)
29315         * lisp/simple.el (shell-command-on-region): Replace 'error' with 'user-error'.
29316         (Bug#20785)
29318 2015-06-22  Ken Brown  <kbrown@cornell.edu>
29320         Enable CPU profiling on Cygwin
29321         * src/syssignal.h [CYGWIN] (PROFILER_CPU_SUPPORT): Revert previous
29322         change that undefined this.
29323         (SIGEV_SIGNAL): Ensure that this is defined as a macro.
29324         * src/profiler.c [CYGWIN] (timer_getoverrun): Define as a macro on
29325           Cygwin.
29327         Improve diagnostics of profiler-cpu-start
29328         * src/profiler.c (setup_cpu_timer): Change return type to 'int';
29329         return -1 if the sampling interval is invalid.
29330         (Fprofiler_cpu_start): Improve error message if 'setup_cpu_timer'
29331         fails.  (Bug#20843)
29333 2015-06-22  Artur Malabarba  <bruce.connor.am@gmail.com>
29335         * lisp/emacs-lisp/package.el: Exclude packages by name.
29336         (package-hidden-regexps): New variable.
29337         (package-menu--refresh): Use it.
29338         (package-menu-hide-package): New command.
29340         * lisp/emacs-lisp/package.el: Rename hide-obsolete to toggle-hiding.
29342 2015-06-22  Eli Zaretskii  <eliz@gnu.org>
29344         Fix debug-timer-check on systems without HAVE_TIMERFD
29345         * src/atimer.c (Fdebug_timer_check) [!HAVE_TIMERFD]: Actively run
29346         the expired timers, since wait_reading_process_output doesn't.
29347         (debug_timer_callback): Enlarge the tolerance to 20 msec.
29349         Fix RCS crashes in vc-test
29350         * lisp/vc/vc-rcs.el (vc-rcs-register): Avoid crashes with some old
29351         ports of 'ci' on MS-Windows by always passing the -t- switch.
29353 2015-06-22  Glenn Morris  <rgm@gnu.org>
29355         * doc/emacs/package.texi (Packages):
29356         * doc/emacs/trouble.texi (Known Problems): Remove faq cross-references.
29358         * doc/misc/efaq-w32.texi (Downloading): Copyedits.  (Bug#20851)
29360 2015-06-22  Paul Eggert  <eggert@cs.ucla.edu>
29362         Port tests to help-quote-translation
29363         * test/automated/ert-x-tests.el (ert-test-describe-test):
29364         * test/automated/package-test.el (package-test-describe-package)
29365         (package-test-signed): Allow straight quotes, too.
29367 2015-06-22  Dmitry Gutov  <dgutov@yandex.ru>
29369         Make find-function-on-key use the current window
29370         * lisp/emacs-lisp/find-func.el (find-function-on-key-do-it):
29371         Extract from `find-function-on-key', add a second argument.
29372         (find-function-on-key): Use it (bug#19679).
29373         (find-function-on-key-other-window)
29374         (find-function-on-key-other-frame): New commands.
29376 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
29378         Revert "Define `map-elt' as a generalized variable"
29379         This reverts commit 8b6d82d3ca86f76ed964063b3941a7c6ab0bf1c6.
29381 2015-06-21  Ken Brown  <kbrown@cornell.edu>
29383         Drop support for CPU profiling on Cygwin
29384         * src/syssignal.h (PROFILER_CPU_SUPPORT): Don't define on Cygwin.
29385         (Bug#20843)
29387 2015-06-21  Paul Eggert  <eggert@cs.ucla.edu>
29389         Fix some “nested” quoting confusion in doc strings
29390         * lisp/emacs-lisp/advice.el (ad-map-arglists):
29391         * lisp/kermit.el (kermit-clean-on):
29392         * lisp/mh-e/mh-comp.el (mh-repl-group-formfile):
29393         * src/keyboard.c (Frecursive_edit):
29394         Use curved quotes when quoting text containing apostrophe,
29395         so that the apostrophe isn't curved in the output.
29397 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
29399         Define `map-elt' as a generalized variable
29400         * lisp/emacs-lisp/map.el (map-elt): Define a gv-expander.
29401         * lisp/emacs-lisp/map.el (map--dispatch): Tighten the code.
29402         * lisp/emacs-lisp/map.el (map-put): Redefine it as a function using a
29403         `setf' with `map-elt'.
29404         * test/automated/map-tests.el: Comment out `test-map-put-literal'.
29406 2015-06-21  Michael Albinus  <michael.albinus@gmx.de>
29408         Improve error handling in tramp-adb.el
29409         * lisp/net/tramp-adb.el (tramp-adb-handle-file-local-copy):
29410         Improve error handling.
29412 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
29414         Reuse `alist-get' in map.el
29415         * lisp/emacs-lisp/map.el (map-elt): Use `alist-get' to retrieve alist
29416         elements.
29418 2015-06-21  Eli Zaretskii  <eliz@gnu.org>
29420         Fix bytecomp-tests--warnings when $TMPDIR has a long name
29421         * test/automated/bytecomp-tests.el (bytecomp-tests--warnings):
29422         Allow the warning to begin on the 3rd, not only 2nd line, which
29423         happens if temporary-file-directory has a very long name.
29425         Expect 2 icalendar tests to fail on MS-Windows
29426         * test/automated/icalendar-tests.el (icalendar-import-with-timezone)
29427         (icalendar-real-world): Make them expected failures on MS-Windows.
29429 2015-06-20  Paul Eggert  <eggert@cs.ucla.edu>
29431         Improve port of settings UI to older displays
29432         * lisp/cus-start.el (standard): Don't assume curved quotes are
29433         easily distinguishable when users are tinkering with a setting
29434         that affects how curved quotes are generated.
29436         Fix quoting in electric-quote-mode doc string
29437         * lisp/electric.el (electric-quote-mode): Fix quoting.
29438         This is a fallout from the recent change introducing
29439         ‘help-quote-translation’.
29441         Spelling fix
29443         * doc/misc/texinfo.tex, lib/set-permissions.c: Merge from gnulib.
29445         * src/doc.c (syms_of_doc): Remove unused symbols.
29447 2015-06-20  Martin Rudalics  <rudalics@gmx.at>
29449         * lisp/window.el (window-state-put): Undedicate target window
29450         before putting STATE into it.  (Bug#20848)
29452 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
29454         Merge from origin/emacs-24
29455         a5e6f33 Fixes: debbugs:20832
29456         b9f02cf Fixes: debbugs:20832
29458 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
29460         Fix file-in-directory-p when the directory is UNC
29461         * lisp/files.el (file-in-directory-p): Support files and
29462         directories that begin with "//".  (Bug#20844)
29464 2015-06-19  Stephen Berman  <stephen.berman@gmx.net>
29466         * lisp/calendar/todo-mode.el (todo-show): Don't visit todo file
29467         in the minibuffer.  (Bug#20832)
29469 2015-06-19  Nicolas Richard  <youngfrog@members.fsf.org>
29471         * lisp/calendar/todo-mode.el (todo-show): Signal an error if buffer
29472         for adding new todo file is empty but modified.  (Bug#20832)
29474 2015-06-19  Stefan Monnier  <monnier@iro.umontreal.ca>
29476         (filepos-to-bufferpos): Further tweaks to the utf-16 code
29477         * lisp/international/mule-util.el (filepos-to-bufferpos):
29478         Fix typo.  Move non-exact check to the utf-16 branch (the only one
29479         affected).  Don't use byte-to-position for the utf-16 case.
29481 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
29483         Minor fixes in filepos-to-bufferpos
29484         * lisp/international/mule-util.el (filepos-to-bufferpos): Remove
29485         test for utf-8-emacs.  Exempt single-byte encodings from the
29486         'use-exact' path when QUALITY is 'exact'.  Test UTF-16 encodings
29487         for BOM before subtracting 2 bytes.  Use 'identity' when adjusting
29488         UTF-16 encoded files for CR-LF EOLs.
29490 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
29492         Improve the optional translation of quotes
29493         Fix several problems with the recently-added custom variable
29494         help-quote-translation where the code would quote inconsistently
29495         in help buffers.  Add support for quoting 'like this', which
29496         is common in other GNU programs in ASCII environments.  Change
29497         help-quote-translation to use more mnemonic values: values are now the
29498         initial quoting char, e.g., (setq help-quote-translation ?`) gets the
29499         traditional Emacs help-buffer quoting style `like this'.  Change the
29500         default behavior of substitute-command-keys to match what's done in
29501         set-locale-environment, i.e., quote ‘like this’ if displayable,
29502         'like this' otherwise.
29503         * doc/lispref/help.texi (Keys in Documentation): Document
29504         new behavior of substitute-command-keys, and document
29505         help-quote-translation.
29506         * doc/lispref/tips.texi (Documentation Tips):
29507         Mention the effect of help-quote-translation.
29508         * etc/NEWS: Mention new behavior of substitute-command-keys,
29509         and merge help-quote-translation news into it.
29510         When talking about doc strings, mention new ways to type quotes.
29511         * lisp/cedet/mode-local.el (overload-docstring-extension):
29512         Revert my recent change to this function, which shouldn't be
29513         needed as the result is a doc string.
29514         * lisp/cedet/mode-local.el (mode-local-print-binding)
29515         (mode-local-describe-bindings-2):
29516         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
29517         * lisp/cus-theme.el (describe-theme-1):
29518         * lisp/descr-text.el (describe-text-properties-1, describe-char):
29519         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
29520         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
29521         (eieio-help-constructor):
29522         * lisp/emacs-lisp/package.el (describe-package-1):
29523         * lisp/faces.el (describe-face):
29524         * lisp/help-fns.el (help-fns--key-bindings)
29525         (help-fns--compiler-macro, help-fns--parent-mode)
29526         (help-fns--obsolete, help-fns--interactive-only)
29527         (describe-function-1, describe-variable):
29528         * lisp/help.el (describe-mode):
29529         Use substitute-command-keys to ensure a more-consistent quoting
29530         style in help buffers.
29531         * lisp/cus-start.el (standard):
29532         Document new help-quote-translation behavior.
29533         * lisp/emacs-lisp/lisp-mode.el (lisp-fdefs):
29534         * lisp/help-mode.el (help-xref-symbol-regexp, help-xref-info-regexp)
29535         (help-xref-url-regexp):
29536         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
29537         * lisp/wid-edit.el (widget-documentation-link-regexp):
29538         Also match 'foo', in case we're in a help buffer generated when
29539         help-quote-translation is ?'.
29540         * src/doc.c: Include disptab.h, for DISP_CHAR_VECTOR.
29541         (LEFT_SINGLE_QUOTATION_MARK, uLSQM0, uLSQM1, uLSQM2, uRSQM0)
29542         (uRSQM1, uRSQM2, LSQM, RSQM): New constants.
29543         (Fsubstitute_command_keys): Document and implement new behavior.
29544         (Vhelp_quote_translation): Document new behavior.
29546 2015-06-18  Glenn Morris  <rgm@gnu.org>
29548         * lisp/cus-start.el (help-quote-translation): Add :version.
29550         * src/doc.c (Fsubstitute_command_keys): Make previous change compile.
29552 2015-06-18  Alan Mackenzie  <acm@muc.de>
29554         Make translation of quotes to curly in doc strings optional.
29555         * src/doc.c (traditional, prefer-unicode): New symbols.
29556         (help-quote-translation): New variable.
29557         (Fsubstitute_command_keys): Make translation of quotes dependent on
29558         `help-quote-translation'; also translate curly quotes back to ASCII
29559         ones.
29560         * lisp/cus-start.el (top-level): Add a customization entry for
29561         `help-quote-translation'.
29563 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
29565         * lisp/emacs-lisp/package.el: Don't always propagate async errors
29566         (package--with-work-buffer-async): Only propagate the error if the
29567         callback returns non-nil.
29568         (package--download-one-archive): Return nil on the signature
29569         checking callback if we accept unsigned.
29570         (package--download-and-read-archives): Return non-nil on the
29571         archive download callback.
29573 2015-06-18  Martin Rudalics  <rudalics@gmx.at>
29575         Set image_cache_refcount before x_default_parameter calls.  (Bug#20802)
29576         * src/nsfns.m (Fx_create_frame):
29577         * src/xfns.c (Fx_create_frame, x_create_tip_frame): Move setting
29578         image_cache_refcount before first x_default_parameter call.
29580 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
29582         Improve and extend filepos-to-bufferpos
29583         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
29584         Don't barf if F returns nil for some argument.
29585         (filepos-to-bufferpos): Expand to support UTF-16 and not assume
29586         that every encoding of type 'charset' is single-byte.
29588 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
29590         * lisp/emacs-lisp/package.el (package-menu--perform-transaction):
29591         Properly delete packages.  (Bug#20836)
29593 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
29595         Update data files from just-released Unicode 8.0
29596         * etc/NEWS: Update wording since Unicode 8.0 is no longer in draft
29597         status.
29598         * test/BidiCharacterTest.txt: Update from Unicode 8.0.
29599         * admin/unidata/BidiMirroring.txt:
29600         * admin/unidata/BidiBrackets.txt:
29601         * admin/unidata/UnicodeData.txt: Update from Unicode 8.0.
29603 2015-06-18  Paul Eggert  <eggert@cs.ucla.edu>
29605         Document curved quotes a bit better
29606         * doc/emacs/basic.texi (Inserting Text):
29607         Mention C-x 8.  Change example to use curved quote rather
29608         than infinity, as this lets us give more ways to do it.
29609         * doc/emacs/mule.texi (International Chars): Mention C-x 8 shortcuts
29610         and quotation marks.
29611         * doc/emacs/text.texi (Quotation Marks):
29612         * doc/lispref/tips.texi (Documentation Tips):
29613         Add "curly quotes" and "curved quotes" to the index.
29614         * doc/emacs/text.texi (Quotation Marks):
29615         Give the C-x 8 shorthands for curved quotes.
29616         Cross-reference to "Quotation Marks".
29618 2015-06-17  Daiki Ueno  <ueno@gnu.org>
29620         Add pinentry.el for better GnuPG integration
29621         * lisp/pinentry.el: New file.
29622         * etc/NEWS: Add entry about pinentry.el.
29623         * lisp/epg.el (epg--start): Set INSIDE_EMACS envvar.
29624         (Bug#20550)
29626 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
29628         * lisp/emacs-lisp/package.el: Slightly better error reporting.
29630 2015-06-17  Stefan Monnier  <monnier@iro.umontreal.ca>
29632         (define-minor-mode): Use setq-default for :global minor modes
29633         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
29634         Use setq-default for :global minor modes (bug#20712).
29636 2015-06-17  Eli Zaretskii  <eliz@gnu.org>
29638         Avoid infloop in redisplay with tall images
29639         * src/xdisp.c (try_scrolling): Prevent an infloop when scrolling
29640         down near ZV.  (Bug#20808)
29641         Call bidi_unshelve_cache to avoid memory leaks.  Use IT_CHARPOS
29642         instead of CHARPOS.
29644 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
29646         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
29647         Fix error reporting.
29649         * lisp/emacs-lisp/let-alist.el: Move to lisp/emacs-lisp/let-alist.el
29651         * lisp/emacs-lisp/package.el: Revert buffer after any operation
29652         Call `package-menu--post-refresh' after any operation that changes
29653         the package database (`package-install' and `package-delete').  To
29654         avoid performance issues in large transactions, these functions
29655         add `post-refresh' to `post-command-hook' instead of calling it
29656         immediately.
29657         (package-menu--mark-or-notify-upgrades): New function.
29658         (list-packages): Add it to `package--post-download-archives-hook'.
29659         (package-menu--post-refresh): Lose the upgrade-checking code, add
29660         code to remove itself from `post-command-hook'.
29661         (package-install, package-delete): Add it to `post-command-hook'.
29662         (package-menu-execute): Don't call `package-menu--post-refresh'.
29664 2015-06-17  Stephen Leake  <stephen_leake@stephe-leake.org>
29666         Add missing function xref-location-group for elisp-mode.
29667         * lisp/progmodes/elisp-mode.el: Add missing function xref-location-group.
29669 2015-06-17  Wolfgang Jenkner  <wjenkner@inode.at>
29671         * src/editfns.c (Fbyte_to_position): Fix bytepos not at char boundary.
29672         The behavior now matches the description in the manual.  (Bug#20783)
29674 2015-06-17  Xue Fuqiao  <xfq.free@gmail.com>
29676         * etc/tutorials/TUTORIAL.cn: Update; synchronize with TUTORIAL.
29678 2015-06-17  Glenn Morris  <rgm@gnu.org>
29680         Generate char-script-table from Unicode source.  (Bug#20789)
29681         * admin/unidata/Makefile.in (AWK): New, set by configure.
29682         (all): Add charscript.el.
29683         (blocks): New variable.
29684         (charscript.el, ${unidir}/charscript.el): New targets.
29685         (extraclean): Also remove generated charscript.el.
29686         * admin/unidata/blocks.awk: New script.
29687         * admin/unidata/Blocks.txt: New data file, from unicode.org.
29688         * lisp/international/characters.el: Load charscript.
29689         * src/Makefile.in (charscript): New variable.
29690         (${charscript}): New target.
29691         (${lispintdir}/characters.elc): Depend on charscript.elc.
29692         (temacs$(EXEEXT)): Depend on charscript.
29694         * lisp/international/characters.el (char-script-table): Tweak
29695         some ranges to better match the source.  (Bug#20789#17)
29697         Remove "no-byte-compile: t" from a few files.
29698         * lisp/obsolete/bruce.el, lisp/obsolete/keyswap.el:
29699         * lisp/obsolete/patcomp.el: No reason not to compile these.
29701 2015-06-16  Glenn Morris  <rgm@gnu.org>
29703         Fix some typos in copied Unicode data.  (Bug#20789)
29704         * lisp/international/characters.el (char-script-table):
29705         * lisp/international/fontset.el (script-representative-chars)
29706         (setup-default-fontset): Fix typos.
29708         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
29709         Don't print filename twice (it's in the prefix now).
29711         * lisp/emacs-lisp/pcase.el (pcase--u1): Revert earlier workaround.
29712         No longer needed.
29714         Address a compilation warning.
29715         * lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-defalias):
29716         Replace 't' with '_' in pcase.
29718         Address some check-declare warnings.
29719         * lisp/simple.el (tabulated-list-print):
29720         * lisp/progmodes/elisp-mode.el (xref-collect-matches):
29721         * lisp/term/ns-win.el (ns-selection-owner-p, ns-selection-exists-p)
29722         (ns-get-selection): Update declarations.
29724         Address some compilation warnings.
29725         * lisp/elec-pair.el (electric-pair-post-self-insert-function):
29726         * lisp/vc/vc-git.el (vc-git-file-type-as-string):
29727         Replace 't' with '_' in pcase.
29729         Address some compilation warnings.
29730         * lisp/face-remap.el (text-scale-adjust):
29731         * lisp/menu-bar.el (popup-menu-normalize-position):
29732         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand):
29733         * lisp/emacs-lisp/bytecomp.el (byte-compile-arglist-warn):
29734         * lisp/emacs-lisp/generator.el (cps--transform-1):
29735         * lisp/emacs-lisp/macroexp.el (macroexp--expand-all):
29736         * lisp/obsolete/vc-arch.el (vc-arch-mode-line-string):
29737         * lisp/progmodes/octave.el (octave-goto-function-definition)
29738         (octave-find-definition-default-filename):
29739         Replace 't' with '_' in pcase.
29741         * lisp/emacs-lisp/pcase.el (pcase--u1):
29742         Paper-over today's bootstrap failure.
29744 2015-06-16  Nicolas Petton  <nicolas@petton.fr>
29746         * lisp/emacs-lisp/seq.el: Fix a byte-compiler warnings related to pcase.
29748         * lisp/emacs-lisp/map.el (map-into): Fix a byte-compiler warning.
29750         Better confirmation message in `find-alternate-file' (Bug#20830)
29751         * lisp/files.el (find-alternate-file'): Improve the confirmation
29752         message to show the buffer name.
29754         Better docstring for null.  (Bug#20815)
29755         * src/data.c (null): Improves the docstring, saying what null returns
29756         when OBJECT is non-nil.
29758 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
29760         * lisp/net/newst-treeview.el: Use lexical-binding.
29762         (filepos-to-bufferpos): Add missing cases.  Make sure it terminates.
29763         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
29764         New auxiliary function, extracted from filepos-to-bufferpos.
29765         Make sure it terminates.
29766         (filepos-to-bufferpos): Use it to fix the latin-1-dos case.
29767         Add support for the `exact' quality.
29769 2015-06-16  Cédric Chépied  <cedric.chepied@gmail.com>
29771         Identify feeds in newsticker treeview with :nt-feed property
29772         * lisp/net/newst-treeview.el:
29773         (newsticker--treeview-nodes-eq): Use property :nt-feed instead of :tag.
29775 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
29777         * lisp/emacs-lisp/pcase.el: Improve docs and error handling.
29778         (pcase--self-quoting-p): Floats aren't self-quoting.
29779         (pcase): Tweak docstring.
29780         (pcase--u1): Deprecate the t pattern.  Improve error detection for
29781         the nil pattern.
29782         (\`): Tweak docstring.  Signal an error for unrecognized cases.
29783         (bug#20784)
29785 2015-06-16  Eli Zaretskii  <eliz@gnu.org>
29787         Fix infloop in filepos-to-bufferpos
29788         * lisp/international/mule-util.el (filepos-to-bufferpos): Fix EOL
29789         offset calculation, and make it conditional on the eol-type of the
29790         file's encoding.  (Bug#20825)
29792 2015-06-16  Martin Rudalics  <rudalics@gmx.at>
29794         Fix handling of image cache refcounts.  (Bug#20802)
29795         This backports Eli Zaretskii's solution of this problem for W32
29796         to X and NS.
29797         * src/nsfns.m (image_cache_refcount): Define unconditionally.
29798         (unwind_create_frame): If the image cache's reference count
29799         hasn't been updated yet, do that now.
29800         (Fx_create_frame): Set image_cache_refcount unconditionally.
29801         * src/xfns.c (image_cache_refcount): Define unconditionally.
29802         (unwind_create_frame): If the image cache's reference count
29803         hasn't been updated yet, do that now.
29804         (Fx_create_frame, x_create_tip_frame): Set image_cache_refcount
29805         unconditionally.
29806         * src/w32fns.c (image_cache_refcount): Make it a ptrdiff_t as on
29807         X and NS.
29809 2015-06-16  Nils Ackermann  <nils@ackermath.info>
29811         Improve reftex-label-regexps default value
29812         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Make
29813         keyvals label regexp more strict to better cope with unbalanced
29814         brackets common in math documents.
29816 2015-06-16  Glenn Morris  <rgm@gnu.org>
29818         * doc/emacs/calendar.texi (Format of Diary File):
29819         Move "nonmarking" from here...
29820         (Displaying the Diary): ... to here.
29822         * doc/emacs/calendar.texi (Format of Diary File, Displaying the Diary):
29823         Swap the order of these nodes.
29824         * doc/emacs/emacs.texi: Update detailed menu for the above change.
29826         * doc/emacs/calendar.texi (Specified Dates, Special Diary Entries):
29827         Update date of examples.
29828         (Diary, Format of Diary File): Move example from former to latter.
29829         Reduce duplication.
29831         No need for cp51932.el, eucjp-ms.el to not be compiled any more.
29832         * admin/charsets/cp51932.awk, admin/charsets/eucjp-ms.awk:
29833         Don't set no-byte-compile in the outputs.
29834         * lisp/loadup.el: Don't specify uncompiled cp51932, eucjp-ms.
29836 2015-06-15  Glenn Morris  <rgm@gnu.org>
29838         * lisp/calendar/calendar.el (diary-file): Use locate-user-emacs-file.
29839         * doc/emacs/calendar.texi (Diary, Format of Diary File):
29840         Update for above diary-file change.
29842         * lisp/macros.el (name-last-kbd-macro, kbd-macro-query)
29843         (apply-macro-to-region-lines): Use user-error.
29845         * lisp/textmodes/page-ext.el (add-new-page, pages-directory)
29846         (pages-directory-for-addresses): Doc fixes.
29848 2015-06-15  Stefan Monnier  <monnier@iro.umontreal.ca>
29850         * lisp/info.el: Cleanup bytepos/charpos issues
29851         * lisp/international/mule-util.el: Use lexical-binding.
29852         (filepos-to-bufferpos): New function.
29853         * lisp/info.el (Info-find-in-tag-table-1): Use 0-based file positions.
29854         (Info-find-node-2): Use filepos-to-bufferpos (bug#20704).
29855         (Info-read-subfile, Info-search): Use 0-based file positions.
29857         * lisp/progmodes/perl-mode.el: Refine handling of /re/ and y/abc/def/
29858         (perl--syntax-exp-intro-keywords): New var.
29859         (perl--syntax-exp-intro-regexp, perl-syntax-propertize-function): Use it.
29860         (bug#20800).
29862 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
29864         Fix quoting when making derived mode docstring
29865         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
29866         Nest regexp-quote inside format, not the reverse.
29867         Problem reported by Artur Malabarba in:
29868         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00206.html
29870 2015-06-15  Eli Zaretskii  <eliz@gnu.org>
29872         Fix current-iso639-language on MS-Windows
29873         * lisp/international/mule-cmds.el (set-locale-environment):
29874         Downcase the locale name before interning it.  This is so the
29875         'current-iso639-language' on MS-Windows matches the ':lang'
29876         property of font-spec objects.
29878         Limit Symbola usage some more
29879         * lisp/international/fontset.el (setup-default-fontset): Limit
29880         Symbol coverage of Currency Symbols to u+20B6..u+20CF.
29881         (Bug#20727)
29883 2015-06-15  Nicolas Petton  <nicolas@petton.fr>
29885         * lisp/emacs-lisp/map.el (map-let): Better docstring.
29887 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
29889         * test/automated/help-fns.el (abc\\\[universal-argument\]b\`c\'d\\e\"f):
29890         (help-fns-test-funny-names): Spelling fixes.
29892 2015-06-14  Glenn Morris  <rgm@gnu.org>
29894         * lisp/version.el (emacs-repository-version-git): Demote errors.
29895         Check result is a hash.
29897 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
29899         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
29900         Catch errors that happen before going async.  (Bug#20809)
29902 2015-06-14  Eli Zaretskii  <eliz@gnu.org>
29904         Another improvement of documentation of set-fontset-font
29905         * doc/lispref/display.texi (Fontsets): Say explicitly that
29906         CHARACTER can be a single codepoint.
29907         * src/fontset.c (Fset_fontset_font): Doc fix.
29909         Another improvement for symbol and punctuation characters
29910         * lisp/international/fontset.el (setup-default-fontset): Exclude
29911         from Symbola character ranges for symbols and punctuation covered
29912         well by popular Unicode fonts.  Prefer fixed-misc Unicode font, if
29913         installed and where its coverage of symbols and punctuation is
29914         known to be good.  (Bug#20727)
29916 2015-06-14  Christoph Wedler  <christoph.wedler@sap.com>
29918         Some generic support for multi-mode indentation.
29919         * lisp/progmodes/prog-mode.el (prog-indentation-context):
29920         New variable.
29921         (prog-first-column, prog-widen): New convenience functions.
29923 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
29925         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
29926         Don't assume that `tabulated-list-printer' will leave point at the
29927         end of the buffer.  (Bug#20810)
29929 2015-06-13  Glenn Morris  <rgm@gnu.org>
29931         Tweaks for getting repository version; a bit more like it was for bzr
29932         * lisp/version.el (emacs-repository-version-git)
29933         (emacs-repository--version-git-1): New functions,
29934         split from emacs-repository-get-version.
29935         (emacs-repository-get-version): Make the second argument meaningful.
29937         * lisp/startup.el (command-line-1): Inform if skipping relative
29938         file names due to deleted PWD.
29940         * src/xsmfns.c (x_session_initialize): Avoid libSM crash
29941         when starup directory is missing.  (Bug#18851)
29942         (errno.h): Include it.
29944 2015-06-13  Paul Eggert  <eggert@cs.ucla.edu>
29946         Better fix for documenting `X as "`X"
29947         Fix suggested by Stefan Monnier.
29948         * lisp/help-fns.el (help-fns--signature):
29949         Insert "`X", not "(\` X)", when documenting `X (Bug#20759).
29950         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
29951         Don't treat `X specially, as help-fns--signature now handles this.
29953 2015-06-13  Eli Zaretskii  <eliz@gnu.org>
29955         Improve the default fontset when Symbola is not installed
29956         * lisp/international/fontset.el (setup-default-fontset): Only
29957         prepend Symbola and FreeMono font specs for symbols and
29958         punctuation; do not replace the default spec for them.  This
29959         should have better results when Symbola/FreeMono are not
29960         installed.  (Bug#20727)
29962         Improve documentation of ':lang' in font specs
29963         * src/font.c (Ffont_spec): Doc fix: elaborate on the values and
29964         use of the ':lang' property of the font spec.
29965         * doc/emacs/frames.texi (Fonts): Document the language names that
29966         can be in the STYLE part of XLFD.
29967         * doc/lispref/display.texi (Low-Level Font): Document the ':lang'
29968         property.
29970         * nt/README: Don't advertise the (obsolescent) w32 FAQ.
29972         * nt/README.W32: Don't advertise the (obsolescent) w32 FAQ.
29974         Revert last change in fontset.el
29975         * lisp/international/fontset.el (setup-default-fontset): Revert
29976         the change "Configure Symbola font only if installed", since font
29977         search is evidently not yet set up when this function is called.
29978         (Bug#20727)
29980 2015-06-12  Glenn Morris  <rgm@gnu.org>
29982         Ensure early startup warnings are visible at the end.  (Bug#20792)
29983         * lisp/emacs-lisp/warnings.el (display-warning):
29984         If startup isn't complete, delay the warning.
29985         * lisp/startup.el (normal-top-level, command-line):
29986         Let display-warning automatically handle the needed delays.
29987         Run delayed-warnings-hook.
29989         * lisp/version.el (emacs-repository-get-version):
29990         Avoid calling external executable if possible.  (Bug#20799)
29992 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
29994         Document `X as "`X", not as "(` X)"
29995         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
29996         Document (backquote FOO) as "`FOO", not as "(` FOO)" (Bug#20759).
29998         * src/print.c (print_object): Minor simplification.
30000 2015-06-12  Glenn Morris  <rgm@gnu.org>
30002         * src/buffer.c (init_buffer): Add final newline to message.
30004 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
30006         Configure Symbola font only if installed
30007         * lisp/international/fontset.el (setup-default-fontset):
30008         Don't specify the Symbola font if it's not installed.
30009         Likewise for FreeMono.  (Bug#20727)
30011 2015-06-12  Eli Zaretskii  <eliz@gnu.org>
30013         Configure Symbola font only for symbols and punctuation
30014         * lisp/international/fontset.el (setup-default-fontset): Leave
30015         only symbols and punctuation in the fontset setup for Symbola
30016         font; remove "Greek and Coptic" and "Cyrillic Supplement".
30017         (Bug#20798)
30019 2015-06-12  Andreas Schwab  <schwab@linux-m68k.org>
30021         Fix crash in fontset-info
30022         * src/fontset.c (Ffontset_info): Check that the RFONT-DEF elt is
30023         non-nil.
30025 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
30027         Port to Solaris 10 sparc + Sun C 5.13
30028         * configure.ac (SETUP_SLAVE_PTY) [sol2* | unixware]:
30029         Adjust to process.c change.
30030         * src/process.c (create_process): Declare volatile variables at
30031         top level of this function, so that they're less likely to be
30032         reused later in the function in the code executed by the vforked
30033         child.  Do not declare locals used only in the vforked child, as
30034         they might share memory with locals still live in the parent.
30035         Instead, use the same variables in the child as in the parent.
30036         This works around a subtle bug that causes a garbage collector
30037         crash when Emacs is built with Sun C 5.13 sparc on Solaris 10.
30039 2015-06-12  Glenn Morris  <rgm@gnu.org>
30041         * lisp/startup.el (normal-top-level): Don't let *Messages* get
30042         a nil default-directory.
30044 2015-06-11  Glenn Morris  <rgm@gnu.org>
30046         * lisp/startup.el (normal-top-level): Use delay-warning.  (Bug#20792)
30048         Some progress towards starting with PWD deleted.  (Bug#18851)
30049         * src/buffer.c (init_buffer): Handle get_current_dir_name failures.
30050         * lisp/startup.el (normal-top-level, command-line-1):
30051         * lisp/minibuffer.el (read-file-name-default):
30052         Handle default-directory being nil.
30054 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
30056         Fix "not a tty" bug on Solaris 10
30057         * configure.ac (PTY_OPEN): Define to plain 'open'
30058         on SVR4-derived hosts, so that the O_CLOEXEC flag isn't set.
30059         * src/process.c (allocate_pty): Set the O_CLOEXEC flag after
30060         calling PTY_TTY_NAME_SPRINTF, for the benefit of SVR4-derived
30061         hosts that call grantpt which does its work via a setuid subcommand
30062         (Bug#19191, Bug#19927, Bug#20555, Bug#20686).
30063         Also, set O_CLOEXEC even if PTY_OPEN is not defined, since it
30064         seems relevant in that case too.
30066 2015-06-11  Juri Linkov  <juri@linkov.net>
30068         * lisp/bindings.el (debug-ignored-errors): Add mark-inactive.
30069         * lisp/simple.el (kill-region): Replace 'error' with 'user-error'.
30070         (Bug#20785)
30072 2015-06-11  Glenn Morris  <rgm@gnu.org>
30074         * lisp/international/characters.el (char-script-table): Fix typo.
30076 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
30078         Fix quoting of help for functions with odd names
30079         While investigating Bug#20759, I discovered other quoting problems:
30080         C-h f mishandled characters like backslash and quote in function names.
30081         This fix changes the behavior so that 'C-h f pcase RET' now
30082         generates "... (\` QPAT) ..." instead of "... (` QPAT) ...",
30083         because '(format "%S" '(` FOO))' returns "(\\` FOO)".  A comment
30084         in src/lread.c's read1 function says that the backslash will be
30085         needed starting in Emacs 25, which implies that 'format' is
30086         correct and the old pcase documention was wrong to omit the backslash.
30087         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
30088         * lisp/help-fns.el (help-fns--signature):
30089         * lisp/help.el (help-add-fundoc-usage):
30090         * lisp/progmodes/elisp-mode.el (elisp-function-argstring):
30091         Use help--make-usage-docstring rather than formatting
30092         help-make-usage.
30093         * lisp/emacs-lisp/pcase.el (pcase--make-docstring):
30094         Return raw docstring.
30095         * lisp/help-fns.el (help-fns--signature): New arg RAW, to return
30096         raw docstring.  Take more care to distinguish raw from cooked dstrings.
30097         (describe-function-1): Let help-fns--signature substitute
30098         command keys.
30099         * lisp/help.el (help--docstring-quote): New function.
30100         (help-split-fundoc): Use it, to quote funny characters more
30101         systematically.
30102         (help--make-usage): Rename from help-make-usage, since this
30103         should be private.  Leave an obsolete alias for the old name.
30104         (help--make-usage-docstring): New function.
30105         * test/automated/help-fns.el (help-fns-test-funny-names): New test.
30107 2015-06-11  Stefan Monnier  <monnier@iro.umontreal.ca>
30109         * lisp/thingatpt.el (in-string-p): Revert last change,
30110         since in-string-p is not used in thingatpt.el but only from outside.
30111         Also, use lexical binding.
30113 2015-06-11  Artur Malabarba  <bruce.connor.am@gmail.com>
30115         * lisp/emacs-lisp/let-alist.el (let-alist--deep-dot-search): Fix cons.
30116         * test/automated/let-alist.el (let-alist-cons): Test it.
30118 2015-06-11  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
30120         * src/syntax.c (Fbackward_prefix_chars): Reword docstring.
30122 2015-06-10  Glenn Morris  <rgm@gnu.org>
30124         * build-aux/gitlog-to-emacslog: Also ignore pointless merge commits.
30126         Improve generated ChangeLog for gitmerge.el commits.  (Bug#20717)
30127         * build-aux/gitlog-to-changelog: Handle gitmerge.el skipped commits.
30128         * admin/gitmerge.el (gitmerge-commit-message):
30129         Exclude "skipped" messages from ChangeLog once again.
30131         Slight namespace cleanup for thingatpt.el.
30132         * lisp/thingatpt.el (thing-at-point--in-string-p)
30133         (thing-at-point--end-of-sexp, thing-at-point--beginning-of-sexp)
30134         (thing-at-point--read-from-whole-string): Rename from
30135         old versions without "thing-at-point--" prefix.
30136         Keep old versions as obsolete aliases.  Update all uses.
30138         * lisp/emacs-lisp/checkdoc.el (checkdoc-get-keywords):
30139         Move requiring of finder from here...
30140         (checkdoc-package-keywords): ... to here.
30142         Use 'user-error' in a few calendar files.
30143         * lisp/calendar/appt.el (appt-add):
30144         * lisp/calendar/calendar.el (calendar-absolute-from-gregorian)
30145         (calendar-generate):
30146         * lisp/calendar/diary-lib.el (diary-mail-entries, diary-cyclic):
30147         Replace 'error' with 'user-error'.
30149         * lisp/progmodes/f90.el (f90-backslash-not-special): Use user-error.
30151         * lisp/files-x.el (add-file-local-variable):
30152         Special-case 'lexical-binding'.  (Bug#20641)
30154         * lisp/progmodes/executable.el (executable-self-display): Obsolete.
30155         No longer autoload.
30156         * doc/misc/autotype.texi (Executables):
30157         Undocument executable-self-display.
30159         * lisp/progmodes/executable.el (executable-self-display):
30160         Use non-obsolete tail syntax.  (Bug#20779)
30161         (executable-self-display): Doc update.
30163 2015-06-10  Stefan Monnier  <monnier@iro.umontreal.ca>
30165         * lisp/emacs-lisp/checkdoc.el: Use lexical-binding
30166         (finder-known-keywords): Silence byte-compiler.
30168 2015-06-09  Stefan Monnier  <monnier@iro.umontreal.ca>
30170         * lisp/simple.el (eval-expression): Macroexpand before evaluating
30171         (bug#20730).
30173         * lisp/progmodes/sh-script.el: Better handle nested quotes.
30174         (sh-here-doc-open-re): Don't mis-match the <<< operator (bug#20683).
30175         (sh-font-lock-quoted-subshell): Make sure double quotes within single
30176         quotes don't mistakenly end prematurely the surrounding string.
30178         * lisp/progmodes/elisp-mode.el: Require cl-lib for cl-defstruct.
30180 2015-06-09  Glenn Morris  <rgm@gnu.org>
30182         * test/automated/Makefile.in (ELFILES): Sort.
30184         * Makefile.in (SUBDIR_MAKEFILES):
30185         * lwlib/Makefile.in (WARN_CFLAGS):
30186         Use built-in Make functions rather than echo+sed.
30188 2015-06-09  Eli Zaretskii  <eliz@gnu.org>
30190         Update char-script-table
30191         * lisp/international/characters.el (char-script-table): Update
30192         from Unicode 8.0 Draft.
30194         Improve font selection for punctuation and other symbols
30195         * src/fontset.c (face_for_char): If the character's script is
30196         'symbol', and the font used for ASCII face has a glyph for it, use
30197         the font for the ASCII face instead of searching the fontsets.
30198         This comes instead of NS-specific code that used the current
30199         face's font instead, which is now disabled due to undesirable
30200         consequences.  (Bug#20727)
30202 2015-06-08  Dmitry Gutov  <dgutov@yandex.ru>
30204         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
30205         Skip past `#' to find BEG (bug#20771).
30206         * test/automated/elisp-mode-tests.el
30207         (elisp-completes-functions-after-hash-quote): New test.
30209 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
30211         Fix compilation warning/error in --without-x builds
30212         * src/xdisp.c (append_space_for_newline): Condition GUI-specific
30213         code on HAVE_WINDOW_SYSTEM.
30215         Improve the default fontset wrt symbols
30216         * lisp/international/fontset.el (setup-default-fontset): Better
30217         setup of fontset-default for symbols: use Symbola and FreeMono.
30218         (Bug#20727)
30220 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
30222         Add new command checkdoc-package-keywords
30223         * lisp/emacs-lisp/checkdoc.el (checkdoc-package-keywords-flag):
30224         New defcustom.
30225         (checkdoc-list-of-strings-p): Add doc.
30226         (checkdoc-current-buffer): When `checkdoc-package-keywords-flag' is
30227         non-nil, call `checkdoc-package-keywords'.
30228         (checkdoc-get-keywords): New defun.
30229         (checkdoc-package-keywords): New command.  Warns if the current file
30230         has package.el-style keywords that aren't in `finder-known-keywords'.
30231         * etc/NEWS: Add entry.
30233 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
30235         Avoid crashes when key-binding is called from a timer
30236         * src/keymap.c (Fkey_binding): Don't segfault if called with an
30237         empty vector as KEY.  (Bug#20705)
30239         Fix a thinko in arc-mode.el
30240         * lisp/arc-mode.el (archive-zip-summarize): Fix last change in the
30241         non-Zip64 case.  (Bug#20769)
30243 2015-06-08  Artur Malabarba  <bruce.connor.am@gmail.com>
30245         * lisp/emacs-lisp/package.el (package-delete): Make interactive.
30247 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
30249         * lisp/emacs-lisp/checkdoc.el (checkdoc-file): New function.
30250         (checkdoc-error): When `checkdoc-diagnostic-buffer' is set to
30251         "*warn*", print the warning to the standard output.  (bug#20754)
30253 2015-06-07  Glenn Morris  <rgm@gnu.org>
30255         * admin/update_autogen (changelog_files): Remove gitlog-to-emacslog.
30257         * src/font.c (syms_of_font) <font-log>: Doc fix.
30259         Remove the obsolete leading "*" from some C doc strings.
30260         * src/coding.c (syms_of_coding):
30261         * src/font.c (syms_of_font): Remove leading "*" from docs.
30262         * lisp/cus-start.el (enable-character-translation): Add it.
30264 2015-06-07  Paul Eggert  <eggert@cs.ucla.edu>
30266         Move gen_origin from program to data
30267         That way, 'make change-history' needs to change only ChangeLog.2,
30268         instead of having to change two files.
30269         * ChangeLog.2: Add commit info for range that this file covers.
30270         * Makefile.in (new_commit_regexp): New macro.
30271         (change-history-nocommit): Simplify, by putting what used to be
30272         the gen_origin value into the data (ChangeLog.2) rather than
30273         into the program (gitlog-to-emacslog).
30274         * build-aux/gitlog-to-emacslog (gen_origin): Calculate from
30275         the input file (e.g., ChangeLog.2) rather than by having a
30276         constant in the program.  Substitute it into the output.
30278 2015-06-07  Dmitry Gutov  <dgutov@yandex.ru>
30280         * lisp/help-fns.el (help-fns--signature): Quote any quotes in the
30281         function name (bug#20759).
30283 2015-06-07  Eli Zaretskii  <eliz@gnu.org>
30285         Adapt 'struct timespec' to next release of MinGW runtime
30286         * nt/inc/ms-w32.h (struct timespec): Don't declare if
30287         __struct_timespec_defined is defined.
30289 2015-06-06  Paul Eggert  <eggert@cs.ucla.edu>
30291         Merge from gnulib
30292         This incorporates:
30293         2015-06-06 acl-permissions: pacify -Wsuggest-attribute=const
30294         2015-06-05 stdio: Don't redefine gets when using C++
30295         2015-06-05 acl-permissions: port to AIX, C89 HP-UX
30296         2015-06-02 file-has-acl: fix build on Mac OS X 10
30297         2015-06-01 gnulib-tool: concatenate lib_SOURCES to a single line
30298         2015-06-01 pthread_sigmask: discount system version if a simple macro
30299         2015-05-31 readlinkat: avoid OS X 10.10 trailing slash bug
30300         * doc/misc/texinfo.tex, lib/acl-internal.h, lib/get-permissions.c:
30301         * lib/readlinkat.c, lib/set-permissions.c, lib/stdio.in.h:
30302         * m4/acl.m4, m4/pthread_sigmask.m4, m4/readlinkat.m4: Copy from gnulib.
30303         * lib/gnulib.mk: Regenerate.
30305 2015-06-06  Juri Linkov  <juri@linkov.net>
30307         * lisp/progmodes/grep.el (zrgrep): Let-bind grep-highlight-matches
30308         before calling grep-compute-defaults because now it affects the
30309         command lines computed in grep-compute-defaults.  (Bug#20728)
30311 2015-06-06  Glenn Morris  <rgm@gnu.org>
30313         Address some compilation warnings.
30314         * lisp/international/mule-cmds.el (w32-get-console-codepage)
30315         (w32-get-console-output-codepage):
30316         * lisp/progmodes/elisp-mode.el (xref-collect-references):
30317         * lisp/version.el (cairo-version-string): Declare.
30318         * lisp/erc/erc.el (erc-nickname-in-use): Fix typo.
30320 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
30322         Fix display when a font claims large values of ascent and descent
30323         This fixes bug#20628.
30324         * src/xdisp.c (get_phys_cursor_geometry): Correct the Y
30325         coordinate of a hollow cursor glyph when the original glyph's
30326         ascent is too small.
30327         (get_font_ascent_descent, normal_char_ascent_descent)
30328         (normal_char_height): New functions.
30329         (handle_single_display_spec, append_space_for_newline)
30330         (calc_pixel_width_or_height, produce_stretch_glyph)
30331         (calc_line_height_property): Use normal_char_ascent_descent and
30332         normal_char_height.
30333         (x_produce_glyphs): When font-global values of ascent and descent
30334         are too large, use per-character glyph metrics instead, if
30335         possible.  But don't allow the glyph row's ascent and descent
30336         values become smaller than the values from the metrics of the
30337         font's "normal" character.
30338         * src/xftfont.c (xftfont_draw):
30339         * src/w32font.c (w32font_draw): Correct the values of ascent and
30340         descent used to draw glyphless characters' hex code in a box.
30341         * src/xterm.c (x_draw_glyph_string_background):
30342         * src/xdisp.c (x_produce_glyphs):
30343         * src/w32term.c (x_draw_glyph_string_background):
30344         * src/nsterm.m (ns_maybe_dumpglyphs_background): Use FONT_TOO_HIGH
30345         to detect fonts whose global ascent and descent values are too
30346         large to be used in layout decision, and redraw the background
30347         when that happens.
30348         * src/dispextern.h (FONT_TOO_HIGH): New macro.
30349         (get_font_ascent_descent): Add prototype.
30350         * src/xterm.c (x_new_font):
30351         * src/w32term.c (x_new_font):
30352         * src/nsterm.m (x_new_font):
30353         * src/font.c (font_open_entity):
30354         * src/composite.c (composition_gstring_width):
30355         Use get_font_ascent_descent to obtain reasonable values for ascent
30356         and descent of a font.
30358 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
30360         Add assertion in adjust_point_for_property
30361         * src/keyboard.c (adjust_point_for_property): Add eassert for
30362         current buffer being shown in selected window.
30364 2015-06-06  Dmitry Gutov  <dgutov@yandex.ru>
30366         Replace uses of in-string-p; make it obsolete
30367         * lisp/thingatpt.el (in-string-p): Declare obsolete (bug#20732).
30368         (end-of-sexp, beginning-of-sexp): Use syntax-ppss instead.
30370 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
30372         Fix Dired display of an explicit list of files by ls-lisp.el
30373         * lisp/ls-lisp.el (ls-lisp-uid-d-fmt, ls-lisp-uid-s-fmt)
30374         (ls-lisp-gid-d-fmt, ls-lisp-gid-s-fmt): Make the initial values be
30375         correct for when displaying individual files separately, not as
30376         part of listing a directory, in which case these values are not
30377         recomputed by 'ls-lisp-insert-directory', but used verbatim.
30379         * lisp/dired.el (dired): Doc fix.  (Bug#20739)
30381 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
30383         Do not adjust point in a non-selected window
30384         * src/keyboard.c (command_loop_1): Do not adjust point when
30385         current buffer is not shown in selected window (Bug#20590).
30387         * etc/DEBUG: Mention 'maybe_call_debugger'
30389 2015-06-05  Nicolas Petton  <nicolas@petton.fr>
30391         Fix a unit test for map.el
30392         * test/automated/map-tests.el (test-map-let): Fix the test to work
30393         with the new syntax of `map-let'.
30395         * lisp/emacs-lisp/map.el (map-let): Better docstring.
30397         Better syntax for the map pcase pattern
30398         * lisp/emacs-lisp/map.el: Improves the map pcase pattern to take
30399         bindings of the form (KEY PAT) or SYMBOL.  KEY is not quoted.
30401         * lisp/emacs-lisp/map.el (map--dispatch): Better docstring.
30403         Fix a byte-compiler error in map-put and map-delete
30404         * lisp/emacs-lisp/map.el (map-put, map-delete): Ensure that `setq' is
30405         called with a symbol.
30407 2015-06-05  Glenn Morris  <rgm@gnu.org>
30409         * admin/gitmerge.el (gitmerge-commit-message):
30410         Revert to including "skipped" messages in ChangeLog once again.
30412 2015-06-05  Tassilo Horn  <tsdh@gnu.org>
30414         Use string> instead of equiv lambda with string<
30415         * lisp/help.el (view-emacs-news): Use string> instead of equivalent
30416         lambda with string<.
30418 2015-06-05  Glenn Morris  <rgm@gnu.org>
30420         * lisp/emacs-lisp/map.el (map--dispatch): Move before use.
30421         (map--delete-array): Fix typo.
30423         * test/automated/map-tests.el: Replace "assert" with "should".
30425         * lisp/Makefile.in (SUBDIRS): Rename from SUBDIRS_ABS.
30426         (SUBDIRS_REL): Derive from SUBDIRS.
30428         Tweak some build messages.
30429         * lisp/Makefile.in ($(lisp)/loaddefs.el):
30430         * lisp/cus-dep.el (custom-make-dependencies):
30431         * lisp/finder.el (finder-compile-keywords): Say what we are doing.
30432         * lisp/international/titdic-cnv.el (batch-titdic-convert):
30433         Don't say how to compile.
30435 2015-06-05  Paul Eggert  <eggert@cs.ucla.edu>
30437         Omit U+0332 COMBINING LOW LINE in previous change
30438         It turns out that it does not work on Ubuntu 15.04.
30440         Fix transliteration of Bahá'í months
30441         * lisp/calendar/cal-bahai.el (calendar-bahai-month-name-array):
30442         Improve quality of Latin transliteration of Bahá'í month names.
30444         Fix curved quotes in a few places
30445         * lisp/calc/calc-misc.el (calc-help): Fix quoting.
30446         The strings in question are not doc strings, so this partially
30447         undoes the recent change that assumed they were doc strings.
30448         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
30449         * lisp/info.el (Info-finder-find-node):
30450         Use curved quotes.
30451         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
30452         Also allow curved quotes in doc strings.
30454 2015-06-04  Glenn Morris  <rgm@gnu.org>
30456         * lisp/Makefile.in (AM_V_at): Add missing definition.
30458         * lisp/Makefile.in: Quieten output a bit.
30459         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el):
30460         Don't echo directories, since the commands we invoke print them.
30462         * lisp/Makefile.in: Replace shell fragments in variables with $(shell).
30463         (SUBDIRS_REL, SUBDIRS_ABS, SUBDIRS_ALMOST, SUBDIRS_FINDER)
30464         (SUBDIRS_SUBDIRS): New variables.
30465         (setwins, setwins_almost, setwins_finder, setwins_for_subdirs):
30466         Remove.
30467         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el, $(lisp)/loaddefs.el)
30468         (update-subdirs, compile-main, compile-clean):
30469         Replace "setwins" usage with new "SUBDIRS" variables.
30471         * lisp/vc/compare-w.el (compare-windows-get-window-function):
30472         Fix :version tag.
30474 2015-06-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
30476         * src/ftfont.c (ftfont_open2): Round divisions by upEM.
30478         Undo removal of x_clear_area call on expose for GTK3 or cairo
30479         * src/xterm.c (handle_one_xevent) [HAVE_GTK3 || USE_CAIRO]:
30480         Clear exposed area.  (Bug#20677)
30482 2015-06-04  Glenn Morris  <rgm@gnu.org>
30484         * doc/lispref/hash.texi (Creating Hash): Remove obsolete makehash.
30486         * lisp/Makefile.in (check-defun-dups): Also skip ldefs-boot.
30488         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
30489         Rename from quail-lao-update-translation, since lao.el defines that.
30491 2015-06-04  Dmitry Gutov  <dgutov@yandex.ru>
30493         Handle new-style advice in find-funct
30494         * lisp/emacs-lisp/find-func.el (find-function-advised-original):
30495         Handle new-style advice.  Return the symbol's function definition.
30496         (Bug#20718)
30497         (find-function-library): Update accordingly.
30499 2015-06-04  Nicolas Petton  <nicolas@petton.fr>
30501         Merge branch 'map'
30503         * lisp/emacs-lisp/map.el: Better docstring for the map pcase macro.
30505         Add new function string-greaterp
30506         * lisp/subr.el (string-greaterp): New function.  Also aliased to
30507         `string>'.
30508         * test/automated/subr-tests.el (string-comparison-test): Add unit
30509         tests for `string>'and `string<'.
30510         * src/fns.c (string-lessp): Better docstring.
30512 2015-06-04  Eli Zaretskii  <eliz@gnu.org>
30514         Fix timezone-related functions on MS-Windows
30515         * src/editfns.c (set_time_zone_rule) [WINDOWSNT]: Always call
30516         'xputenv', even if no reallocation of tzvalbuf was necessary.
30517         This fixes a bug in timezone-related functions on MS-Windows.
30518         Reported by Fabrice Popineau <fabrice.popineau@gmail.com>.
30520 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
30522         Don't pass raw directory name to 'error'
30523         * lisp/files.el (basic-save-buffer-2): Avoid format error if
30524         a directory name contains a string like "%s".
30526 2015-06-03  Dmitry Gutov  <dgutov@yandex.ru>
30528         Override 'grep --color=always'
30529         * lisp/progmodes/xref.el (xref-collect-matches):
30530         Override --color=always in grep-find-template.
30532 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
30534         Fix error introduced recently in file-notify-tests.el
30535         * test/automated/file-notify-tests.el
30536         (file-notify--test-remote-enabled): Do not use `file-notify--test-desc'.
30537         (file-notify--deftest-remote): Revert previous patch, not
30538         necessary anymore.
30540 2015-06-03  Wolfgang Jenkner  <wjenkner@inode.at>
30542         * src/indent.c (Fvertical_motion): Amend motion by 0 lines.
30543         Starting from a display string after a newline, point went to the
30544         previous line.  Also, fix an inadvertent use of a buffer position
30545         with FETCH_BYTE.  (Bug#20701)
30547 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
30549         Instrument file-notify-test.el in order to catch hydra error
30550         * test/automated/file-notify-tests.el (file-notify--deftest-remote):
30551         Wrap body by `ignore-case', in order to trap non-local errors.
30553 2015-06-03  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
30555         Undo previous changes in non-toolkit scroll bar drawing
30556         * src/xterm.c (x_scroll_bar_set_handle, x_scroll_bar_expose)
30557         [!USE_TOOLKIT_SCROLL_BARS]: Draw into scroll bar window.  (Bug#20668)
30559 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
30561         * .gitignore: Also ignore doc/*/*/*.html and .ps.
30563         Support quotes 'like this' in info files
30564         This is possible when 'makeinfo --disable-encoding' is used
30565         in Texinfo 5.
30566         * lisp/calc/calc-help.el (calc-describe-thing):
30567         * lisp/gnus/gnus-art.el (gnus-button-alist):
30568         * lisp/info.el (Info-find-index-name):
30569         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
30570         Also support quotes 'like this'.
30571         * lisp/calc/calc-help.el (calc-describe-thing): Simplify.
30572         * lisp/finder.el (finder-font-lock-keywords): Remove var that
30573         hasn't been used in years, instead of bothering to fix its quoting.
30575 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
30577         * .gitignore: Remove !test/etags/html-src/*.html.
30578         It's no longer needed, since *.html was removed.  Sort.
30580 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
30582         Restore <D> instead of '.' in grep-find-template
30583         * lisp/cedet/semantic/symref/grep.el
30584         (semantic-symref-grep-use-template): Update a comment.
30585         * lisp/progmodes/grep.el (grep-compute-defaults): Restore <D>
30586         instead of '.' in grep-find-template (bug#20719).
30587         (rgrep): Pass nil as the directory to rgrep-default-command.
30588         * lisp/progmodes/grep.el (grep-expand-keywords): Use '.' as the
30589         default value for DIR.
30590         * lisp/progmodes/xref.el (xref-collect-matches): Drop the
30591         workaround.
30593 2015-06-02  Glenn Morris  <rgm@gnu.org>
30595         * configure.ac (emacs_config_features): Add X toolkit and scroll-bars.
30597         * configure.ac (emacs_config_features): Add Cairo.
30599         * configure.ac [HAVE_GTK3]: Remove USE_CAIRO that gets reset later.
30601 2015-06-02  Michael Albinus  <michael.albinus@gmx.de>
30603         Ensure that autorevert works for remote files in file-notify-tests.el
30604         * test/automated/file-notify-tests.el (file-notify--test-desc):
30605         New defvar.
30606         (file-notify--test-remote-enabled)
30607         (file-notify-test00-availability, file-notify-test01-add-watch)
30608         (file-notify-test02-events): Use it.
30609         (file-notify--test-event-test): Check proper descriptor.
30610         (file-notify-test03-autorevert): Ensure that
30611         `visited-file-modtime' has changed.  (Bug#20392)
30613 2015-06-02  Nicolas Petton  <nicolas@petton.fr>
30615         Add a pcase pattern for maps and `map-let' based on it
30616         * lisp/emacs-lisp/map.el (map-let): New macro.
30617         (map--make-pcase-bindings, map--make-pcase-patterns): New functions.
30618         * test/automated/map-tests.el: New test for `map-let'.
30620 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
30622         Reuse rgrep mechanics in xref-find-regexp
30623         * lisp/progmodes/grep.el (rgrep-default-command):
30624         Extract from `rgrep'.
30625         * lisp/progmodes/xref.el (xref-collect-references): Split from
30626         `xref-collect-matches'.  Only handle the case of symbol search.
30627         (xref-collect-matches): Instead of Semantic Symref, use
30628         `rgrep-default-command', to take advantage of its directory and
30629         file ignore settings.
30630         (xref--collect-match): Remove the last argument, leaving the
30631         regexp construction up to the caller.
30632         * lisp/progmodes/elisp-mode.el (elisp--xref-find-matches):
30633         Change to take the xref-collect- function to use as an argument.
30634         (elisp-xref-find): Update accordingly.
30635         * lisp/progmodes/etags.el (etags--xref-find-matches)
30636         (etags-xref-find): Same.
30638         Move xref-elisp-location to elisp-mode.el
30639         * lisp/progmodes/xref.el (xref-elisp-location)
30640         (xref-make-elisp-location, xref-location-marker): Remove here.
30641         (xref--xref): Don't limit the type of the location slot.
30642         * lisp/progmodes/elisp-mode.el (xref-elisp-location):
30643         Define as a cl-struct here.
30644         (xref-location-marker): Move here.
30646 2015-06-02  Eli Zaretskii  <eliz@gnu.org>
30648         Minor tweaks for .gitignore
30649         * .gitignore: Don't ignore versioned *.html and *.ps files.
30650         Don't ignore admin/notes/tags that might be ignored as TAGS
30651         on case-insensitive filesystems.  (Bug#20710)
30653 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
30655         Generate curved quotes in ert doc
30656         * lisp/emacs-lisp/ert.el (ert--print-test-for-ewoc)
30657         (ert-results-mode-menu)
30658         (ert-results-pop-to-backtrace-for-test-at-point)
30659         (ert-results-pop-to-messages-for-test-at-point)
30660         (ert-results-pop-to-should-forms-for-test-at-point)
30661         (ert-describe-test):
30662         Quote ‘like this’, not `like this', when generating doc strings
30663         and the like.
30664         * test/automated/ert-x-tests.el (ert-test-describe-test):
30665         Allow quoting ‘like this’.
30667 2015-06-02  Nicolas Richard  <youngfrog@members.fsf.org>
30669         Add test for previous commit
30670         * test/automated/replace-tests.el: New file.
30671         (query-replace--split-string-tests): Add test for previous commit.
30673         Avoid confusion in query-replace history when replacing NUL chars
30674         * lisp/replace.el (query-replace--split-string): New function.
30675         (query-replace-read-from): Rely on the 'separator' property
30676         instead of searching for the NUL character (Bug#20690).
30678 2015-06-02  Glenn Morris  <rgm@gnu.org>
30680         Merge from origin/emacs-24
30681         8b5f2f4 * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
30683         * admin/gitmerge.el (gitmerge-commit-message):
30684         Exclude "skipped" messages from ChangeLog.
30686 2015-06-01  Michael Albinus  <michael.albinus@gmx.de>
30688         Sync with Tramp repository
30689         * lisp/net/tramp.el (tramp-message): Dump connection buffer error
30690         messages.
30691         (tramp-handle-make-auto-save-file-name): When calling
30692         `make-auto-save-file-name' internally, make sure it uses Unix-like
30693         behavior, not Windows-like behavior.
30694         * lisp/net/tramp-sh.el (tramp-set-file-uid-gid): Add a timeout for
30695         the local case, because "chown" might fail on w32.
30696         * lisp/net/trampver.el (tramp-repository-get-version): Don't run
30697         for XEmacs.
30699 2015-06-01  Eli Zaretskii  <eliz@gnu.org>
30701         MS-Windows followup for batch stdout/stderr output changes
30702         * lisp/international/mule-cmds.el (set-locale-environment):
30703         In batch mode, use console codepages for keyboard and terminal
30704         encoding.  (Bug#20545)
30706         Update .gitattributes for DOS EOL files
30707         * .gitattributes: Use "whitespace=cr-at-eol" for files with DOS
30708         CRLF end-of-line format.
30710         NS equivalents of xterm.c and w32term.c changes
30711         * src/nsterm.m (ns_maybe_dumpglyphs_background): Force redraw of
30712         glyph string background also when the font in use claims
30713         preposterously large global height value.  Helps to remove
30714         artifacts left from previous displays when glyphless characters
30715         are displayed as hex code in a box.
30716         (x_new_font): Call get_font_ascent_descent to obtain a reasonable
30717         value for FRAME_LINE_HEIGHT, even when a font claims very large
30718         value for its height.
30720 2015-06-01  Paul Eggert  <eggert@cs.ucla.edu>
30722         Avoid grave accent quoting in stderr diagnostics
30723         A few Emacs diagnostics go directly to stderr, and so can't easily
30724         contain curved quotes (as non-UTF-8 locales might mishandle them).
30725         Instead of bothering to add support for this rarity, reword the
30726         diagnostics so that they don't use grave accent to quote.
30727         * src/alloc.c (mark_memory): Fix comment.
30728         * src/buffer.c (init_buffer):
30729         * src/dispnew.c (init_display):
30730         * src/emacs.c (main, sort_args):
30731         * src/lread.c (dir_warning):
30732         * src/term.c (init_tty):
30733         * src/unexmacosx.c (unexec):
30734         * src/xfns.c (select_visual):
30735         * src/xterm.c (cvt_string_to_pixel, x_io_error_quitter):
30736         Reword stderr diagnostics to avoid quoting `like this'.
30737         * src/unexmacosx.c: Include errno.h.
30738         * src/xfns.c (select_visual): Encode value for locale.
30740 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
30742         Treat batch stdout/stderr like standard display
30743         Calls like (print FOO) could generate improperly encoded or
30744         hard-to-read output if FOO contains characters outside the system
30745         locale.  Fix this by treating batch stdout and stderr like
30746         interactive standard display, when it comes to transliterating and
30747         encoding characters (Bug#20545).
30748         * doc/emacs/mule.texi (Communication Coding):
30749         * doc/lispref/display.texi (Active Display Table):
30750         * doc/lispref/nonascii.texi (Locales):
30751         * etc/NEWS:
30752         * src/coding.c (syms_of_coding):
30753         * src/dispnew.c (syms_of_display):
30754         Document this.
30755         * src/print.c: Include disptab.h.
30756         (printchar_to_stream): New function, with much of the guts of the
30757         old Fexternal_debugging_output, except this one also uses the
30758         standard display table.
30759         (printchar, strout, Fexternal_debugging_output): Use it.
30761 2015-05-31  Glenn Morris  <rgm@gnu.org>
30763         * src/emacs.c (syms_of_emacs) <system-configuration-features>: Doc fix.
30765 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
30767         Remove DEFSYMs that aren't used at the C level.  Also:
30768         * src/decompress.c (Qzlib_dll):
30769         * src/font.c (Qunicode_sip):
30770         * src/frame.c (Qtip_frame):
30771         * src/ftfont.c (Qserif):
30772         * src/gnutls.c (Qgnutls_dll):
30773         * src/xml.c (Qlibxml2_dll):
30774         Move from here ...
30775         * src/w32fns.c (syms_of_w32fns): ... to here,
30776         as these are used only on MS-Windows.
30778 2015-05-31  Michael Albinus  <michael.albinus@gmx.de>
30780         Use another default value for tramp-histfile-override
30781         * lisp/net/tramp-sh.el (tramp-histfile-override):
30782         Use ".tramp_history" as default.
30783         Fixes bug#20446
30785 2015-05-29  Nicolas Petton  <nicolas@petton.fr>
30787         * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
30789 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
30791         * etc/NEWS: Add an entry about map.el.
30793         Improve the docstring of functions in map.el
30794         Since a map is not a data structure but a concept, adding information
30795         about the possible types of maps can be useful information.
30796         * lisp/emacs-lisp/map.el: Add documentation about the type of MAP to
30797         each public function.
30799 2015-04-29  Nicolas Petton  <nicolas@petton.fr>
30801         * lisp/emacs-lisp/map.el (map-empty-p): Faster implementation using
30802         specific tests depending on the type of the map.
30804         * lisp/emacs-lisp/map.el: Better docstrings.
30806 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
30808         * lisp/emacs-lisp/map.el (map-pairs): Dump redundant lambda.
30810 2015-04-25  Nicolas Petton  <nicolas@petton.fr>
30812         * lisp/emacs-lisp/map.el (map--elt-list): Better docstring.
30814         * lisp/emacs-lisp/map.el (map--elt-list): Minor refactoring.
30816         Fix a false negative in `map-elt' with alists and values being nil
30817         * lisp/emacs-lisp/map.el (map-elt): If map is an alist and key is
30818         found but its associated value is nil, do not return the default
30819         value.
30820         * test/automated/map-tests.el: Add a regression test.
30822 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
30824         * lisp/emacs-lisp/map.el (map--dispatch): Improve the docstring.
30826         Do not signal an error when trying to delete a key from an array
30827         * lisp/emacs-lisp/map.el (map-delete): When map is an array, check if
30828         the key is present to avoid signaling an error.
30829         * test/automated/map-tests.el: Add a test for deleting non-existing
30830         keys from maps.
30832         * lisp/emacs-lisp/map.el: Better docstring.
30834         Minor improvement in map-elt
30835         * lisp/emacs-lisp/map.el (map-elt): Do not use `ignore-errors' when
30836         doing a lookup in arrays, but check the boundaries of the array
30837         instead.
30838         * test/automated/map-tests.el: Adds a test for `map-elt' with arrays
30839         and a negative integer as key.
30841 2015-04-21  Nicolas Petton  <nicolas@petton.fr>
30843         * test/automated/map-tests.el: Refactoring of test methods.
30845         * test/automated/map-tests.el: Renamed from map-test.el.
30847 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
30849         * lisp/emacs-lisp/map.el (map-into): Better error message.
30851         * lisp/emacs-lisp/map.el: Remove byte-compilation warnings.
30853         Throw an error when converting a map into an unknown map type
30854         * lisp/emacs-lisp/map.el (map-into): Throw an error if type is
30855         not valid.
30856         * test/automated/map-tests.el: Add a regression test.
30858         New library map.el similar to seq.el but for mapping data structures.
30859         * test/automated/map-tests.el: New file.
30860         * lisp/emacs-lisp/map.el: New file.
30862 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
30864         * lisp/progmodes/etags.el (tag-implicit-name-match-p): Make sure
30865         there's no explicit tag name (bug#20629).
30867 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
30869         Remove format2
30870         * src/editfns.c, src/lisp.h (format2): Remove.
30871         It is more trouble than it's worth, now that we have CALLN.
30872         This is just a minor refactoring.
30873         * src/buffer.c (Fkill_buffer):
30874         * src/dbusbind.c (XD_OBJECT_TO_STRING):
30875         * src/fileio.c (barf_or_query_if_file_exists):
30876         Adjust to format2 going away.
30878         Don't misencode C-generated messages
30879         Also, be more consistent about calls to 'Fmessage' vs 'message'.
30880         * src/alloc.c (Fgc_status):
30881         Prefer AUTO_STRING to build_string for Fmessage call.
30882         * src/data.c (Fmake_variable_buffer_local)
30883         (Fmake_local_variable, Fmake_variable_frame_local):
30884         * src/doc.c (store_function_docstring):
30885         Use Fmessage, not message, since the argument can contain
30886         non-ASCII characters, and this can cause the resulting message
30887         to be incorrectly encoded for the current environment.
30888         * src/fns.c (maybe_resize_hash_table):
30889         * src/xselect.c (x_clipboard_manager_save_all):
30890         Use message, not Fmessage, since Fmessage's power isn't needed here.
30891         * src/process.c (Fmake_network_process): Reword message to avoid %s.
30892         * src/xdisp.c (vmessage): Document restrictions on message contents.
30893         (message_nolog) [false]: Remove unused code.
30895         Use \r rather than ^M in string literals
30896         This is less likely to cause problems on platforms that
30897         use CRLF (or CR!) termination for lines.
30899         Update .gitattributes to match current sources
30900         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00879.html
30901         * .gitattributes: Accommodate tests that insist on DOS format.
30902         Remove test/automated/data/decompress/foo-gzipped.
30903         Add etc/e/eterm-color.
30905 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
30907         * doc/emacs/mule.texi (Modifying Fontsets):
30908         Document face-ignored-fonts.  (Bug#20628)
30910         Add etags test for the new -Q option
30911         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
30912         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
30913         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
30914         test-case changes below.
30915         * test/etags/ETAGS.good_6: New file.
30916         * test/etags/cp-src/x.cc: New file.
30917         * test/etags/Makefile (CPSRC): Add x.cc.
30918         (check): Add one more test, for -Q.
30920 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
30922         Use list for the tags completion table, not obarray
30923         * lisp/progmodes/etags.el (etags-tags-completion-table): Return a
30924         list instead of an obarray
30925         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00876.html).
30926         (tags-completion-table): Combine those lists.
30927         (tags-completion-table): Update the docstring.
30929 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
30931         Restore EOL format testing in etags
30932         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
30933         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
30934         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
30935         test-case changes below.
30936         * test/etags/html-src/algrthms.html: Convert back to DOS EOL format.
30937         * test/etags/cp-src/c.C (B): Add back stray CR character.
30938         * test/etags/c-src/dostorture.c: Add back.
30939         * test/etags/Makefile (CSRC): Add back c-src/dostorture.c.
30941 2015-05-30  Vitaly Takmazov  <vitalyster@gmail.com>  (tiny change)
30943         Declare Emacs on MS-Windows to be DPI-aware
30944         * nt/emacs-x86.manifest (asmv3:windowsSettings): Add dpiAware.
30945         * nt/emacs-x64.manifest (asmv3:windowsSettings): Add dpiAware.
30946         This avoids Windows entering compatibility mode for Emacs,
30947         which causes fonts to look less nice.
30949 2015-05-30  Michael Albinus  <michael.albinus@gmx.de>
30951         Improve Tramp traces
30952         * lisp/net/trampver.el (tramp-repository-get-version): New defun.
30953         * lisp/net/tramp.el (tramp-debug-message): Use it.
30955 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
30957         backup-buffer minor reworking of internals
30958         * lisp/files.el (backup-buffer): Rework to avoid a couple of
30959         unused locals inadvertently introduced in the previous change.
30961         backup-buffer now reports .emacs.d/%backup% ills
30962         * lisp/files.el (backup-buffer): If the write to .emacs.d/%backup%
30963         fails due to disk space exhaustion or whatever, do not pretend
30964         that it succeeded.  More generally, do a better job of checking
30965         for I/O failures, and limit the scope of the condition-case to
30966         just the operations where file errors should be caught and ignored
30967         (Bug#20595).  Also, don't bother trying to delete later backups if
30968         an earlier deletion fails, as this is a sign of trouble and it's
30969         better to stop when there's trouble.
30971         copy-file now truncates output after writing
30972         * src/fileio.c (Fcopy_file): Truncate output after writing rather
30973         than before.  This is more likely to work than truncation before
30974         writing, if the file system is out of space or the user is over
30975         disk quota (Bug#20595).  Also, check for read errors.
30977 2015-05-29  Artur Malabarba  <bruce.connor.am@gmail.com>
30979         * lisp/emacs-lisp/package.el (package-load-all-descriptors):
30980         Don't load descriptors from directories above the package directories.
30982 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
30984         Merge from gnulib
30985         This incorporates the following (Bug#20681):
30986         2015-05-29 acl-permissions: Fix build on Mac OS X and older AIX
30987         2015-05-29 acl-permissions: Fix build on Solaris and Cygwin
30988         * lib/set-permissions.c: Copy from gnulib.
30990 2015-05-29  Michael Albinus  <michael.albinus@gmx.de>
30992         Improve Tramp traces
30993         * lisp/net/tramp.el (tramp-call-process-region): New defun.
30994         * lisp/net/tramp-sh.el (tramp-get-inline-coding): Use it.
30996 2015-05-29  Glenn Morris  <rgm@gnu.org>
30998         * test/automated/vc-tests.el: Try enabling tests on hydra.nixos.org.
31000 2015-05-29  Wolfgang Jenkner  <wjenkner@inode.at>
31002         * src/xfns.c (x_set_menu_bar_lines): Fix calls to x_clear_area.
31003         The signature was changed in the cairo branch, merged on 2015-05-23.
31004         This oversight broke compiling only the non-toolkit X version.
31006 2015-05-29  Samer Masterson  <samer@samertm.com>
31008         * doc/lispref/os.texi: Update initial-buffer-choice docs.
31010 2015-05-29  Glenn Morris  <rgm@gnu.org>
31012         * test/automated/vc-tests.el (vc-test-rcs04-checkout-model):
31013         Mark as an expected failure.
31015 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
31017         Change package test to look for curved quotes
31018         * test/automated/package-test.el (package-test-describe-package)
31019         (package-test-signed): Search for curved single quotes as well as
31020         for grave accent and apostrophe.
31022 2015-05-28  Katsumi Yamaoka  <yamaoka@jpl.org>
31024         * lisp/gnus/gnus-art.el (gnus-button-alist): Re-revert last change.
31025         cf. <http://news.gmane.org/group/gmane.emacs.devel/thread=186896>
31027 2015-05-28  Samer Masterson  <samer@samertm.com>
31029         Show files when `initial-buffer-choice' is non-nil
31030         * lisp/startup.el (command-line-1): When Emacs is given a file as an
31031         argument and `initial-buffer-choice' is non-nil, display both the file
31032         and `initial-buffer-choice'.  For more than one file, show
31033         `initial-buffer-choice' and *Buffer List*.  Refactor display-changing
31034         commands out of the command line arg parser.
31035         (initial-buffer-choice): Clarify docstring.
31037 2015-05-28  Eli Zaretskii  <eliz@gnu.org>
31039         Fix last commit
31040         * nt/gnulib.mk (libgnu_a_SOURCES): Add get-permissions.c back.
31041         (gnulib module qcopy-acl): Add back, as it is harmless.  This
31042         minimizes differences wrt lib/gnulib.mk.
31044         Fix the MS-Windows build as followup to gnulib update
31045         * nt/gnulib.mk (libgnu_a_SOURCES): Remove get-permissions.c and
31046         set-permissions.c, as they don't compile on MinGW.
31047         (gnulib module qcopy-acl): Remove, as it needs set-permissions.c.
31049 2015-05-28  Paul Eggert  <eggert@cs.ucla.edu>
31051         Revert my change to gnus-art.el
31052         * lisp/gnus/gnus-art.el (gnus-button-alist): Revert last change.
31053         It wasn't that important, and it caused a Gnus build to fail.  See:
31054         http://www.randomsample.de:4456/builders/emacs-devel/builds/734
31056         New minor mode Electric Quote
31057         This lets you easily insert quotes ‘like this’ by typing
31058         quotes `like this', and similarly you can easily insert
31059         quotes “like this” by typing quotes ``like this'' (Bug#20545).
31060         * doc/emacs/basic.texi (Inserting Text):
31061         * doc/emacs/modes.texi (Minor Modes):
31062         * etc/NEWS: Document it.
31063         * doc/emacs/text.texi (Quotation Marks): New section.
31064         * lisp/electric.el (electric-quote-comment)
31065         (electric-quote-string, electric-quote-paragraph):
31066         New custom vars.
31067         (electric--insertable-p)
31068         (electric-quote-post-self-insert-function): New functions.
31069         (electric-quote-mode, electric-quote-local-mode): New minor modes.
31070         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
31071         Add curved single quotes to electric-pair-text-pairs.
31072         Set electric-quote-string in this buffer.
31074         A few more doc string fixes (Bug#20385)
31076         Accept curved quotes in doc strings
31077         * lisp/info-look.el (info-lookup-guess-custom-symbol):
31078         (info-lookup-alist): Treat ‘’ like `' when parsing help buffers etc.
31080         Generate curved quotes in pseudo-info nodes
31081         * lisp/info.el (Info-virtual-index-find-node)
31082         (Info-virtual-index, Info-apropos-find-node, info-apropos):
31083         Quote ‘like this’, not `like this', when generating pseudo-info nodes.
31085         Fix minor quoting problems in doc strings
31086         Most of these fixes involve escaping grave accents that are
31087         actually intended to be grave accents, not left quotes.
31088         (Bug#20385)
31090         Support curved quotes in doc strings
31091         Emacs's traditional doc string style has been to quote symbols
31092         `like this'.  This worked well on now-obsolete terminals where
31093         ` and ' were symmetric quotes, but nowadays curved quotes
31094         ‘like this’ look better.  Support quoting the new way too.
31095         (Bug#20385)
31096         * doc/lispref/tips.texi (Documentation Tips): Symbols can be quoted
31097         ‘like-this’ as well as `like-this'.
31098         * etc/NEWS: Mention this.
31099         * lisp/cedet/mode-local.el (overload-docstring-extension)
31100         (mode-local-print-binding, mode-local-describe-bindings-2):
31101         * lisp/cus-theme.el (describe-theme-1):
31102         * lisp/descr-text.el (describe-text-properties-1, describe-char):
31103         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
31104         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
31105         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
31106         (eieio-help-constructor):
31107         * lisp/emacs-lisp/package.el (describe-package-1):
31108         * lisp/faces.el (describe-face):
31109         * lisp/help-fns.el (help-fns--key-bindings)
31110         (help-fns--compiler-macro, help-fns--parent-mode, help-fns--obsolete):
31111         (help-fns--interactive-only, describe-function-1):
31112         (describe-variable):
31113         * lisp/help.el (describe-mode):
31114         * lisp/international/mule-cmds.el (describe-input-method)
31115         (describe-language-environment):
31116         * lisp/international/mule-diag.el (describe-character-set)
31117         (print-coding-system-briefly, list-input-methods)
31118         (list-input-methods-1):
31119         Insert curved quotes rather than grave accent and apostrophe.
31120         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
31121         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
31122         (checkdoc-proper-noun-region-engine):
31123         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2)
31124         (lisp-cl-font-lock-keywords-2):
31125         * lisp/finder.el (finder-font-lock-keywords):
31126         * lisp/gnus/gnus-art.el (gnus-button-alist):
31127         * lisp/help-fns.el (help-do-arg-highlight)
31128         (describe-function-1, describe-variable):
31129         * lisp/help-mode.el (help-xref-symbol-regexp)
31130         (help-xref-info-regexp, help-xref-url-regexp):
31131         * lisp/help.el (describe-mode):
31132         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
31133         * lisp/wid-edit.el (widget-documentation-link-regexp):
31134         Parse symbols quoted ‘like-this’ as well as `like-this'.
31135         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
31136         Add "‘" and "’" to electric-pair-text-pairs.
31137         (elisp--form-quoted-p): Also allow "‘" as a quoting char.
31138         (elisp-completion-at-point, elisp--preceding-sexp):
31139         Also treat "‘" and "’" as quoting chars.
31141         substitute-command-keys now curves quotes
31142         So, for example, it turns "`abc'" into "‘abc’" (Bug#20385).
31143         * doc/lispref/help.texi (Keys in Documentation):
31144         * etc/NEWS: Document this.
31145         * src/doc.c (Fsubstitute_command_keys): Implement it.
31147 2015-05-28  Glenn Morris  <rgm@gnu.org>
31149         * lisp/mail/rmailsum.el (rmail-summary-by-recipients)
31150         (rmail-summary-by-topic, rmail-summary-by-senders):
31151         No longer strip leading/trailing whitespace.
31153         * lisp/progmodes/f90.el (f90-type-def-re): Add "type, extends".
31154         (f90-no-block-limit): Add "enum".  (Bug#20680)
31155         * test/automated/f90.el (f90-test-bug20680, f90-test-bug20680b):
31156         New tests.
31158 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
31160         * lisp/isearch.el (isearch--current-buffer): Give a default value.
31161         Un-revert changes mistakenly dropped by f9fabb2b.
31163 2015-05-27  Paul Eggert  <eggert@cs.ucla.edu>
31165         Merge from gnulib
31166         This incorporates:
31167         2015-05-27 qacl: Reimplement qset_acl and qcopy_acl (Bug#20666)
31168         2015-05-27 file-has-acl: Split feature tests again (Bug#20667)
31169         2015-05-27 string: fix build failure on BSD/OSX with FORTIFY_SOURCE
31170         2015-05-26 stdio: limit __gnu_printf__ witness to gcc 4.4+
31171         2015-05-26 inttypes: force correct mingw PRIdMAX even without <stdio.h>
31172         2015-05-26 stdio: fix probe on mingw under gcc 5.1
31173         * admin/merge-gnulib (GNULIB_MODULES):
31174         Replace qacl with qcopy-acl, since we don't need the rest of qacl.
31175         * doc/misc/texinfo.tex, lib/acl-internal.c, lib/acl-internal.h:
31176         * lib/inttypes.in.h, lib/qcopy-acl.c, lib/qset-acl.c:
31177         * lib/string.in.h, m4/acl.m4, m4/stdio_h.m4:
31178         Get latest versions from gnulib.
31179         * lib/get-permissions.c, lib/set-permissions.c: New files.
31180         * lib/gnulib.mk, m4/gnulib-comp.m4:
31181         Regenerate.
31182         * nt/gnulib.mk: Merge lib/gnulib.mk changes by hand.
31184 2015-05-27  Dmitry Gutov  <dgutov@yandex.ru>
31186         * lisp/vc/vc-dispatcher.el (vc-setup-buffer): Delete the old
31187         process here.
31188         (vc-do-command): Rather than here (bug#20608).
31190 2015-05-27  Ivan Shmakov  <ivan@siamics.net>
31192         Avoid gratuitous delete-dups in face-at-point
31193         * lisp/faces.el (face-at-point): Do not compute the properly
31194         ordered, duplicate-free list if only a single value is
31195         requested anyway.  (Bug#20519)
31197         Show the exact C-x 8 RET invocation in describe-char
31198         * lisp/descr-text.el (describe-char): Show the exact C-x 8 RET
31199         invocation instead of a template.  (Bug#20522)
31201 2015-05-27  Artur Malabarba  <bruce.connor.am@gmail.com>
31203         * lisp/emacs-lisp/package.el: Don't erase tags on refresh.
31204         (package-menu--post-refresh): Call `tabulated-list-print' with the
31205         UPDATE argument.  This only affects the refresh action, the revert
31206         action still erases tags.
31207         (package-menu-get-status): Change `assq' to `assoc'.
31208         (package-menu--mark-upgrades-1): New function.
31209         (package-menu--mark-upgrades-pending): New variable.
31210         (package-menu-mark-upgrades): Use them to delay marking until
31211         after refresh is done.
31212         (package-menu--post-refresh): Call mark-upgrades-1 if
31213         mark-upgrades-pending is non-nil.
31215 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
31217         * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
31218         Fix typo in "Improve tramp-handle-make-auto-save-file-name"
31219         (commit 3953c4be2816537be95520605d45b866dc731f4b).
31221 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
31223         * lisp/isearch.el (isearch--current-buffer): New var.
31224         (isearch-update): Set cursor-sensor-inhibit here.
31225         (isearch-done): Unset cursor-sensor-inhibit in the right buffer
31226         (bug#20532).
31228         Change inhibit-point-motion-hooks to t
31229         * src/textprop.c (syms_of_textprop): Default Vinhibit_point_motion_hooks
31230         to t and document it as obsolete.
31232 2015-05-27  Eli Zaretskii  <eliz@gnu.org>
31234         Support ZIP files that use Zip64 extensions
31235         * lisp/arc-mode.el (archive-zip-summarize): Handle the new ZIP
31236         format of central directory offsets used by Zip64 extensions.
31237         (Bug#20665)
31239 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
31241         New test tramp-test30-make-auto-save-file-name
31242         * test/automated/tramp-tests.el
31243         (tramp-test30-make-auto-save-file-name): New test.
31244         (tramp-test31-special-characters)
31245         (tramp-test31-special-characters-with-stat)
31246         (tramp-test31-special-characters-with-perl)
31247         (tramp-test31-special-characters-with-ls, tramp-test32-utf8)
31248         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
31249         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
31250         (tramp-test34-recursive-load, tramp-test35-unload): Rename.
31252         Improve tramp-handle-make-auto-save-file-name
31253         * lisp/net/tramp.el (tramp-auto-save-directory): Add :tags.
31254         (tramp-handle-make-auto-save-file-name): Let native
31255         `make-auto-save-file-name' use `auto-save-file-name-transforms',
31256         if `tramp-auto-save-directory' is not set.
31258 2015-05-27  Glenn Morris  <rgm@gnu.org>
31260         No longer set dired-directory in eshell.  (Bug#16477)
31261         * lisp/eshell/esh-mode.el (eshell-mode):
31262         * lisp/eshell/em-dirs.el (eshell/cd): No longer set dired-directory.
31264         * lisp/mail/sendmail.el (mail-position-on-field): Doc fix.
31266         Make c-submit-bug-report file reports at debbugs.gnu.org.  (Bug#15784)
31267         * lisp/progmodes/cc-mode.el (c-mode-help-address):
31268         Change to submit@debbugs.
31269         (c-mode-bug-package): New constant.
31270         (mail-position-on-field): Declare.
31271         (c-submit-bug-report): Insert X-Debbugs-Package header.
31272         * doc/misc/cc-mode.texi (Mailing Lists and Bug Reports):
31273         Mention debbugs.gnu.org.
31275 2015-05-26  Glenn Morris  <rgm@gnu.org>
31277         * lisp/mail/rmailsum.el: Commas no longer separate regexps.  (Bug#19026)
31278         (rmail-summary-by-recipients, rmail-summary-by-topic)
31279         (rmail-summary-by-senders): No longer use mail-comma-list-regexp.
31280         * doc/emacs/rmail.texi (Rmail Make Summary): Update for this change.
31282 2015-05-26  Paul Eggert  <eggert@cs.ucla.edu>
31284         Handle curved quotes in info files
31285         * lisp/calc/calc-help.el (calc-describe-thing):
31286         * lisp/info.el (Info-find-index-name)
31287         (Info-try-follow-nearest-node, Info-fontify-node):
31288         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
31289         In info files, process quotes ‘like this’ the same way we process
31290         quotes `like this'.  This catches a few places we missed earlier.
31292 2015-05-26  Dmitry Gutov  <dgutov@yandex.ru>
31294         xref-prompt-for-identifier: Use a list value
31295         * lisp/progmodes/xref.el (xref-prompt-for-identifier): Allow list
31296         value, to be interpreted as a list of commands.
31297         (xref--prompt-p): New function.
31298         (xref--read-identifier): Use it.
31300 2015-05-26  Eli Zaretskii  <eliz@gnu.org>
31302         Teach MS-Windows font back-end return per-glyph ascent/descent
31303         * src/w32font.h (struct w32_metric_cache): Add ascent and descent
31304         values.
31305         * src/w32font.c (w32font_text_extents): Compute, cache, and
31306         accumulate per-glyph ascent and descent values, instead of copying
31307         global values from the font.  If the values are not available from
31308         the font data, i.e., non-TTF fonts, fall back on font-global values.
31309         (compute_metrics): Compute and return per-glyph ascent and descent
31310         values, if returned by GetGlyphOutlineW, falling back on
31311         font-global values.  (Bug#20628)
31312         * src/w32term.c (w32_draw_rectangle): Add 1 pixel to width and
31313         height of rectangle to be drawn, to be compatible with
31314         XDrawRectangle.  Fixes glyphless-char display as hex codes in a
31315         box, when per-glyph ascent/descent values are used.
31317 2015-05-26  Artur Malabarba  <bruce.connor.am@gmail.com>
31319         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
31320         Don't sort if sorter is nil.
31322 2015-05-26  Michael Albinus  <michael.albinus@gmx.de>
31324         Fix Bug#20621
31325         * lisp/net/tramp-sh.el (tramp-set-auto-save): Remove it.  There
31326         are major modes which set `auto-save-mode' on their own rules;
31327         Tramp shall not overwrite such settings.
31329 2015-05-26  Glenn Morris  <rgm@gnu.org>
31331         * lisp/desktop.el: If modes aren't autoloaded, try simple guesswork.
31332         (desktop-load-file): Guess that "foobar" defines "foobar-mode".
31333         (desktop-buffer-mode-handlers, desktop-minor-mode-handlers):
31334         Doc updates.
31335         (vc-dir-mode): Remove unnecessary autoload.
31337 2015-05-25  Philipp Stephani  <phst@google.com>
31339         * lisp/term/xterm.el: Add gui-get-selection support via OSC-52.
31340         (xterm--extra-capabilities-type): Add `getSelection'.
31341         (xterm--query): Add `no-async' argument.
31342         (xterm--init-activate-get-selection): New function.
31343         (terminal-init-xterm): Use it.
31344         (xterm--init-modify-other-keys): Rename from
31345         terminal-init-xterm-modify-other-keys.
31346         (xterm--init-bracketed-paste-mode): Rename from
31347         terminal-init-xterm-bracketed-paste-mode.
31348         (xterm--init-activate-set-selection): Rename from
31349         terminal-init-xterm-activate-set-selection.
31350         (xterm--selection-char): New function.
31351         (gui-backend-set-selection): Use it.  Use the &context to only apply
31352         this method in terminals where we enabled the feature.
31353         (gui-backend-get-selection): New method.
31355 2015-05-25  Daniel Colascione  <dancol@dancol.org>
31357         * lisp/progmodes/cc-langs.el (c-constant-kwds): Add C-language
31358         keyword constants to C++.
31360 2015-05-25  Paul Eggert  <eggert@cs.ucla.edu>
31362         Make TAGS files more portable to MS-Windows
31363         * etc/NEWS: Document this.
31364         * lib-src/etags.c (readline_internal) [DOS_NT]:
31365         Don't treat CRs differently from GNUish hosts.
31366         * lisp/progmodes/etags.el (etags-goto-tag-location):
31367         Adjust STARTPOS to account for the skipped CRs in dos-style files.
31369 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
31371         Improve fix of bug#20634 in tramp-sh.el
31373 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
31375         Fix a typo in last commit
31376         * lib-src/etags.c (C_entries): Fix a typo.
31377         * test/etags/ETAGS.good_1:
31378         * test/etags/ETAGS.good_2:
31379         * test/etags/ETAGS.good_3:
31380         * test/etags/ETAGS.good_4:
31381         * test/etags/ETAGS.good_5:
31382         * test/etags/CTAGS.good: Update due to the change in etags.c.
31384         Fix tagging of class members in C-like OO languages
31385         * lib-src/etags.c (longopts): Add new option --class-qualify and
31386         its shorthand -Q.
31387         (print_help): Add help text for --class-qualify.
31388         (main): Add handling of -Q.
31389         (consider_token, C_entries) <omethodparm>: Append argument types
31390         to Objective C methods only if --class-qualify was specified.
31391         Qualify C++, Objective C, and Java class members with their class
31392         names only if --class-qualify was specified.
31393         (C_entries): If --class-qualify was not specified, remove the
31394         namespace and class qualifiers from tag names of C++ methods.
31395         This allows to use etags.el as xref back-end without the
31396         tag-symbol-match-p method, which greatly increases the number of
31397         potentially false positives.  (Bug#20629)
31398         * doc/man/etags.1: Update to document the new --class-qualify
31399         option.
31400         * test/etags/ETAGS.good_1:
31401         * test/etags/ETAGS.good_2:
31402         * test/etags/ETAGS.good_3:
31403         * test/etags/ETAGS.good_4:
31404         * test/etags/ETAGS.good_5:
31405         * test/etags/CTAGS.good: Update due to changes in etags.c.
31407 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
31409         (cl-generic-define-method): Side effects are evil (bug#20644)
31410         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method): Don't reuse
31411         cons-cells that might be used as keys in an `equal' hash-table.
31413 2015-05-25  Lars Magne Ingebrigtsen  <larsi@gnus.org>
31415         Make erc timestamps visible again
31416         * lisp/erc/erc-stamp.el (erc-munge-invisibility-spec):
31417         Make timestamps visible again (if requested).
31419 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
31421         Fix last change in etags.c that broke tagging compresed files
31422         * lib-src/etags.c (process_file_name) [MSDOS || DOS_NT]: Fix
31423         quoting of decompression shell command for MS-Windows/MS-DOS.
31425 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
31427         * lisp/emacs-lisp/cl-macs.el (cl-tagbody): Scope cl--tagbody-alist.
31428         (Bug#20639)
31430 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
31432         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer):
31433         Fix typo in "Inhibit `epa-file-handler' in Tramp"
31434         (commit 89035e247591c8d688fce922b7079881aa110f33).
31436 2015-05-25  Orivej Desh  <orivej@gmx.fr>  (tiny change)
31438         Fix IPv6 addresses in Tramp
31439         * lisp/net/tramp-sh.el (tramp-make-copy-program-file-name):
31440         Add square brackets around host name.
31442 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
31444         Inhibit `epa-file-handler' in Tramp (Bug#20634)
31445         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer)
31446         (tramp-sh-handle-insert-file-contents-literally): Inhibit also
31447         `epa-file-handler'.
31449 2015-05-24  Stefan Monnier  <monnier@iro.umontreal.ca>
31451         * lisp/emacs-lisp/pcase.el: Use PAT rather than UPAT in docstring.
31452         (pcase-let): Document the behavior in case the pattern doesn't match.
31454 2015-05-24  Artur Malabarba  <bruce.connor.am@gmail.com>
31456         * lisp/emacs-lisp/tabulated-list.el: New optional print method.
31457         (tabulated-list-print): New optional argument, UPDATE.  If
31458         non-nil, the list is printed by only adding and deleting the
31459         changed entries, instead of erasing the whole buffer.  This method
31460         is much faster when few or no entries have changed.
31461         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
31462         * etc/NEWS: Document it.
31464         * lisp/emacs-lisp/tabulated-list.el: Improve printing.
31465         (tabulated-list--get-sorter): New function.
31466         (tabulated-list-print): Restore window-line when remember-pos is
31467         passed and optimize away the `nreverse'.
31469 2015-05-24  Paul Eggert  <eggert@cs.ucla.edu>
31471         Simpilify etags TEX mode scanning
31472         * lib-src/etags.c (TEX_mode, TEX_esc, TEX_opgrp, TEX_clgrp):
31473         Remove static vars.
31474         (TeX_commands): Deduce escapes here instead.
31475         (TEX_LESC, TEX_SESC, TEX_mode): Remove; all uses removed.
31476         This removes the need for a reset_input call.
31478         Improve etags I/O error reporting
31479         * lib-src/etags.c:
31480         Don't include sys/types.h and sys/stat.h; no longer needed.
31481         (infilename): New static var.
31482         (process_file_name): Don't call 'stat'.  Instead, just open the
31483         file for reading and report any errors.  Don't bother making
31484         a copy of the file argument; it's not needed.  Be more careful to
31485         use the failing errno when reporting an error.
31486         Quote the real name better (though no perfectly)
31487         when passing it to the shell.
31488         (reset_input): New function, which reports I/O errors.
31489         All uses of 'rewind' changed to use this function.
31490         (perhaps_more_input): New function, which also checks for
31491         I/O errors.  All uses of 'feof' changed to use this function.
31492         (analyze_regex): Report an error if fclose fails.
31493         (readline_internal): Report an error if getc fails.
31494         (etags_mktmp): Return an error if close fails.
31496         etags.c: avoid side effects in 'if'
31497         * lib-src/etags.c (process_file_name, Perl_functions)
31498         (TEX_decode_env): Hoist side effects into previous statement.
31500         .gitignore tweaks
31501         * .gitignore: Ignore all *.stamp files.  Sort.
31502         Ignore [0-9]*.txt (commonly used name for git patches)
31503         and /vc-dwim-log-* (vc-dwim temporary).
31505 2015-05-24  Eli Zaretskii  <eliz@gnu.org>
31507         Fix last change in etags.c, which failed the test suite
31508         * lib-src/etags.c (intoken): Add '$' to the set, as it was there
31509         before the last change.
31511 2015-05-23  Glenn Morris  <rgm@gnu.org>
31513         Remove charset map files from repository, generate in first bootstrap
31514         * admin/charsets/Makefile.in (${srcdir}/charsets.stamp): New.
31515         (all): Create the stamp file.
31516         (extraclean): Delete the stamp file.
31517         * src/Makefile.in (lispintdir, charsets): New variables.
31518         (${lispintdir}/cp51932.el, ${lispintdir}/eucjp-ms.el, ${charsets}):
31519         New rules.
31520         (emacs$(EXEEXT), temacs$(EXEEXT)): Depend on $charsets.
31521         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
31522         * etc/charsets/*.map: Remove from repository.
31524 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
31526         Cleanup etags.c to use locale-independent code
31527         Although this doesn't alter behavior (as etags doesn't use
31528         setlocale), the new version is more clearly locale-independent and
31529         the executable is a bit smaller on my platform.
31530         * lib-src/etags.c: Include <limits.h>, for UCHAR_MAX.
31531         Include <c-ctype.h> instead of <ctype.h>.
31532         (CHARS, CHAR, init, _wht, _nin, _itk, _btk, _etk, white, nonam, endtk)
31533         (begtk, midtk):
31534         Remove; no longer needed.
31535         (iswhite, ISALNUM, ISALPHA, ISDIGIT, ISLOWER, lowcase): Remove.
31536         All callers changed to use c_isspace, c_isalnum, c_isalpha, c_isdigit,
31537         c_islower, c_tolower, respectively.
31538         (notinname, begtoken, intoken, endtoken): Rewrite as functions
31539         instead of macros, and initialize the tables at compile-time
31540         rather than at run-time.
31542         Put default action first in src/Makefile
31543         * src/Makefile.in (all): Put this rule before lisp.mk.
31544         That way, plain 'make' works in the src directory again.
31546 2015-05-23  Glenn Morris  <rgm@gnu.org>
31548         * Makefile.in: Fix extraclean rule.
31549         (extraclean_dirs): New.
31550         (extraclean): Use it.
31552 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
31554         Avoid compiler warning in image.c on MS-Windows
31555         * src/w32term.h (x_query_color): Add prototype, to avoid compiler
31556         warning in image.c.
31558 2015-05-23  Glenn Morris  <rgm@gnu.org>
31560         Fix --without-toolkit-scroll-bars builds.
31561         * src/xterm.c (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]:
31562         Add new argument to x_clear_area1.
31563         (XTset_horizontal_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
31564         Update x_clear_area arguments.
31566         * admin/charsets/glibc/: New directory, imported from glibc 2.21.
31567         * admin/charsets/Makefile.in (GLIBC_CHARMAPS):
31568         Change to included version.
31569         (LOCAL, local, totalclean): Remove.
31570         (extraclean): Delete all generated files.
31572 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
31574         * lisp/pcmpl-cvs.el (pcmpl-cvs-entries): Don't assume
31575         CVS/Entries exists.
31577         * lisp/progmodes/xref.el (xref-find-apropos): Use read-string.
31579         * lisp/progmodes/etags.el (tags-completion-at-point-function):
31580         Don't trust the find-tag function.
31582 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
31584         Pacify --enable-gcc-warnings
31585         * src/frame.h (x_query_color): Remove redundant extern decl.
31586         * src/ftcrfont.c (ftcrfont_glyph_extents, ftcrfont_list)
31587         (ftcrfont_match, ftcrfont_open, ftcrfont_close)
31588         (ftcrfont_text_extents, ftcrfont_draw):
31589         * src/xterm.c (x_set_window_size_1, *x_color_cells, x_update_end)
31590         (XTframe_up_to_date, x_clear_area1, x_clear_frame)
31591         (x_ins_del_lines, frame_highlight, frame_unhighlight)
31592         (x_new_focus_frame, x_focus_changed, XTframe_rehighlight)
31593         (x_draw_hollow_cursor, x_draw_bar_cursor, x_flush, x_update_begin)
31594         (x_update_window_begin, x_connection_closed)
31595         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
31596         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
31597         (*x_gc_get_ext_data, x_extension_initialize)
31598         (x_cr_accumulate_data):
31599         Remove redundant static decl.  Many of these GCC doesn't complain
31600         about, but we might as well clean out the duplication while we're
31601         in the neighborhood.
31602         * src/xterm.c (x_fill_trapezoid_for_relief):
31603         Remove decl of nonexistent function.
31605 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
31607         Replace gui-method macros with cl-generic with &context
31608         * lisp/frame.el (gui-method--name, gui-method, gui-method-define)
31609         (gui-method-declare, gui-call): Remove.
31610         (frame-creation-function): Use cl-defgeneric.
31611         (make-frame): Adjust callers.
31612         * lisp/menu-bar.el (menu-bar-edit-menu):
31613         Use gui-backend-selection-exists-p.
31614         * lisp/select.el (x-get-clipboard): Use gui-backend-get-selection.
31615         (gui-backend-get-selection): New cl-generic to replace
31616         gui-get-selection method.
31617         (gui-backend-set-selection): New cl-generic to replace
31618         gui-set-selection method.
31619         (gui-selection-owner-p): New cl-generic to replace
31620         gui-selection-owner-p method.
31621         (gui-backend-selection-exists-p): New cl-generic to replace
31622         gui-selection-exists-p method.  Adjust all callers.
31623         * lisp/server.el (server-create-window-system-frame): Don't ignore
31624         window-system spec even when unsupported.
31625         * lisp/simple.el (deactivate-mark): Use new gui-backend-* functions.
31626         * lisp/startup.el (handle-args-function, window-system-initialization):
31627         Use cl-defgeneric.
31628         (command-line): Adjust calls accordingly.
31629         * lisp/term/ns-win.el (ns-window-system-initialization): Turn into
31630         a window-system-initialization method.
31631         (handle-args-function, frame-creation-function): Use cl-defmethod.
31632         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
31633         (gui-get-selection): Use cl-defmethod on the new functions instead.
31634         * lisp/term/pc-win.el (w16-get-selection-value): Turn into
31635         a gui-backend-get-selection method.
31636         (gui-selection-exists-p, gui-selection-owner-p, gui-set-selection):
31637         Use cl-defmethod on the new functions instead.
31638         (msdos-window-system-initialization): Turn into
31639         a window-system-initialization method.
31640         (frame-creation-function, handle-args-function): Use cl-defmethod.
31641         * lisp/term/w32-win.el (w32-window-system-initialization): Turn into
31642         a window-system-initialization method.
31643         (handle-args-function, frame-creation-function): Use cl-defmethod.
31644         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
31645         (gui-get-selection): Use cl-defmethod on the new functions instead.
31646         * lisp/term/x-win.el (x-window-system-initialization): Turn into
31647         a window-system-initialization method.
31648         (handle-args-function, frame-creation-function): Use cl-defmethod.
31649         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
31650         (gui-get-selection): Use cl-defmethod on the new functions instead.
31651         * lisp/term/xterm.el (xterm--set-selection): Turn into
31652         a gui-backend-set-selection method.
31653         * src/nsselect.m (Fns_selection_exists_p): Remove unused arg `terminal'.
31654         (Fns_selection_owner_p): Remove unused arg `terminal'.
31655         (Fns_get_selection): Remove unused args `time_stamp' and `terminal'.
31657 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
31659         Revert "Fix etags Bug#20629 that broke C++ support"
31660         This reverts commit 13dd9d4f7e75d2c78aa5537cef09de03663e9748.
31662 2015-05-23  Jan D  <jan.h.d@swipnet.se>
31664         Fix etags Bug#20629 that broke C++ support
31665         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
31666         Revert commit from Sun May 10 (Bug#20629).
31668         Merge branch 'cairo'.
31669         Main work done by YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>.
31670         Small fixes and image work by Jan D. <jan.h.d@swipnet.se>.
31672         Merge branch 'master' into cairo
31674         Fixes to compile cairo branch without cairo
31675         * src/gtkutil.c (xg_update_scrollbar_pos): x_clear_area takes frame as
31676         first argument.
31677         * src/xterm.c (handle_one_xevent): Surround x_cr_destroy_surface with
31678         USE_CAIRO.
31680 2015-05-23  Artur Malabarba  <bruce.connor.am@gmail.com>
31682         * lisp/emacs-lisp/package.el: Always update selected-packages.
31683         (package--update-selected-packages): New function.
31684         (package-menu-execute): Use it before starting the transaction,
31685         this way the list of selected packages is updated even when the
31686         transaction fails.
31687         (package-menu--perform-transaction): Don't edit selected-packages.
31689 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
31691         Fix etags reading of compressed files
31692         * lib-src/etags.c (O_CLOEXEC) [WINDOWSNT]: Define.
31693         Include fcntl.h, for O_CLOEXEC.
31694         (process_file_name): Don't use 'popen', whose streams cannot be
31695         rewound.  Instead, uncompress the file to a temporary file,
31696         created by 'etags_mktmp', and read from that as usual.
31697         (etags_mktmp): New function.
31698         * test/etags/ETAGS.good_1:
31699         * test/etags/ETAGS.good_2:
31700         * test/etags/ETAGS.good_3:
31701         * test/etags/ETAGS.good_4:
31702         * test/etags/ETAGS.good_5: Update to be consistent with latest
31703         changes in etags.c regarding reading compressed files.
31705         Improve documentation of 'set-fontset-font'
31706         * doc/lispref/display.texi (Fontsets): Document the value of nil
31707         for the 3rd argument of 'set-fontset-font'.
31709         Fix documentation of forward-line
31710         * src/cmds.c (Fforward_line): Clarify the return value if the line
31711         at end of accessible portion of the buffer has no newline.
31712         * doc/lispref/positions.texi (Text Lines): Document what happens
31713         if the line at end of accessible portion of buffer has no newline.
31714         (Bug#20587)
31716 2015-05-22  Glenn Morris  <rgm@gnu.org>
31718         * admin/charsets/Makefile.in (TRANS_TABLE): Add short aliases.
31720         * admin/charsets/mapconv (LC_ALL): Set to C.
31722         * Makefile.in: Add admin/charsets into top-level clean rules.
31723         (clean): Add admin/charsets.
31724         (maybeclean_dirs): New variable.
31725         (distclean, bootstrap-clean, maintainer-clean): Use $maybeclean_dirs.
31727         * admin/charsets/Makefile.in (LOCAL, local): Fix members.
31729 2015-05-22  Artur Malabarba  <bruce.connor.am@gmail.com>
31731         * lisp/emacs-lisp/package.el (package-selected-packages): Fix doc.
31733 2015-05-22  Glenn Morris  <rgm@gnu.org>
31735         Generate admin/charsets Makefile via configure, and make more portable
31736         * configure.ac (SUBDIR_MAKEFILES): Add admin/charsets/Makefile.
31737         (admin/charsets/Makefile): Generate it.
31738         * admin/charsets/Makefile.in: Rename from Makefile.
31739         (AWK, srcdir, top_srcdir, AM_DEFAULT_VERBOSITY):
31740         New variables, set by configure.
31741         (charsetdir, lispintdir, mapfiledir, AM_V_GEN, am__v_GEN_)
31742         (am__v_GEN_0, am__v_GEN_1, AM_V_at, am__v_at_, am__v_at_0)
31743         (am__v_at_1, LOCAL, mapconv, run_mapconv, big5, compact, cp51932)
31744         (cp932, eucjp_ms, gb180302, gb180304, kuten): New variables.
31745         (TRANS_TABLE, CHARSETS): Add directory prefix to value.
31746         (all): Declare PHONY.
31747         (local): New PHONY target.
31748         (map_template): New template.  Use to define short PHONY aliases.
31749         (*.map): Add directory prefixes to targets and prerequisites.
31750         Respect make verbosity.
31751         (JISC6226.map): Replace non-portable sed append without newline.
31752         (install): Remove rule.
31753         (clean): Only delete temporary sedscript.
31754         (bootstrap-clean, distclean, maintainer-clean, extraclean)
31755         (totalclean): New PHONY rules.
31756         * admin/charsets/mapconv (BASE): Replace basename with expr.
31757         (FILE): Add "mapfiles" subdirectory.
31758         (AWK): New variable.  Use throughout in place of "awk".
31759         (main): Use "gunzip -c" in place of "zcat".
31760         Don't leave whitespace before "p", for older sed.
31761         * admin/charsets/mapfiles/PTCP154: Add final newline,
31762         to make older sed versions happy.
31764 2015-05-22  Stefan Monnier  <monnier@iro.umontreal.ca>
31766         * lisp/autorevert.el: Use lexical-binding.  Fix hook usage.
31767         (global-auto-revert-ignore-buffer, auto-revert-notify-modified-p)
31768         (auto-revert-notify-watch-descriptor): Use defvar-local.
31769         (find-file-hook, auto-revert-tail-mode)
31770         (auto-revert-notify-add-watch): Use setq-local.
31771         (auto-revert-notify-add-watch): Don't call make-local-variable on
31772         kill-buffer-hook (bug#20601).
31774 2015-05-21  Stefan Monnier  <monnier@iro.umontreal.ca>
31776         Change defgeneric so it doesn't completely redefine the function
31777         * lisp/emacs-lisp/cl-generic.el (cl-generic-define): Don't throw away
31778         previously defined methods.
31779         (cl-generic-define-method): Let-bind purify-flag instead of
31780         using `fset'.
31781         (cl--generic-prefill-dispatchers): Only define during compilation.
31782         (cl-method-qualifiers): Remove redundant alias.
31783         (help-fns-short-filename): Silence byte-compiler.
31784         * test/automated/cl-generic-tests.el:
31785         Adjust to new defgeneric semantics.
31787 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
31789         * lisp/emacs-lisp/package.el (package-menu-execute):
31790         Remove reference to remove-dups.
31792 2015-05-21  kwhite  <kwhite@gnu.org>
31794         * lisp/erc/erc.el: Hide network/channel messages.
31795         (erc-network-hide-list, erc-channel-hide-list): New lists to define
31796         message types per network/channel.
31797         (erc-add-targets): New function to parse list of targets.
31798         (erc-hide-current-message-p): Modify to check for new targets.
31800 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
31802         Don't quote nil and t in doc strings
31803         This is as per "Tips for Documentation Strings" in the elisp manual.
31804         For consistency, do the same in diagnostics and comments.
31806 2015-05-21  Eli Zaretskii  <eliz@gnu.org>
31808         Fix a minor problem with mouse-face on mode line
31809         * src/xdisp.c (note_mode_line_or_margin_highlight): Reset the
31810         mouse face also if the mouse pointer hovers above mode-line glyphs
31811         that don't come from any Lisp string.  (Bug#20620)
31813 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
31815         * lisp/emacs-lisp/package.el: Fix selected-package logic.
31816         (package-menu-execute): Mark as selected all non-upgrade packages
31817         being installed.
31818         (package-menu--perform-transaction): Don't mark anything.
31820         * lisp/emacs-lisp/package.el: Mode-line progress report.
31821         (package-menu--transaction-status): New variable.
31822         (package-menu-mode, package-menu--perform-transaction): Use it.
31824         * lisp/emacs-lisp/package.el: Better transaction messages.
31825         (package-menu--partition-transaction): New function.
31826         (package-menu--prompt-transaction-p, package-menu-execute):
31827         Use it.
31828         (package-menu--perform-transaction): Don't do any messaging.
31830         * lisp/emacs-lisp/package.el: Revert async package transactions.
31831         (package-menu-async): Update doc.
31832         (package-install-from-archive, package-download-transaction)
31833         (package-install, package-menu--perform-transaction)
31834         (package-menu-execute): Remove asynchronous functionality.
31836 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
31838         Revert doc string changes to f90.el
31839         Problem reported by Glenn Morris in:
31840         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00596.html
31841         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
31842         Revert recent changes to doc strings, as it's intended that they
31843         use grave accent, not quote.
31845 2015-05-20  Bozhidar Batsov  <bozhidar@batsov.com>
31847         * lisp/emacs-lisp/subr-x.el (hash-table-empty-p):
31848         Improve parameter name.
31850         * lisp/emacs-lisp/subr-x.el (hash-table-empty-p): New inline function.
31852 2015-05-20  Paul Eggert  <eggert@cs.ucla.edu>
31854         Don't require help-fns when not needed
31855         * lisp/emacs-lisp/autoload.el, lisp/emacs-lisp/advice.el:
31856         * lisp/emacs-lisp/elint.el:
31857         Don't require help-fns at the top level
31858         * lisp/emacs-lisp/advice.el (ad-arglist):
31859         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
31860         Don't require help-fns.  (Bug#17001)
31862 2015-05-20  Eli Zaretskii  <eliz@gnu.org>
31864         Fix slash collapsing in etags on MS-Windows
31865         * lib-src/etags.c (canonicalize_filename) [DOS_NT]: Separate the
31866         MS-Windows code from the Posix code, and support collapsing both
31867         forward- and back-slashes on MS-Windows.  Fixes a regression found
31868         by the test suite.
31870         Improve documentation of glyphless-char-display
31871         * doc/lispref/display.texi (Glyphless Chars): Improve
31872         documentation of glyphless character display.
31874         Fix "acronym" display of glyphless characters on w32
31875         * src/w32term.c (x_draw_glyphless_glyph_string_foreground): Don't
31876         ignore "acronym" substitutes of 1 character for glyphless characters.
31878 2015-05-20  Oleh Krehel  <ohwoeowho@gmail.com>
31880         Add an automated test for let-when-compile
31881         * test/automated/subr-tests.el (let-when-compile): New test.
31883         Add let-when-compile macro instead of using pcase-let
31884         * lisp/subr.el (let-when-compile): New let-like macro that makes its
31885         bindings known to macros like `eval-when-compile' in the body.
31886         * lisp/emacs-lisp/lisp-mode.el: Change the top-level `pcase-let' to
31887         a `let-when-compile'.  Also comment out the unused lexical var
31888         `el-kws-re'.
31889         The change greatly improves readability, while providing almost the
31890         same (even shorter) byte code: instead of pre-evaluating 10 variables,
31891         tossing them into a list, and destructuring that list a full screen
31892         page later, the variables are simply bound as they are evaluated,
31893         wrapped individually in `eval-when-compile'.
31895 2015-05-20  Artur Malabarba  <bruce.connor.am@gmail.com>
31897         * lisp/emacs-lisp/package.el: "Delete" button in Help buffer.
31898         (package-delete-button-action): New function.
31899         (describe-package-1): Add Delete button.
31901         * lisp/emacs-lisp/package.el: Better dependency description.
31902         (package--used-elsewhere-p): New optional arg, ALL, and return
31903         package-desc objects instead of names.
31904         (package-delete): Update accordingly.
31905         (describe-package-1): Describe which packages require the package.
31907 2015-05-20  Martin Rudalics  <rudalics@gmx.at>
31909         Fix handling and doc-string of FRAME arg of `other-buffer' (Bug#20533)
31910         * src/buffer.c (Fother_buffer): Argument FRAME must denote a live frame.
31911         Fix doc-string.
31913         Improve `switch-to-buffer' in strongly dedicated windows (Bug#20472)
31914         * lisp/window.el (switch-to-buffer-in-dedicated-window): New option.
31915         (switch-to-buffer): If the selected window is strongly dedicated
31916         to its buffer, signal error before prompting for buffer name.
31917         Handle `switch-to-buffer-in-dedicated-window'.
31918         * doc/lispref/windows.texi (Switching Buffers):
31919         Document `switch-to-buffer-in-dedicated-window'.
31921 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
31923         Prefer "this" to “this” in doc strings
31924         This mostly just straightens quotes introduced in my previous patch.
31925         Suggested by Dmitry Gutov in:
31926         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00565.html
31927         * lisp/faces.el, lisp/gnus/gnus-group.el, lisp/ldefs-boot.el:
31928         * lisp/mail/supercite.el, lisp/net/tramp.el, lisp/recentf.el:
31929         * lisp/textmodes/artist.el, lisp/textmodes/rst.el:
31930         * lisp/textmodes/tildify.el, lisp/vc/ediff-util.el:
31931         * lisp/vc/log-edit.el, lisp/xt-mouse.el:
31932         Prefer straight double quotes to curved double quotes in doc strings.
31934         Fix minor quoting problems in doc strings
31935         These were glitches regardless of how or whether we tackle the
31936         problem of grave accent in doc strings.
31937         * lisp/calc/calc-aent.el (math-restore-placeholders):
31938         * lisp/ido.el (ido-ignore-buffers, ido-ignore-files):
31939         * lisp/leim/quail/cyrillic.el ("bulgarian-alt-phonetic"):
31940         * lisp/leim/quail/hebrew.el ("hebrew-new")
31941         ("hebrew-biblical-sil"):
31942         * lisp/leim/quail/thai.el ("thai-kesmanee"):
31943         * lisp/progmodes/idlw-shell.el (idlwave-shell-file-name-chars):
31944         Used curved quotes to avoid ambiguities like ‘`''’ in doc strings.
31945         * lisp/calendar/calendar.el (calendar-month-abbrev-array):
31946         * lisp/cedet/semantic/mru-bookmark.el (semantic-mrub-cache-flush-fcn):
31947         * lisp/cedet/semantic/symref.el (semantic-symref-tool-baseclass):
31948         * lisp/cedet/semantic/tag.el (semantic-tag-copy)
31949         (semantic-tag-components):
31950         * lisp/cedet/srecode/cpp.el (srecode-semantic-handle-:cpp):
31951         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
31952         * lisp/emacs-lisp/byte-opt.el (byte-optimize-all-constp):
31953         * lisp/emacs-lisp/checkdoc.el (checkdoc-message-text-engine):
31954         * lisp/emacs-lisp/generator.el (iter-next):
31955         * lisp/gnus/gnus-art.el (gnus-treat-strip-list-identifiers)
31956         (gnus-article-mode-syntax-table):
31957         * lisp/net/rlogin.el (rlogin-directory-tracking-mode):
31958         * lisp/net/soap-client.el (soap-wsdl-get):
31959         * lisp/net/telnet.el (telnet-mode):
31960         * lisp/org/org-compat.el (org-number-sequence):
31961         * lisp/org/org.el (org-remove-highlights-with-change)
31962         (org-structure-template-alist):
31963         * lisp/org/ox-html.el (org-html-link-org-files-as-html):
31964         * lisp/play/handwrite.el (handwrite-10pt, handwrite-11pt)
31965         (handwrite-12pt, handwrite-13pt):
31966         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
31967         * lisp/progmodes/idlwave.el (idlwave-mode, idlwave-check-abbrev):
31968         * lisp/progmodes/verilog-mode.el (verilog-tool)
31969         (verilog-string-replace-matches, verilog-preprocess)
31970         (verilog-auto-insert-lisp, verilog-auto-insert-last):
31971         * lisp/textmodes/makeinfo.el (makeinfo-options):
31972         * src/font.c (Ffont_spec):
31973         Fix minor quoting problems in doc strings, e.g., missing quote,
31974         ``x'' where `x' was meant, etc.
31975         * lisp/erc/erc-backend.el (erc-process-sentinel-2):
31976         Fix minor quoting problem in other string.
31977         * lisp/leim/quail/ethiopic.el ("ethiopic"):
31978         * lisp/term/tvi970.el (tvi970-set-keypad-mode):
31979         Omit unnecessary quotes.
31980         * lisp/faces.el (set-face-attribute, set-face-underline)
31981         (set-face-inverse-video, x-create-frame-with-faces):
31982         * lisp/gnus/gnus-group.el (gnus-group-nnimap-edit-acl):
31983         * lisp/mail/supercite.el (sc-attribs-%@-addresses)
31984         (sc-attribs-!-addresses, sc-attribs-<>-addresses):
31985         * lisp/net/tramp.el (tramp-methods):
31986         * lisp/recentf.el (recentf-show-file-shortcuts-flag):
31987         * lisp/textmodes/artist.el (artist-ellipse-right-char)
31988         (artist-ellipse-left-char, artist-vaporize-fuzziness)
31989         (artist-spray-chars, artist-mode, artist-replace-string)
31990         (artist-put-pixel, artist-text-see-thru):
31991         * lisp/vc/ediff-util.el (ediff-submit-report):
31992         * lisp/vc/log-edit.el (log-edit-changelog-full-paragraphs):
31993         Use double-quotes rather than TeX markup in doc strings.
31994         * lisp/skeleton.el (skeleton-pair-insert-maybe):
31995         Reword to avoid the need for grave accent and apostrophe.
31996         * lisp/xt-mouse.el (xterm-mouse-tracking-enable-sequence):
31997         Don't use grave and acute accents to quote.
31999 2015-05-19  Stefan Monnier  <monnier@iro.umontreal.ca>
32001         * lisp/emacs-lisp/generator.el (cps--gensym, cps--transform-1):
32002         Silence compiler.
32004 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
32006         Try to port new etags tests to MS-Windows
32007         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
32008         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
32009         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
32010         Adjust to test-case changes below.
32011         * test/etags/Makefile (CSRC): Remove dostorture.c.
32012         Whatever it was trying to test, wasn't working portably.
32013         (LC_ALL): Remove.  Apparently there wasn't an encoding problem,
32014         just a line-ending problem.
32015         * test/etags/c-src/dostorture.c: Remove.
32016         * test/etags/cp-src/c.C: Remove stray CR.
32017         * test/etags/html-src/algrthms.html: Remove trailing CRs.
32018         State UTF-8 as the encoding.  The file is ASCII so it doesn't matter,
32019         but if someone edits it later it should stay UTF-8-compatible.
32021 2015-05-19  Eli Zaretskii  <eliz@gnu.org>
32023         Fix display of overlapping window-specific overlays
32024         * src/keyboard.c (adjust_point_for_property): When adjusting point
32025         due to display strings, ignore overlays that are specific to
32026         windows other than the currently selected one.
32027         * src/xdisp.c (handle_single_display_spec): If the display
32028         property comes from an overlay, arrange for buffer iteration to
32029         resume only after the end of that overlay.  (Bug#20607)
32031 2015-05-19  Dmitry Gutov  <dgutov@yandex.ru>
32033         New command icomplete-force-complete-and-exit
32034         * lisp/icomplete.el (icomplete-force-complete-and-exit):
32035         New command
32036         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00461.html)
32037         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00516.html).
32038         (icomplete-minibuffer-map): Bind C-j to it.
32039         (icomplete-forward-completions, icomplete-backward-completions):
32040         Mention the new command in the docstring.
32041         * lisp/minibuffer.el (minibuffer-force-complete-and-exit):
32042         Revert the previous fix for bug#17545.
32044 2015-05-19  Martin Rudalics  <rudalics@gmx.at>
32046         Fix last commit
32048         In Elisp manual explain how to override window manager positioning
32049         (Bug#20552)
32050         * doc/lispref/frames.texi (Position Parameters): Give example of
32051         how to override a window manager positioning decision.
32053         Clarify concept of "surrogate minibuffer frames" (Bug#20538)
32054         * src/frame.c (Fdelete_frame): In doc-string mention that frame
32055         can't be deleted if it has a surrogate minibuffer.
32056         * doc/lispref/frames.texi (Minibuffers and Frames)
32057         (Deleting Frames): Explain "surrogate minibuffer frames".
32059         * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 19/12 MB.
32061 2015-05-18  Glenn Morris  <rgm@gnu.org>
32063         Add option to ignore commit lines matching a pattern in ChangeLog
32064         * build-aux/gitlog-to-changelog: Add --ignore-line option.
32065         * build-aux/gitlog-to-emacslog: Ignore lines matching '^; '.
32067 2015-05-18  Paul Eggert  <eggert@cs.ucla.edu>
32069         Don't skip new etags tests on non-UTF-8 hosts
32070         Problem reported by Eli Zaretskii for MS-Windows.
32071         * test/etags/Makefile (UTF8_LOCALE, UTF8_ENCODING): Remove.
32072         (LC_ALL): Set to C if the current locale isn't UTF-8.
32073         (.PHONY): Remove ediff_1 thru ediff_5.
32074         (check): Always run.
32076 2015-05-18  Glenn Morris  <rgm@gnu.org>
32078         * lisp/calculator.el (calculator-funcall):
32079         * lisp/textmodes/artist.el (artist-spray-random-points):
32080         Use standard degree/radian conversion utilities.
32082         Further lisp-complete-symbol related cleanup.
32083         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol):
32084         Unadvertise non-functional argument.  Replace obsolete alias.
32086 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
32088         Add a test case for Maven warning ouput
32089         * test/automated/compile-tests.el
32090         (compile-tests--test-regexps-data): Add a case for Maven warning
32091         ouput.
32092         (compile--test-error-line): Check the compilation message type, if
32093         it's specified in the test data.
32095 2015-05-18  Paul Pogonyshev  <pogonyshev@gmail.com>
32097         Update Maven compilation-mode entry to distinguish warnings
32098         * lisp/progmodes/compile.el
32099         (compilation-error-regexp-alist-alist): Update Maven entry to
32100         distinguish warnings (bug#20556).
32102 2015-05-18  Przemysław Wojnowski  <esperanto@cumego.com>
32104         * test/automated/sgml-mode-tests.el: New file.
32106 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
32108         Improve handling of the first Git revision
32109         * lisp/vc/log-view.el (log-view-toggle-entry-display): When
32110         there's no next entry, delete until the end of the buffer.
32111         (log-view-end-of-defun-1): Stop at eob.
32112         * lisp/vc/vc-annotate.el
32113         (vc-annotate-show-diff-revision-at-line-internal): Don't give up
32114         when previous-revision is nil.
32115         * lisp/vc/vc-git.el (vc-git-expanded-log-entry): End the arguments
32116         with `--' to avoid ambiguity.
32117         (vc-git-annotate-extract-revision-at-line): Exclude `^' from the
32118         returned revision string.
32119         (vc-git-annotate-time): Expect `^' before the first revision.
32120         * lisp/vc/vc-git.el (vc-git-diff): Diff against an empty tree if
32121         REV1 is nil, and REV2 is not.
32122         * lisp/vc/vc.el: Update the description of the `diff' function.
32124 2015-05-18  Oleh Krehel  <ohwoeowho@gmail.com>
32126         Allow checkdoc to be called in batch
32127         * lisp/emacs-lisp/checkdoc.el (checkdoc-error): When `noninteractive'
32128         is non-nil, echo the error with `warn'.
32129         How it can be used in -batch:
32130         (with-current-buffer (find-file "checkdoc.el")
32131           (checkdoc-current-buffer t))
32133 2015-05-18  Glenn Morris  <rgm@gnu.org>
32135         * lisp/calendar/solar.el (solar-ecliptic-coordinates): Use float-pi.
32137 2015-05-17  Paul Eggert  <eggert@cs.ucla.edu>
32139         * admin/notes/unicode: New section "binary files".
32141         Change new etags test to use UTF-8 encoding
32142         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
32143         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
32144         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
32145         * test/etags/html-src/index.shtml, test/etags/html-src/software.html:
32146         * test/etags/html-src/softwarelibero.html:
32147         Switch to UTF-8 encoding.
32148         * test/etags/Makefile (SRCS): Adjust to switch to UTF-8.
32149         Remove Makefile, as it's too incestuous to have the test input
32150         include the build procedure.
32151         (UTF8_LOCALE, UTF_ENCODING): New macros.
32152         (LC_ALL): If possible, set to a UTF-8 encoding if not already UTF-8.
32153         (check): Skip if not UTF-8.
32154         (.PHONY): New rule.
32155         (FRC): Remove, as superseded by .PHONY.  All uses removed.
32156         (regexfile): Prefer printf to echo when outputting oddball chars.
32157         (.PRECIOUS): Remove, as these files are not built.
32159         Rename 'foo-gzipped' to 'foo.gz'
32160         * test/automated/data/decompress/foo.gz:
32161         Rename from test/automated/data/decompress/foo-gzipped,
32162         to make it easier for other tools to tell that it's compressed.
32163         * test/automated/zlib-tests.el (zlib--decompress):
32164         Adjust to renamed file.
32166 2015-05-17  Dmitry Gutov  <dgutov@yandex.ru>
32168         Set up default-directory
32169         * lisp/vc/vc-annotate.el (vc-annotate-mode-map): Remove duplicate
32170         binding for `v'.
32171         (vc-annotate-show-changeset-diff-revision-at-line): Set up an
32172         appropriate value for default-directory.
32174 2015-05-17  Samer Masterson  <samer@samertm.com>
32176         * lisp/eshell/em-term.el (eshell-term-sentinel):
32177         No-op by default, only kills term buffer if
32178         `eshell-destroy-buffer-when-process-dies' is non-nil.  (Bug#18108)
32179         (eshell-destroy-buffer-when-process-dies): New custom to preserve
32180         previous behavior.
32182         eshell: Introduce new buffer syntax
32183         The new buffer syntax '#<buffer-name>' is equivalent to '#<buffer
32184         buffer-name>'.  Remove `eshell-buffer-shorthand', as it is no longer
32185         needed (Bug#19319).
32186         * lisp/eshell/esh-io.el (eshell-buffer-shorthand): Remove.
32187         (eshell-get-target): Remove shorthand-specific code.
32188         * lisp/eshell/esh-arg.el (eshell-parse-special-reference): Parse
32189         '#<buffer-name>'.
32191 2015-05-17  Jan D  <jan.h.d@swipnet.se>
32193         Merge branch 'master' into cairo
32195 2015-04-26  Jan D  <jan.h.d@swipnet.se>
32197         Merge branch 'master' into cairo
32199         Add PBM support for cairo
32200         * src/image.c (xcolor_to_argb32): New function.
32201         (get_spec_bg_or_alpha_as_argb): Call xcolor_to_argb32.
32202         (pbm_load, png_load_body, jpeg_load_body, gif_load): Only use
32203         XImagePtr if ! USE_CAIRO.
32204         (pbm_load): Add cairo support.
32206 2015-04-12  Jan D  <jan.h.d@swipnet.se>
32208         * src/xterm.c (x_free_cr_resources): Rename from x_prepare_for_xlibdraw.
32209         (x_cr_draw_frame, x_cr_export_frames, x_shift_glyphs_for_insert)
32210         (x_free_frame_resources): Rename x_prepare_for_xlibdraw to
32211         x_free_cr_resources.
32213         Handle specified bg in images.  Use generic libpng code for PNGs.
32214         * src/image.c (get_spec_bg_or_alpha_as_argb)
32215         (create_cairo_image_surface): New functions when USE_CAIRO.
32216         (xpm_load): Call the above functions.  Handle XPM without mask
32217         when USE_CAIRO.
32218         (png_load_body): Handle USE_CAIRO case.
32219         (png_load): Remove USE_CAIRO specific fuction, modify png_load_body
32220         instead.
32221         (jpeg_load_body): Call create_cairo_image_surface.
32222         (gif_load, svg_load_image): Handle specified background, call
32223         create_cairo_image_surface.
32224         * src/xterm.c (x_draw_image_glyph_string): Add missing USE_CAIRO.
32226 2015-04-11  Jan D  <jan.h.d@swipnet.se>
32228         Support GIF and TIFF with cairo
32229         * configure.ac: Allow jpeg with cairo.
32230         Allow tiff and gif with cairo.
32231         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
32232         (tiff_load): Create cairo image surface if USE_CAIRO.
32233         (gif_load): Ditto.
32235         Support JPEG with USE_CAIRO
32236         * configure.ac: Allow jpeg with cairo.
32237         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
32239 2015-04-05  Jan D  <jan.h.d@swipnet.se>
32241         Support RSVG and cairo
32242         * configure.ac: Allow rsvg with cairo.  Move back HAVE_RSVG.
32243         * src/dispextern.h (struct image): Add cr_data2 if cairo.
32244         * src/image.c: #undef COLOR_TABLE_SUPPORT when USE_CAIRO.
32245         (x_clear_image): Free cr_data and cr_data2 if set.
32246         (xpm_load): Assign data to cr_data2.
32247         (svg_load_image): Convert from GdkPixbuf to CAIRO_FORMAT_ARGB32.
32249 2015-04-03  Jan D  <jan.h.d@swipnet.se>
32251         Introduce limited Xpm support (32 bit ZPixmap) for Cairo
32252         * configure.ac (HAVE_RSVG): Move after cairo.
32253         (USE_CAIRO): Disable rsvg, don't disable Xpm.
32254         * src/image.c (prepare_image_for_display): Don't load if USE_CAIRO.
32255         (x_clear_image): If USE_CAIRO, also free possible img->ximg->obdata and
32256         don't return early.
32257         (ALLOC_XPM_COLORS): Don't define when USE_CAIRO.
32258         (xpm_load): Convert simple Xpms (32 bit ZPixmap) to CAIRO_FORMAT_ARGB32
32259         and create a surface.
32261         Tool tips for menus did not show any text.
32262         * src/xterm.c (x_update_begin): Don't create any surface for non-visible
32263         tip frames, the geometry may be wrong.
32265         Merge branch 'master' into cairo, fixes tooltips not shown.
32267         Merge branch 'master' into cairo
32269         Add CAIRO_CFLAGS to lwlib/Makefile.in
32270         * Makefile.in (CAIRO_CFLAGS): Add.
32272 2015-02-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
32274         * src/ftcrfont.c (ftcrfont_draw): Don't flush when drawing to screen.
32276 2015-02-16  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
32278         Draw outermost line using black relief and erase corners also for cairo.
32279         * src/xterm.c [USE_CAIRO]: Include math.h.
32280         (enum corners) [USE_CAIRO]: New enum.
32281         (x_erase_corners_for_relief) [USE_CAIRO]: New function.
32282         (x_draw_relief_rect) [USE_CAIRO]: Use it.  If box width is larger
32283         than 1, draw the outermost line using the black relief.
32285         * src/xterm.c (x_fill_trapezoid_for_relief):
32286         Remove unnecessary cairo_close_path.
32288 2015-02-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
32290         * src/xterm.c (x_draw_relief_rect) [USE_CAIRO]: Reset clipping.
32292         * src/xterm.c (x_draw_stretch_glyph_string):
32293         Call x_reset_clip_rectangles instead of XSetClipMask.
32295         Use int instead of unsigned int for width and height args.
32296         * src/xterm.c (x_cr_draw_image, x_fill_rectangle, x_draw_rectangle)
32297         (x_fill_trapezoid_for_relief): Use int instead of unsigned int for
32298         width and height args.
32300         Modernize k&r cairo-related function declarations.
32301         * src/gtkutil.c (xg_page_setup_dialog, xg_get_page_setup, draw_page)
32302         (xg_print_frames_dialog): Modernize k&r declarations.
32303         * src/xfns.c (Fx_export_frames, Fx_page_setup_dialog, Fx_get_page_setup)
32304         (Fx_print_frames_dialog): Modernize k&r declarations.
32305         * src/xterm.c (x_gc_get_ext_data, x_extension_initialize)
32306         (x_begin_cr_clip, x_end_cr_clip, x_set_cr_source_with_gc_foreground)
32307         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
32308         (x_cr_destroy_fringe_bitmap, x_cr_draw_frame, x_cr_accumulate_data)
32309         (x_cr_destroy, x_cr_export_frames, x_prepare_for_xlibdraw)
32310         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
32311         (x_draw_rectangle, x_clear_window, x_fill_trapezoid_for_relief)
32312         (x_clear_area): Modernize k&r declarations.
32314         Implement wave-style variant of underlining for cairo.
32315         * src/xterm.c (x_draw_horizontal_wave) [USE_CAIRO]: New function.
32316         (x_draw_underwave) [USE_CAIRO]: Use it.
32318         * src/xterm.c (x_draw_window_divider): Use x_fill_rectangle
32319         instead of XFillRectangle.
32321 2015-02-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
32323         Fix fringe bitmap initialization for cairo
32324         * src/fringe.c (init_fringe_bitmap) [USE_CAIRO]: Adjust bitmap
32325         data for cairo image surface.
32326         * src/xterm.c (x_cr_define_fringe_bitmap):
32327         Call cairo_surface_mark_dirty.
32329 2015-02-11  Jan D  <jan.h.d@swipnet.se>
32331         Add cairo drawing
32332         * configure.ac (with-cairo): New option.
32333         (USE_CAIRO): Default to yes for Gtk+ 3.  Add code to test for cairo,
32334         set CAIRO_CFLAGS, CAIRO_LIBS.  Add ftcrfonto to FONT_OBJ if cairo.
32335         Output "Does Emacs use cairo?".
32336         * lisp/version.el (emacs-version): Add cairo version.
32337         * src/Makefile.in (CAIRO_CFLAGS, CAIRO_LIBS): New variables.
32338         (FONT_OBJ): Add comment about ftcrfont.
32339         (ALL_CFLAGS): Add CAIRO_CFLAGS.
32340         (LIBES): Add CAIRO_LIBS.
32341         * src/dispextern.h (struct image): Add cr_data for cairo.
32342         (x_cr_init_fringe): Declare.
32343         * src/font.c (syms_of_font): Call syms_of_ftcrfont for cairo.
32344         * src/font.h (ftcrfont_driver, syms_of_ftcrfont): Declare
32345         * src/fringe.c (x_cr_init_fringe): New function name that shares code
32346         with w32_init_fringe.
32347         * src/ftcrfont.c: New font driver for cairo, based on the ftfont driver.
32348         * src/ftfont.c (ftfont_info_size); New global variable.
32349         (ftfont_open2): New extern function almost the same as old ftfont_open,
32350         but takes the font_object as argument.
32351         (ftfont_open): Build font object and call ftfont_open2.
32352         * src/ftfont.h (ftfont_open2, ftfont_info_size): Declare.
32353         * src/gtkutil.c (xg_clear_under_internal_border)
32354         (xg_update_scrollbar_pos, xg_update_horizontal_scrollbar_pos):
32355         Only queue_draw if not cairo.  Change args to x_clear_area.
32356         (xg_get_font): Use Qftcr when using cairo, Qxft otherwise.
32357         (xg_page_setup_dialog, xg_get_page_setup, draw_page)
32358         (xg_print_frames_dialog): New functions for printing.
32359         * src/gtkutil.h (xg_page_setup_dialog, xg_get_page_setup)
32360         (xg_print_frames_dialog): Declare.
32361         * src/image.c: Add defined (USE_CAIRO) for PNG.
32362         Add !defined USE_CAIRO for W32 PNG code.
32363         (x_clear_image): If cairo, destroy the surface in cr_data.
32364         (png_load): Add new cairo compatible implementation.
32365         (lookup_image_type): Add defined (USE_CAIRO) for define png_type.
32366         * src/xfns.c: New section Printing.
32367         (x-export-frames, x-page-setup-dialog, x-get-page-setup)
32368         (x-print-frames-dialog): New printing functions.
32369         (Fx_create_frame, x_create_tip_frame): Register ftcrfont if cairo.
32370         (syms_of_xfns): Defsym Qorientation, Qtop_margin, Qbottom_margin,
32371         Qportrait, Qlandscape, Qreverse_portrait, Qreverse_landscape).
32372         (syms_of_xfns): Provide cairo and defvar cairo-version-string.
32373         defsubr Sx_page_setup_dialog, Sx_get_page_setup, Sx_print_frames_dialog.
32374         * src/xterm.c (x_clear_area1, x_prepare_for_xlibdraw)
32375         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
32376         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
32377         (x_gc_get_ext_data, x_extension_initialize, x_cr_accumulate_data):
32378         Declare.
32379         (FRAME_CR_CONTEXT, FRAME_CR_SURFACE): New macros.
32380         (max_fringe_bmp, fringe_bmp): New variables.
32381         (x_gc_get_ext_data, x_extension_initialize)
32382         (x_cr_destroy_surface, x_begin_cr_clip, x_end_cr_clip)
32383         (x_set_cr_source_with_gc_foreground)
32384         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
32385         (x_cr_destroy_fringe_bitmap, x_cr_draw_image, x_cr_draw_frame)
32386         (x_cr_accumulate_data, x_cr_destroy, x_cr_export_frames)
32387         (x_prepare_for_xlibdraw, x_set_clip_rectangles)
32388         (x_reset_clip_rectangles, x_fill_rectangle, x_draw_rectangle)
32389         (x_clear_window, x_fill_trapezoid_for_relief): New functions.
32390         (x_update_begin): Create cairo surface if needed.
32391         (x_draw_vertical_window_border): Call x_fill_rectangle for cairo.
32392         (x_update_end): Paint cairo drawing surface to xlib surface.
32393         (x_clear_under_internal_border, x_after_update_window_line): Adjust
32394         arguments to x_clear_area.
32395         (x_draw_fringe_bitmap): Call x_fill_rectangle.  Get GC values and
32396         call x_cr_draw_image for cairo.  Call x_reset_clip_rectangles instead
32397         of XSetClipMask.
32398         (x_set_glyph_string_clipping)
32399         (x_set_glyph_string_clipping_exactly): Use x_set_clip_rectangles
32400         instead of XSetClipRectangles.
32401         (x_clear_glyph_string_rect, x_draw_glyph_string_background):
32402         Use x_fill_rectangle instead of XFillRectangle.
32403         (x_draw_glyph_string_foreground)
32404         (x_draw_composite_glyph_string_foreground)
32405         (x_draw_glyphless_glyph_string_foreground): Use x_draw_rectangle
32406         instead of XDrawRectangle.
32407         (x_draw_relief_rect): Add code for USE_CAIRO.
32408         Call x_reset_clip_rectangles instead of XSetClipMask.
32409         (x_draw_box_rect): x_set_clip_rectangles instead of XSetClipRectangles,
32410         x_fill_rectangle instead of XFillRectangle, x_reset_clip_rectangles
32411         instead of XSetClipMask.
32412         (x_draw_image_foreground, x_draw_image_foreground_1):
32413         x_draw_rectangle instead of XDrawRectangle.
32414         (x_draw_glyph_string_bg_rect): x_fill_rectangle instead of
32415         XFillRectangle.
32416         (x_draw_image_glyph_string): If img has cr_data, use it as
32417         a cairo surface.
32418         (x_draw_stretch_glyph_string): x_set_clip_rectangles instead of
32419         XSetClipRectangles, x_fill_rectangle instead of XFillRectangle.
32420         (x_draw_glyph_string): x_fill_rectangle instead of XFillRectangle.,
32421         x_reset_clip_rectangles instead of XSetClipMask.
32422         (x_shift_glyphs_for_insert): Call x_prepare_for_xlibdraw.
32423         (x_clear_area1): New function that calls XClearArea.
32424         (x_clear_area): Takes frame as parameter, calls x_clear_area1 for
32425         non-cairo.
32426         (x_clear_frame): x_clear_window instead of XClearWindow.
32427         (x_scroll_run): Set frame garbaged if cairo.
32428         (XTmouse_position): Initialize *part to 0.
32429         (x_scroll_bar_create): Adjust arguments to x_clear_area.
32430         (x_scroll_bar_set_handle): x_clear_area1 instead of x_clear_area,
32431         x_fill_rectangle instead of XFillRectangle.
32432         (XTset_vertical_scroll_bar, XTset_horizontal_scroll_bar): Adjust
32433         arguments to x_clear_area.
32434         (x_scroll_bar_expose): x_draw_rectangle instead of XDrawRectangle.
32435         (handle_one_xevent): Adjust arguments to x_clear_area.
32436         Destroy cairo surface for frame if ConfigureNotify.
32437         (x_clip_to_row): x_set_clip_rectangles instead of XSetClipRectangles.
32438         (x_draw_hollow_cursor): x_draw_rectangle instead of XDrawRectangle,
32439         x_reset_clip_rectangles instead of XSetClipMask.
32440         (x_draw_bar_cursor): x_fill_rectangle instead of XFillRectangle,
32441         x_reset_clip_rectangles instead of XSetClipMask.
32442         (x_clear_frame_area): Adjust arguments to x_clear_area.
32443         (x_free_frame_resources): Call x_prepare_for_xlibdraw.
32444         (x_term_init): Call x_extension_initialize if cairo.
32445         (x_redisplay_interface): Add x_cr_define_fringe_bitmap,
32446         x_cr_destroy_fringe_bitmap for cairo.
32447         (x_initialize): Call x_cr_init_fringe for cairo.
32448         * src/xterm.h: Add include of cairo header files.
32449         (x_bitmap_record): Add img if cairo.
32450         (x_gc_ext_data): New struct for cairo.
32451         (x_display_info): Add ext_codes for cairo.
32452         (x_output): Add cr_context and cr_surface for cairo.
32453         (x_clear_area): Change arguments from Display*/Window to frame pointer.
32454         (x_query_color, x_begin_cr_clip, x_end_cr_clip)
32455         (x_set_cr_source_with_gc_foreground, x_set_cr_source_with_gc_background)
32456         (x_cr_draw_frame, x_cr_export_frames): Declare.
32458 2015-05-17  Johan Bockgård  <bojohan@gnu.org>
32460         Fix integer-valued `mouse-highlight' (Bug#20590)
32461         * src/xterm.c (handle_one_xevent) [USE_GTK]: Fix ifdef scope.
32463 2015-05-17  Eli Zaretskii  <eliz@gnu.org>
32465         MS-Windows followup for ASCIIfication of curved quotes
32466         * lisp/term/w32console.el (terminal-init-w32console): Repeat the
32467         test for curved quotes being displayable, after switching the
32468         terminal encoding.  (Bug#20545)
32470 2015-05-17  Jan D  <jan.h.d@swipnet.se>
32472         Add comment that x_shift_glyphs_for_insert is never called
32473         * src/xterm.c (x_shift_glyphs_for_insert, x_redisplay_interface):
32474         Add comment that this function is never called.
32476 2015-05-16  Glenn Morris  <rgm@gnu.org>
32478         * src/lisp.mk: Remove from repository and generate at build-time.
32479         * src/Makefile.in (lisp.mk): New rule to generate from loadup.el.
32480         (shortlisp_filter): New variable.
32481         (emacs$(EXEEXT), $(etc)/DOC): Depend on lisp.mk.
32482         (distclean): Remove lisp.mk.
32483         * Makefile.in ($(MAKEFILE_NAME)): No longer depend on src/lisp.mk.
32484         * lisp/loadup.el: Tweak layout to make it easier to parse.
32485         * make-dist: Do not distribute src/lisp.mk.
32487 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
32489         Display shorter dates in Git annotate output
32490         * lisp/vc/vc-git.el (vc-git-annotate-command): Use the short date
32491         format (when not overridden with vc-git-annotate-switches).
32492         (vc-git-annotate-time): Support the short format, as well as ISO
32493         8601 that has been used until now (bug#5428).
32495 2015-05-16  Paul Eggert  <eggert@cs.ucla.edu>
32497         ASCIIfy curved quotes on displays lacking them
32498         * lisp/international/mule-cmds.el (set-locale-environment):
32499         If curved quotes don't work, display straight ASCII approximations
32500         (Bug#20545).
32502 2015-05-16  Glenn Morris  <rgm@gnu.org>
32504         Small src/Makefile simplification
32505         * src/lisp.mk (shortlisp): Rename from lisp, remove $lispsource prefix.
32506         * src/Makefile.in (lisp): Derive from shortlisp.
32507         ($(etc)/DOC): Use $shortlisp rather than parsing lisp.mk.
32509 2015-05-16  Eli Zaretskii  <eliz@gnu.org>
32511         * lisp/help-mode.el (help-go-forward): Doc fix.
32512         (Bug#20577)
32514         * doc/lispref/debugging.texi (Profiling): Improve indexing.
32515         (Bug#20576)
32517 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
32519         * lisp/vc/vc-git.el (vc-git-resolve-when-done): Use `unless' to
32520         have one fewer `not'.
32522         * lisp/vc/vc-git.el (vc-git-diff-switches)
32523         (vc-git-annotate-switches, vc-git-resolve-conflicts)
32524         (vc-git-program, vc-git-root-log-format): Remove the redundant
32525         :group declarations.
32527 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
32529         Removes the predicate from lisp-complete-symbol (Bug#20456)
32530         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol): Do not use predicate
32531         and remove it from the docstring.
32533 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
32535         Add new option vc-git-resolve-conflicts
32536         * lisp/vc/vc-git.el (vc-git-resolve-conflicts): New variable.
32537         (vc-git-find-file-hook): Add to after-save-hook only when the
32538         above is non-nil.
32539         (vc-git-resolve-when-done): Update to honor the new variable.
32540         (Bug#20292)
32542 2015-05-16  Artur Malabarba  <bruce.connor.am@gmail.com>
32544         * lisp/emacs-lisp/tabulated-list.el: Don't error on null header-string.
32545         (tabulated-list-init-header): Document new behavior.
32546         (tabulated-list-print-fake-header): Do nothing if
32547         `tabulated-list--header-string' is nil.
32548         (tabulated-list--header-string): Add a docstring.
32549         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
32550         * etc/NEWS: Document it.
32552 2015-05-15  Leo Liu  <sdl.web@gmail.com>
32554         Revert "Fix cps--gensym"
32555         * lisp/emacs-lisp/generator.el (cps--gensym): Revert commit
32556         fbda511ab8069d0115eafca411a43353b85431b1 on 2015-05-14.
32558 2015-05-15  Glenn Morris  <rgm@gnu.org>
32560         Replace AC_SUBST_FILE in configure with include in Makefiles
32561         * configure.ac (DEPDIR, MKDEPDIR, deps_frag, lwlib_deps_frag)
32562         (oldxmenu_deps_frag, lisp_frag): Remove output variables/files.
32563         (AUTO_DEPEND): New output variable.
32564         * lwlib/Makefile.in (AUTO_DEPEND): New, set by configure.
32565         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
32566         (lwlib_deps_frag): Replace by conditional include.
32567         * lwlib/autodeps.mk: Remove file.
32568         * oldXMenu/Makefile.in (AUTO_DEPEND): New, set by configure.
32569         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
32570         (oldxmenu_deps_frag): Replace by conditional include.
32571         * oldXMenu/autodeps.mk: Remove file.
32572         * src/Makefile.in (AUTO_DEPEND): New, set by configure.
32573         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
32574         (lisp_frag): Replace by an include.
32575         (deps_frag): Replace by conditional include.
32576         * src/autodeps.mk: Remove file.
32578         Tweak japanese.el's loading of dependencies
32579         * lisp/loadup.el: Explicitly load cp51932 and eucjp-ms.
32580         * lisp/language/japanese.el: Use require rather than load.
32581         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
32582         Provide a feature.
32583         * admin/charsets/eucjp-ms.awk, admin/charsets/cp51932.awk:
32584         Provide a feature in the generated file.
32586 2015-05-15  Jan D  <jan.h.d@swipnet.se>
32588         Fix NS warnings
32589         * src/nsmenu.m (ns_popup_dialog)
32590         * src/nsimage.m (initFromXBM:width:height:fg:bg:)
32591         * src/nsfns.m (Fx_create_frame): Remove unused variables.
32592         (Fns_read_file_name): Initialize fname, remove ret.
32593         * src/nsterm.m (ns_draw_window_cursor): Handle DEFAULT_CURSOR in switch.
32594         (ns_get_color, ns_set_horizontal_scroll_bar, keyDown):
32595         Remove unused variable.
32596         (init): Add parantesis in if.
32597         (ns_create_terminal): Assign set_horizontal_scroll_bar_hook.
32599 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
32601         Fix a enum conversion warning in macfont.m
32602         * src/macfont.h (CharacterCollection): Typedef to NSCharacterCollection.
32603         (MAC_CHARACTER_COLLECTION_*): Use the NS variants.
32605 2015-05-15  Eli Zaretskii  <eliz@gnu.org>
32607         * lisp/textmodes/ispell.el (ispell-aspell-find-dictionary):
32608         Support Aspell dictionaries with names like "de-alt".  (Bug#20581)
32610 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
32612         * lisp/cus-start.el: Add ns-confirm-quit.
32614         Fix warnings on OSX 10.10
32615         * src/nsfns.m (MODAL_OK_RESPONSE): New define for different
32616         OSX versions.
32617         (Fns_read_file_name): Check against MODAL_OK_RESPONSE.
32618         (compute_tip_xy): Use convertRectToScreen for OSX >= 10.7
32619         * src/nsmenu.m (initWithContentRect:styleMask:backing:defer:)
32620         * src/nsimage.m (allocInitFromFile, setPixmapData): Only call
32621         setScalesWhenResized for OSX < 10.6.
32622         * src/nsterm.h (EmacsScroller): Declare scrollerWidth.
32623         * src/nsterm.m (ns_copy_bits): New function that does not use
32624         deprecated NSCopyBits.
32625         (ns_scroll_run, ns_shift_glyphs_for_insert): Call ns_copy_bits.
32626         (runAlertPanel): New function.
32627         (applicationShouldTerminate:): Call runAlertPanel.
32628         (initFrameFromEmacs, toggleFullScreen:): Only call
32629         useOptimizedDrawing for OSX < 10.10.
32630         (initFrameFromEmacs:): Only call allocateGState for OSX < 10.10.
32631         (windowWillUseStandardFrame:defaultFrame:): Cast arg to abs to int.
32632         (draggingEntered:): Returns NSDragOperation.
32633         (scrollerWidth): Use scrollerWidthForControlSize for OSX >= 10.7.
32635 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
32637         * lisp/emacs-lisp/package.el: Don't ensure-init during startup.
32638         (package--init-file-ensured): New variable.
32639         (package-initialize, package--ensure-init-file): Use it.
32641 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
32643         Honor :fore/background for XBM on NS (Bug#14969)
32644         * src/nsterm.h (EmacsImage): Add xbm_fg, remove initFromSkipXBM,
32645         initFromXBM takes bg, fg args, remove flip arg.
32646         (ns_image_from_XBM): Add bg, fg args.
32647         * src/image.c (x_create_bitmap_from_data)
32648         (Create_Pixmap_From_Bitmap_Data): ns_image_from_XBM takes bg, fg args.
32649         * src/nsimage.m (ns_image_from_XBM): Add fg, bg args, pass to
32650         initFromXBM.  Remove flip arg.
32651         (initFromSkipXBM): Move code to initFromXBM.
32652         (initFromXBM): Actually set fg and bg, instead of playing alpha games.
32653         Use fg, bg from args (Bug#14969).  Remove if (length) section, was
32654         always false.
32655         Remove bit flipping (bitPat, swt), generated incorrect images when
32656         width/height wasn't a multiple of 8.
32657         (setXBMColor:): Modify planes by comparing to saved xbm_fg.
32658         * src/nsterm.m (ns_draw_fringe_bitmap): initFromXBM takes fg, bg args,
32659         remove flip arg.
32661 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
32663         * lisp/emacs-lisp/package.el: Be more careful with the init file.
32664         (package--ensure-init-file): Check that user-init-file is set,
32665         exists, is readable, and is writable.  (Bug#20584)
32666         Also expand the docstring.
32668 2015-05-14  Wilson Snyder  <wsnyder@wsnyder.org>
32670         Sync with upstream verilog-mode revision 6232468
32671         * lisp/progmodes/verilog-mode.el
32672         (verilog-font-lock-grouping-keywords-face)
32673         (verilog-highlight-grouping-keywords): Fix use of face when
32674         `verilog-highlight-grouping-keywords' set.  Reported by Jeff Pompa.
32675         (verilog-auto-reset): Fix AUTORESET to ignore member resets if
32676         parent is reset, bug906.  Reported by Ken Schmidt.
32677         (verilog-auto-inout-module): Add fourth regexp argument to
32678         AUTOINOUTMODULE and AUTOINOUTCOMP for signals to not match, bug856.
32679         Reported by John Tillema.
32680         (verilog-auto-inst-port): Fix AUTOINST interfaces to not show
32681         modport if signal attachment is itself a modport.  Reported by
32682         Matthew Lovell.
32683         (verilog-auto-reset, verilog-auto-sense-sigs): Fix AUTORESET with
32684         always_comb and always_latch, bug844.  Reported by Greg Hilton.
32685         (verilog-at-constraint-p, verilog-beg-of-statement-1): Fix hanging
32686         with many curly-bracket pairs, bug663.
32687         (verilog-set-auto-endcomments): Fix end comments for functions of
32688         type void, etc.  Reported by Alex Reed.
32689         (verilog-do-indent): Fix electric tab deleting form-feeds.  Note
32690         caused by indent-line-to deleting tabls pre 24.5.
32691         (verilog-nameable-item-re): Fix nameable items that can have an
32692         end-identifier to include endchecker, endgroup, endprogram,
32693         endproperty, and endsequence.  Reported by Alex Reed.
32694         (verilog-label-be): When auto-commenting a buffer, consider
32695         auto-comments on all known keywords (not just a subset thereof).
32696         Reported by Alex Reed.
32697         (verilog-auto-end-comment-lines-re)
32698         (verilog-end-block-ordered-re, verilog-set-auto-endcomments):
32699         Automatically comment property/endproperty blocks to match other
32700         similar blocks like sequence/endsequence, function/endfunction, etc.
32701         Reported by Alex Reed.
32702         (verilog-set-auto-endcomments): Detect the function- or task-name
32703         when auto-commenting blocks that lack an explicit portlist.
32704         Reported by Alex Reed.
32705         (verilog-auto, verilog-auto-insert-last): Add AUTOINSERTLAST to
32706         allow post-AUTO user fixups, bug826.  Reported by Dennis Muhlestein.
32707         (verilog-no-indent-begin-re): When `verilog-indent-begin-after-if'
32708         is nil, fix indenting initial/final to match always statements,
32709         bug825.  Reported by Tim Clapp.
32710         (verilog-extended-complete-re): Fix indentation of DPI-C imports
32711         with c_identifiers, and DPI-C imports, bug557.  Reported by ZeDong
32712         Mao and Jason Forkey.
32713         (verilog-read-decls): Fix parsing typed interfaces.  Fix
32714         AUTOINOUTMODPORT missing types.  Reported by Stephan Bourduas.
32715         Fix localparam not being ignored in AUTOINSTPARAM,
32716         bug889.  Reported by Shannon Hill.
32717         (verilog-auto-output-every): Add regexp to AUTOOUTPUTEVERY,
32718         bug793.  Reported by Pierre-David Pfister.
32719         (verilog-auto-arg-format, verilog-auto-arg-ports):
32720         Add verilog-auto-arg-format to support newlines in AUTOARG.
32721         Reported by Jie Xiao.
32722         (verilog-batch-execute-func): Do not batch re-auto files loaded by
32723         Local Variables.  Fix printing "no changes to be saved" with
32724         verilog-batch.  Reported by Dan Dever.
32725         (verilog-auto-inout-module): Fix AUTOINOUTMODULE not inserting
32726         interface-only modules, bug721.  Reported by Dean Hoyt.
32727         Author: Alex Reed <acreed4@gmail.com>
32728         * lisp/progmodes/verilog-mode.el (verilog-beg-of-statement):
32729         Don't treat '<keyword>:<identifier>' as the start of a labeled
32730         statement, bug905.  Reported by Enzo Chi.
32731         (verilog-directive-re, verilog-compiler-directives)
32732         (verilog-keywords): Match full set of IEEE 2012-1800 compiler
32733         directives (plus some extras) when determining indentation, bug
32734         901.  Reported by Bernd Beuster.
32735         (verilog-at-constraint-p): Fix indentation of coverpoint bins if
32736         iff expression doesn't start with word-character, bug900.
32737         (verilog-optional-signed-range-re, verilog-optional-signed-re):
32738         Fix incorrect indentation/alignment of unsigned declarations,
32739         bug897.
32740         (verilog-looking-back, verilog-in-attribute-p): Fix labeling of
32741         always constructs, bug895.
32742         (verilog-calc-1): Fix verilog-mode constraint indentation, bug324.
32743         Reported by Eric Mastromarchi.
32744         (verilog-beg-of-statement): Fix indenting for some forms of
32745         constraintsm bug433.  Reported by Brad Parker.  Fix indentation of
32746         continued assignment incorrect if first line ends with ']', bug437.
32747         Reported by Dan Dever.  Fix indention of cover inside an
32748         ifdef, bug 862.  Reported by Bernd Beuster.  Fix labeling do-while
32749         blocks, bug842.
32750         (verilog-preprocessor-re): Fix fork/end UNMATCHED warning, bug859.
32751         Reported by Kaushal Modi.
32752         (verilog-set-auto-endcomments): Fix endlabel end comments, bug888.
32753         (verilog-backward-token): Fix indenting sensitivity lists with
32754         named events, bug840.  Reed.
32755         (verilog-no-indent-begin-re): Fix `verilog-indent-begin-after-if'
32756         nil not honoring 'forever', 'foreach', and 'do' keywords.
32758 2015-05-14  Paul Eggert  <eggert@cs.ucla.edu>
32760         Check for invalid GTK+ monitor scales
32761         * src/gtkutil.c (xg_get_gdk_scale): Return 1 for invalid scales,
32762         INT_MAX for too-large scales.  All callers changed to assume the
32763         result is valid (Bug#20432).
32764         (xg_frame_set_char_size, xg_update_scrollbar_pos):
32765         Calculate scale only if needed.
32766         Show ASCII approximations instead.
32768 2015-05-14  Eli Zaretskii  <eliz@gnu.org>
32770         Fix daemon crashes when linum-mode is turned on early on
32771         * src/window.c (Fwindow_end): Don't try calling display engine
32772         functions on initial-frame frame.  (Bug#20565)
32774         Fix selective diff browsing in Ediff
32775         * lisp/vc/ediff-util.el (ediff-focus-on-regexp-matches):
32776         Go to the beginning of the region before searching for the
32777         ediff-regexp-focus-* regexps.  (Bug#20568)
32779 2015-05-14  Jan D  <jan.h.d@swipnet.se>
32781         Fixes bug#20142
32782         * src/gtkutil.c (delete_cb): Don't send delete event here, it does
32783         arrive in the main loop, even for Gtk 3 (Bug#20142).
32785         Don't access display after i/o error (Bug#19147).
32786         * src/xterm.c (x_connection_closed): Add third arg ioerror.
32787         If ioerror, set display to 0 (Bug#19147).
32788         (x_error_quitter): Call x_connection_closed with third arg false.
32789         (x_io_error_quitter): Call x_connection_closed with third arg true.
32791         Handle GTK_SCALE, fixes Bug#20432.
32792         * src/gtkutil.c (xg_get_gdk_scale): New function.
32793         (xg_frame_set_char_size)
32794         (x_wm_set_size_hint, xg_get_default_scrollbar_width)
32795         (xg_get_default_scrollbar_height)
32796         (xg_update_horizontal_scrollbar_pos): Take GTK_SCALE in to account
32797         when setting sizes (Bug#20432).
32799 2015-05-13  Leo Liu  <sdl.web@gmail.com>
32801         * lisp/emacs-lisp/generator.el (cps--gensym): Fix.
32803 2015-05-13  Glenn Morris  <rgm@gnu.org>
32805         Fix bootstrap (void function cl-member).
32806         * lisp/emacs-lisp/cl-lib.el: Load cl-seq if no cl-loaddefs file.
32807         * lisp/emacs-lisp/cl-seq.el: Provide a feature.
32809 2015-05-13  Stefan Monnier  <monnier@iro.umontreal.ca>
32811         * lisp/loadup.el ("emacs-lisp/cl-generic"): Preload
32812         * src/lisp.mk (lisp): Add emacs-lisp/cl-generic.elc.
32813         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method):
32814         Avoid defalias for closures which are not immutable.
32815         (cl--generic-prefill-dispatchers): New macro.  Use it to prefill
32816         the dispatchers table with various entries.
32817         * lisp/emacs-lisp/ert.el (emacs-lisp-mode-hook):
32818         * lisp/emacs-lisp/seq.el (emacs-lisp-mode-hook): Use add-hook.
32820 2015-05-13  Eli Zaretskii  <eliz@gnu.org>
32822         Improve tagging of C bindings in DEFVAR_*
32823         * src/Makefile.in (TAGS): Add --regex options to tag the C binding
32824         from DEFVAR_*.
32826 2015-05-13  Paul Eggert  <eggert@cs.ucla.edu>
32828         * src/editfns.c (Fformat): Fix use-after-free bug (Bug#20548).
32830 2015-05-12  Glenn Morris  <rgm@gnu.org>
32832         * lisp/progmodes/tcl.el (tcl-filter):
32833         Handle comint-prompt-read-only like gud.el does.  (Bug#20549)
32835         Add basic VC push support
32836         * lisp/vc/vc.el (vc-push): New autoloaded command.
32837         * lisp/vc/vc-hooks.el (vc-prefix-map, vc-menu-map): Add vc-push.
32838         * lisp/vc/vc-bzr.el (vc-bzr--pushpull): New, factored from vc-bzr-pull.
32839         (vc-bzr-pull): Reimplement using vc-bzr--pushpull.
32840         (vc-bzr-push): New.
32841         * lisp/vc/vc-git.el (vc-git--pushpull): New, factored from vc-git-pull.
32842         (vc-git-pull): Reimplement using vc-git--pushpull.
32843         (vc-git-push): New.
32844         * lisp/vc/vc-hg.el (vc-hg--pushpull): New, factored from vc-hg-pull.
32845         (vc-hg-pull, vc-hg-push): Reimplement using vc-hg--pushpull.
32846         * doc/emacs/maintaining.texi (Pulling / Pushing):
32847         Rename from "VC Pull".  Mention pushing.
32848         (VC With A Merging VCS, VC Change Log): Update xrefs.
32849         (Branches): Update menu.
32850         * doc/emacs/emacs.texi: Update menu.
32851         * etc/NEWS: Mention this.
32853 2015-05-12  Nicolas Petton  <nicolas@petton.fr>
32855         Improve the seq pcase pattern and the `seq-let' macro
32856         * lisp/emacs-lisp/seq.el: The pcase pattern now matches only if the
32857         object is a sequence, and binds each element of ARGS to the
32858         corresponding element of the sequence.
32860 2015-05-12  Eli Zaretskii  <eliz@gnu.org>
32862         Fix tags created from DEFVAR_* declarations in C
32863         * src/Makefile.in (TAGS): Improve the --regex argument to etags,
32864         to make tags extracted from DEFVAR_* declarations more accurate.
32866         Add a test suite for etags
32867         * test/etags/: New test suite, adapted from
32868         http://fly.isti.cnr.it/pub/software/unix/etags-regression-test.tar.bz2,
32869         whose original author is Francesco Potortì <pot@gnu.org>.
32871         Fix tagging of symbols in C enumerations
32872         * lib-src/etags.c (consider_token): Don't tag symbols in
32873         expressions that assign values to enum constants.  See
32874         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00291.html
32875         for details.
32876         (C_entries): Reset fvdef to fvnone after processing a preprocessor
32877         conditional and after a comma outside of parentheses.
32879 2015-05-12  Glenn Morris  <rgm@gnu.org>
32881         * lisp/url/url-handlers.el (url-file-name-completion)
32882         (url-file-name-all-completions): Silence compiler.
32884         * lisp/emacs-lisp/chart.el (chart-axis-draw): Replace obsolete alias.
32886         * lisp/play/dunnet.el (dun-dos-boot-msg): Fix time.  (Bug#20554)
32888 2015-05-12  Stefan Monnier  <monnier@iro.umontreal.ca>
32890         * lisp/emacs-lisp/cl-generic.el: Add dispatch on &context arguments
32891         (cl--generic-mandatory-args): Remove.
32892         (cl--generic-split-args): New function.
32893         (cl-generic-define, cl--generic-lambda): Use it.
32894         (cl-generic-define-method): Use it as well, and add support for
32895         context args.
32896         (cl--generic-get-dispatcher): Handle &context dispatch.
32897         (cl--generic-cache-miss): `dispatch-arg' can now be a
32898         context expression.
32899         (cl--generic-dispatchers): Pre-fill.
32900         * test/automated/cl-generic-tests.el (sm-generic-test-12-context):
32901         New test.
32903 2015-05-11  Glenn Morris  <rgm@gnu.org>
32905         * make-dist: Abort if "make ChangeLog" fails.  Add "--no-changelog".
32907 2015-05-11  Stefan Monnier  <monnier@iro.umontreal.ca>
32909         * lisp/term/xterm.el: Fix xterm-paste handling for rxvt
32910         * lisp/term/rxvt.el: Require term/xterm.
32911         (rxvt-function-map): Use xterm-rxvt-function-map.
32912         (rxvt-standard-colors): Move before first use.
32913         (terminal-init-rxvt): Use xterm--push-map and
32914         xterm-register-default-colors.
32915         (rxvt-rgb-convert-to-16bit, rxvt-register-default-colors): Remove.
32916         * lisp/term/xterm.el (xterm-rxvt-function-map): New var.
32917         Move shared bindings between rxvt and xterm to it.
32918         (xterm-function-map): Use it.  Move the xterm-paste binding to
32919         xterm-rxvt-function-map (bug#20444).
32920         (xterm-standard-colors): Move before first use.
32921         (xterm--push-map): New function.
32922         (xterm-register-default-colors): Take standard colors as argument.
32923         (terminal-init-xterm): Use it.  Adjust call to
32924         xterm-register-default-colors.
32926 2015-05-11  Glenn Morris  <rgm@gnu.org>
32928         * lisp/term/x-win.el: Quieten --without-x compilation.
32929         (x-own-selection-internal, x-disown-selection-internal)
32930         (x-selection-owner-p, x-selection-exists-p, x-get-selection-internal):
32931         Declare.
32933         * Makefile.in (emacslog): Remove srcdir.
32934         (ChangeLog): Update for the above.
32936 2015-05-10  Fabián Ezequiel Gallina  <fgallina@gnu.org>
32938         python.el: better limit for looking-back calls
32939         * lisp/progmodes/python.el (python-shell-accept-process-output):
32940         Use last comint prompt start as limit for looking-back.
32942 2015-05-10  Stefan Monnier  <monnier@iro.umontreal.ca>
32944         CEDET (srecode-insert-fcn): Fix use of oref on a class
32945         * lisp/cedet/srecode/insert.el (srecode-insert-fcn): Fix use of oref
32946         on a class.  Reported by Pierre Lorenzon.
32947         (srecode-template-inserter-point): Remove declaration.
32949         CEDET (srecode-create-dictionary): Avoid obsolete object name
32950         * lisp/cedet/srecode/dictionary.el (srecode-create-dictionary):
32951         Don't use a symbol as an object name.  Reported by Pierre Lorenzon.
32953 2015-05-10  Paul Eggert  <eggert@cs.ucla.edu>
32955         C-x 8 shorthands for curved quotes, Euro, etc.
32956         Although C-x 8 lets you insert arbitrary Unicode characters,
32957         it's awkward to use this to insert commonly used symbols such as curved
32958         quotes, the Euro symbol, etc.  This patch adds simpler sequences for
32959         characters commonly found in English text and in basic math.
32960         For example, assuming the Alt key works on your keyboard and iso-transl
32961         is loaded, one can now type "A-[" instead of "A-RET LEFT SIN TAB RET"
32962         to get the character "‘" (U+2018 LEFT SINGLE QUOTATION MARK).
32963         (Bug#20499)
32964         * doc/emacs/mule.texi (Unibyte Mode):
32965         A few other printing characters now work too.
32966         * etc/NEWS: Document this.
32967         * lisp/international/iso-transl.el (iso-transl-char-map):
32968         Also support the following characters:
32969         ‐ ‑ ‒ – — ― ‘ ’ “ ” † ‡ • ′ ″ € № ← → ↔ − ≈ ≠ ≤ ≥
32971 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
32973         Add xref-find-regexp
32974         * lisp/progmodes/xref.el (xref-find-function): Describe the
32975         `matches' action.
32976         (xref-find-regexp): New command, using it.
32977         (xref-collect-references): Rename to xref-collect-matches.
32978         (xref--collect-reference): Rename to xref--collect-match.
32979         (xref-collect-matches, xref--collect-match): Accept new argument,
32980         KIND.  Update accordingly.
32981         (xref--regexp-to-extended): New function.
32982         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Support the
32983         `matches' action.
32984         (elisp--xref-find-matches): Accept new argument.  Resolve a FIXME.
32985         * lisp/progmodes/etags.el (etags-xref-find):
32986         Support the `matches' action.
32987         (etags--xref-find-matches): New function.
32989 2015-05-10  Glenn Morris  <rgm@gnu.org>
32991         * Makefile.in: Fixes for recent change-history changes.
32992         (change-history-nocommit): Update footer regexp.
32993         Ensure output script stays executable.
32995 2015-05-10  Nicolas Petton  <nicolas@petton.fr>
32997         New version of `seq-let' based on a pcase pattern
32998         * lisp/emacs-lisp/seq.el (seq-let): Define the macro in terms of a
32999         pcase pattern if `pcase-defmacro' is defined (Emacs>=25.1).
33001 2015-05-10  Przemysław Wojnowski  <esperanto@cumego.com>
33003         Add basic HTML5 tags and a template
33004         * lisp/textmodes/sgml-mode.el: Basic HTML5 support.
33005         (html-tag-alist): Add HTML5 tags.
33006         (html-tag-help): Add new tags descriptions.
33007         (html-navigational-links): Template for nav links.
33008         (html-html5-template): Template for a HTML5 page.
33010 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
33012         semantic/symref/grep: Don't use word boundaries
33013         * lisp/cedet/semantic/symref/grep.el
33014         (semantic-symref-perform-search): Instead of wrapping input in
33015         word boundaries, check that the characters before and after are
33016         not word constituents.
33018         semantic/symref/grep: Support regexp search
33019         * lisp/cedet/semantic/symref.el
33020         (semantic-symref-hit-to-tag-via-buffer): Don't regexp-quote when
33021         the search type is regexp.
33022         * lisp/cedet/semantic/symref/grep.el
33023         (semantic-symref-perform-search): Support the regexp search type.
33024         Pass -E to Grep when it's used.
33026         semantic-symref-regexp: Allow to input an arbitrary string
33027         * lisp/cedet/semantic/symref/list.el (semantic-symref-regexp):
33028         Allow to input an arbitrary string interactively.
33030         Remove tag-symbol-match-p from etags-xref-find-definitions-tag-order
33031         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
33032         Remove tag-symbol-match-p from the default value
33033         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00292.html).
33035         Declare find-tag obsolete
33036         * lisp/progmodes/etags.el (find-tag): Declare obsolete in favor of
33037         xref-find-definitions.
33039 2015-05-10  Jan D  <jan.h.d@swipnet.se>
33041         Draw composite string correctly (Bug#20537)
33042         * src/nsterm.m (ns_draw_composite_glyph_string_foreground):
33043         New function.
33044         (ns_draw_glyph_string): Call it.
33046 2015-05-09  Eli Zaretskii  <eliz@gnu.org>
33048         Avoid infloop in ERC
33049         * lisp/simple.el (line-move-to-column): Ignore field boundaries
33050         while computing line beginning position.  (Bug#20498)
33052 2015-05-08  Glenn Morris  <rgm@gnu.org>
33054         * Makefile.in (ChangeLog): No longer pass "srcprefix"; cd instead.
33055         * build-aux/gitlog-to-emacslog: Check called from right directory.
33056         (srcprefix): Remove.
33058         * build-aux/gitlog-to-emacslog: Get rid of "distprefix".
33059         * Makefile.in (ChangeLog): No longer pass "distprefix".
33060         * make-dist: Update "make ChangeLog" syntax for the above change.
33062         * build-aux/gitlog-to-emacslog: Don't hard-code "ChangeLog.2".
33063         * Makefile.in (ChangeLog): Pass -n to gitlog-to-emacslog.
33065         * build-aux/gitlog-to-emacslog: Add "for earlier changes" to footer.
33067         Add command-line option-parsing to gitlog-to-emacslog
33068         * build-aux/gitlog-to-emacslog: Add command-line options.
33069         By default, refuse to remove an existing output file.
33070         * Makefile.in (CHANGELOG): Update default.
33071         (ChangeLog): Do not test for existing file.
33072         (change-history-nocommit): Ensure temp file does not exist.
33074         Quieten --without-x compilation
33075         * lisp/term/common-win.el: Provide a feature.
33076         * lisp/term/x-win.el (term/common-win): Require it.
33078         * lisp/dired-aux.el (dired-do-print): Require lpr.
33080         Quieten compilation, eg in --without-x builds
33081         * lisp/dired-aux.el (lpr-printer-switch):
33082         * lisp/frame.el (tool-bar-height):
33083         * lisp/linum.el (font-info):
33084         * lisp/window.el (font-info, overflow-newline-into-fringe)
33085         (tool-bar-height):
33086         * lisp/emacs-lisp/package-x.el (tar-data-buffer):
33087         * lisp/gnus/gnus-util.el (iswitchb-mode):
33088         * lisp/mail/rmailmm.el (libxml-parse-html-region):
33089         * lisp/net/nsm.el (gnutls-peer-status)
33090         (gnutls-peer-status-warning-describe):
33091         * lisp/net/shr.el (libxml-parse-xml-region):
33092         * lisp/url/url-http.el (gnutls-peer-status): Declare.
33094 2015-05-08  Stefan Monnier  <monnier@iro.umontreal.ca>
33096         CEDET (srecode-pop, srecode-peek): Don't use `subclass'
33097         * lisp/cedet/srecode/insert.el (srecode-pop, srecode-peek): Don't use
33098         `subclass' since they're never called with a class.
33099         (srecode-insert-method, srecode-insert-subtemplate): Avoid obsolete
33100         srecode-dictionary-child-p.
33102 2015-05-08  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
33104         * lisp/help.el (help--binding-locus): Document argument POSITION.
33105         (Bug#20530)
33107 2015-05-08  Paul Eggert  <eggert@cs.ucla.edu>
33109         Merge from gnulib
33110         * doc/misc/texinfo.tex: Get latest version.
33112 2015-05-08  Oleh Krehel  <ohwoeowho@gmail.com>
33114         ffap.el (ffap-read-file-or-url): Fix completing-read call
33115         * lisp/ffap.el (ffap-read-file-or-url): The HIST argument of
33116         `completing-read' should be a symbol.
33118 2015-05-08  Eli Zaretskii  <eliz@gnu.org>
33120         Verify file modifications by other programs
33121         * src/filelock.c (lock_file): Check whether the file was modified
33122         since it was visited even if 'create-lockfiles' is nil.  (Bug#18828)
33124         Fix keyboard macros that include function keys
33125         * src/keyboard.c (read_char_minibuf_menu_prompt): Record function
33126         keys in the macro before returning.  (Bug#20454)
33128 2015-05-08  Glenn Morris  <rgm@gnu.org>
33130         * build-aux/gitlog-to-changelog: Treat "Tiny-change" like
33131         "Copyright-paperwork-exempt".  (Bug#20324)
33133         * lisp/vc/log-edit.el: Handle "(tiny change)".  (Bug#20324)
33134         (log-edit-rewrite-tiny-change): New variable.
33135         (log-edit-insert-changelog): Maybe add "Copyright-paperwork-exempt".
33136         (log-edit-changelog-ours-p): Set log-edit-author to a cons.
33137         * etc/NEWS: Mention this.
33139         * lisp/calc/calc.el (math-zerop): Declare.
33141         * lisp/emacs-lisp/eieio-opt.el (help-fns-short-filename): Declare.
33143 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
33145         * lisp/emacs-lisp/subr-x.el (if-let): Fix debug spec.
33146         Support the case when BINDINGS is a single tuple.  (Bug#20525)
33148         * etc/NEWS: Fix typo in previous commit
33149         (14bb519f1034ddb38ce375cbad7095d9b07f8b26).
33151 2015-05-07  Jan D  <jan.h.d@swipnet.se>
33153         * configure.ac: Warn for multiple display crash for all Gtk+ versions.
33154         Output URL to Gtk+ bug (Bug#20452).
33156         * lisp/term/ns-win.el (ns-paste-secondary): Use gui-get-selection.
33158 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
33160         * lisp/emacs-lisp/package.el: New "external" package status.
33161         An external package is any installed package that's not built-in
33162         and not from `package-user-dir', which usually means it's from an
33163         entry in `package-directory-list'.  They are treated much like
33164         built-in packages, in that they cannot be through the Package Menu
33165         deleted and are not considered for upgrades.
33166         (package-desc-status): Identify if a package is installed outside
33167         `package-user-dir'.
33168         (package-menu--print-info-simple)
33169         (package-menu--status-predicate): Add support for it.
33170         * etc/NEWS: Document it.
33172 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
33174         * lisp/mail/rmail.el: Use lexical-binding.
33175         (rmail-bury): Remove unused var `buffer-to-bury'.
33176         (rmail-get-new-mail): Remove unused vars `opoint' and `success'.
33177         (rmail-parse-url): Remove unused var `proto', `user', and `host'.
33178         (rmail-unrmail-new-mail-maybe): Remove unused var `new-file'.
33179         (rmail-insert-inbox-text): Remove unused var `movemail'.
33180         (rmail-add-mbox-headers): Remove unused var `limit'.
33181         (rmail-undelete-previous-message): Remove unused var `value'.
33182         (rmail-reply): Remove unused vars `resent-to', `resent-cc',
33183         `resent-reply-to'.
33184         (rmail-mime-mbox-buffer, rmail-mime-view-buffer): Declare.
33185         (rmail-restore-desktop-buffer): Rename arguments.
33187 2015-05-06  Glenn Morris  <rgm@gnu.org>
33189         * Makefile.in (change-history-commit): Add missing piece of previous.
33191         Avoid unnecessary bumping of Makefile.in's timestamp
33192         * Makefile.in (gen_origin): Move to gitlog-to-emacslog.
33193         (emacslog): New variable.
33194         (ChangeLog): Use $emacslog.  Don't pass $gen_origin.
33195         (unchanged-history-files): Use $emacslog rather than Makefile.in.
33196         (change-history-nocommit): Store hash in $emacslog.
33197         * build-aux/gitlog-to-emacslog (gen_origin): Move default here.
33198         * admin/update_autogen (changelog_files): Update for the above.
33200         * Makefile.in: Don't always insist on removing existing "ChangeLog".
33201         (CHANGELOG): New variable.
33202         (no-ChangeLog): Remove.
33203         (ChangeLog): Replace "no-ChangeLog"; pass output file to script.
33204         (change-history-nocommit): Use a temp file rather than insisting
33205         on deletion of any existing "ChangeLog".
33207         * build-aux/gitlog-to-emacslog: Allow specification of output.
33209         * admin/update_autogen: Add option to update ChangeLog.
33210         (usage): Mention -H.
33211         (changelog_flag, changelog_n, changelog_files): New variables.
33212         (main): Check for -H, and maybe run change-history-nocommit.
33214 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
33216         * lisp/subr.el (delete-dups): Pre-size the hashtable.
33218         * lisp/emacs-lisp/cl.el (define-modify-macro): Make sure
33219         cl--arglist-args is defined (bug#20517).
33221 2015-05-06  Glenn Morris  <rgm@gnu.org>
33223         * Makefile.in (change-history-nocommit): New.
33225 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
33227         * lisp/cedet/pulse.el (pulse-momentary-unhighlight): Only cancel
33228         timer when it is non-nil
33229         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00223.html).
33231 2015-05-06  Glenn Morris  <rgm@gnu.org>
33233         Quieten CEDET compilation
33234         * lisp/cedet/semantic/db-el.el (semanticdb-elisp-sym->tag):
33235         Invert fboundp test to quieten on current Emacs.
33236         * lisp/cedet/ede/config.el (ede-shell-run-something)
33237         (semanticdb-file-table-object, semanticdb-needs-refresh-p)
33238         (semanticdb-refresh-table): Declare.
33239         (ede-preprocessor-map): Require semantic/db.
33241         Quieten cc-mode compilation
33242         * lisp/progmodes/cc-awk.el (c-forward-sws):
33243         * lisp/progmodes/cc-cmds.el (c-forward-subword, c-backward-subword):
33244         Declare.
33246 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
33248         * lisp/subr.el (delete-dups): Avoid nreverse.
33250 2015-05-06  Artur Malabarba  <bruce.connor.am@gmail.com>
33252         * lisp/subr.el (delete-dups): Make it destructive again.
33254 2015-05-06  Paul Eggert  <eggert@cs.ucla.edu>
33256         * doc/lispref/sequences.texi (Sequence Functions): Fix quoting.
33258 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
33260         * lisp/emacs-lisp/testcover.el: Don't use edebug--read (bug#20487).
33261         * lisp/emacs-lisp/testcover.el: Use lexical-binding.
33262         (testcover--read): Rename from testcover-read.  Change calling
33263         convention.  Use edebug-read-and-maybe-wrap-form now that edebug-read
33264         is gone.
33265         (testcover-start): Use add-function.  Move edebug-all-defs binding to
33266         testcover--read.
33267         (testcover-this-defun): Tighten scope of edebug-all-defs binding.
33268         (testcover-mark): Remove unused var `item'.
33269         * src/lread.c (syms_of_lread): Default load-read-function to `read'.
33271 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
33273         * lisp/subr.el (delete-dups): When there are more than 100 candidates,
33274           use a hash table.  This can result in ~500 times speed-up for typical
33275           collections of size 5000, like that of `load-library'.
33277 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
33279         CEDET: Avoid `oref' on classes in a few more cases
33280         * lisp/cedet/ede/generic.el (ede-find-target):
33281         * lisp/cedet/ede.el (ede-project-forms-menu): Avoid `oref' on classes.
33282         * lisp/cedet/semantic/bovine/gcc.el (semantic-gcc-setup): Remove unused
33283         var `prefix'.
33285         * lisp/cedet/semantic/symref/grep.el: Fix unused var warnings.
33286         (grepflags, greppattern): Declare.
33287         (semantic-symref-perform-search): Remove unused var `pat'.
33289         CEDET (srecode-compile-inserter): Avoid `oref' on classes
33290         * lisp/cedet/srecode/compile.el (srecode-compile-inserter):
33291         Avoid `oref' on classes (bug#20491).
33292         (srecode-compile-split-code): Remove unused var `key'.
33294 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
33296         Clean up pulse.el a little
33297         * lisp/cedet/pulse.el (pulse): Remove.
33298         (pulse-momentary-timer): Save instead of the stop time.
33299         (pulse-momentary-highlight-overlay):
33300         Call pulse-momentary-unhighlight first thing.
33301         Treat pulse-momentary-overlay as a single value, not a list.
33302         Save the created timer.  Only pass the stop time to the timer.
33303         (pulse-tick): Update accordingly.
33304         (pulse-momentary-unhighlight): Treat pulse-momentary-overlay as a
33305         single value.  Cancel the timer.
33307 2015-05-06  Tassilo Horn  <tsdh@gnu.org>
33309         * lisp/textmodes/reftex-cite.el (reftex-format-bib-entry):
33310         Support the biblatex journaltitle field.
33312 2015-05-05  Glenn Morris  <rgm@gnu.org>
33314         Minor declare-function improvement
33315         * lisp/emacs-lisp/bytecomp.el
33316         (byte-compile-macroexpand-declare-function):
33317         Handle declarations after calls.  (Bug#20509)
33319         * lisp/progmodes/js.el (js--optimize-arglist): Remove declaration.
33321         * lisp/w32-fns.el (w32-shell-name): Silence compiler.
33323 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
33325         Pulse using a timer
33326         * lisp/cedet/pulse.el (pulse-momentary-stop-time): New variable.
33327         (pulse-momentary-highlight-overlay): Set up the timer instead of
33328         calling `pulse'
33329         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/).
33330         (pulse-tick): New function.
33331         (pulse-momentary-unhighlight): Cut off the stop time.
33332         (pulse-delay): Update the docstring WRT to not using sit-for.
33334         Add semantic/symref/grep file patterns for ruby-mode
33335         * lisp/cedet/semantic/symref/grep.el
33336         (semantic-symref-filepattern-alist): Add patterns for ruby-mode.
33337         Clarify the docstring.
33339         Don't require match
33340         * lisp/progmodes/xref.el (xref--read-identifier): Don't require
33341         match.  That doesn't work for every command, and some identifier
33342         completion tables are bound to be imperfect anyway.
33344 2015-05-05  Stefan Monnier  <monnier@iro.umontreal.ca>
33346         * lisp/cedet/semantic/grammar.el: Fix compiler warnings (bug#20505).
33347         (semantic-grammar--template-expand): New function.
33348         (semantic-grammar-header, semantic-grammar-footer): Use it.
33349         (semantic-grammar--lex-block-specs): Remove unused var `block-spec'.
33350         (semantic-grammar-file-regexp): Refine regexp.
33351         (semantic-grammar-eldoc-get-macro-docstring):
33352         Use elisp-get-fnsym-args-string when available.
33353         (semantic-idle-summary-current-symbol-info): Use new elisp-* names
33354         instead of the old eldoc-* names.
33355         * lisp/emacs-lisp/eldoc.el (eldoc-docstring-format-sym-doc): Move back
33356         from elisp-mode.el.  Tweak calling convention.
33357         * lisp/progmodes/elisp-mode.el (package-user-dir): Declare.
33358         (elisp-get-fnsym-args-string): Add `prefix' argument.  Rename from
33359         elisp--get-fnsym-args-string.
33360         (elisp--highlight-function-argument): Add `prefix' arg.
33361         (elisp-get-var-docstring): Rename from elisp--get-var-docstring.
33362         (elisp--docstring-format-sym-doc): Move back to eldoc.el.
33364 2015-05-05  Glenn Morris  <rgm@gnu.org>
33366         * lisp/help-fns.el (describe-function-1):
33367         Handle builtins with advertised calling conventions.  (Bug#20479)
33369 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
33371         Merge branch 'seq-let'
33373         Update `seq-let' documentation
33374         * doc/lispref/sequences.texi: Update the documentation of `seq-let'
33375         with the support of  `&rest'.
33377         Add support for &rest in `seq-let'
33378         * lisp/emacs-lisp/seq.el (seq--make-bindings): Add support for `&rest'
33379         in the argument list.
33380         * test/automated/seq-tests.el: Add a test for parsing and binding
33381         `&rest' in `seq-let'.
33383 2015-05-05  Pierre Lorenzon  <devel@pollock-nageoire.net>  (tiny change)
33385         * lisp/emacs-lisp/eieio-custom.el (eieio-object-value-get):
33386         Add missing increment (Bug#20467).
33387         (eieio-object-value-create): Adjust to new slots representation
33388         (Bug#20467).
33389         (eieio-object-value-create): Fix missed adjustment to new
33390         representation of slots metadata.
33392 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
33394         * lisp/emacs-lisp/seq.el (seq--make-bindings): Improve the docstring.
33396 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
33398         Work around "Attempt to modify read-only object"
33399         * lisp/progmodes/elisp-mode.el (elisp--xref-format): Extract from
33400         elisp--xref-find-definitions, to work around "Attempt to modify
33401         read-only object" error.
33403         Only skip some variables that have function counterparts
33404         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
33405         Only skip minor-mode-named variable if it's defined in a Lisp
33406         file, and it's in minor-mode-list (bug#20506).
33407         * test/automated/elisp-mode-tests.el
33408         (elisp-xref-finds-both-function-and-variable)
33409         (elisp-xref-finds-only-function-for-minor-mode): New tests.
33411 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
33413         * lisp/progmodes/xref.el (xref--location-at-point): Revert the
33414         previous change.
33415         (xref--insert-xrefs): Buttonize the whole line, including the
33416         number at the beginning.
33418         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
33419         Make sure we're inside the let bindings.
33420         * test/automated/elisp-mode-tests.el
33421         (elisp-completes-functions-after-let-bindings): New test.
33423 2015-05-04  Glenn Morris  <rgm@gnu.org>
33425         * lisp/cedet/semantic/grammar.el (eldoc-function-argstring)
33426         (eldoc-docstring-format-sym-doc, eldoc-last-data-store)
33427         (eldoc-get-fnsym-args-string, eldoc-get-var-docstring):
33428         Remove outdated declarations.
33430         Replace instances of "(eval-when-compile (autoload ...))"
33431         * lisp/gnus/gnus-art.el (nneething-get-file-name):
33432         Declare rather than autoload.
33433         * lisp/gnus/gnus-async.el (gnus-html-prefetch-images):
33434         Remove pointless autoload.
33435         * lisp/gnus/gnus-sync.el (gnus-group-topic): Autoload at run-time.
33436         (gnus-topic-create-topic, gnus-topic-enter-dribble):
33437         Declare rather than autoload.
33438         * lisp/gnus/mm-archive.el (gnus-recursive-directory-files)
33439         (mailcap-extension-to-mime): Autoload at run-time.
33440         * lisp/gnus/mm-util.el (latin-unity-massage-name)
33441         (latin-unity-maybe-remap, latin-unity-representations-feasible-region)
33442         (latin-unity-representations-present-region):
33443         Declare rather than autoload.
33444         * lisp/gnus/mml-smime.el (epg-make-context)
33445         (epg-passphrase-callback-function): Autoload at run-time.
33446         (epg-context-set-signers, epg-context-result-for)
33447         (epg-new-signature-digest-algorithm)
33448         (epg-verify-result-to-string, epg-list-keys, epg-verify-string)
33449         (epg-sign-string, epg-encrypt-string)
33450         (epg-context-set-passphrase-callback, epg-sub-key-fingerprint)
33451         (epg-configuration, epg-expand-group, epa-select-keys):
33452         Declare rather than autoload.
33453         * lisp/gnus/nnir.el (nnimap-change-group, nnimap-make-thread-query):
33454         Autoload at run-time.
33455         (gnus-group-topic-name, nnimap-buffer, nnimap-command)
33456         (gnus-registry-get-id-key, gnus-registry-action):
33457         Declare rather than autoload.
33458         * lisp/gnus/nnmail.el (mail-send-and-exit): Autoload at run-time.
33459         * lisp/gnus/spam.el (spam-stat-buffer-change-to-non-spam)
33460         (spam-stat-buffer-change-to-spam, spam-stat-buffer-is-non-spam)
33461         (spam-stat-buffer-is-spam, spam-stat-load, spam-stat-save)
33462         (spam-stat-split-fancy): Remove pointless autoloads.
33463         * lisp/net/mairix.el: Load gnus-util when compiling.
33464         (gnus-group-read-ephemeral-group, gnus-summary-toggle-header)
33465         (message-field-value): Declare rather than autoload.
33466         (mairix-gnus-ephemeral-nndoc, mairix-gnus-fetch-field):
33467         Check gnus-alive-p is fbound.
33468         (vm-quit, vm-visit-folder, vm-select-folder-buffer)
33469         (vm-check-for-killed-summary, vm-error-if-folder-empty)
33470         (vm-get-header-contents, vm-select-marked-or-prefixed-messages):
33471         Declare rather than autoload.
33473         * lisp/gnus/mm-view.el (epg-decrypt-string): Autoload.
33475         * lisp/gnus/mml-smime.el (epg-key-sub-key-list)
33476         (epg-sub-key-capability, epg-sub-key-validity): Fix declarations.
33478         * lisp/progmodes/elisp-mode.el (xref-collect-references): Declare.
33480         * lisp/emacs-lisp/debug.el (help-xref-interned): Update declaration.
33482         * lisp/allout.el (epg-user-id-string, epg-key-user-id-list):
33483         * lisp/emacs-lisp/package.el (epg-signature-status):
33484         Fix declarations.
33486         * lisp/play/gametree.el (gametree-show-children-and-entry)
33487         (gametree-apply-layout, gametree-mouse-show-subtree)
33488         (gametree-mouse-hide-subtree): Replace obsolete outline aliases.
33490         * lisp/emacs-lisp/check-declare.el (check-declare-verify):
33491         Handle cl-defgeneric, cl-defmethod.
33493 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
33495         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions):
33496         Highlight both type and symbol name.
33498         Insert, highlight and align line numbers in xref output
33499         * lisp/progmodes/etags.el (xref-location-line): Specialize for
33500         xref-etags-location.
33501         * lisp/progmodes/xref.el (xref-location-line): New generic method.
33502         (xref-file-location): Add reader for the line slot.
33503         (xref--location-at-point): Skip to the `xref-location' property.
33504         (xref--collect-reference): Drop the line number from description.
33505         (xref--insert-xrefs): Insert, highlight and align line numbers.
33507 2015-05-04  Daniel Colascione  <dancol@dancol.org>
33509         * lisp/simple.el (save-mark-and-excursion--save)
33510         (save-mark-and-excursion--restore): Fix previous commit
33511         (255a011f0ecf004b31c59945b10154b10fac3af1).
33513 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
33515         Don't pulse the indentation, or the newline
33516         * lisp/cedet/pulse.el (pulse-lighten-highlight)
33517         (pulse-reset-face): Fall back to the inherited background
33518         attribute in FACE.
33519         (pulse-momentary-highlight-region): Add autoload cookie.
33520         * lisp/progmodes/xref.el (xref--maybe-pulse): Don't highlight the
33521         indentation, or the newline, if the line's non-empty
33522         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00118.html).
33524 2015-05-04  Daniel Colascione  <dancol@dancol.org>
33526         Add `save-mark-and-excursion', which has the old
33527         `save-excursion' behavior
33528         * doc/lispref/positions.texi (Excursions):
33529         Document `save-mark-and-excursion'.
33530         * lisp/font-lock.el (font-lock-fontify-block):
33531         Use `save-mark-and-excursion' instead of `save-excursion',
33532         restoring Emacs 24 behavior.
33533         * lisp/simple.el (save-mark-and-excursion--save)
33534         (save-mark-and-excursion--restore): New functions.
33535         (save-mark-and-excursion): New user macro.
33536         * src/editfns.c (Fsave_excursion): Mention `save-mark-and-excursion'
33537         in `save-excursion' documentation.
33539 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
33541         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
33542         Classify lone symbol inside let varlist as variable.
33543         * test/automated/elisp-mode-tests.el
33544         (completest-variables-in-let-bindings): New test.
33546         Add xref-pulse-on-jump
33547         * lisp/cedet/pulse.el (pulse-momentary-highlight-one-line):
33548         Add autoload cookie.
33549         * lisp/progmodes/xref.el (xref-pulse-on-jump): New option.
33550         (xref--maybe-pulse): New function.
33551         (xref-pop-marker-stack, xref--pop-to-location)
33552         (xref--display-position): Use it.
33553         (xref--location-at-point): Use back-to-indentation.
33555 2015-05-04  Stefan Monnier  <monnier@iro.umontreal.ca>
33557         lisp/org/org-{macs,list}.el: Fix lexical warnings
33558         * lisp/org/org-list.el (org-list-struct): Remove unused var `ind'.
33559         (org-list-get-next-item, org-list-get-prev-item)
33560         (org-list-get-children): Mark unused arg `struct'.
33561         (org-list-use-alpha-bul-p): Remove unused var `bul'.
33562         (org-toggle-checkbox): Mark unused var.
33563         (org-update-checkbox-count): Remove unused var `box-num'.
33564         (org-adapt-indentation): Declare.
33565         (org-list-parse-list): Declare var instead of adding a dummy duplicate.
33566         (org-list-send-list): Remove unused var `txt'.
33567         (org-list-to-latex, org-list-to-texinfo): Mark unused arg `params'.
33568         (org-list-to-subtree): Add prefix to dyn-bind var, and declare them.
33569         * lisp/org/org-macs.el: Use `declare'.
33570         (org-with-limited-levels): Declare dyn-bound vars.
33572 2015-05-04  Eli Zaretskii  <eliz@gnu.org>
33574         Fix minor issues with CEDET on MS-Windows
33575         * lisp/cedet/semantic/symref/idutils.el
33576         (semantic-symref-parse-tool-output-one-line): Fix the search
33577         regexp to match MS-Windows file names with drive letters.
33578         (Bug#19468)
33579         * lisp/cedet/semantic/symref/grep.el
33580         (semantic-symref-grep-use-template): Remove "--color=always" from
33581         Grep switches on MS-Windows.
33582         (semantic-symref-grep-shell): Use shell-file-name as the default
33583         value, so this works not only on Posix platforms.
33584         (semantic-symref-perform-search): Use shell-quote-argument instead
33585         of literal '..' for portable quoting of Grep command-line
33586         argument.  Use shell-command-switch instead of a literal "-c".
33587         * lisp/cedet/semantic/bovine/gcc.el
33588         (semantic-gcc-get-include-paths): Use file-name-absolute-p to test
33589         for an absolute file name in a portable way.
33591 2015-05-04  Artur Malabarba  <bruce.connor.am@gmail.com>
33593         * lisp/emacs-lisp/package.el: Remove `package--silence' variable.
33594         (package-import-keyring, package-refresh-contents)
33595         (package-compute-transaction, package--save-selected-packages)
33596         (package-install-from-archive, package-delete)
33597         (package-menu--perform-transaction): Use `inhibit-message' instead.
33598         (package--compile): Set `warning-minimum-level' to :error.
33600 2015-05-03  Stefan Monnier  <monnier@iro.umontreal.ca>
33602         * lisp/term/screen.el (xterm-screen-extra-capabilities): New custom.
33603         (terminal-init-screen): Use it (bug#20356).
33604         * lisp/term/xterm.el: Provide `term/xterm' instead of `xterm'.
33605         (xterm--extra-capabilities-type): New const.
33606         (xterm-extra-capabilities): Use it.
33607         (xterm--version-handler): Lower the pseudo-version for `screen'.
33609 2015-05-03  Dmitry Gutov  <dgutov@yandex.ru>
33611         * lisp/progmodes/xref.el (xref--insert-xrefs): Tweak the faces.
33612         Always insert a newline at the end (to avoid mouse-face background
33613         tail at the last line).
33615         elisp-completion-at-point: Prioritize being quoted over funpos
33616         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
33617         Only consider function position when not inside quoted form
33618         (bug#20425).
33619         * test/automated/elisp-mode-tests.el: New file.
33621         Stop vc-print-log from jumping to the top
33622         * lisp/vc/vc.el (vc-print-log-internal): Pass nil
33623         GOTO-LOCATION-FUNC to vc-log-internal-common when WORKING-REVISION
33624         is not specified.
33625         (vc-incoming-outgoing-internal): Always pass nil.
33626         (vc-log-internal-common): When GOTO-LOCATION-FUNC is nil, don't
33627         call it, and don't set vc-sentinel-movepoint (bug#15322).
33628         (vc-print-root-log): Don't fetch the root working revision, nor
33629         pass it to vc-print-log-internal.
33631 2015-05-02  Michael Vehrs  <Michael.Burschik@gmx.de>
33633         Fix display of keyboard layouts for right-to-left scripts
33634         * lisp/international/quail.el (quail-insert-kbd-layout):
33635         Force left-to-right paragraph direction.
33637 2015-05-02  K. Handa  <handa@gnu.org>
33639         * src/cmds.c (internal_self_insert): When we insert spaces for
33640         padding, set point before the padding spaces, not after them.
33642 2015-05-02  Nicolas Petton  <nicolas@petton.fr>
33644         * lisp/emacs-lisp/seq.el (seq-p): New alias to `sequencep'.
33646 2015-05-02  Dmitry Gutov  <dgutov@yandex.ru>
33648         Fix etags-xref-find for references
33649         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references):
33650         Use `cl-mapcan'.
33651         * lisp/progmodes/etags.el (etags-xref-find): Ditto.  Prompt for
33652         directory if no tags tables are loaded (bug#19468).
33654 2015-05-02  Philipp Stephani  <phst@google.com>
33656         Update the options in whitespace-style defcustom
33657         * lisp/whitespace.el (whitespace-style): Use `set' instead of a
33658         `repeat' because the option is really set-like.  Add missing
33659         options.  Reorder options to match the order in the
33660         documentation.  (Bug#20346)
33662 2015-05-02  Eli Zaretskii  <eliz@gnu.org>
33664         Fix error diagnostics of c-macro-expand
33665         * lisp/progmodes/cmacexp.el (c-macro-expansion): Don't bail out
33666         too early if no start-marker string was found -- that generally
33667         means cpp exited abnormally, and we still want to show its error
33668         messages to the user.
33670         Don't require Texinfo 5.0 for Emacs documentation
33671         * doc/emacs/docstyle.texi: Use "@set txicodequoteundirected" and
33672         "@set txicodequotebacktick" instead of "@codequotebacktick on" and
33673         "@codequoteundirected on", respectively, to avoid requiring
33674         Texinfo 5.x for Emacs documentation.
33676 2015-05-01  Simen Heggestøyl  <simenheg@gmail.com>
33678         * lisp/files.el (pwd):
33679         When called with a prefix argument, insert the current default
33680         directory at point.
33682 2015-05-01  Stefan Monnier  <monnier@iro.umontreal.ca>
33684         * lisp/isearch.el (isearch-mode-map): Allow backspace remapping
33685         * lisp/isearch.el (isearch-mode-map): Don't inhibit
33686         function-key-map remapping for backspace (bug#20466).
33688 2015-05-01  Dmitry Gutov  <dgutov@yandex.ru>
33690         Implement xref-find-references in etags and elisp-mode
33691         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references): New function.
33692         (elisp-xref-find): Use it.
33693         * lisp/progmodes/etags.el (etags-xref-find): Use `xref-collect-references'.
33694         * lisp/progmodes/xref.el (xref-collect-references):
33695         (xref--collect-reference): New functions.
33697 2015-05-01  Paul Eggert  <eggert@cs.ucla.edu>
33699         Prefer plain characters to Texinfo circumlocutions
33700         For example, prefer 'François' to 'Fran\c{c}ois', 'Fran\c cois',
33701         'Fran@,{c}ois' or 'Francois' (all of which were used!) in Texinfo sources.
33703         Fix single-quoting style in PDF manuals
33704         The PDF versions of the GNU manuals used curved single quotes to
33705         represent grave accent and apostrophe, which made it a pain to cut
33706         and paste code examples from them.  Fix the PDF versions to use
33707         grave accent and apostrophe for Lisp source code, keystrokes, etc.
33708         This change does not affect the info files, nor does it affect
33709         ordinary uses of curved single quotes in PDF.
33710         * doc/emacs/docstyle.texi: New file, which specifies treatment for
33711         grave accent and apostrophe, as well as the document encoding.
33712         * doc/emacs/emacs-xtra.texi, doc/emacs/emacs.texi:
33713         * doc/lispintro/emacs-lisp-intro.texi:
33714         * doc/lispref/back.texi, doc/lispref/book-spine.texi:
33715         * doc/lispref/elisp.texi, doc/lispref/lay-flat.texi:
33716         * doc/misc/ada-mode.texi, doc/misc/auth.texi:
33717         * doc/misc/autotype.texi, doc/misc/bovine.texi, doc/misc/calc.texi:
33718         * doc/misc/cc-mode.texi, doc/misc/cl.texi, doc/misc/dbus.texi:
33719         * doc/misc/dired-x.texi, doc/misc/ebrowse.texi, doc/misc/ede.texi:
33720         * doc/misc/ediff.texi, doc/misc/edt.texi, doc/misc/efaq-w32.texi:
33721         * doc/misc/efaq.texi, doc/misc/eieio.texi, doc/misc/emacs-gnutls.texi:
33722         * doc/misc/emacs-mime.texi, doc/misc/epa.texi, doc/misc/erc.texi:
33723         * doc/misc/ert.texi, doc/misc/eshell.texi, doc/misc/eudc.texi:
33724         * doc/misc/eww.texi, doc/misc/flymake.texi, doc/misc/forms.texi:
33725         * doc/misc/gnus-coding.texi, doc/misc/gnus-faq.texi:
33726         * doc/misc/gnus.texi, doc/misc/htmlfontify.texi:
33727         * doc/misc/idlwave.texi, doc/misc/ido.texi, doc/misc/info.texi:
33728         * doc/misc/mairix-el.texi, doc/misc/message.texi, doc/misc/mh-e.texi:
33729         * doc/misc/newsticker.texi, doc/misc/nxml-mode.texi:
33730         * doc/misc/octave-mode.texi, doc/misc/org.texi, doc/misc/pcl-cvs.texi:
33731         * doc/misc/pgg.texi, doc/misc/rcirc.texi, doc/misc/reftex.texi:
33732         * doc/misc/remember.texi, doc/misc/sasl.texi, doc/misc/sc.texi:
33733         * doc/misc/semantic.texi, doc/misc/ses.texi, doc/misc/sieve.texi:
33734         * doc/misc/smtpmail.texi, doc/misc/speedbar.texi:
33735         * doc/misc/srecode.texi, doc/misc/todo-mode.texi, doc/misc/tramp.texi:
33736         * doc/misc/url.texi, doc/misc/vhdl-mode.texi, doc/misc/vip.texi:
33737         * doc/misc/viper.texi, doc/misc/widget.texi, doc/misc/wisent.texi:
33738         * doc/misc/woman.texi:
33739         Use it instead of '@documentencoding UTF-8', to lessen the need for
33740         global changes like this in the future.
33741         * doc/emacs/Makefile.in (EMACS_XTRA):
33742         * doc/lispintro/Makefile.in (srcs):
33743         * doc/lispref/Makefile.in (srcs):
33744         Add dependency on docstyle.texi.
33745         * doc/misc/Makefile.in (style): New macro.
33746         (${buildinfodir}/%.info, %.dvi, %.pdf, %.html)
33747         (${buildinfodir}/ccmode.info, ${buildinfodir}/efaq%.info, gnus_deps):
33748         Use it.
33750 2015-05-01  Glenn Morris  <rgm@gnu.org>
33752         * test/automated/cl-lib-tests.el (cl-lib-adjoin-test): Fix it.
33754         * lisp/emacs-lisp/pcase.el (get-edebug-spec, edebug-match)
33755         (help-fns--signature): Declare.
33757         * lisp/emacs-lisp/pcase.el (pcase--make-docstring): Require help-fns.
33759 2015-05-01  Nicolas Petton  <nicolas@petton.fr>
33761         New macro seq-let, providing destructuring support to seq.el
33762         * lisp/emacs-lisp/seq.el (seq-let): New macro.  `seq-let' is similar
33763         to `cl-destructuring-bind' but works on all sequence types supported
33764         by `seq.el'.  Bump version number to 1.6.
33765         * test/automated/seq-tests.el: Add tests for seq-let.
33766         * doc/lispref/sequences.texi: Add documentation for seq-let.
33768 2015-05-01  Pontus Michael  <m.pontus@gmail.com>
33770         * lisp/simple.el (blink-matching-open): Better behavior in minibuffer.
33772 2015-05-01  Glenn Morris  <rgm@gnu.org>
33774         * lisp/emacs-lisp/ert.el (ert--special-operator-p): Fix previous.
33776 2015-05-01  Artur Malabarba  <bruce.connor.am@gmail.com>
33778         * lisp/emacs-lisp/bytecomp.el: Revert "Silence noninteractive compilations"
33779         This reverts commit 9a7ddde977378cb5276a81476ae458889c403267.
33780         This reverts commit 3c0ea587daf8b17960b90603a70e3ac4057d883d.
33781         With message: "* lisp/emacs-lisp/bytecomp.el: Use `inhibit-message'".
33782         (Bug#20445).
33784 2015-05-01  K. Handa  <handa@gnu.org>
33786         * lisp/international/mule-cmds.el (input-method-use-echo-area):
33787         Change :type to 'boolean.
33789 2015-05-01  Lars Magne Ingebrigtsen  <larsi@gnus.org>
33791         Start using proportional fonts in eww by default
33792         * lisp/net/shr.el (shr-use-fonts): Switch the default to t, since
33793         it seems to work well.
33795         Fix links in tables in shr
33796         * lisp/net/shr.el: Remove `shr-inhibit-decoration', because that
33797         makes (some) links in tables not work.
33799 2015-05-01  Jan D  <jan.h.d@swipnet.se>
33801         * lisp/term/ns-win.el (ns-get-cut-buffer-internal): Remove this alias.
33803 2015-04-30  Glenn Morris  <rgm@gnu.org>
33805         * lisp/emacs-lisp/ert.el (ert--special-operator-p):
33806         Update for 2015-02-08 change to indirect-function.
33808         * lisp/term/ns-win.el (ns-get-selection-internal):
33809         Remove declaration for function deleted 2014-10-21.
33811         * lisp/dom.el: Load subr-x when compiling, for when-let.
33813         Silence some compilation warnings
33814         * lisp/emacs-lisp/check-declare.el (compilation-forget-errors):
33815         * lisp/emulation/cua-base.el (delete-active-region):
33816         * lisp/net/net-utils.el (w32-get-console-output-codepage):
33817         * lisp/term/ns-win.el (ns-own-selection-internal)
33818         (ns-disown-selection-internal, ns-selection-owner-p)
33819         (ns-selection-exists-p, ns-get-selection):
33820         Declare for compiler.
33822         Function declaration updates prompted by 'make check-declare'
33823         * lisp/emacs-lisp/package.el (lm-homepage):
33824         * lisp/gnus/gnus-util.el (iswitchb-read-buffer):
33825         * lisp/gnus/mm-decode.el (libxml-parse-html-region):
33826         * lisp/gnus/mml.el (libxml-parse-html-region):
33827         * lisp/gnus/nnrss.el (libxml-parse-html-region):
33828         * lisp/net/eww.el (libxml-parse-html-region):
33829         * lisp/net/shr.el (libxml-parse-html-region):
33830         * lisp/vc/vc-bzr.el (vc-annotate-convert-time):
33831         * lisp/vc/vc-cvs.el (vc-annotate-convert-time):
33832         * lisp/vc/vc-git.el (vc-annotate-convert-time):
33833         * lisp/vc/vc-hg.el (vc-annotate-convert-time):
33834         * lisp/vc/vc-mtn.el (vc-annotate-convert-time):
33835         * lisp/vc/vc-rcs.el (vc-annotate-convert-time):
33836         Update declaration.
33838         Remove compatibility code for 20-year old function renaming
33839         * lisp/progmodes/idlw-shell.el (idlwave-shell-comint-filter):
33840         Make it an obsolete alias.
33841         (idlwave-shell-filter): Change all uses to comint-output-filter.
33843 2015-04-30  Tassilo Horn  <tsdh@gnu.org>
33845         Add ace-window face config
33846         * etc/themes/tsdh-light-theme.el (tsdh-light): Add ace-window face
33847         configuration.
33849 2015-04-30  Paul Eggert  <eggert@cs.ucla.edu>
33851         Unclutter 'make doc' output a bit
33852         * Makefile.in ($(DOCS), $(INSTALL_DOC), $(UNINSTALL_DOC)):
33853         Use make subst rather than sh IFS to split target string apart.
33854         This makes 'make' output easier to follow.
33856         Merge from gnulib
33857         * doc/misc/texinfo.tex: Update from gnulib.
33859 2015-04-30  Artur Malabarba  <bruce.connor.am@gmail.com>
33861         * lisp/emacs-lisp/package.el: Some speed optimizations on menu refresh.
33862         (package-menu--print-info): Obsolete.
33863         (package-menu--print-info-simple): New function.
33864         (package-menu--refresh): Use it, simplify code, and improve
33865         performance.
33866         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print-entry):
33867         Tiny performance improvement.
33869         * lisp/emacs-lisp/package.el (package--message): inhibit-message.
33871 2015-04-29  Paul Eggert  <eggert@cs.ucla.edu>
33873         Omit -Wstrict-overflow workaround in GCC 5
33874         * src/process.c: Remove workaround for GCC -Wstrict-overflow bug
33875         if it's GCC 5 or later, as the bug appears to be fixed in GCC 5.1.
33877         Merge from gnulib
33878         This incorporates:
33879         2015-04-29 extern-inline: no need for workaround in GCC 5.1
33880         2015-04-26 file-has-acl: port to CentOS 6
33881         * m4/acl.m4, m4/extern-inline.m4: Update from gnulib.
33883 2015-04-29  Helmut Eller  <eller.helmut@gmail.com>
33885         Set next-error-* in xref--xref-buffer-mode
33886         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
33887         Set `next-error-function' and `next-error-last-buffer'.
33888         (xref--next-error-function): New function.
33889         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01311.html)
33891 2015-04-29  Fabián Ezequiel Gallina  <fgallina@gnu.org>
33893         python.el: Fix warnings on looking-back calls missing LIMIT
33894         * lisp/progmodes/python.el (python-shell-accept-process-output):
33895         Pass LIMIT arg to looking-back.
33897 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
33899         * lisp/emacs-lisp/package.el: Use pushnew for downloads in progress.
33900         (package--download-and-read-archives): Use pushnew instead of
33901         append.  If something terrible happened during a previous
33902         download, simply refreshing should now make things work again.
33904 2015-04-29  Dmitry Gutov  <dgutov@yandex.ru>
33906         Introduce etags-xref-find-definitions-tag-order
33907         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
33908         New variable.
33909         (etags--xref-find-definitions): Use it (bug#19468).
33911 2015-04-29  Eli Zaretskii  <eliz@gnu.org>
33913         PATH- and completion-related fixes in Eshell on MS-Windows
33914         * lisp/eshell/esh-ext.el (eshell-search-path): When running on
33915         MS-Windows, prepend "." to list of directories produced from PATH,
33916         as Windows always implicitly searches the current directory first.
33917         (eshell-force-execution): Make it have a non-nil default value on
33918         MS-Windows and MS-DOS.
33919         * lisp/eshell/em-cmpl.el (eshell-complete-commands-list): If
33920         eshell-force-execution is non-nil, complete on readable files and
33921         directories, not only executables.  When running on MS-Windows,
33922         prepend "." to list of directories produced from PATH, as Windows
33923         always implicitly searches the current directory first.
33925 2015-04-29  Sam Steingold  <sds@gnu.org>
33927         Bury RCIRC buffers when there is no activity
33928         * lisp/net/rcirc.el (rcirc-non-irc-buffer): Remove.
33929         (rcirc-bury-buffers): New function.
33930         (rcirc-next-active-buffer): When there is no new activity, use
33931         `rcirc-bury-buffers' to hide all RCIRC buffers.
33933 2015-04-29  Krzysztof Jurewicz  <krzysztof.jurewicz@gmail.com>  (tiny change)
33935         Fix DBUS query result parsing for secrets-search-items
33936         * lisp/net/secrets.el (secrets-search-items): Fix DBUS query result
33937         parsing.  The function assumed that return value of the
33938         SearchItems method called on a collection is a list of two lists,
33939         however this is true only when no collection is specified.  GNOME
33940         had used to incorrectly return a list of two lists in both cases,
33941         but this was already fixed:
33942         https://bugzilla.gnome.org/show_bug.cgi?id=695115 .  Also fix an
33943         incorrect information in the secrets-search-items’ docstring.
33944         (Bug#20449)
33946 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
33948         * lisp/emacs-lisp/bytecomp.el (byte-compile--message):
33949         Use `inhibit-message' instead of hiding the previous message
33950         with (message nil).
33952 2015-04-29  Oleh Krehel  <ohwoeowho@gmail.com>
33954         Remove the deprecated INTERNAL_FIELD macro by expanding it
33955         * src/lisp.h (INTERNAL_FIELD): Remove.
33956         (DEFVAR_KBOARD): Modify accordingly.
33957         * src/alloc.c, src/buffer.c, src/buffer.h, src/category.c:
33958         * src/keyboard.c, src/keyboard.h, src/syntax.c: Adjust users.
33959         * src/buffer.c (compact_buffer): Use BVAR.
33961 2015-04-29  Glenn Morris  <rgm@gnu.org>
33963         Replace an obsolete function alias
33964         * lisp/isearch.el (isearch-yank-x-selection):
33965         * lisp/mouse-copy.el (mouse-drag-secondary-pasting)
33966         (mouse-drag-secondary-moving):
33967         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
33968         Replace obsolete alias x-get-selection with gui-get-selection.
33970 2015-04-29  Stefan Monnier  <monnier@iro.umontreal.ca>
33972         * lisp/mail/rmailsum.el: Use lexical-binding.
33974 2015-04-29  Glenn Morris  <rgm@gnu.org>
33976         * test/automated/package-test.el (package-test-update-archives-async):
33977         Skip test on hydra.nixos.org.
33979 2015-04-28  Glenn Morris  <rgm@gnu.org>
33981         * lisp/foldout.el: Update for 2015-01-30 outline.el changes.
33982         (foldout-zoom-subtree, foldout-exit-fold, foldout-mouse-show)
33983         (foldout-mouse-hide-or-exit): Use new names for outline functions.
33985         * lisp/cedet/semantic/bovine/c.el (semantic-c-do-lex-if):
33986         Update for 2014-06-26 hideif.el change.
33988         * lisp/mail/rmailsum.el: Fix search for encoded subjects.  (Bug#19088)
33989         (rmail--decode-and-apply): New function.
33990         (rmail-message-regexp-p-1, rmail-message-subject-p): Use it.
33992         * lisp/mail/rmail.el (rmail-highlighted-headers): Fix :type.
33994 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
33996         * lisp/emacs-lisp/package.el: Fix priority-hiding corner case
33997         (package-menu--refresh): Delegate obsolete-hiding to
33998         `package--remove-hidden'.
33999         (package--remove-hidden): Disregard high-priority package if it is
34000         older than the installed one.
34002 2015-04-28  Paul Eggert  <eggert@cs.ucla.edu>
34004         Update source file encoding list
34005         Update admin/notes/unicode, along with coding system cookies in
34006         other files, so that the two match each other better.
34007         * admin/notes/unicode: lisp/language/ethio-util.el and
34008         lisp/language/ethiopic.el also use utf-8-emacs.
34009         * admin/notes/hydra, doc/misc/dbus.texi, doc/misc/org.texi:
34010         * doc/misc/remember.texi, etc/refcards/cs-dired-ref.tex:
34011         * etc/refcards/cs-refcard.tex, etc/refcards/cs-survival.tex:
34012         * etc/refcards/sk-dired-ref.tex, etc/refcards/sk-refcard.tex:
34013         * etc/refcards/sk-survival.tex:
34014         Add "coding: utf-8" so that this file is not mishandled in a
34015         Latin-1 or Big-5 locale.
34016         * lisp/international/robin.el, lisp/org/ox-ascii.el:
34017         Specify utf-8, not utf-8-emacs, as these are plain UTF-8 files.
34018         * lisp/language/ethio-util.el: Fix trailer.
34020 2015-04-28  Eli Zaretskii  <eliz@gnu.org>
34022         Fix synchronous invocation of Ispell
34023         * lisp/textmodes/ispell.el (ispell-init-process): Assign a non-nil
34024         value to ispell-process-directory before calling ispell-init-process.
34025         Don't call set-process-coding-system if ispell-async-processp is nil.
34026         (Bug#20448)
34028 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
34030         * lisp/emacs-lisp/package.el: Skip space and comments in init file
34031         (package--ensure-init-file): Insert snippet at first
34032         non-whitespace non-comments line.  Respects local-vars at the top
34033         of the file.
34035 2015-04-28  Glenn Morris  <rgm@gnu.org>
34037         * lisp/mail/rmail.el (rmail-copy-headers):
34038         Handle rmail-nonignored-headers being nil.  (Bug#18878)
34040         * lisp/subr.el (delay-mode-hooks): Fix doc typo.
34042         * lisp/vc/vc-bzr.el (vc-bzr-after-dir-status):
34043         Don't get confused by a bzrlib version mismatch warning.
34045 2015-04-27  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
34047         Change default location of EUDC options file
34048         * etc/NEWS: Document change to EUDC options file's default location.
34049         * lisp/net/eudc-vars.el (eudc-options-file): Use
34050         `locate-user-emacs-file' to change default options file location.
34052 2015-04-27  Glenn Morris  <rgm@gnu.org>
34054         * test/automated/package-test.el (package-test-update-archives-async):
34055         Try to handle the test server script dying.
34057 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
34059         * lisp/saveplace.el (save-place-mode): New minor mode.
34060         (save-place): Redefine as an obsolete alias.
34062         * lisp/midnight.el: Make it a minor mode.  Allow predicates.
34063         * lisp/midnight.el: Use lexical-binding.
34064         (midnight-mode): Make it a proper minor mode.
34065         (midnight-buffer-display-time): Make arg non-optional.
34066         (midnight-find): Remove.
34067         (clean-buffer-list-kill-never-regexps)
34068         (clean-buffer-list-kill-regexps): Tweak type for new function choice.
34069         (clean-buffer-list-delay): Allow clean-buffer-list-kill-regexps to
34070         contain functions.
34071         (clean-buffer-list): Use cl-find.
34072         Allow clean-buffer-list-kill-never-regexps to contain functions.
34074 2015-04-27  Nicolas Petton  <nicolas@petton.fr>
34076         Bump version of seq.el to 1.5
34077         * lisp/emacs-lisp/seq.el (seq-doseq): Remove undocumented return value
34078         from seq-doseq.  Bump version number of seq.el.
34080 2015-04-27  Glenn Morris  <rgm@gnu.org>
34082         * lisp/mail/rmail.el (rmail-reply):
34083         Decode subject before matching "Re:" prefix.  (Bug#20396)
34085 2015-04-27  Artur Malabarba  <bruce.connor.am@gmail.com>
34087         * lisp/emacs-lisp/package.el: Small improvements
34088         (package--with-work-buffer-async): More informative error.
34089         (package-install-user-selected-packages): Rename to
34090         `package-install-selected-packages'.
34092 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
34094         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last
34095         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last change.
34096         (eieio--class-make): Remove leftover `tag'.
34098 2015-04-27  Glenn Morris  <rgm@gnu.org>
34100         * lisp/gnus/message.el (gnus-extract-address-components):
34101         Remove bogus declaration that was masking previous problem.
34103 2015-04-27  Nicolas Graner  <nicolas.graner@u-psud.fr>  (tiny change)
34105         * lisp/gnus/message.el (message-insert-formatted-citation-line):
34106         Fix typo.  (Bug#20318)
34108 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
34110         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Reuse oldc.
34112         * lisp/textmodes/reftex-toc.el: Improve multi-frame behavior
34113         * lisp/textmodes/reftex-toc.el (reftex-toc-revert): Avoid displaying
34114         the buffer in yet another frame.
34115         (reftex-toc-visit-location): Make sure toc-window has focus at the end
34116         when `final' is nil.
34117         (reftex--rebuilding-toc): Defvar to avoid `boundp' and
34118         silence warnings.  Use `--' to clarify that it's internal.
34119         (reftex-toc-next, reftex-toc-previous, reftex-toc-demote)
34120         (reftex-toc-promote): Clarify unused argument.
34121         (reftex--pro-or-de, reftex--start-line, reftex--mark-line):
34122         Add `reftex--' prefix.  Fix all users.
34123         (reftex-toc-promote-prepare): Use _ for dummy variable.
34124         (reftex-toc-restore-region): Rename `m.
34126 2015-04-27  Eli Zaretskii  <eliz@gnu.org>
34128         Fix a typo in bibtex.el
34129         * lisp/textmodes/bibtex.el (bibtex-insert-kill): Fix a typo from
34130         last change.  (Bug#20429)
34132         Fix redisplay of frame after loading new fonts
34133         * src/xdisp.c (redisplay_internal): When retrying redisplay of
34134         a frame because new fonts were loaded, disable all redisplay
34135         optimizations on that frame by calling SET_FRAME_GARBAGED.
34136         (Bug#20410)
34138 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
34140         * lisp/info.el (Info-menu): Properly provide the `default'
34141         (Bug#20391)
34143         * lisp/progmodes/elisp-mode.el (elisp--get-fnsym-args-string):
34144         Catch errors from documentation (bug#20418).
34145         (emacs-lisp-mode-abbrev-table): Remove redundant defvar.
34147 2015-04-26  Stefan Monnier  <monnier@iro.umontreal.ca>
34149         * lisp/emacs-lisp/package.el: Move variables to silence byte-compiler.
34150         Remove redundant ":group 'package".
34152 2015-04-26  Eli Zaretskii  <eliz@gnu.org>
34154         Fix a typo in rmail.el
34155         * lisp/mail/rmail.el (rmail-ensure-blank-line): Fix a typo in the
34156         last commit.  (Bug#20429)
34158 2015-04-26  Dmitry Gutov  <dgutov@yandex.ru>
34160         Introduce xref-prompt-for-identifier
34161         * lisp/progmodes/xref.el (xref-prompt-for-identifier): New option.
34162         (xref--read-identifier): Use it
34163         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01205.html).
34165 2015-04-26  João Távora  <joaotavora@gmail.com>
34167         `tex-insert-quote' after single `'' opens quotes instead of closing
34168         Without this, it's very hard to precede double quotes with the
34169         apostrophe character, i.e. insert the sequence '``
34170         (quote-backquote-backquote), commonly useful in portuguese, for
34171         instance.
34172         * lisp/textmodes/tex-mode.el (tex-insert-quote): Add ?' to the list of
34173         preceding chars making `tex-insert-quote' be in the "opening" context.
34175 2015-04-25  Dmitry Gutov  <dgutov@yandex.ru>
34177         Pass `id' to `completing-read' as def instead of initial input
34178         * lisp/progmodes/xref.el (xref--read-identifier): Pass `id' to
34179         `completing-read' as the default value instead of initial input
34180         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01182.html).
34182 2015-04-25  Paul Eggert  <eggert@cs.ucla.edu>
34184         Don't freeze with unreadable processes
34185         Don't freeze if an exiting process can't be read from.  (Bug#19860).
34186         This fixes a bug I introduced in
34187         2014-07-08T07:24:07Z@eggert@cs.ucla.edu
34188         "* process.c: Add sanity checks for file descriptors."
34189         Dmitry Gutov did most of the legwork in finding the problem.
34190         * src/process.c (wait_reading_process_output):
34191         Treat non-running processes that can't be read from
34192         the same as other non-running processes.
34194 2015-04-25  Alan Mackenzie  <acm@muc.de>
34196         Fix change from 2015-04-22 "On C-y, stop some text property entries ..."
34197         * lisp/subr.el (remove-yank-excluded-properties): Put
34198         `with-silent-modifications' around only the last three lines of code.
34200 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
34202         * lisp/emacs-lisp/package.el (package-all-keywords): Don't cache
34203         (package--all-keywords): Deleted variable.
34205         * etc/NEWS: Document package-hiding functionality.
34207 2015-04-25  Eli Zaretskii  <eliz@gnu.org>
34209         * lisp/window.el (recenter-last-op): Doc fix.  (Bug#20419)
34211         Clarify the doc string of 'replace-regexp-in-string'
34212         * lisp/subr.el (replace-regexp-in-string): Doc fix.  (Bug#20395)
34214         Improve doc string of 'insert-buffer-substring'
34215         * src/editfns.c (Finsert_buffer_substring): Doc fix.  (Bug#20421)
34217         MS-Windows followup for the recent gnulib update
34218         * nt/gnulib.mk (libgnu_a_SOURCES): Replace file-has-acl.c with
34219         acl-internal.c.
34221 2015-04-24  Paul Eggert  <eggert@cs.ucla.edu>
34223         Spelling fixes
34225         Merge from gnulib
34226         This incorporates:
34227         2015-04-24 file-has-acl: new module, split from acl
34228         2015-04-24 manywarnings: add GCC 5.1 warnings
34229         2015-04-21 lstat: fix cross-compilation 'ln -s' problem
34230         2015-04-15 qacl: Simplify HP-UX acl_nontrivial check
34231         2015-04-15 acl: On Linux, check for acls without libacl
34232         2015-04-14 tempname: avoid unused parameter warnings (trivial)
34233         * lib/acl-internal.c: New file, from gnulib.
34234         * lib/file-has-acl.c: Remove; no longer imported from gnulib.
34235         * lib/acl-internal.h, lib/gnulib.mk, lib/qcopy-acl.c, lib/tempname.c:
34236         * m4/acl.m4, m4/gnulib-comp.m4, m4/lstat.m4, m4/manywarnings.m4:
34237         Update from gnulib.
34239         Port --enable-gcc-warnings to GCC 5.1 x86-64
34240         * lib-src/ebrowse.c (dump_sym):
34241         * lib-src/hexl.c (main):
34242         * src/ccl.c (ccl_driver):
34243         * src/character.c (string_escape_byte8):
34244         * src/dbusbind.c (xd_retrieve_arg, xd_add_watch):
34245         * src/gnutls.c (Fgnutls_boot):
34246         * src/gtkutil.c (xg_check_special_colors):
34247         * src/image.c (x_build_heuristic_mask):
34248         * src/print.c (safe_debug_print, print_object):
34249         * src/term.c (produce_glyphless_glyph):
34250         * src/xdisp.c (get_next_display_element)
34251         (produce_glyphless_glyph):
34252         * src/xterm.c (x_draw_glyphless_glyph_string_foreground):
34253         Don't use a signed format to print an unsigned integer, or vice
34254         versa.  GCC 5.1's new -Wformat-signedness option warns about this.
34255         * src/image.c (png_load_body, jpeg_load_body):
34256         Silence a bogus setjump diagnostic from GCC 5.1 (GCC bug 54561).
34258 2015-04-24  Tassilo Horn  <tsdh@gnu.org>
34260         Add new faces to tsdh-light-theme
34261         * etc/themes/tsdh-light-theme.el (tsdh-light): New face
34262         definitions for Info-quoted, ace-jump-face-foreground,
34263         hl-paren-face, show-paren-match, and show-paren-mismatch.
34265 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
34267         * lisp/emacs-lisp/seq.el (seq-doseq): Fix the macro.
34269 2015-04-24  Glenn Morris  <rgm@gnu.org>
34271         * build-aux/gitlog-to-emacslog:
34272         Use raw log format rather than wrapped one.
34274 2015-04-24  Stefan Monnier  <monnier@iro.umontreal.ca>
34276         * lisp/emacs-lisp/seq.el (seq-doseq): Tighten the code.
34277         (seq-doseq): Fix out-of-scope binding.
34278         Don't call `seq-length at every iteration.
34279         Reduce `if's from 3 to 2 per iteration.
34280         (emacs-lisp-mode-hook): Don't tweak in Emacs≥25.
34282 2015-04-24  Glenn Morris  <rgm@gnu.org>
34284         * lisp/textmodes/text-mode.el (text-mode-hook):
34285         Move text-mode-hook-identify to default.
34287         * lisp/mouse.el (minor-mode-menu-from-indicator):
34288         Handle non-function members of minor-mode-map-alist.  (Bug#20201)
34290         * lisp/help-fns.el (describe-function): More type checking.
34291         (describe-function-1): Handle changed symbol-function.  (Bug#20201)
34293         * build-aux/gitlog-to-emacslog: Convert "Fixes:" to "(Bug#)".
34294         (Bug#20325)
34296 2015-04-24  Andreas Schwab  <schwab@linux-m68k.org>
34298         shr: strip leading whitespace when expanding URLs
34299         * lisp/net/shr.el (shr-expand-url): Strip leading whitespace from URL.
34301 2015-04-24  Eli Zaretskii  <eliz@gnu.org>
34303         Clarify "co-authored" some more
34305         * CONTRIBUTE: Clarify "co-authored-by".  (Bug#20400)
34307         Clarify doc strings of functions that search for properties
34308         * src/textprop.c (Fnext_char_property_change)
34309         (Fprevious_char_property_change)
34310         (Fnext_single_char_property_change)
34311         (Fprevious_single_char_property_change, Fnext_property_change)
34312         (Fnext_single_property_change, Fprevious_property_change)
34313         (Fprevious_single_property_change): Clarify doc strings wrt return
34314         value and the optional LIMIT argument.  (Bug#20411)
34316 2015-04-24  Glenn Morris  <rgm@gnu.org>
34318         * test/automated/message-mode-tests.el (message-mode-propertize):
34319         Handle non-writable HOME; eg on hydra.nixos.org.
34321 2015-04-23  Eli Zaretskii  <eliz@gnu.org>
34323         Avoid starting threads by w32-shell-execute
34324         * src/w32fns.c (Fw32_shell_execute): Convert "file:///" URLs into
34325         local file names, before invoking ShellExecute.  (Bug#20220)
34327 2015-04-23  Martin Rudalics  <rudalics@gmx.at>
34329         Fix following doc-links in `widget-documentation-link-action'
34330         * lisp/wid-edit.el (widget-documentation-link-action): Make
34331         following doc-links less simplistic (Bug#20398).
34333 2015-04-22  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
34335         Improve EUDC manual
34336         * doc/misc/eudc.texi (Troubleshooting):
34337         New LDAP troubleshooting subsection.
34339 2015-04-22  Paul Eggert  <eggert@cs.ucla.edu>
34341         Omit needless "\ " after multibyte then newline
34342         * src/print.c: Include <c-ctype.h>, for c_isxdigit.
34343         (print_object): When print-escape-multibyte is non-nil and a
34344         multibyte character is followed by a newline or formfeed, followed
34345         by a hex digit, don't output a needless "\ " before the hex digit.
34346         * test/automated/print-tests.el (print-hex-backslash): New test.
34348 2015-04-22  Oleh Krehel  <ohwoeowho@gmail.com>
34350         Add a new `inhibit-message' variable
34351         * src/xdisp.c (syms_of_xdisp): Define a boolean `inhibit_message'.
34352         (message3): Don't call `message3_nolog' (i.e. use the Echo Area) when
34353         `inhibit_message' is non-zero.
34354         * etc/NEWS: Add an entry.
34355         * doc/lispref/display.texi: Add an entry for `inhibit-message',
34356         mention it in `message'.
34358 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
34360         Fix last fix in `display-buffer-record-window'.
34361         * lisp/window.el (display-buffer-record-window): Fix last fix.
34363 2015-04-22  Eli Zaretskii  <eliz@gnu.org>
34365         Minor edits in CONTRIBUTE
34366         * CONTRIBUTE: Rearrange instructions about log messages.
34367         Use "Git" capitalized all over.
34368         Use 2 spaces between sentences.
34370 2015-04-22  Artur Malabarba  <bruce.connor.am@gmail.com>
34372         * lisp/files.el (basic-save-buffer): Fix argument.
34374         * lisp/cus-edit.el (custom-file): Consider init-file-had-error.
34375         In case `(and (null custom-file) init-file-had-error)' do the same
34376         thing we'd do if `(null user-init-file)', which is to either error out
34377         or return nil.  This is in line with `custom-save-all' which would
34378         throw an error in that situation.  (Bug#20355)
34380         * lisp/emacs-lisp/package.el: Hide lower-priority packages in menu.
34381         (package-menu-hide-low-priority): New variable, see its doc.
34382         (package-archive-priorities): Update doc.
34383         (package-desc-priority): New function.
34384         (package-desc-priority-version): Use it.
34385         (package--remove-hidden): New function.
34386         (package-menu--refresh): Use it.
34388         * lisp/emacs-lisp/package.el: Implement displaying obsolete packages.
34389         (package-menu--hide-obsolete): New variable.
34390         (package--remove-hidden): Use it.
34391         (package-menu-hide-obsolete): New interactive function to toggle
34392         the variable.
34393         (package--quick-help-keys): Document it.
34394         (package-menu-async): Add :version tag.
34395         (package-menu-mode-map): Bind package-menu-hide-obsolete.
34396         (package-desc-status): Indicate non-installed obsolete packages as
34397         avail-obso.
34398         (package-menu-mark-install): Allow installation of avail-obso.
34399         (package-menu--status-predicate): Sort avail-obso with available.
34401 2015-04-22  Alan Mackenzie  <acm@muc.de>
34403         On C-y, stop some text property entries being written into buffer-undo-list
34404         * lisp/subr.el (remove-yank-excluded-properties): Enclose the code in
34405         `with-silent-modifications'.
34407 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
34409         In display-buffer-record-window record selected window if necessary
34410         * lisp/window.el (display-buffer-record-window): Store selected window
34411         if it differs from 3rd element of 'quit-restore' parameter (Bug#20353).
34413 2015-04-22  Tassilo Horn  <tsdh@gnu.org>
34415         Fix reftex-citation bug
34416         * lisp/textmodes/reftex-cite.el (reftex-extract-bib-entries):
34417         Fix `wrong-type-argument stringp nil' error that occurs when AUCTeX
34418         integration is enabled and there are no citations in the document
34419         so far.
34421 2015-04-21  Dmitry Gutov  <dgutov@yandex.ru>
34423         Add or reset based on the presence of MERGE_HEAD
34424         * lisp/vc/vc-git.el (vc-git-find-file-hook): Add
34425         `vc-git-resolve-when-done' to `after-save-hook' in either case.
34426         (vc-git-conflicted-files): Add a TODO.
34427         (vc-git-resolve-when-done): Depending on the presence of
34428         MERGE_HEAD, either update the resolved file in the index, or
34429         remove it from there.  (Bug#20292)
34431 2015-04-21  Glenn Morris  <rgm@gnu.org>
34433         * lisp/custom.el (custom-declare-group): No need to purecopy
34434         custom-current-group-alist members following recent change to set
34435         it to nil before dumping.
34437         * build-aux/gitlog-to-emacslog: Get footer from ChangeLog.2.
34438         (Bug#20399)
34440 2015-04-21  Daniel Colascione  <dancol@dancol.org>
34442         Unbreak no-op buffer save message
34443         * lisp/files.el (basic-save-buffer): Accept called-interactively as
34444         an argument instead of directly invoking called-interactively-p,
34445         which will always yield nil in that context.
34447 2015-04-21  Alan Mackenzie  <acm@muc.de>
34449         CC Mode: Do nothing in before/after-change-functions for text
34450         property changes
34451         Fixes bug#20266.
34452         * lisp/progmodes/cc-mode.el (c-basic-common-init): Make
34453         yank-handled-properties buffer local, and remove 'category from it.
34454         (c-called-from-text-property-change-p): New function.
34455         (c-before-change): Don't do anything if a call of the new function
34456         returns non-nil.
34457         (c-after-change): Don't do much if a call of the new function returns
34458         non-nil.
34459         (c-extend-after-change-region): Put changes to text property 'fontified
34460         inside c-save-buffer-state.
34462 2015-04-20  Stefan Monnier  <monnier@iro.umontreal.ca>
34464         Fix byte-compiler warnings about looking-back
34465         * lisp/vc/log-view.el (log-view-end-of-defun-1):
34466         * lisp/textmodes/tex-mode.el (latex-forward-sexp-1):
34467         * lisp/textmodes/reftex-ref.el (reftex-goto-label):
34468         * lisp/textmodes/bibtex.el (bibtex-insert-kill):
34469         * lisp/progmodes/sh-script.el (sh--maybe-here-document):
34470         * lisp/progmodes/ruby-mode.el (ruby-end-of-defun):
34471         * lisp/progmodes/ada-mode.el (ada-in-numeric-literal-p):
34472         * lisp/org/org.el (org-insert-heading, org-sort-entries):
34473         * lisp/org/org-mouse.el (org-mouse-end-headline)
34474         (org-mouse-context-menu):
34475         * lisp/org/org-clock.el (org-clock-cancel):
34476         * lisp/man.el (Man-default-man-entry):
34477         * lisp/mail/rmail.el (rmail-get-new-mail, rmail-insert-inbox-text)
34478         (rmail-ensure-blank-line):
34479         * lisp/mail/footnote.el (Footnote-delete-footnote):
34480         * lisp/mail/emacsbug.el (report-emacs-bug):
34481         * lisp/info.el (Info-follow-reference, Info-fontify-node):
34482         * lisp/info-look.el (info-lookup-guess-custom-symbol):
34483         * lisp/help-fns.el (help-fns--key-bindings):
34484         * lisp/files.el (hack-local-variables):
34485         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-cmd-complete)
34486         (viper-get-ex-pat, ex-expand-filsyms, viper-get-ex-file)
34487         (viper-complete-filename-or-exit):
34488         * lisp/emulation/viper-cmd.el (viper-backward-indent):
34489         * lisp/emacs-lisp/lisp-mode.el (calculate-lisp-indent):
34490         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
34491         * lisp/cus-edit.el (custom-face-edit-value-create):
34492         * lisp/calendar/todo-mode.el (todo-set-item-priority)
34493         (todo-filter-items-1, todo-convert-legacy-files)
34494         (todo-prefix-overlays): Add explicit second arg to looking-back.
34496 2015-04-20  Glenn Morris  <rgm@gnu.org>
34498         Avoid non-nil current-load-list at startup
34499         * src/process.c (init_process_emacs): Move Fprovide statement...
34500         (syms_of_process): ... to here.
34502         * lisp/loadup.el (custom-current-group-alist): Reset before dumping.
34504         * lisp/startup.el (command-line) <site-run-file>: Avoid rogue value
34505         in emacs -Q.
34507 2015-04-20  Ludovic Courtès  <ludo@gnu.org>
34509         * lisp/loadup.el (exec-path): Avoid storing build-time PATH in binary.
34510         (Bug#20330)
34512 2015-04-20  Glenn Morris  <rgm@gnu.org>
34514         * lisp/cus-start.el (exec-path): Set standard value, to avoid rogue.
34516         Tweak exec-path in uninstalled case
34517         * src/callproc.c (init_callproc): If running uninstalled, do not
34518         include eventual installation libexec directory in exec-path.
34520 2015-04-20  Artur Malabarba  <bruce.connor.am@gmail.com>
34522         * lisp/emacs-lisp/package.el: Filter by multiple keywords and
34523         cache keywords.
34524         (package-menu-filter): Accept a list of keywords.
34525         (package--all-keywords): New variable to cache known keywords.
34526         (package-all-keywords): Populate it if necessary.
34527         (package-refresh-contents): Reset it.
34529         * lisp/emacs-lisp/package.el: Make archive and status pseudo-keywords
34530         (package--has-keyword-p): Understand "arc:xxxx" and "status:xxxx"
34531         as special keywords which match agains package archive and status
34532         respectively.
34533         * etc/NEWS: Document it.
34535 2015-04-20  Eli Zaretskii  <eliz@gnu.org>
34537         Describe and index "empty overlays".
34538         * doc/lispref/display.texi (Overlays): Improve indexing.
34539         (Managing Overlays): Describe "empty" overlays.
34540         (Overlay Properties, Finding Overlays): Add cross-reference to
34541         where empty overlays are described.
34543 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
34545         Spelling fixes
34547         Quote 'like this' in top-level files
34548         * CONTRIBUTE, INSTALL, Makefile.in, README, configure.ac, make-dist:
34549         Prefer to single-quote 'like this' (instead of the older style
34550         `like this').
34551         * configure.ac: Fix some space-before-tab problems that 'git commit'
34552         complained about.
34554         Use bool for boolean in textprop.c, undo.c
34555         * src/textprop.c (soft, hard): Now constants instead of macros.
34556         (validate_plist): Rewrite to avoid need for boolean local.
34557         (interval_has_all_properties, interval_has_some_properties)
34558         (interval_has_some_properties_list, add_properties)
34559         (remove_properties, get_char_property_and_overlay)
34560         (Fnext_single_char_property_change)
34561         (Fprevious_single_char_property_change, add_text_properties_1)
34562         (Fremove_text_properties, Fremove_list_of_text_properties)
34563         (copy_text_properties):
34564         * src/tparam.c (tparam1):
34565         * src/undo.c (record_change, record_property_change)
34566         (syms_of_undo):
34567         Use 'true' and 'false' for booleans.
34569 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
34571         * lisp/vc/vc-git.el (vc-git-find-file-hook):
34572         Call `smerge-start-session' even when dealing with a stash
34573         conflict (bug#20292).
34575 2015-04-19  Vibhav Pant  <vibhavp@gmail.com>
34577         Add option to eshell/clear to clear scrollback.
34578         * lisp/eshell/esh-mode.el (eshell/clear-scrollback): New function.
34579         (eshell/clear): Add an optional SCROLLBACK argument.  If non-nil,
34580         scrollback contents are cleared.
34581         * etc/NEWS: Describe change.
34582         * doc/misc/eshell.texi: Add entry for `clear'.
34584 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
34586         * src/widget.c (set_frame_size): Prefer 'int' to 'unsigned'
34587         where either will do.
34589 2015-04-19  Steve Purcell  <steve@sanityinc.com>
34591         Assume package archive-contents are UTF8-encoded
34592         * lisp/emacs-lisp/package.el (package--read-archive-file):
34593         Set `coding-system-for-read' explicitly to 'utf-8 when reading the
34594         downloaded and cached archive-contents files, so that non-ASCII
34595         characters in package descriptions are displayed correctly in the
34596         `list-packages' menu.  (Bug#20231)
34598 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
34600         Abort when looking at stashed changes
34601         * lisp/vc/vc-git.el (vc-git-find-file-hook): Abort when looking at
34602         stashed changes (bug#20292).
34604 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
34606         Refactor low-level printing for simplicity
34607         * src/print.c (PRINTDECLARE): Remove.  Move its contents into
34608         PRINTPREPARE; doable now that we assume C99.  All callers changed.
34609         (PRINTCHAR): Remove, as it adds more mystery than clarity.
34610         All callers changed.
34611         (strout): Assume that caller computes length.  All callers changed.
34612         (print_c_string): New function.
34613         (write_string, write_string_1): Compute length instead of asking
34614         the caller to compute it.  All callers changed.
34615         (write_string): Simplify by using write_string_1.
34616         (write_string_1): Simplify by using print_c_string.
34617         (Fterpri): Compute default val more clearly.
34618         (Fprin1_to_string, print_object):
34619         Assume C99 to avoid unnecessary nesting.
34620         (print_object): Prefer print_c_string to multiple printchar, or
34621         to calling strout with -1 length.  Coalesce into sprintf when
34622         this is easy.
34624 2015-04-18  Paul Eggert  <eggert@cs.ucla.edu>
34626         Prefer "Bug#1234" in commit messages (Bug#20325)
34627         * .dir-locals.el (log-edit-mode): Don't rewrite Bug#,
34628         as this isn't useful for Git.
34629         * CONTRIBUTE: Suggest "Bug#1234" instead of "Fixes: debbugs:1234".
34631 2015-04-18  Glenn Morris  <rgm@gnu.org>
34633         * lisp/files.el (auto-mode-alist): Use conf mode for gitconfig, hgrc.
34634         (Bug#19506)
34636 2015-04-18  Tom Willemse  <tom@ryuslash.org>  (tiny change)
34638         * lisp/elec-pair.el (electric-pair-post-self-insert-function):
34639         Do not use `chomp' as a function.  (Bug#19505)
34641 2015-04-18  Glenn Morris  <rgm@gnu.org>
34643         * lisp/net/browse-url.el (browse-url, browse-url-at-point): Doc fixes.
34645         * doc/emacs/misc.texi (Sorting): Small edit.
34646         (Bug#19896)
34648         * admin/admin.el (make-manuals): Add emacs-xtra in pdf and ps.
34650 2015-04-18  Simen Heggestøyl  <simenheg@gmail.com>
34652         css-mode.el: Support multi-line comment filling
34653         (Bug#20256)
34654         * lisp/textmodes/css-mode.el (css-fill-paragraph): Support multi-line
34655         comment filling.
34656         (css-adaptive-fill): New function.
34657         (css-mode): Set `adaptive-fill-function'.
34658         (scss-mode): Set `comment-continue'.
34660 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
34662         * lisp/emacs-lisp/seq.el (seq-concatenate, seq-into):
34663         Better error messages.
34665 2015-04-18  Ivan Radanov Ivanov  <ivanradanov@yahoo.co.uk>  (tiny change)
34667         Minor improvements in Bulgarian input methods
34668         * lisp/leim/quail/cyrillic.el (bulgarian-phonetic, bulgarian-bds):
34669         Replace U+042C with U+045D, as the former character is not used in
34670         the modern Bulgarian language.
34671         (Bug#20350)
34673 2015-04-17  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
34675         Improve EUDC manual
34676         * doc/misc/eudc.texi (LDAP Configuration): Mention simple and SASL
34677         authentication schemes.  Add index items.  Shorten example server
34678         name.
34680 2015-04-17  Dmitry Gutov  <dgutov@yandex.ru>
34682         Don't show both feature and function with the same name
34683         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
34684         Don't show both feature and function with the same name.
34686         (elisp--xref-identifier-location): Skip variable, if it's also
34687         a function
34688         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
34689         Avoid returning both the variable and the function for the same
34690         minor mode.
34692 2015-04-17  Wolfgang Jenkner  <wjenkner@inode.at>
34694         Fix fontification of keywords clobbered by the prompt
34695         * lisp/comint.el (comint-output-filter): Remove the uses of
34696         with-silent-modifications I introduced as part of the last change.
34697         This fixes, e.g., erratically missing highlighting when running
34698         ./configure --help; ./configure in a shell-mode buffer with
34699         compilation-shell-minor-mode turned on.
34701 2015-04-17  Glenn Morris  <rgm@gnu.org>
34703         * admin/authors.el (authors-valid-file-names)
34704         (authors-renamed-files-alist): Additions.
34706 2015-04-17  Stefan Monnier  <monnier@iro.umontreal.ca>
34708         * lisp/indent.el (indent-region): Don't deactivate the mark.
34709         (Bug#20357)
34711 2015-04-17  Sam Steingold  <sds@gnu.org>
34713         * lisp/net/rcirc.el (defun-rcirc-command): Mark `target' as ignorable.
34715 2015-04-16  Leo Liu  <sdl.web@gmail.com>
34717         * lisp/progmodes/xref.el (xref-push-marker-stack): Add optional arg.
34719 2015-04-16  Stefan Monnier  <monnier@iro.umontreal.ca>
34721         * lisp/erc/erc-pcomplete.el (erc-pcomplete):
34722         Don't use `pcomplete' any more.
34724 2015-04-16  Glenn Morris  <rgm@gnu.org>
34726         * admin/authors.el (authors-lax-changelogs): Update for erc changes.
34728 2015-04-16  Eli Zaretskii  <eliz@gnu.org>
34730         Don't link with -ljpeg on MS-Windows, to avoid dependency on DLL
34731         * configure.ac (LIBJPEG): Leave it empty for MinGW.
34733 2015-04-16  Glenn Morris  <rgm@gnu.org>
34735         * lisp/replace.el (query-replace-from-to-separator):
34736         Delay initialization to avoid rogue setting after startup.
34738 2015-04-16  Paul Eggert  <eggert@cs.ucla.edu>
34740         Pre-4.6 GCC succeeds with unknown option
34741         * configure.ac (emacs_cv_prog_cc_nopie): Port to pre-4.6 GCC.
34742         (Bug#20338)
34744 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
34746         '[:graph:]' now excludes whitespace, not just ' '
34747         * doc/lispref/searching.texi (Char Classes):
34748         * lisp/emacs-lisp/rx.el (rx): Document [:graph:] to be [:print:]
34749         sans whitespace (not sans space).
34750         * src/character.c (graphicp): Exclude all Unicode whitespace chars,
34751         not just space.
34752         * src/regex.c (ISGRAPH): Exclude U+00A0 (NO-BREAK SPACE).
34754 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
34756         * lisp/subr.el (substitute-key-definition-key, special-form-p)
34757         (macrop): Drop deprecated second arg to indirect-function.
34758         (looking-back): Make the second arg non-optional.
34760         * lisp/org/org-clock.el (org-x11idle-exists-p): Be honest about which
34761         command is actually sent to the shell.
34763 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
34765         Port jpeg configuration to Solaris 10 with Sun C
34766         * configure.ac: Check for jpeglib 6b by trying to link it, instead
34767         of relying on cpp magic that has problems in practice.  Check for
34768         both jpeglib.h and jerror.h features.  Remove special case for
34769         mingw32, which should no longer be needed (and if it were needed,
34770         should now be addressable by hotwiring emacs_cv_jpeglib).
34771         (Bug#20332)
34773 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
34775         Move some Elisp-specific code from lisp-mode.el to elisp-mode.el
34776         * lisp/emacs-lisp/lisp-mode.el (lisp--el-font-lock-flush-elisp-buffers):
34777         Move to elisp-mode.el.
34778         (lisp-mode-variables): (Re)move elisp-specific settings.
34779         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode): Add settings removed
34780         from lisp-mode-variables.
34781         (elisp--font-lock-flush-elisp-buffers): New function, moved from
34782         lisp-mode.el.
34784         * lisp/emacs-lisp/lisp-mode.el (lisp--el-non-funcall-position-p):
34785         Avoid pathological slowdown at top-level in large file.
34787 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
34789         Standardize names of ChangeLog history files
34790         Suggested by Glenn Morris in:
34791         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
34792         * Makefile.in (install-man): Don't treat ChangeLog.1 as a man page.
34793         * doc/man/ChangeLog.1: Rename back from doc/man/ChangeLog.01.
34794         * lisp/erc/ChangeLog.1: New file, containing the old contents of ...
34795         * lisp/erc/ChangeLog.01, lisp/erc/ChangeLog.02, lisp/erc/ChangeLog.03:
34796         * lisp/erc/ChangeLog.04, lisp/erc/ChangeLog.05, lisp/erc/ChangeLog.06:
34797         * lisp/erc/ChangeLog.07, lisp/erc/ChangeLog.08, lisp/erc/ChangeLog.09:
34798         Remove.
34800         Split top-level entries into pre- and post-April 7
34801         This more clearly distingiushes pre-April-7 ChangeLog entries (which
34802         are for top-level files only) from post-April-7 entries (which are
34803         about files at all levels.  Problem reported by Glenn Morris in:
34804         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
34805         * ChangeLog.1: Move post-April-7 entries from here ...
34806         * ChangeLog.2: ... to this new file.
34807         * Makefile.in (CHANGELOG_HISTORY_INDEX_MAX): Bump to 2.
34809 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
34811         Fix recent cus-start changes that added customize-rogues
34812         * lisp/cus-start.el (custom-delayed-init-variables): Initialize the
34813         vars early.
34814         * lisp/loadup.el ("cus-start"): Move to the end to reduce
34815         customize-rogue.
34817 2015-04-15  Nicolas Petton  <nicolas@petton.fr>
34819         Define cl-concatenate as an alias to seq-concatenate
34820         * lisp/emacs-lisp/cl-extra.el (cl-concatenate): Removes duplicated
34821           code by making cl-concatenate an alias to seq-concatenate.
34823 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
34825         * src/lread.c (intern_1): Make sure we'd find the symbol we add
34826         (Bug#20334)
34827         * src/xfaces.c (resolve_face_name): Don't use `intern' with
34828         Lisp_Strings.
34830 2015-04-15  Glenn Morris  <rgm@gnu.org>
34832         * doc/lispref/sequences.texi (Sequence Functions): Fix typo in previous.
34834 2015-04-15  Lars Magne Ingebrigtsen  <larsi@gnus.org>
34836         Clean up gnus-uu saving code slightly
34837         * lisp/gnus/gnus-uu.el (gnus-uu-save-article): Make the
34838         save-restriction/widen calls make more sense.
34840 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
34842         Make [:graph:] act like [:print:] sans space
34843         In POSIX [[:print:]] is equivalent to [ [:graph:]], so change
34844         [:graph:] so that it matches everything that [:print:] does,
34845         except for space.
34846         * doc/lispref/searching.texi (Char Classes):
34847         * etc/NEWS:
34848         * lisp/emacs-lisp/rx.el (rx):
34849         Document [:graph:] to be [:print:] sans ' '.
34850         * src/character.c, src/character.h (graphicp): New function.
34851         * src/regex.c (ISGRAPH) [emacs]: Use it.
34852         (BIT_GRAPH): New macro.
34853         (BIT_PRINT): Increase to 0x200, to make room for BIT_GRAPH.
34854         (re_wctype_to_bit) [! WIDE_CHAR_SUPPORT]:
34855         Return BIT_GRAPH for RECC_GRAPH.
34856         (re_match_2_internal) [emacs]: Use ISGRAPH if BIT_GRAPH,
34857         and ISPRINT if BIT_PRINT.
34859 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
34861         automated/eieio-test-methodinvoke.el (make-instance) <(subclass C)>:
34862         Don't use call-next-method in a cl-defmethod.
34864         * lisp/emacs-lisp/eieio-core.el (eieio--class): Derive from cl--class
34865         (eieio--class-p): Remove, provided by cl-defstruct.
34867 2015-04-14  Nicolas Petton  <nicolas@petton.fr>
34869         Add seq-intersection and seq-difference to the seq library
34870         * lisp/emacs-lisp/seq.el (seq-intersection, seq-difference):
34871         New functions.
34872         * test/automated/seq-tests.el: Add tests for seq-intersection and
34873         seq-difference.
34874         * doc/lispref/sequences.texi: Add documentation for seq-intersection
34875         and seq-difference.
34877 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
34879         * lisp/emacs-lisp/eieio-core.el (class-abstract-p): Don't inline,
34880         to avoid leaking internals.
34882 2015-04-14  Sam Steingold  <sds@gnu.org>
34884         package--ensure-init-file: widen requires save-restriction
34886 2015-04-14  Eli Zaretskii  <eliz@gnu.org>
34888         Improve the commit-msg Git hook for unibyte environments
34889         * build-aux/git-hooks/commit-msg: Set LC_ALL=C, before running Awk
34890         in unibyte environments.  (Suggested by Paul Eggert
34891         <eggert@cs.ucla.edu>.)  Use a more accurate approximation to
34892         [:print:], based on UTF-8 sequences of the unprintable characters.
34894         Describe problems with cursor caused by Windows Magnifier
34895         * etc/PROBLEMS: Describe the problem with cursor shape on
34896         MS-Windows due to Windows Magnifier.
34897         (Bug#20271)
34899         Make [:print:] support non-ASCII characters correctly
34900         * src/regex.c (ISPRINT): Call 'printablep' for multibyte characters.
34901         (BIT_PRINT): New bit mask.
34902         (re_wctype_to_bit): Return BIT_PRINT for RECC_PRINT.
34903         * src/character.c (printablep): New function.
34904         * src/character.h (printablep): Add prototype.
34905         * lisp/emacs-lisp/rx.el (rx): Doc fix: document the new behavior
34906         of 'print', 'alnum', and 'alphabetic'.
34907         * doc/lispref/searching.texi (Char Classes): Document the new
34908         behavior of [:print:].
34909         * etc/NEWS: Mention the new behavior of [:print:].
34911         Assign correct general-category and names to surrogates
34912         * admin/unidata/unidata-gen.el (unidata-setup-list): Don't ignore
34913         surrogates.  This avoids assigning them the default
34914         general-category of 'Cn', i.e. unassigned codepoints.
34915         (unidata-get-name): Give surrogates synthetic names.
34917 2015-04-14  Paul Eggert  <eggert@cs.ucla.edu>
34919         Assume C89 offsetof in xterm.c, xlwmenu.c
34920         * lwlib/xlwmenu.c (offset):
34921         * src/xterm.c (cvt_string_to_pixel_args):
34922         Use offsetof, not XtOffset.
34924 2015-04-14  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
34926         Assume C89 offsetof in widget.c
34927         * src/widget.c (XtOffset): Remove; no longer needed.
34928         (offset): Implement via offsetof instead of via pre-C89 XtOffset hack.
34930         Fix think-o in previous patch
34931         * src/window.c (count_windows, get_leaf_windows):
34932         Don't optimize count_windows incorrectly.
34934 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
34936         Avoid some int overflows in window.c
34937         * src/print.c (print_object):
34938         * src/window.c (sequence_number):
34939         * src/window.h (struct window.sequence_number):
34940         Don't assume window sequence number fits in int.
34941         * src/window.c (window_select_count):
34942         * src/window.h (struct window.use_time, window_select_count):
34943         Don't assume window use time fits in int.
34944         * src/window.c (Fsplit_window_internal):
34945         Don't assume user-supplied integer, or sum, fits in int.
34946         (Fset_window_configuration, count_windows, get_leaf_windows)
34947         (save_window_save, Fcurrent_window_configuration):
34948         Use ptrdiff_t for object counts.
34949         (Fset_window_configuration): Omit unused local 'n'.
34950         (count_windows): Simplify by writing in terms of get_leaf_windows.
34951         (get_leaf_windows): Don't store through FLAT if it's null.
34952         (extract_dimension): New static function.
34953         (set_window_margins, set_window_fringes, set_window_scroll_bars):
34954         Use it to avoid undefined behavior when converting user-supplied
34955         integer to 'int'.
34957 2015-04-13  Glenn Morris  <rgm@gnu.org>
34959         Minor doc copyedits
34960         * doc/emacs/custom.texi (Init Examples): Tweak example, replace typo.
34961         * doc/lispintro/emacs-lisp-intro.texi (condition-case): Typo fix.
34963 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
34965         [Gnus] Catch the invalid-operation that idna.el will issue
34966         * lisp/gnus/gnus-art.el (gnus-use-idna):
34967         * lisp/gnus/gnus-sum.el (gnus-summary-idna-message):
34968         * lisp/gnus/message.el (message-use-idna):
34969         Catch the invalid-operation that idna.el will issue.
34971 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
34973         * doc/lispref/processes.texi (Shell Arguments): Prefer diff -u.
34975 2015-04-13  Sam Steingold  <sds@gnu.org>
34977         package--ensure-init-file: widen before looking for
34978         "(package-initialize)"
34980 2015-04-13  Dmitry Gutov  <dgutov@yandex.ru>
34982         Change diff-switches default to `-u' (Bug#20290)
34983         * doc/emacs/files.texi (Comparing Files): Document the new default
34984         value of `diff-switches'.
34985         * doc/emacs/trouble.texi (Sending Patches): Document the preference
34986         for unified diff format.  Escape the plus in the suggested `-F' regexp
34987         value.
34988         * lisp/vc/diff.el (diff-switches): Change the default to `-u'.
34990 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
34992         (gnus-group--setup-tool-bar-update): Fix last change
34993         * lisp/gnus/gnus-group.el (gnus-group--setup-tool-bar-update):
34994         cursor-sensor-functions should be a list of functions.
34996 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
34998         * lisp/gnus/gnus-topic.el (gnus-topic-mode):
34999         Use gmm-called-interactively-p.
35001 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
35003         * lisp/loadup.el ("cus-start"): Load it after loaddefs.el
35004         (Bug#20321)
35005         * lisp/cus-start.el (read-buffer-function): Don't advertise
35006         iswitchb-read-buffer any more.
35007         (iswitchb): Don't tweak this obsolete group any more.
35009 2015-04-13  Artur Malabarba  <bruce.connor.am@gmail.com>
35011         * lisp/emacs-lisp/package.el: Fix package--ensure-init-file.
35013         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Implement docstrings.
35014         Adding a string after a constructor's argument list will use
35015         that string as the constructor function docstring.  If this string
35016         is absent but the struct itself was given a docstring, use that as
35017         the constructor's docstring.
35018         Fixes bug#17284.
35020 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
35022         Deprecate `intangible' and `point-entered' properties
35023         * lisp/emacs-lisp/cursor-sensor.el: New file.
35024         * lisp/simple.el (pre-redisplay-functions): New hook.
35025         (redisplay--pre-redisplay-functions): New function.
35026         (pre-redisplay-function): Use it.
35027         (minibuffer-avoid-prompt): Mark obsolete.
35028         (redisplay--update-region-highlight): Adapt it to work as a function on
35029         pre-redisplay-functions.
35030         * lisp/cus-start.el (minibuffer-prompt-properties--setter): New fun.
35031         (minibuffer-prompt-properties): Use it.  Use cursor-intangible rather
35032         than point-entered to make the prompt intangible.
35033         * lisp/forms.el: Move `provide' calls to the end.
35034         (forms-mode): Don't use `run-hooks' on a local var.
35035         (forms--make-format, forms--make-format-elt-using-text-properties):
35036         Use cursor-intangible rather than `intangible'.
35037         (forms-mode): Enable cursor-intangible-mode.
35038         * lisp/isearch.el (isearch-mode): Use defvar-local.
35039         (cursor-sensor-inhibit): Declare.
35040         (isearch-mode): Set cursor-sensor-inhibit.
35041         (isearch-done): Set it back.
35042         (isearch-open-overlay-temporary, isearch-open-necessary-overlays)
35043         (isearch-close-unnecessary-overlays): Don't bother with `intangible'
35044         any more.
35045         * lisp/ses.el (ses-localvars): Remove `mode-line-process'.
35046         (ses-sym-rowcol, ses-cell-value, ses-col-width, ses-col-printer):
35047         Add Edebug spec.
35048         (ses-goto-print, ses-print-cell, ses-adjust-print-width)
35049         (ses-goto-data, ses-setup, ses-copy-region): Don't let-bind
35050         inhibit-point-motion-hooks any more.
35051         (ses--cell-at-pos, ses--curcell): New functions, extracted from
35052         ses-set-curcell.
35053         (ses-set-curcell): Use them.
35054         (ses-print-cell, ses-setup): Use cursor-intangible instead of
35055         `intangible'.  Make sure cursor-intangible isn't sticky at BOB.
35056         (ses-print-cell-new-width, ses-reprint-all, ses-recalculate-all):
35057         Use ses--cell-at-pos.
35058         (ses--mode-line-process, ses--cursor-sensor-highlight): New functions,
35059         extracted from ses-command-hook.  Make them work with multiple windows
35060         displaying the same buffer.
35061         (ses-mode): Use them via mode-line-process and pre-redisplay-functions.
35062         Enable cursor-intangible-mode.
35063         (ses-command-hook): Remove cell highlight and mode-line update code.
35064         (ses-forward-or-insert, ses-copy-region-helper, ses-sort-column):
35065         Update for new name of text-property holding the cell name.
35066         (ses-rename-cell): Don't mess with mode-line-process.
35067         * lisp/erc/erc-stamp.el (erc-add-timestamp): Use the new
35068         cursor-sensor-functions property instead of point-entered.
35069         (erc-insert-timestamp-right, erc-format-timestamp):
35070         Use cursor-intangible rather than `intangible'.
35071         (erc-munge-invisibility-spec): Use add-to-invisibility-spec and
35072         remove-from-invisibility-spec.  Enable cursor-intangible-mode and
35073         cursor-sensor-mode if needed.
35074         (erc-echo-timestamp): Adapt to calling convention of
35075         cursor-sensor-functions.
35076         (erc-insert-timestamp-right): Remove unused vars `current-window' and
35077         `indent'.
35078         * lisp/gnus/gnus-group.el (gnus-tmp-*): Declare.
35079         (gnus-update-group-mark-positions): Remove unused `topic' var.
35080         (gnus-group-insert-group-line): Remove unused var `header'.
35081         (gnus-group--setup-tool-bar-update): New function.
35082         (gnus-group-insert-group-line): Use it.
35083         (gnus-group-update-eval-form): Declare local
35084         dynamically-bound variables.
35085         (gnus-group-unsubscribe-group): Use \` and \' to match string bounds.
35086         * lisp/gnus/gnus-topic.el (gnus-topic-jump-to-topic)
35087         (gnus-group-prepare-topics, gnus-topic-update-topic)
35088         (gnus-topic-change-level, gnus-topic-catchup-articles)
35089         (gnus-topic-remove-group, gnus-topic-delete, gnus-topic-indent):
35090         Use inhibit-read-only.
35091         (gnus-topic-prepare-topic): Use gnus-group--setup-tool-bar-update.
35092         (gnus-topic-mode): Use define-minor-mode and derived-mode-p.
35093         * lisp/textmodes/reftex-index.el (reftex-display-index):
35094         Use cursor-intangible-mode if available.
35095         (reftex-index-post-command-hook): Check cursor-intangible.
35096         * lisp/textmodes/reftex-toc.el (reftex-toc):
35097         Use cursor-intangible-mode if available.
35098         (reftex-toc-recenter, reftex-toc-post-command-hook):
35099         Check cursor-intangible.
35100         * lisp/textmodes/sgml-mode.el: Use lexical-binding.
35101         (sgml-tag): Use cursor-sensor-functions instead of point-entered.
35102         (sgml-tags-invisible): Use with-silent-modifications and
35103         inhibit-read-only.  Enable cursor-sensor-mode.
35104         (sgml-cursor-sensor): Rename from sgml-point-entered and adjust to
35105         calling convention of cursor-sensor-functions.
35106         * lisp/textmodes/table.el (table-cell-map-hook, table-load-hook)
35107         (table-point-entered-cell-hook, table-point-left-cell-hook):
35108         Don't autoload.
35109         (table-cell-entered-state): Remove var.
35110         (table--put-cell-point-entered/left-property)
35111         (table--remove-cell-properties):
35112         Use cursor-sensor-functions rather than point-entered/left.
35113         (table--point-entered/left-cell-function): Merge
35114         table--point-entered-cell-function and table--point-left-cell-function
35115         and adjust to calling convention of cursor-sensor-functions.
35117         Update ldef-boots.el
35119         * lisp/emacs-lisp/pcase.el (pcase-dolist): Autoload as well.
35121         * doc/misc/eieio.texi: Don't advertise now obsolete constructs
35123         Collapse successive char deletions in the undo log
35124         * src/cmds.c (remove_excessive_undo_boundaries): New function,
35125         extracted from Fself_insert_command.
35126         (Fdelete_char, Fself_insert_command): Use it.
35127         * src/fileio.c (Fmake_symbolic_link): Rename arg to `target'.
35128         * src/keyboard.c (syms_of_keyboard): `top-level' shouldn't be special.
35130         xterm and OSC 52: Add NEWS entry, and tweak the code
35131         * lisp/term/xterm.el (gui-set-selection) <nil>: Move method definition
35132         to top-level.
35133         (terminal-init-xterm-activate-set-selection): Set a terminal property.
35134         (xterm--set-selection): Use it instead of checking the value of
35135         `terminal-initted'.  Don't use string-bytes.
35137 2015-04-13  Philipp Stephani  <p.stephani2@gmail.com>
35139         xterm.el: Implement OSC-52 functionality for setting the X selection
35140         * lisp/term/xterm.el (xterm-max-cut-length): New var.
35141         (xterm--set-selection, terminal-init-xterm-activate-set-selection):
35142         New funs.
35143         (terminal-init-xterm, xterm--version-handler): Use them.
35145 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
35147         Remove left over code from when we used an obsolete/loaddefs.el file
35148         * lisp/subr.el (do-after-load-evaluation): Remove left over code from
35149         when we used an obsolete/loaddefs.el file.
35151         * lisp/cedet/semantic/fw.el (semantic-exit-on-input)
35152         (semanticdb-without-unloaded-file-searches): Use declare.
35153         (semantic-fw-add-edebug-spec): Remove.
35155         * lisp/completion.el (completion-lisp-mode-hook):
35156         Use completion-separator-chars rather than local key binding.
35158         * src/*.c: Set deactivate_mark buffer-locally
35159         (Bug#20260)
35160         * src/insdel.c (prepare_to_modify_buffer_1):
35161         * src/fileio.c (Finsert_file_contents): Set deactivate_mark
35162         buffer-locally.
35164 2015-04-12  Fabián Ezequiel Gallina  <fgallina@gnu.org>
35166         python.el: Keep symmetry on sexp navigation with parens
35167         (Bug#19954)
35168         * lisp/progmodes/python.el
35169         (python-nav--forward-sexp): Add argument skip-parens-p.
35170         (python-nav-forward-sexp, python-nav-backward-sexp)
35171         (python-nav-forward-sexp-safe)
35172         (python-nav-backward-sexp-safe): Use it.
35173         * test/automated/python-tests.el
35174         (python-nav-forward-sexp-1): Fix test.
35176 2015-04-12  João Távora  <joaotavora@gmail.com>
35178         Don't use `setq-local' in Gnus code
35179         This might break upstream builds with older Emacsen
35180         * lisp/gnus/message.el (message-mode): Use `set' and
35181         `make-local-variable' instead of `setq-local'.
35183 2015-04-12  Paul Eggert  <eggert@cs.ucla.edu>
35185         Update Makefile.in's .PHONY dependencies
35186         * Makefile.in (change-history-commit, master-branch-is-current)
35187         (no-ChangeLog): Now phony.
35189         Remove configure's --with-mmdf option
35190         * configure.ac (MAIL_USE_MMDF): Remove.
35191         * etc/NEWS: Document this.
35192         * lib-src/movemail.c: Assume MAIL_USE_MMDF is not defined.
35193         (Bug#20308)
35195         * doc/man/ChangeLog.01: Rename from doc/man/ChangeLog.1.
35196         That way, 'make install' won't think it's a man page.
35197         Reported by Ashish SHUKLA in:
35198         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00656.html
35200         Improve 'make change-history' prereq tests
35201         * Makefile.in (gen_origin): Fix to match what's in the master branch.
35202         (no-ChangeLog, master-branch-is-current): New rules.
35203         (change-history): Depend on them, to avoid similar future problems.
35204         Escape the local-variables string to pacify Emacs when editing
35205         Makefile.in.
35207 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
35209         * test/automated/package-test.el (with-package-test):
35210         Kill Packages buffer.
35212         * lisp/emacs-lisp/package.el: Improve transaction y-or-n prompt.
35213         (package-menu--prompt-transaction-p): Prompt for "Delete" first,
35214         "Upgrade" last, and use capitalized instead of all-caps.
35216         * lisp/emacs-lisp/package.el: Completely silence async operations.
35217         (package--make-autoloads-and-stuff): Silence autoloads.
35218         (package--save-selected-packages): New function, silences
35219         `customize-save-variable'.
35220         (package--user-selected-p, package-install-from-buffer)
35221         (package-delete, package-install): Use it.
35222         (package-install-from-archive)
35223         (package-menu--perform-transaction): Silence.
35224         (package-menu-execute): Feedback when operation starts.
35226         Use delay-mode-hooks when visiting the init-file
35227         * lisp/emacs-lisp/package.el (package--ensure-init-file):
35228         delay-mode-hooks.
35229         * lisp/cus-edit.el (custom-save-all): delay-mode-hooks.
35231         * lisp/files.el: Only message when saving if save-silently is nil.
35232         (save-silently): New variable.
35233         (files--message): New function.
35234         (find-file-noselect, save-buffer, basic-save-buffer)
35235         (basic-save-buffer-2, save-some-buffers, not-modified)
35236         (append-to-file): Use them.
35238 2015-04-12  Johan Bockgård  <bojohan@gnu.org>
35240         Support debug declarations in pcase macros
35241         * lisp/emacs-lisp/pcase.el (pcase-MACRO): New edebug spec.
35242         (pcase-UPAT): Use it.  Remove "`".
35243         (pcase--edebug-match-macro): New function.
35244         (pcase-defmacro): Support debug declarations.
35245         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
35246         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>:
35247         * lisp/emacs-lisp/pcase.el (\`): <pcase-defmacro>:
35248         Add debug declaration.
35250         pcase.el: Edebug support for `app' and vector patterns
35251         * lisp/emacs-lisp/pcase.el (pcase-FUN): New edebug spec.
35252         (pcase-UPAT): Use it.  Support `app' patterns.
35253         (pcase-QPAT): Support vector patterns.
35255         edebug.el: Disambiguate vector specifications
35256         * lisp/emacs-lisp/edebug.el (edebug-match-list): Always treat
35257         `(vector ...)' as a vector specification, not as a sublist.
35259         (gnus-summary-refer-thread): Don't clobber unread articles
35260         This fixes a bug where `A T' causes "random" articles to become marked
35261         as read.
35262         * lisp/gnus/gnus-sum.el (gnus-summary-refer-thread): Make sure
35263         gnus-newsgroup-unreads remains sorted.
35265         mouse-sel.el: Fix mouse-sel-get-selection-function
35266         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
35267         Use gui--last-selected-text-primary instead of no longer existing
35268         gui-last-selected-text.
35270         * lisp/rect.el (delete-whitespace-rectangle-line): Don't cross EOL.
35272         * lisp/net/nsm.el (nsm-query-user): Use cursor-in-echo-area.
35274 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
35276         * lisp/emacs-lisp/package.el (list-packages): Avoid redundant generate.
35278         * lisp/emacs-lisp/package.el (list-packages): Call refresh in
35279         right buffer.
35281         * lisp/emacs-lisp/bytecomp.el: Silence noninteractive compilations.
35282         (byte-compile--interactive): New var.
35283         (byte-compile--message): New function.
35284         (byte-compile-log-1, byte-force-recompile)
35285         (byte-recompile-directory, byte-recompile-file)
35286         (byte-compile-file, compile-defun)
35287         (byte-compile-file-form-defmumble, byte-compile)
35288         (byte-compile-file-form-defalias, display-call-tree): Use it.
35290         * lisp/files.el: Don't message when nothing happened.
35291         (save-some-buffers, basic-save-buffer): Before messaging to say
35292         "nothing was saved" check if (called-interactively-p 'any).
35294 2015-04-12  João Távora  <joaotavora@gmail.com>
35296         Summary: Improve sexp-based movement in message-mode
35297         Works by giving citations and smileys a different syntax.  This helps
35298         modes like `show-paren-mode', `electric-pair-mode', and C-M-*
35299         sexp-based movement.
35300         * lisp/gnus/message.el (message--syntax-propertize): New function.
35301         (message-mode): Set syntax-related vars.
35302         (message-smileys): New variable.
35303         * test/automated/message-mode-tests.el: New file
35305 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
35307         Use bool for boolean in window.c
35308         * src/window.c: Omit unnecessary static function decls.
35309         (adjust_window_count, select_window, Fselect_window)
35310         (window_body_width, Fwindow_body_height, Fwindow_body_width)
35311         (set_window_hscroll, check_window_containing, Fwindow_at)
35312         (Fwindow_end, Fset_window_start, Fpos_visible_in_window_p)
35313         (unshow_buffer, replace_window, recombine_windows)
35314         (add_window_to_list, candidate_window_p, next_window)
35315         (Fnext_window, Fprevious_window, window_loop, check_all_windows)
35316         (Fget_buffer_window, Fdelete_other_windows_internal)
35317         (replace_buffer_in_windows_safely, set_window_buffer)
35318         (Fset_window_buffer, Fforce_window_update)
35319         (temp_output_buffer_show, make_parent_window)
35320         (window_resize_check, window_resize_apply, Fwindow_resize_apply)
35321         (resize_frame_windows, Fsplit_window_internal)
35322         (Fdelete_window_internal, grow_mini_window, shrink_mini_window)
35323         (Fresize_mini_window_internal, mark_window_cursors_off)
35324         (window_scroll, window_scroll_pixel_based)
35325         (window_scroll_line_based, scroll_command, Fscroll_other_window)
35326         (Fscroll_left, Fscroll_right, displayed_window_lines, Frecenter)
35327         (Fmove_to_window_line, Fset_window_configuration)
35328         (delete_all_child_windows, apply_window_adjustment)
35329         (set_window_fringes, set_window_scroll_bars)
35330         (Fset_window_vscroll, foreach_window, foreach_window_1)
35331         (compare_window_configurations, Fcompare_window_configurations):
35332         Prefer 'bool', 'true', and 'false' for booleans.
35333         * src/window.h (WINDOW_MODE_LINE_LINES)
35334         (WINDOW_HEADER_LINE_LINES): Omit unnecessary "!!" on bool value.
35336 2015-04-11  Artur Malabarba  <bruce.connor.am@gmail.com>
35338         Speed up byte-compilation and autoload generation by avoiding mode-hooks
35339         This prevents emacs-lisp-mode-hook from being run everytime an
35340         autoload file is generated, which can account for a fraction of
35341         package installation time depending on the hooks the user has
35342         configured.
35343         * lisp/emacs-lisp/bytecomp.el (byte-compile-file): Use delay-mode-hooks.
35344         * lisp/emacs-lisp/autoload.el (autoload-find-file)
35345         (autoload-find-generated-file): Use delay-mode-hooks.
35347         * lisp/emacs-lisp/package.el: Improve `package-menu-refresh'.
35348         (package-menu-refresh): Respect async and do new package checking.
35349         (list-packages): Use `package-menu-refresh' instead of repeating code.
35351         * lisp/emacs-lisp/package.el: Improve package-menu-quick-help.
35352         (package--quick-help-keys): New variable.
35353         (package--prettify-quick-help-key): New function.
35354         (package-menu-quick-help): Use it.
35356         * lisp/emacs-lisp/package.el: Fix initially wrong compat table.
35357         (package--build-compatibility-table): Require finder.
35359         * test/automated/package-test.el: Fix new test.
35361         * lisp/emacs-lisp/package.el: Silence async operations.
35362         (package--silence): New variable.
35363         (package--message): New function.
35364         (package-import-keyring, package-refresh-contents)
35365         (package-compute-transaction, package-install, package-delete)
35366         (package-menu--perform-transaction, package-menu-execute): Use it.
35368         * test/automated/package-test.el: Test async functionality.
35369         (package-test-update-archives-async): New test.
35371 2015-04-11  Daiki Ueno  <ueno@gnu.org>
35373         Utilize `make-process' in epg.el
35374         * lisp/epg.el (epg-error-output): Abolish.
35375         (epg-context): New slot `error-buffer'.
35376         (epg--start): Use `make-process' and `make-pipe-process'.
35377         (epg--process-filter): Remove code separating stderr from stdout.
35378         (epg-wait-for-completion): Simplify `error-output' handling.
35379         (epg-reset): Dispose error buffer.
35381 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
35383         * .gitignore: Ignore doc temps and outputs.
35385         Port commit-msg to MSYS Bash+Gawk
35386         See Eli Zaretskii in:
35387         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00610.html
35388         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format)
35389         (cent_sign, print_at_sign, at_sign): Revert previous change.
35390         (print_at_sign): Prepend "BEGIN".
35391         (at_sign): Redirect from /dev/null to be safer with pre-POSIX awk.
35393         Port commit-msg to broken MS-Windows shell
35394         * build-aux/git-hooks/commit-msg (cent_sign):
35395         Just use UTF-8 here rather than ASCII + printf, as the latter fails
35396         on a broken MS-Windows shell.  Reported by Eli Zaretskii in:
35397         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00592.html
35399 2015-04-11  Chris Zheng  <chriszheng99@gmail.com>  (tiny change)
35401         Support GnuTLS v3.4 and later on MS-Windows
35402         * src/gnutls.c (syms_of_gnutls) <libgnutls-version>: New DEFSYM.
35403         * lisp/term/w32-win.el (dynamic-library-alist): Determine which
35404         GnuTLS DLL to load according to value of libgnutls-version.
35405         (Bug#20294)
35407 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
35409         Minor quoting etc. fixes to misc manuals
35410         Fix some minor quoting and spacing issues.  Distinguish more
35411         clearly among grave accent and apostrophe (which are ASCII) and
35412         single quote (which is not).  Prefer the standard terms
35413         "apostrophe" and "grave accent" to alternative names that can be
35414         confusing.  Use apostrophes to single-quote ASCII text.
35415         * doc/misc/remember.texi: Spell the mystic's pseudonym in UTF-8
35416         rather than approximating it in ASCII with grave accent.
35418 2015-04-11  Daiki Ueno  <ueno@gnu.org>
35420         Respect more keyword args in `make-process'
35421         * src/process.c (Fmake_process): Respect `:sentinel' and `:filter'
35422         keywords as documented.
35424 2015-04-10  Dmitry Gutov  <dgutov@yandex.ru>
35426         Extract ChangeLog entries when committing a directory
35427         * lisp/vc/vc-dispatcher.el (vc-log-edit): Update FIXME comment.
35428         * lisp/vc/log-edit.el (log-edit-changelog-insert-entries):
35429         Add a FIXME comment.
35430         (log-edit-changelog-entries): Extract from
35431         `log-edit-changelog-entries', handle FILE being a directory
35432         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00555.html).
35434 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
35436         Fix problems found by --enable-gcc-warnings
35437         * src/process.c (create_process, Fmake_pipe_process)
35438         (Fmake_network_process): Omit unused locals.
35440         Fix commit-msg to handle scissors lines
35441         * build-aux/git-hooks/commit-msg:
35442         Ignore every line after a scissors line, such as a line generated
35443         by 'git commit -v'.  Problem reported by Johan Bockgård in:
35444         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00580.html
35446         port commit-msg to Gawk 3.0.4 (1999)
35447         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format, cent_sign)
35448         (print_at_sign, at_sign): New vars.  Use them to avoid problems
35449         Eli Zaretskii encountered with Gawk 3.0.4 (1999) on MSYS.  See:
35450         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
35452         Have commit-msg report commit failure
35453         * build-aux/git-hooks/commit-msg: If the commit is aborted,
35454         say so.  Simplify by doing this at the end.  Problem reported
35455         by Eli Zaretskii in:
35456         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
35458 2015-04-10  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
35460         Clean up LDAP Configuration section of EUDC manual
35461         * doc/misc/eudc.texi: Combine indices.
35462         (LDAP Configuration): Use command markup.  Add index entries.
35463         Change formatting.  Wrap long lines.  Add noindent markup.
35465 2015-04-10  Daiki Ueno  <ueno@gnu.org>
35467         Add facility to collect stderr of async subprocess
35468         * src/w32.h (register_aux_fd): New function declaration.
35469         * src/w32.c (register_aux_fd): New function.
35470         * src/process.h (struct Lisp_Process): New member stderrproc.
35471         * src/process.c (PIPECONN_P): New macro.
35472         (PIPECONN1_P): New macro.
35473         (Fdelete_process, Fprocess_status, Fset_process_buffer)
35474         (Fset_process_filter, Fset_process_sentinel, Fstop_process)
35475         (Fcontinue_process): Handle pipe process specially.
35476         (create_process): Respect p->stderrproc.
35477         (Fmake_pipe_process): New function.
35478         (Fmake_process): Add new keyword argument :stderr.
35479         (wait_reading_process_output): Specially handle a pipe process when
35480         it gets an EOF.
35481         (syms_of_process): Register Qpipe and Smake_pipe_process.
35482         * doc/lispref/processes.texi (Asynchronous Processes): Document
35483         `make-pipe-process' and `:stderr' keyword of `make-process'.
35484         * lisp/subr.el (start-process): Suggest to use `make-process' handle
35485         standard error separately.
35486         * test/automated/process-tests.el (process-test-stderr-buffer)
35487         (process-test-stderr-filter): New tests.
35488         * etc/NEWS: Mention new process type `pipe' and its usage with the
35489         `:stderr' keyword of `make-process'.
35491 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
35493         Minor quoting etc. fixes to lispref manual
35494         * doc/lispref/tips.texi (Documentation Tips):
35495         Distinguish more clearly among grave accent, apostrophe,
35496         and single quote.
35497         * doc/lispref/README, doc/lispref/buffers.texi:
35498         * doc/lispref/commands.texi, doc/lispref/control.texi:
35499         * doc/lispref/customize.texi, doc/lispref/display.texi:
35500         * doc/lispref/elisp.texi, doc/lispref/files.texi:
35501         * doc/lispref/frames.texi, doc/lispref/hash.texi:
35502         * doc/lispref/help.texi, doc/lispref/internals.texi:
35503         * doc/lispref/loading.texi, doc/lispref/makefile.w32-in:
35504         * doc/lispref/markers.texi, doc/lispref/modes.texi:
35505         * doc/lispref/nonascii.texi, doc/lispref/objects.texi:
35506         * doc/lispref/os.texi, doc/lispref/positions.texi:
35507         * doc/lispref/strings.texi, doc/lispref/syntax.texi:
35508         * doc/lispref/text.texi, doc/lispref/tips.texi:
35509         * doc/lispref/two-volume-cross-refs.txt, doc/lispref/windows.texi:
35510         Use American-style double quoting in ordinary text,
35511         and quote 'like this' when single-quoting in ASCII text.
35512         Also, fix some minor spacing issues.
35514 2015-04-10  Michael Albinus  <michael.albinus@gmx.de>
35516         Handle symlinked test directory in tramp-tests.el
35517         * test/automated/tramp-tests.el (tramp-test18-file-attributes)
35518         (tramp--test-check-files): Use `file-truename' for directories.
35520 2015-04-10  Eli Zaretskii  <eliz@gnu.org>
35522         Fix 'recenter' when visual-line-mode is turned on
35523         * src/window.c (Frecenter): Use the same code for GUI and TTY
35524         frames alike; use vmotion only for "initial" frames.  This is
35525         because vmotion doesn't support visual-line-mode.  Rewrite the
35526         'iarg >= 0' case to use move_it_* functions instead of using
35527         vmotion, for the same reason.  Fix the clipping of the argument
35528         value to support scroll-margin in all cases and avoid unwarranted
35529         recentering.  Reported by Milan Stanojević <milanst@gmail.com> in
35530         http://lists.gnu.org/archive/html/help-gnu-emacs/2015-04/msg00092.html,
35531         which see.
35533 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
35535         * lisp/abbrev.el (define-abbrev-table): Refine last change.
35537         * lisp/emacs-lisp/cl-lib.el: Partial revert of "2015-04-05 Rationalize
35538         use of c[ad]+r", so as to keep the "cl-" prefix on all
35539         cl-lib definitions.
35541         * lisp/progmodes/vhdl-mode.el (vhdl-prepare-search-2):
35542         Use inhibit-point-motion-hooks.
35544         * lisp/cedet/semantic: Remove some dead code.
35545         * lisp/cedet/semantic/util-modes.el
35546         (semantic-stickyfunc-header-line-format): Emacs<22 is not supported
35547         any more.
35548         * lisp/cedet/semantic/fw.el (semantic-buffer-local-value): Emacs<21 is
35549         not supported any more.
35550         (semantic-safe): Use `declare'.
35551         * lisp/cedet/semantic/decorate.el (semantic-set-tag-intangible)
35552         (semantic-tag-intangible-p): Remove unused functions.
35553         * lisp/cedet/semantic/complete.el (semantic-displayor-window-edges):
35554         Remove unused function.
35556         * lisp/gnus/gnus-art.el (gnus-hidden-properties): Simplify.
35557         (gnus-article-hide-text, gnus-article-unhide-text)
35558         (gnus-article-unhide-text-type): Remove special handling of
35559         `intangible' since that property is not used any more.
35560         (gnus-article-treat-body-boundary): Use gnus-hidden-properties.
35562 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
35564         Use the VC root in `log-edit-listfun'
35565         * lisp/vc/vc-dispatcher.el (vc-log-edit): Use the VC root in
35566         `log-edit-listfun'.
35568 2015-04-09  Jay Belanger  <jay.p.belanger@gmail.com>
35570         Fix description of Unix time, mention new function.
35571         * lisp/calc/calc-forms.el (calcFunc-unixtime): Fix adjustment for
35572         Unix time.
35573         * doc/misc/calc.texi (Date Forms): Fix description of Unix time.
35574         (Basic Operations on Units): Mention `calc-convert-exact-units'.
35576 2015-04-09  Artur Malabarba  <bruce.connor.am@gmail.com>
35578         * lisp/emacs-lisp/package.el: Use mode-line-process for notification.
35580 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
35582         * lisp/vc/log-edit.el (log-edit-insert-changelog-entries):
35583         Don't add newline after the last entry.
35585 2015-04-09  Simen Heggestøyl  <simenheg@gmail.com>
35587         css-mode.el: Add "not" pseudo-class
35588         (Bug#20267)
35589         * lisp/textmodes/css-mode.el (css-pseudo-class-ids): Add "not" to
35590         list of CSS pseudo-classes.
35592 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
35594         * etc/NEWS: Add missing entry for "Stop messing with the EMACS env var".
35596 2015-04-09  Michael Albinus  <michael.albinus@gmx.de>
35598         Stop messing with the EMACS env var
35599         * doc/emacs/misc.texi (Interactive Shell): Remove description of
35600         EMACS env var.
35602 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
35604         Adapt 'make change-history' to coding cookie
35605         * Makefile.in (change-history): Adjust to change of format of
35606         ChangeLog file, which now has a coding cookie before an indented
35607         copyright notice.
35609 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
35611         Adapt 'make change-history' to coding cookie
35612         * Makefile.in (change-history): Adjust to change of format of
35613         ChangeLog file, which now has a coding cookie before an indented
35614         copyright notice.
35616         gitlog-to-changelog coding cookie and mv -i
35617         * build-aux/gitlog-to-emacslog: Use ChangeLog.1, not Makefile.in,
35618         for copyright notice prototype, so that we get a proper "coding:"
35619         cookie.  Use 'mv -i' to avoid unconditionally overwriting an
35620         existing ChangeLog.  Problems reported by Eli Zaretskii in:
35621         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00504.html
35623         Merge from gnulib
35624         * build-aux/gitlog-to-changelog: Update from gnulib, incorporating:
35625         2015-04-09 gitlog-to-changelog: port to MS-Windows
35627 2015-04-09  Boruch Baum  <boruch_baum@gmx.com>  (tiny change)
35629         * lisp/bookmark.el (bookmark-bmenu-goto-bookmark): Don't inf-loop.
35630         (Bug#20212)
35632 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
35634         Stop messing with the EMACS env var
35635         (Bug#20202)
35636         * lisp/net/tramp-sh.el (tramp-remote-process-environment):
35637         * lisp/comint.el (comint-exec-1):
35638         * lisp/term.el (term-exec-1): Don't set EMACS envvar.
35639         * lisp/progmodes/compile.el (compilation-start): Same and bring
35640         INSIDE_EMACS's format in line with other users.
35642         css-mode.el (css-smie-rules): Fix indentation after complex selectors
35643         (Bug#20282)
35644         * lisp/textmodes/css-mode.el (css-smie-rules): Don't get confused by
35645         inner structure of selectors.
35647 2015-04-08  Fabián Ezequiel Gallina  <fgallina@gnu.org>
35649         python.el: Indent docstring lines to base-indent
35650         (Bug#19595)
35651         Thanks to immerrr <immerrr@gmail.com> for reporting and providing
35652         an initial patch.
35653         * lisp/progmodes/python.el
35654         (python-indent-context): Add :inside-docstring context.
35655         (python-indent--calculate-indentation): Handle :inside-docstring.
35656         (python-indent-region): Re-indent docstrings.
35657         * test/automated/python-tests.el (python-indent-region-5)
35658         (python-indent-inside-string-2): Fix tests.
35660         python.el: Increase native completion robustness
35661         (Bug#19755)
35662         Thanks to Carlos Pita <carlosjosepita@gmail.com> for reporting
35663         this and providing useful ideas.
35664         * lisp/progmodes/python.el
35665         (python-shell-completion-native-output-timeout): Increase value.
35666         (python-shell-completion-native-try-output-timeout): New var.
35667         (python-shell-completion-native-try): Use it.
35668         (python-shell-completion-native-setup): New readline setup avoids
35669         polluting current context, ensures output when no-completions are
35670         available and includes output end marker.
35671         (python-shell-completion-native-get-completions): Trigger with one
35672         tab only.  Call accept-process-output until output end is found or
35673         python-shell-completion-native-output-timeout is exceeded.
35675 2015-04-08  Samer Masterson  <samer@samertm.com>
35677         * lisp/eshell: Make backslash a no-op in front of normal chars
35678         (Bug#8531)
35679         * lisp/eshell/esh-arg.el (eshell-parse-argument-hook): Update comment.
35680         (eshell-parse-backslash): Return escaped character after backslash
35681         if it is special.  Otherwise, if the backslash is not in a quoted
35682         string, ignore the backslash and return the character after; if
35683         the backslash is in a quoted string, return the backslash and the
35684         character after.
35685         * test/automated/eshell.el (eshell-test/escape-nonspecial)
35686         (eshell-test/escape-nonspecial-unicode)
35687         (eshell-test/escape-nonspecial-quoted)
35688         (eshell-test/escape-special-quoted): Add tests for new
35689         `eshell-parse-backslash' behavior.
35691 2015-04-08  Gustav Hållberg  <gustav@gmail.com>  (tiny change)
35693         * lisp/vc/diff-mode.el (diff-hunk-file-names): Don't require a TAB
35694         after the file name.
35695         (Bug#20276)
35697 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
35699         Minor quoting etc. fixes to Emacs manual
35700         * doc/emacs/Makefile.in, doc/emacs/ack.texi, doc/emacs/building.texi:
35701         * doc/emacs/calendar.texi, doc/emacs/cmdargs.texi:
35702         * doc/emacs/custom.texi, doc/emacs/dired.texi, doc/emacs/emacs.texi:
35703         * doc/emacs/files.texi, doc/emacs/glossary.texi, doc/emacs/gnu.texi:
35704         * doc/emacs/indent.texi, doc/emacs/macos.texi:
35705         * doc/emacs/maintaining.texi, doc/emacs/makefile.w32-in:
35706         * doc/emacs/programs.texi, doc/emacs/rmail.texi:
35707         * doc/emacs/search.texi, doc/emacs/trouble.texi:
35708         * doc/emacs/vc1-xtra.texi:
35709         Use American-style double quoting in ordinary text,
35710         and quote 'like this' when single-quoting in ASCII text.
35711         Also, fix some minor spacing issues.
35713         Minor quoting etc. fixes to elisp intro
35714         * doc/lispintro/emacs-lisp-intro.texi: Consistently use
35715         American-style double quoting in ordinary text.  In ASCII text,
35716         consistently quote 'like this' instead of `like this', unless
35717         Emacs requires the latter.
35719 2015-04-08  Dmitry Gutov  <dgutov@yandex.ru>
35721         * CONTRIBUTE: Mention log-edit-insert-changelog.
35723         * CONTRIBUTE: Emphasize creating the top-level ChangeLog file manually.
35725 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
35727         * doc/misc/calc.texi (Summary): Avoid '@:' when usurped.
35729 2015-04-08  Stefan Monnier  <monnier@iro.umontreal.ca>
35731         * lisp/emacs-lisp/eieio-core.el (eieio-copy-parents-into-subclass):
35732         Fix inheritance of initargs.  (Bug#20270)
35734 2015-04-08  Artur Malabarba  <bruce.connor.am@gmail.com>
35736         * lisp/emacs-lisp/package.el (package-menu-mode): Mode-line notification
35737         while dowloading information.
35739         * lisp/emacs-lisp/package.el: More conservative `ensure-init-file'
35740         (package--ensure-init-file): Check file contents before visiting.
35741         (package-initialize): Call it.
35742         (package-install-from-buffer, package-install): Don't call it.
35744 2015-04-08  Eli Zaretskii  <eliz@gnu.org>
35746         * src/eval.c (init_eval_once): Bump max_lisp_eval_depth to 800.
35747         (Bug#17517)
35749 2015-04-08  Michael Albinus  <michael.albinus@gmx.de>
35751         * lisp/net/tramp-cache.el (tramp-flush-file-property):
35752         Fix nasty scoping bug.
35754 2015-04-08  Tassilo Horn  <tsdh@gnu.org>
35756         Add notice to visual commands section
35757         * doc/misc/eshell.texi (Input/Output): Add notice that some tools
35758         such as git call less with its -F option which omits pagination if
35759         the contents is less than one page long.  This interferes with
35760         eshell's visual (sub-)commands.
35762 2015-04-07  Dmitry Gutov  <dgutov@yandex.ru>
35764         * lisp/ffap.el (ffap-string-at-point-mode-alist): Support
35765         environment variable expansion in file names.  (Bug#19839)
35767 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
35769         Prefer double-quote to accent-grave in man pages
35771 2015-04-07  Stefan Monnier  <monnier@iro.umontreal.ca>
35773         (Bug#20257)
35774         * lisp/files.el (set-visited-file-name): Clear auto-save if nil.
35776 2015-04-07  Ivan Shmakov  <ivan@siamics.net>
35778         Update etc/PROBLEMS.
35779         * etc/PROBLEMS: Mention visible-cursor; a few more mentions of
35780         ~/.Xresources and xrdb(1); refer to 'GNU Coreutils' and
35781         'X Window System' or 'X' (were: 'GNU Fileutils' and 'X Windows',
35782         respectively); other minor updates and tweaks.  (Bug#20011)
35784 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
35786         Add doc strings for some Isearch state vars
35787         * lisp/misearch.el (multi-isearch-buffer-list)
35788         (multi-isearch-file-list): Add doc strings.
35789         (Bug#20232)
35791 2015-04-07  Alan Mackenzie  <acm@muc.de>
35793         Always mark "<" and ">" in #include directives with text properties.
35794         * lisp/progmodes/cc-fonts.el (c-cpp-matchers): Replace a font-lock
35795         "anchored matcher" with an invocation of
35796         c-make-font-lock-search-function to allow fontification when there's
35797         no trailing space on an "#include <..>" line.
35799 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
35801         Generate a ChangeLog file from commit logs
35802         * .gitignore: Add 'ChangeLog'.
35803         * build-aux/gitlog-to-changelog: New file, from Gnulib.
35804         * build-aux/gitlog-to-emacslog: New file.
35805         * CONTRIBUTE: Document the revised workflow.
35806         * Makefile.in (clean): Remove *.tmp and etc/*.tmp*
35807         instead of just special cases.
35808         (CHANGELOG_HISTORY_INDEX_MAX, CHANGELOG_N, gen_origin): New vars.
35809         (ChangeLog, unchanged-history-files, change-history)
35810         (change-history-commit): New rules.
35811         * admin/admin.el (make-manuals-dist--1):
35812         Don't worry about doc/ChangeLog.
35813         * admin/authors.el: Add a FIXME.
35814         * admin/make-tarball.txt:
35815         * lisp/calendar/icalendar.el:
35816         * lisp/gnus/deuglify.el:
35817         * lisp/obsolete/gulp.el:
35818         * lwlib/README:
35819         Adjust to renamed ChangeLog history files.
35820         * admin/merge-gnulib (GNULIB_MODULES): Add gitlog-to-changelog.
35821         * admin/notes/repo: Call it 'master' a la Git, not 'trunk' a la Bzr.
35822         Remove obsolete discussion of merging ChangeLog files.
35823         New section "Maintaining ChangeLog history".
35824         * build-aux/git-hooks/pre-commit:
35825         Reject attempts to commit files named 'ChangeLog'.
35826         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
35827         * make-dist: Make and distribute top-level ChangeLog if there's a
35828         .git directory.  Distribute the new ChangeLog history files
35829         instead of scattered ChangeLog files.  Distribute the new files
35830         gitlog-to-changelog and gitlog-to-emacslog.
35831         (Bug#19113)
35833         Rename ChangeLogs for gitlog-to-changelog
35834         This patch was implemented via the following shell commands:
35835         find * -name ChangeLog |
35836         sed 's,.*,git mv & &.1,
35837         s, lisp/ChangeLog\.1$, lisp/ChangeLog.17,
35838         s, lisp/erc/ChangeLog\.1$, lisp/erc/ChangeLog.09,
35839         s, lisp/gnus/ChangeLog\.1$, lisp/gnus/ChangeLog.3,
35840         s, lisp/mh-e/ChangeLog\.1$, lisp/mh-e/ChangeLog.2,
35841         s, src/ChangeLog\.1$, src/ChangeLog.13,' |
35842         sh
35843         git commit -am"[this commit message]"
35845 This file records repository revisions from
35846 commit 9d56a21e6a696ad19ac65c4b405aeca44785884a (exclusive) to
35847 commit 3a34412caae002accd0fc7a7fc0b718c2f34159b (inclusive).
35848 See ChangeLog.1 for earlier changes.
35850 ;; Local Variables:
35851 ;; coding: utf-8
35852 ;; End:
35854   Copyright (C) 2015-2017 Free Software Foundation, Inc.
35856   This file is part of GNU Emacs.
35858   GNU Emacs is free software: you can redistribute it and/or modify
35859   it under the terms of the GNU General Public License as published by
35860   the Free Software Foundation, either version 3 of the License, or
35861   (at your option) any later version.
35863   GNU Emacs is distributed in the hope that it will be useful,
35864   but WITHOUT ANY WARRANTY; without even the implied warranty of
35865   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
35866   GNU General Public License for more details.
35868   You should have received a copy of the GNU General Public License
35869   along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.