Fix display of indicate-empty-lines when line numbers are displayed
[emacs.git] / ChangeLog.2
blob96a647d9b440ee5e523305ad1e5a7c2ab7621566
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         reorganize 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-29  Xue Fuqiao  <xfq.free@gmail.com>
5987         * doc/lispref/text.texi (Columns): Remove a nonexistent reference.
5989         The example was removed by Chong Yidong on Mar 5, 2012.
5991 2016-03-29  Paul Eggert  <eggert@cs.ucla.edu>
5993         * doc/man/emacsclient.1: Document +line:column option.
5995 2016-03-29  Eli Zaretskii  <eliz@gnu.org>
5997         Fix rare problems with echo-area display and multiple frames
5999         * src/xdisp.c (redisplay_window): Bind inhibit-redisplay non-nil
6000         around the call to x_consider_frame_title, to prevent
6001         resize_mini_window from undoing echo-area display.  (Bug#23124)
6003 2016-03-29  Alan Mackenzie  <acm@muc.de>
6005         In M-%, avoid making buffer-local binding of text-property-default-nonsticky
6007         This would happen when that variable already has a buffer local binding.  Such
6008         a binding would not be seen by read-from-minibuffer.  This fixes bug #23127.
6010         * lisp/replace.el (query-replace-read-from): Move the binding of
6011         text-property-default-nonsticky to inside of a new with-current-buffer buffer
6012         form with the minibuffer as argument.
6014 2016-03-27  Dmitry Gutov  <dgutov@yandex.ru>
6016         Remove prog-indentation-context
6018         * lisp/progmodes/prog-mode.el: (prog-indentation-context)
6019         (prog-first-column, prog-widen): Remove, as discussed in
6020         http://lists.gnu.org/archive/html/emacs-devel/2016-03/msg01425.html.
6022         * doc/lispref/text.texi (Mode-Specific Indent): Remove references
6023         to them.
6025         * etc/NEWS: Ditto.
6027         * lisp/progmodes/python.el: (prog-widen, prog-first-column):
6028         Remove the compatibility aliases and all uses.
6030         Do not merge to master.
6032 2016-03-27  Paul Eggert  <eggert@cs.ucla.edu>
6034         * src/font.c (QCuser_spec): Add missing colon to :user-spec.
6036 2016-03-27  Eli Zaretskii  <eliz@gnu.org>
6038         Don't start the 'midnight' timer twice
6040         * lisp/midnight.el (midnight-mode): Avoid starting the midnight
6041         timer twice when activating the mode the first time.  (Bug#23123)
6043 2016-03-27  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
6045         * src/xwidget.c (Fxwidget_resize): Fix inappropriate use of XFASTINT.
6047 2016-03-26  Stephen Berman  <stephen.berman@gmx.net>
6049         Fix todo-mode category movement
6051         * lisp/calendar/todo-mode.el (todo-move-category): Use moved
6052         category's existing categories sexp instead of invoking
6053         todo-update-categories-sexp in file moved to, in order to take
6054         archived items into account.  If the moved category has archived
6055         items, handle the source archive buffer properly.  Remove
6056         superfluous code.
6058 2016-03-26  Glenn Morris  <rgm@gnu.org>
6060         * lisp/xt-mouse.el (xterm-mouse-utf-8): Add :version.
6062 2016-03-26  Eli Zaretskii  <eliz@gnu.org>
6064         Ignore non-nil. non-cons values of unread-command-events
6066         * src/keyboard.c (requeued_events_pending_p, read_char)
6067         (Finput_pending_p): Use CONSP instead of !NILP to see if there are
6068         unread command events to be processed.  (Bug#22976)
6070 2016-03-26  Eli Zaretskii  <eliz@gnu.org>
6072         Improve documentatuon of 'truncate-partial-width-windows'
6074         * src/xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>:
6075         Clarify in the doc string how the width of partial-width windows
6076         is computed for the purposes of truncation decision.  (Bug#4338)
6078         * doc/emacs/windows.texi (Split Window): Clarify how the width of
6079         windows is calculated for the purposes of truncation decision.
6080         * doc/emacs/display.texi (Line Truncation): Remove a redundant
6081         index entry.
6083 2016-03-25  Paul Eggert  <eggert@cs.ucla.edu>
6085         * src/ftfont.c (ftfont_shape_by_flt): Parenthesize as per GNU style.
6087 2016-03-25  Eli Zaretskii  <eliz@gnu.org>
6089         Fix 'dired-goto-file' in Dired buffers produced by find-dired
6091         * lisp/dired.el (dired-goto-file): Try looking for the file as a
6092         relative name with leading sub-directories, before looking for the
6093         basename alone.  (Bug#23089)
6095 2016-03-25  Nicolas Petton  <nicolas@petton.fr>
6097         Fix map-put and map-delete for alists (Bug#23105)
6099         * lisp/emacs-lisp/map.el (map-put): Do not bind the evaluated place
6100         expression to a new symbol.
6101         * test/automated/map-tests.el: Add a regression test.
6103 2016-03-25  Eli Zaretskii  <eliz@gnu.org>
6105         Minor copyedits of documentation for temporary displays
6107         * doc/emacs/windows.texi (Temporary Displays): Improve indexing.
6108         Minor changes in wording.
6109         (Window Choice, Displaying Buffers, Pop Up Window): Disambiguate
6110         index entries for 'display-buffer'.
6112         * etc/NEWS: Minor rewording of the entry about temporary displays.
6114 2016-03-25  Philipp Stephani  <phst@google.com>
6116         Add customization option for using UTF-8 coordinates in xt-mouse
6118         * lisp/xt-mouse.el (xterm-mouse-utf-8): New customization option.
6119         (xterm-mouse--read-coordinate): New function to replace
6120         `xterm-mouse--read-utf8-char'; uses UTF-8 only if enabled.
6121         (xterm-mouse--read-number-from-terminal): Adapt to new name.
6122         (xterm-mouse-tracking-enable-sequence)
6123         (xterm-mouse-tracking-disable-sequence): Replace constants with
6124         functions, mark constants as obsolete.
6125         (xterm-mouse--tracking-sequence): New helper function.
6126         (turn-on-xterm-mouse-tracking-on-terminal): Use new functions;
6127         enable UTF-8 only if customization option says so; store UTF-8
6128         flag in terminal parameter.  (Bug#23009)
6130         * test/automated/xt-mouse-tests.el: Add tests for xt-mouse.el.
6132 2016-03-25  Eli Zaretskii  <eliz@gnu.org>
6134         Minor doc string fixes in replace.el
6136         * lisp/replace.el (query-replace, query-replace-regexp)
6137         (query-replace-regexp-eval, map-query-replace-regexp)
6138         (replace-string, replace-regexp): Clarify in doc strings that
6139         these commands operate from point to the end of the buffer's
6140         accessible portion.  (Bug#23067)
6142 2016-03-25  Eli Zaretskii  <eliz@gnu.org>
6144         Fix scrolling upwards with 'xwidget-webkit-browse-url'
6146         * src/xwidget.c (Fxwidget_set_adjustment): Use CHECK_NUMBER instead
6147         of CHECK_NATNUM.  Suggested by Shayan Pirani <shayanpirani@gmail.com>.
6148         (Bug#22918)
6150 2016-03-25  K. Handa  <handa@gnu.org>
6152         Fix display of Indic scripts
6154         * src/ftfont.c (ftfont_shape_by_flt): For combining characters out
6155         of the range U+300...U+36F, use the "combining" FLT only with
6156         non-OTF fonts.
6158 2016-03-25  Eli Zaretskii  <eliz@gnu.org>
6160         Fix splash screen display at startup
6162         * src/frame.c (DEFAULT_ROWS): Enlarge to 36, so that the initial
6163         window displayed by "emacs -q" has enough space to show the whole
6164         text even if it includes 2 lines talking about recovering crashes
6165         sessions.  (Bug#23074)
6167         * lisp/startup.el (use-fancy-splash-screens-p): Fix off-by-one
6168         error when computing the window-height from frame-height.
6170         * etc/NEWS: Mention the change.
6172 2016-03-25  Martin Rudalics  <rudalics@gmx.at>
6174         Describe temporary displays in Emacs manual
6176         * doc/emacs/emacs.texi (Temporary Displays): New subsubsection.
6177         * doc/emacs/windows.texi (Window Choice): Minor fixes.
6178         (Temporary Displays): New subsubsection describing display of
6179         temporary buffers and `temp-buffer-resize-mode'.
6181 2016-03-24  Paul Eggert  <eggert@cs.ucla.edu>
6183         Avoid stray As next to IDLW icons
6185         * lisp/progmodes/idlw-toolbar.el (idlwave-toolbar-add-everywhere):
6186         Use "" for empty labels, not "a", as the latter now displays stray
6187         "A"s (Bug#18997).
6189 2016-03-24  Paul Eggert  <eggert@cs.ucla.edu>
6191         Avoid GTK 3 crash with icons and masks
6193         Problem reported by Mosè Giordano (Bug#18997).
6194         * src/gtkutil.c (xg_get_pixbuf_from_pixmap): Remove.
6195         (xg_get_pixbuf_from_pix_and_mask): Do not use
6196         xg_get_pixbuf_from_pixmap, as it is poorly documented.  Instead,
6197         invoke XGetPixel directly.  This is slow but speed is not
6198         important here.  Also, fail for unusual situations (not TrueColor,
6199         or images that are not 8 bits per sample) instead of displaying
6200         junk or crashing.
6202 2016-03-24  Juri Linkov  <juri@linkov.net>
6204         * lisp/minibuffer.el (minibuffer-completion-help): Use fit-window-to-buffer
6206         instead of shrink-window-if-larger-than-buffer.  (Bug#23092)
6208 2016-03-24  Eli Zaretskii  <eliz@gnu.org>
6210         Define make_save_ptr_ptr unconditionally
6212         * src/alloc.c (make_save_ptr_ptr): Remove the !(defined
6213         USE_X_TOOLKIT || defined USE_GTK) conditional.  Reported by
6214         Philipp Stephani <phst@google.com>.  (Bug#23101)
6216 2016-03-24  Eli Zaretskii  <eliz@gnu.org>
6218         Preserve current buffer when popping up TTY menus
6220         * src/term.c (tty_menu_show): Be sure to save and restore the
6221         current buffer around TTY menu pop-ups.  (Bug#23101)
6223 2016-03-24  Eli Zaretskii  <eliz@gnu.org>
6225         Improve font selection by family on MS-Windows
6227         * src/w32font.c (w32font_list_internal): Allow 'ascii-0' charset,
6228         in addition to 'iso10646-1', 'unicode-bmp', and 'unicode-sip'.
6229         This avoids rejecting many font families whose members are shown
6230         by 'font-family-list', in particular 'courier' requested by
6231         info.el.  Without this change, many values of ':family' attribute
6232         of a face have no effect on MS-Windows, because they are rejected
6233         due to bogus mismatch of the charset.
6235 2016-03-23  Paul Eggert  <eggert@penguin.cs.ucla.edu>
6237         Comint, term, and compile now set EMACS
6239         This fixes directory tracking in ansi-term, at the expense of
6240         breaking some usages of 'configure'.  Setting EMACS is meant to be
6241         a somewhat temporary measure, until Bash 4.4 comes out and is
6242         common.  (Bug#20484).
6243         * etc/NEWS: Document this.
6244         * lisp/comint.el (comint-exec-1):
6245         * lisp/net/tramp-sh.el (tramp-remote-process-environment):
6246         * lisp/progmodes/compile.el (compilation-start):
6247         * lisp/term.el (term-exec-1):
6248         Go back to setting the EMACS environment variable, for backward
6249         compatibility to Bash 4.3 and earlier.
6251 2016-03-23  Paul Eggert  <eggert@penguin.cs.ucla.edu>
6253         Ignore more merges when generating ChangeLog
6255         * build-aux/gitlog-to-emacslog: Ignore all merges from gnu.org,
6256         not merely those from master and emacs-NN.  The ChangeLog entries
6257         they generate are not that useful.
6259 2016-03-23  Paul Eggert  <eggert@cs.ucla.edu>
6261         Sync with gnulib
6263         This incorporates:
6264         2016-03-22 gitlog-to-changelog: suppress ignored chatter
6265         2016-03-21 sys_select: port to new Cygwin
6266         * build-aux/gitlog-to-changelog, doc/misc/texinfo.tex:
6267         * lib/sys_select.in.h: Copy from gnulib.
6269 2016-03-23  Paul Eggert  <eggert@cs.ucla.edu>
6271         Resurrect GNUS-NEWS autogeneration
6273         * doc/misc/gnus-coding.texi (Gnus Maintenance Guide): Update
6274         GNUS-NEWS section to match current file locations and procedure.
6275         * etc/GNUS-NEWS: Regenerate by using new procedure.
6276         * lisp/Makefile.in (update-gnus-news): New rule, containing a
6277         procedure for building GNUS-NEWS.  The old procedure got lost
6278         somehow when Gnus was merged into Emacs.
6280 2016-03-22  Anders Lindgren  <andlind@gmail.com>
6282         Make `toggle-frame-maximized' respect the dock on OS X (bug#22988).
6284         * src/nsterm.m (ns_screen_margins): New function.
6285         (ns_screen_margins_ignoring_hidden_dock): New function.
6286         (ns_menu_bar_height): Reimplement in terms of `ns_screen_margins'.
6287         ([EmacsWindow zoom:]): Take all screen margins (except those
6288         originating from a hidden dock) into account.
6290 2016-03-22  Eli Zaretskii  <eliz@gnu.org>
6292         Fix bug in displaying header line with a box face
6294         * src/xdisp.c (get_next_display_element): Handle the case when a
6295         display string acquires the box face from an underlying string,
6296         not from the buffer.  (Bug#23091)
6298 2016-03-21  Kaushal Modi  <kaushal.modi@gmail.com>
6300         Fix an Isearch var to be a string (Bug#23038)
6302         * lisp/isearch.el (isearch--describe-regexp-mode): The `description' var
6303           needs to always be a string.  Add the missing default case for the
6304           cond form that ensures that.
6306         Before this bug fix, for the events when `regexp-function' and
6307         `search-default-mode' both were nil, `description' also stayed nil.  So
6308         when `space-before' was non-nil, the "non-string" `description'
6309         (with a value of nil) got passed as an argument to
6310         `replace-regexp-in-string' (where a string was expected).  That caused
6311         the error described in Bug#23038.
6313 2016-03-21  Leo Liu  <sdl.web@gmail.com>
6315         Fix (args-out-of-range 1) error in cursor-sensor--detect
6317         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor--detect): Don't
6318           hard-code (point-min) as 1 which fails in narrowed buffers.
6320 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
6322         Render empty <ul><li><ul> correctly
6324         * lisp/net/shr.el (shr-tag-ul): Render empty <ul><li><ul>
6325         correctly (bug#22964).
6326         (cherry picked from commit 4f6ea3988b66cf132c67fd0cc26d12eb9a300ba1)
6328         Backport:
6330 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
6332         Ignore invalid base64 encoded embedded images
6334         * lisp/net/shr.el (shr-image-from-data): Ignore invalid base64
6335         encoded embedded images (bug#22928).
6336         (cherry picked from commit f2da80d0e1ccd121c4891e869a45aeb9c6b1795d)
6338         Backport:
6340 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
6342         Fix <p> and <div> newlines with or without <li> in shr
6344         * lisp/net/shr.el (shr-ensure-newline): Respect that we're in
6345         a <li>, if we are, and don't insert newlines there.
6346         (shr-ensure-paragraph): When mixing newlines and paragraph
6347         ensurements, don't insert too many blank lines.
6348         (shr-tag-div): A <div> shouldn't introduce a paragraph, but a
6349         new line.
6350         (cherry picked from commit 292921facaff2f02ac4e8602c1f7ecbdcfe7ef45)
6352         Backport:
6354 2016-03-19  Eli Zaretskii  <eliz@gnu.org>
6356         Avoid errors in 'newline'
6358         * lisp/simple.el (newline): Don't barf if invoked with
6359         non-positive argument in the middle of a line.  (Bug#22490)
6361 2016-03-19  Michael Albinus  <michael.albinus@gmx.de>
6363         Fix Bug#23032
6365         * doc/misc/eshell.texi (Arguments): Mention the pipe symbol in
6366         remote file names.  (Bug#23032)
6368 2016-03-19  Eli Zaretskii  <eliz@gnu.org>
6370         Adjudicate review comments in abbrevs.texi
6372         * doc/lispref/abbrevs.texi (Abbrev Files, Abbrev Expansion):
6373         * doc/emacs/abbrevs.texi (Dabbrev Customization): State the
6374         default values of variables.  Suggested by Steve Byrne
6375         <sbb@penguinis.org>.  (Bug#23016)
6377         * admin/release-process (Check manuals): Mark files reviewed by
6378         Steve Byrne.
6380 2016-03-18  Dmitry Gutov  <dgutov@yandex.ru>
6382         Fixup the "normal" matcher; highlight global var symbols, too
6384         * lisp/progmodes/ruby-mode.el (ruby-font-lock-keywords): Highlight
6385         operator name symbols with the "normal" matcher (it actually
6386         needed updating).  Highlight global variable symbols, too.
6388 2016-03-18  Marcin Borkowski  <mbork@mbork.pl>
6390         Honor prefix arg in doc-view-next-line-or-next-page
6392         * lisp/doc-view.el (doc-view-next-line-or-next-page): Take the
6393         prefix argument into consideration when continuous scrolling is
6394         not in effect (i.e., by default) (bug#19559).
6396 2016-03-18  Paul Eggert  <eggert@cs.ucla.edu>
6398         Port to strict C99 offsetof
6400         * src/bidi.c (bidi_copy_it):
6401         * src/lisp.h (CHAR_TABLE_EXTRA_SLOTS):
6402         Use only a single identifier as the second argument of offsetof.
6403         Found by using clang -pedantic.
6405 2016-03-18  Paul Eggert  <eggert@cs.ucla.edu>
6407         Port to GTK with strict C11 compiler
6409         * src/gtkutil.c (xg_create_frame_widgets, xg_toggle_notify_cb):
6410         Cast from function type to void * where the C standard requires this.
6411         This works around a problem in the prototypes for
6412         g_signal_handler_find and g_signal_handlers_block_by_func, which
6413         use gpointer instead of GCallback.  Found by using gcc -pedantic.
6415 2016-03-18  Paul Eggert  <eggert@cs.ucla.edu>
6417         Port to GTK with strict C99 compiler
6419         * src/emacsgtkfixed.c: Use workaround for GNOME bug 683906 only
6420         in glib 2.35.6 and earlier, since the bug is fixed in 2.35.7.
6421         * src/emacsgtkfixed.c (EmacsFixedPrivate):
6422         * src/emacsgtkfixed.h (EmacsFixedClass):
6423         Remove duplicate typedef, which strict C99 does not allow (Bug#23003).
6425 2016-03-17  Anders Lindgren  <andlind@gmail.com>
6427         Avoid screen artifacts with new OS X visible bell after scrolling
6429         * src/nsterm.m (EmacsBell): Save NSView when displaying the
6430         visible bell and set `needsDisplay' when removed.
6431         (hide_bell): Trace.
6432         (ns_copy_bits): Trace.
6434 2016-03-17  Michael Albinus  <michael.albinus@gmx.de>
6436         Suppress some Tramp tests for OSX, do not merge with master
6438         * test/automated/tramp-tests.el (tramp--test-darwin-p): New defun.
6439         (tramp--test-utf8): Use it.  (Bug#22145)
6441 2016-03-17  Glenn Morris  <rgm@gnu.org>
6443         * lisp/progmodes/xref.el (xref-buffer-name, xref--window):
6444         Move definitions before use.
6446         * lisp/gnus/mm-decode.el (gnus-format-message): Autoload it.
6448         * lisp/mail/rmail.el (rmail-mime-entity-truncated): Declare.
6450 2016-03-17  Glenn Morris  <rgm@gnu.org>
6452         Address compilation warnings due to 2016-01-03 mml refactoring.
6454         * lisp/gnus/mml-sec.el (password-cache, mm-encode): Require.
6455         (message-options-get): Autoload.
6456         (message-options-set): Declare.
6457         (mml-secure-cache-passphrase, mml-secure-passphrase-cache-expiry):
6458         Simplify default value.
6459         * lisp/gnus/mml-smime.el (message-options-set): Remove declaration.
6460         * lisp/gnus/mml1991.el, lisp/gnus/mml2015.el:
6461         No longer a need for password-cache.
6463 2016-03-16  Stefan Monnier  <monnier@iro.umontreal.ca>
6465         * lisp/emacs-lisp/smie.el (smie-indent-keyword): Don't burp in strings
6467         (bug#22960).
6469 2016-03-16  Glenn Morris  <rgm@gnu.org>
6471         * lisp/dired-x.el (dired-omit-here-always): Correct error message
6472         for 2016-01-25 change.
6474         * lisp/dired-x.el (dired-omit-here-always): Replace undefined function
6475         removed 2016-01-30.
6477         * lisp/xml.el (xml-parse-tag-1): Replace undefined function.
6479 2016-03-16  Eli Zaretskii  <eliz@gnu.org>
6481         Avoid segfaults due to frame image cache being absent
6483         * src/image.c (cache_image): If the frame doesn't have an image
6484         cache, create it.  (Bug#23028)
6486 2016-03-16  Eli Zaretskii  <eliz@gnu.org>
6488         Improve documentation of glyphless-character display
6490         * doc/emacs/display.texi (Text Display): Document and index the
6491         'glyphless-char' face.
6493 2016-03-16  Dmitry Gutov  <dgutov@yandex.ru>
6495         Support safe navigation operator in non-SMIE indentation code
6497         * lisp/progmodes/ruby-mode.el (ruby-calculate-indent):
6498         Support safe navigation operator in non-SMIE indentation code.
6499         Cherry-picked from
6500         https://github.com/ruby/ruby/commit/68e16ddd7961b86e5013e62ae2954e88638de058.
6502 2016-03-16  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
6504         Move xsd:base64Binary decoding fix to debbugs.el 0.9.1
6506         * lisp/net/soap-client.el (soap-encode-xs-basic-type): Do not
6507         assume xsd:base64Binary values are UTF-8 strings.
6508         (soap-decode-xs-basic-type): Likewise.
6509         (soap-invoke): Document xsd:base64Binary handling.
6511 2016-03-15  Dmitry Gutov  <dgutov@yandex.ru>
6513         Fix Ruby's operator precedence
6515         * lisp/progmodes/ruby-mode.el (ruby-smie-grammar):
6516         Rearrange the smie-precs->prec2 form.
6518 2016-03-15  Dmitry Gutov  <dgutov@yandex.ru>
6520         (ruby-interpolation-inside-another-interpolation): New failing test
6522         * test/automated/ruby-mode-tests.el
6523         (ruby-interpolation-inside-another-interpolation):
6524         New failing test.
6526 2016-03-15  Paul Eggert  <eggert@cs.ucla.edu>
6528         Port to clang 3.7.0 on x86-64
6530         * configure.ac: Use AS_IF so that gl_WARN_ADD’s prerequisites are
6531         not done conditionally.  This helps clang, which needs
6532         -Wunknown-warning-option later when configured with warnings.
6533         * src/editfns.c (invalid_time): Now _Noreturn, since clang isn’t
6534         smart enough to figure this out on its own if warnings are enabled.
6535         (lisp_time_struct): Redo for clarity, and to pacify clang.
6536         * src/xfns.c (x_real_pos_and_offsets) [USE_XCB]: Don’t use
6537         uninitialized locals.  This avoids undefined behavior and pacifies
6538         clang.
6540 2016-03-15  Glenn Morris  <rgm@gnu.org>
6542         * test/automated/package-test.el (package-test-signed): Tweak skip
6543         condition, for hydra.
6545 2016-03-15  Paul Eggert  <eggert@cs.ucla.edu>
6547         Sync with gnulib
6549         This incorporates:
6550         2016-03-15 time_rz: port to clang -Wunused-const-variable
6551         2016-03-15 select: port more to Intel 2016.1.150 compiler
6552         * lib/sys_select.in.h, lib/time_rz.c: Copy from gnulib.
6554 2016-03-15  Eli Zaretskii  <eliz@gnu.org>
6556         Fix startup of "emacs -nw" on systems that CANNOT_DUMP
6558         * src/xdisp.c (syms_of_xdisp) <resize-mini-windows>: Initialize to
6559         nil.
6561         * lisp/loadup.el <resize-mini-windows>: Set to 'grow-only' after
6562         loading window.el.  (Bug#22975)
6564 2016-03-14  Dmitry Gutov  <dgutov@yandex.ru>
6566         Do not tokenize a comment before continuation as ';'
6568         * lisp/progmodes/ruby-mode.el (ruby-smie--implicit-semi-p):
6569         Account for a comment right after point.
6571 2016-03-14  Dmitry Gutov  <dgutov@yandex.ru>
6573         Don't misindent arguments of a method call inside continuation
6575         * lisp/progmodes/ruby-mode.el (ruby-smie-rules):
6576         Use smie-indent-virtual instead of smie-rule-parent (bug#23015).
6577         Simplify the traversal loop.
6579 2016-03-14  Stefan Monnier  <monnier@iro.umontreal.ca>
6581         * src/keyboard.c (echo_keystrokes_p): Don't test cursor_in_echo_area
6583         (read_key_sequence): Test it here, as before.
6584         (bug#22825).
6586 2016-03-14  Paul Eggert  <eggert@cs.ucla.edu>
6588         ASCII-only etc/NEWS etc.
6590         * etc/NEWS, nextstep/README: Revert the recently-added curved
6591         quotes, and stick to ASCII.  This typically involves replacing
6592         curved with straight quotes.  Since etc/NEWS is viewed so often by
6593         UTF-8-ignorant tools, rewrite its non-ASCII text to spell out
6594         Unicode, e.g., replace ‘‒’ with ‘U+2012 (FIGURE DASH)’.
6596 2016-03-14  Alan Mackenzie  <acm@muc.de>
6598         Fix a cacheing bug, which led to inordinately slow c-beginning-of-defun.
6600         * lisp/progmodes/cc-defs.el (c-self-bind-state-cache): New macro.
6602         * lisp/progmodes/cc-engine.el (c-ssb-lit-begin): Always call c-parse-state
6603         rather than just using the cache variable c-state-cache.
6604         (c-syntactic-skip-backward): Invoke c-self-bind-state-cache to isolate calls
6605         to c-parse-state from other uses of the parse state cache.
6607         * lisp/progmodes/cc-cmds.el (c-beginning-of-defun, c-end-of-defun): Invoke
6608         c-self-bind-state-cache around the processing, replacing flawed bindings of
6609         c-state-cache.
6611 2016-03-14  Alan Mackenzie  <acm@muc.de>
6613         Fix a cacheing bug, which led to inordinately slow c-beginning-of-defun.
6615         * lisp/progmodes/cc-defs.el (c-self-bind-state-cache): New macro.
6617         * lisp/progmodes/cc-engine.el (c-ssb-lit-begin): Always call c-parse-state
6618         rather than just using the cache variable c-state-cache.
6619         (c-syntactic-skip-backward): Invoke c-self-bind-state-cache to isolate calls
6620         to c-parse-state from other uses of the parse state cache.
6622         * lisp/progmodes/cc-cmds.el (c-beginning-of-defun, c-end-of-defun): Invoke
6623         c-self-bind-state-cache around the processing, replacing flawed bindings of
6624         c-state-cache.
6626 2016-03-14  Kaushal Modi  <kaushal.modi@gmail.com>
6628         Fix Isearch prompt when invoked with an argument
6630         * lisp/isearch.el (isearch--describe-regexp-mode): With
6631         `search-default-mode' set to nil, if user does C-u C-s, the minibuffer
6632         now displays "Regexp I-search: " again.  But if the user has set
6633         `search-default-mode' to t, and then does C-s, the minibuffer now
6634         displays "I-search: " because the default search mode is now regexp
6635         mode.  Comments have been added to explain the priority of conditions
6636         in the `cond' form.  (Bug#22991)
6638 2016-03-14  Cesar Quiroz  <cesar.quiroz@gmail.com>  (tiny change)
6640         Fix a typo in the Emacs manual
6642         * doc/emacs/maintaining.texi (VC Directory Commands): Fix a typo
6643         in a command name.
6645 2016-03-14  Paul Eggert  <eggert@cs.ucla.edu>
6647         Curved quotes in etc/NEWS etc.
6649         * etc/NEWS, nextstep/README: Prefer curved quotes in the
6650         recently-changed text documentation.  See:
6651         http://lists.gnu.org/archive/html/emacs-devel/2016-03/msg00860.html
6653 2016-03-14  Paul Eggert  <eggert@cs.ucla.edu>
6655         Fix some single quotes in documentation
6657         * doc/emacs/anti.texi (Antinews): Avoid confusion in info and PDF
6658         when documenting quoting styles.
6659         * etc/NEWS, nextstep/README: In these plain text files, quote
6660         'like this' consistently, rather than also (sometimes) ‘like this’
6661         or (more often) `like this'.
6663 2016-03-13  Dmitry Gutov  <dgutov@yandex.ru>
6665         Make lisp-completion-at-point's argument optional
6667         * lisp/progmodes/elisp-mode.el (lisp-completion-at-point): Make
6668         the argument optional, like it was before the rename.
6670 2016-03-13  Dmitry Gutov  <dgutov@yandex.ru>
6672         Tweak the left precedence of '=>'
6674         * lisp/progmodes/ruby-mode.el (ruby-smie-grammar): Tweak the left
6675         precedence of '=>', to improve indentation and sexp navigation.
6677 2016-03-13  Dmitry Gutov  <dgutov@yandex.ru>
6679         Indent '.' relative to the first sibling expression
6681         * lisp/progmodes/ruby-mode.el (ruby-smie-rules):
6682         Indent '.' relative to the first sibling expression, instead of the
6683         parent token (bug#17213).
6685 2016-03-13  Dmitry Gutov  <dgutov@yandex.ru>
6687         Make '.' associative, for easier sexp navigation
6689         * lisp/progmodes/ruby-mode.el (ruby-smie-grammar):
6690         Make '.' associative, for easier sexp navigation.
6692 2016-03-13  Phillip Lord  <phillip.lord@russet.org.uk>
6694         Revert "Simplify "Visit New File" to "New File""
6696         This reverts commit d457fd9dc782465e1547f74021390c9d5951d6af.
6698 2016-03-12  Phillip Lord  <phillip.lord@russet.org.uk>
6700         Simplify "Visit New File" to "New File"
6702         * doc/emacs/files.texi, lisp/menu-bar.el (menu-bar-file-menu),
6703           lisp/startup.el(normal-mouse-start-screen,
6704           normal-no-mouse-startup-screen): Change label "Visit New File" to "New
6705           File".
6707 2016-03-12  Eli Zaretskii  <eliz@gnu.org>
6709         Update Unicode notes for importing a new Unicode version
6711         * admin/notes/unicode: Mention the need to update otf-script-alist
6712         in fontset.el when importing data files from a new Unicode
6713         version.
6715 2016-03-12  Eli Zaretskii  <eliz@gnu.org>
6717         Import new data files from Unicode 9.0.0beta
6719         * admin/unidata/UnicodeData.txt:
6720         * admin/unidata/Blocks.txt:
6721         * admin/unidata/BidiMirroring.txt:
6722         * admin/unidata/BidiBrackets.txt: Update from Unicode 9.0.0beta.
6723         * admin/unidata/unidata-gen.el (unidata-gen-files): Bind
6724         'coding-system-for-read' to 'utf-8, as various Unicode data files
6725         now actually use non-ASCII characters.
6726         (unidata-setup-list, unidata-get-name): Support the new Tangut
6727         Ideographs block.
6729         * lisp/international/characters.el (standard-case-table): Add new
6730         characters from Unicode 9.0.0.
6731         (standard-category-table): Add Arabic block u+08A0..u+08FF.  Add
6732         Cyrillic Extended-C block.
6733         (char-width-table): Update ranges per Unicode 9.0.0.
6734         * lisp/international/fontset.el (script-representative-chars): Add
6735         new scripts defined by Unicode 9.0.0.
6736         (otf-script-alist): Add new OTF script tags.
6737         * lisp/international/mule-cmds.el (ucs-names): Update ranges per
6738         Unicode 9.0.0 additions.
6740 2016-03-12  Eli Zaretskii  <eliz@gnu.org>
6742         Avoid errors in forms-mode when default major mode is text
6744         * lisp/forms.el (forms-mode): Bind
6745         change-major-mode-with-file-name to nil when calling
6746         set-visited-file-name.  (Bug#22982)
6748 2016-03-12  Eli Zaretskii  <eliz@gnu.org>
6750         Avoid crashes at startup on systems that CANNOT_DUMP
6752         * src/xdisp.c (syms_of_xdisp) <redisplay--inhibit-bidi>: New
6753         boolean variable.
6754         (init_iterator, reseat_to_string)
6755         (Fcurrent_bidi_paragraph_direction)
6756         (Fbidi_find_overridden_directionality): Use
6757         redisplay--inhibit-bidi instead of purify-flag, to determine when
6758         it's safe to reorder bidirectional text.
6760         * lisp/loadup.el (redisplay--inhibit-bidi): Set to t at the
6761         beginning of the file.  Reset to nil when charprop.el is
6762         successfully loaded, or when we are going to dump, whichever
6763         happens last.  (Bug#22975)
6765 2016-03-12  Eli Zaretskii  <eliz@gnu.org>
6767         Fix documentation of seq.el functions
6769         * doc/lispref/sequences.texi (Sequence Functions): Fix typos.  Add
6770         cross-references.  Fix formatting.  (Bug#22992)
6772 2016-03-11  Dmitry Gutov  <dgutov@yandex.ru>
6774         Support Ruby 2.3.0's safe navigation operator
6776         * lisp/progmodes/ruby-mode.el (ruby-smie--forward-token)
6777         (ruby-smie--backward-token): Tokenize '&.' as '.'.
6778         (ruby-smie--implicit-semi-p): Check for possible '&' before '.'.
6780         * test/indent/ruby.rb: Add an example using safe navigation
6781         operator.  Fix a syntax error in existing example.
6783 2016-03-11  John Wiegley  <johnw@newartisans.com>
6785         Update Emacs manual section related to character folding
6787         * doc/emacs/search.texi: Character folding is not on by default.
6789 2016-03-11  Eli Zaretskii  <eliz@gnu.org>
6791         Update admin/notes/unicode
6793         * admin/notes/unicode: Update the list of files from the UCD we
6794         are using.  Mention the possible need to change 'ucs-names' when
6795         importing a new version of the Unicode Standard.
6797 2016-03-10  Dmitry Gutov  <dgutov@yandex.ru>
6799         Add symref-filepattern entries for c?perl-mode
6801         * lisp/cedet/semantic/symref/grep.el
6802         (semantic-symref-filepattern-alist): Add entries for perl-mode and
6803         cperl-mode.
6805 2016-03-10  Ken Raeburn  <raeburn@raeburn.org>
6807         Don't use XRANDR 1.3 extensions if the server doesn't support them.
6809         * src/xterm.h (struct x_display_info): Add fields to save XRANDR
6810         version number.
6811         * src/xfns.c (x_get_monitor_attributes): Save the version numbers
6812         after querying the X server.
6813         (x_get_monitor_attributes_xrandr): Don't use XRRGetOutputPrimary or
6814         XRRGetScreenResourcesCurrent if the server doesn't support at least
6815         RANDR version 1.3.  Conditionalize the code blocks on compiling
6816         against library version 1.3 or better, rather than feature tests for
6817         each function.
6818         * configure.ac: Stop testing for those two functions.
6820 2016-03-10  Paul Eggert  <eggert@cs.ucla.edu>
6822         Sync with gnulib
6824         This incorporates:
6825         2016-03-08 intprops: make .h file license match module
6826         2016-03-08 acl: fix missing return on Cygwin
6827         2016-03-05 extern-inline: port to PGI CC
6828         * doc/misc/texinfo.tex, lib/intprops.h, lib/set-permissions.c:
6829         * m4/extern-inline.m4:
6830         Copy from gnulib.
6832 2016-03-10  Paul Eggert  <eggert@cs.ucla.edu>
6834         Rework C source files to avoid ^(
6836         Work around Bug#22884 by rewording comments and strings to avoid ‘(’
6837         at the start of a line unless it starts a function.  This change
6838         is a short-term hack; in the longer run we plan to fix cc-mode’s
6839         performance for C files that have ‘(’ at the start of a line in a
6840         comment or string.
6842 2016-03-10  Eli Zaretskii  <eliz@gnu.org>
6844         By default, etags produces unqualified Perl tag names
6846         * lib-src/etags.c (Perl_functions): Produce unqualified names,
6847         unless -Q was specified.
6848         (print_help): Update the description of -Q.
6850         * doc/man/etags.1: Update the documentation of -Q.
6852         * test/etags/ETAGS.good_1:
6853         * test/etags/ETAGS.good_2:
6854         * test/etags/ETAGS.good_3:
6855         * test/etags/ETAGS.good_4:
6856         * test/etags/ETAGS.good_5:
6857         * test/etags/CTAGS.good: Adapt the expected test results to the
6858         changed Perl functionality.
6860 2016-03-10  Dmitry Gutov  <dgutov@yandex.ru>
6862         Indent methods with keyword names correctly
6864         * lisp/progmodes/ruby-mode.el (ruby-smie--at-dot-call):
6865         Rename to ruby-smie--before-method-name.  Now also check if we're
6866         after a 'def' keyword.  Update both callers.
6868 2016-03-10  Dmitry Gutov  <dgutov@yandex.ru>
6870         Propertize character literals and special global variables differently
6872         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize): Propertize
6873         character literals and global variables with special names with
6874         prefix and symbol syntax classes, for SMIE to tokenize them
6875         together automatically.
6876         (ruby-font-lock-keywords): Fix an old regression in highlighting
6877         character literals.
6879 2016-03-09  John Wiegley  <johnw@newartisans.com>
6881         Change how /etc/NEWS presents character folding
6883         * NEWS: Note that character folding is no longer the default.
6885 2016-03-09  John Wiegley  <johnw@newartisans.com>
6887         Revert "Revert "Backport: * lisp/isearch.el: Turn char-folding off by default""
6889         This reverts commit a91b4b51ddf2575d821adb8b84fdf32cff83886e.
6891 2016-03-09  Andreas Schwab  <schwab@linux-m68k.org>
6893         Properly handle lambda as read function (bug 22961)
6895         * src/lread.c (readchar): Be more strict about checking for
6896         string in cons for read_vector.
6897         (unreadchar): Likewise.
6899 2016-03-09  Dmitry Gutov  <dgutov@yandex.ru>
6901         Propertize operator symbol names with symbol syntax class
6903         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize):
6904         Do it here.
6905         (ruby-font-lock-keywords): Instead of handling them here.  Leave
6906         highlighting them to the "normal" matcher, because now we can.
6907         (ruby-smie--forward-token, ruby-smie--backward-token):
6908         Likewise, don't special-case operator symbols anymore.
6909         (ruby-smie--args-separator-p): Simplify the regexp, match operator
6910         names with \s_.
6911         (ruby-smie--implicit-semi-p): Handle the special cases of ? and =
6912         at EOL the same way: check if the character has been assigned the
6913         symbol syntax class by syntax-propertize.
6915 2016-03-09  Dmitry Gutov  <dgutov@yandex.ru>
6917         Stop recognizing :#{} as symbol in ruby-mode
6919         * lisp/progmodes/ruby-mode.el (ruby-font-lock-keywords): Remove
6920         the weird part that recognized colon followed by interpolation
6921         construct without quotes (e.g. ':#{abc}') as symbol, which is just a
6922         syntax error in any modern version of Ruby.  Fix nearby bug reference.
6924 2016-03-09  Dmitry Gutov  <dgutov@yandex.ru>
6926         Allow using the left shift operator without spaces on both sides
6928         * lisp/progmodes/ruby-mode.el (ruby-singleton-class-p): Rename to
6929         ruby-verify-heredoc, reverse the meaning of the return value, and
6930         short-circuit if preceded by a symbol not separated by whitespace.
6932         * test/automated/ruby-mode-tests.el (ruby-no-heredoc-left-shift)
6933         (ruby-no-heredoc-class-self): New tests.
6935 2016-03-08  Andreas Schwab  <schwab@linux-m68k.org>
6937         Properly handle unquoting in wdired (bug 22938)
6939         The recorded old names are not quoted, don't unquote them.
6941         * lisp/wdired.el (wdired-normalize-filename): Add argument
6942         unquotep, only unquote if non-nil.
6943         (wdired-get-filename): Don't unquote the old file name.
6944         (wdired-get-previous-link): Always unquote.
6946 2016-03-06  Dmitry Gutov  <dgutov@yandex.ru>
6948         Allow splat operator before percent literal
6950         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize):
6951         Allow splat operator before percent literal.
6953 2016-03-06  Dmitry Gutov  <dgutov@yandex.ru>
6955         Don't apply the return value of goto-char as syntax class
6957         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize): Don't
6958         apply the return value of goto-char as syntax class.
6960 2016-03-06  Dmitry Gutov  <dgutov@yandex.ru>
6962         Guard against nested percent literals
6964         * lisp/progmodes/ruby-mode.el
6965         (ruby-syntax-propertize-percent-literal):
6966         Don't check the syntax status.
6967         (ruby-syntax-propertize): Check it here.  And also guard against
6968         being in a larger percent literal.
6970         * test/automated/ruby-mode-tests.el
6971         (ruby-no-nested-percent-literals): New test.
6973 2016-03-06  Dmitry Gutov  <dgutov@yandex.ru>
6975         Recognize iuwu-mod after an escaped newline
6977         * lisp/progmodes/ruby-mode.el (ruby-smie--bosp): Check if the
6978         newline is escaped.
6979         (ruby-smie-rules): Indent iuwu-mod after an escaped newline
6980         correctly.
6982 2016-03-06  Andreas Schwab  <schwab@linux-m68k.org>
6984         Fix symbolic mode string conversion for s and t
6986         * lisp/files.el (file-modes-char-to-right): Fix values for ?s and
6987         ?t.
6988         (file-modes-symbolic-to-number): Default to a for ts permissions.
6990 2016-03-06  Eli Zaretskii  <eliz@gnu.org>
6992         Update 'ucs-names' database
6994         * lisp/international/mule-cmds.el (ucs-names): Update used and
6995         unused ranges from the latest UnicodeData.txt.
6997 2016-03-06  Eli Zaretskii  <eliz@gnu.org>
6999         Improve doc string of 'shell-command'
7001         * lisp/simple.el (shell-command): Mention that COMMAND is prompted
7002         for.  (Bug#22926)
7004 2016-03-06  Eli Zaretskii  <eliz@gnu.org>
7006         Make the code in movemail_strftime more general
7008         * lib-src/movemail.c (movemail_strftime): Transform the format
7009         string passed by the caller instead of using a separate format
7010         string.
7012 2016-03-06  Eli Zaretskii  <eliz@gnu.org>
7014         Speed up redisplay of binary files with long series of nulls
7016         * src/bidi.c (bidi_resolve_weak): Avoid entering a loop searching
7017         for a character needed for resolving the type of a series of BN
7018         and ET characters, as required by rule W5 of UAX#9, if the results
7019         of the resolution are known in advance, because we are at level
7020         zero, and the previous strong character was L.
7021         (bidi_resolve_neutral): Partially resurrect the optimization for a
7022         long series of control characters in an otherwise strictly L2R
7023         text.
7024         (bidi_level_of_next_char): Don't enter the loop that searches for
7025         a paragraph separator if the current character is already at base
7026         embedding level.  (Bug#22739)
7028 2016-03-05  Dmitry Gutov  <dgutov@yandex.ru>
7030         Remove the highlighting support for quoting 'like this' inside Lisp docstrings
7032         Remove the highlighting support for quoting 'like this' inside
7033         Lisp docstrings.  This part of
7034         c4151ebe15479de4c2e511b068cdf9af6a4576cf seems to have been
7035         unintentional, considering substitute-command-keys gives wrong
7036         output for such usage.
7037         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2)
7038         (lisp-cl-font-lock-keywords-2): Do not highlight text between two
7039         straight quotes as symbol.
7041 2016-03-05  Paul Eggert  <eggert@cs.ucla.edu>
7043         Restore leading space in movemail pop output
7045         * lib-src/movemail.c (movemail_strftime) [WINDOWSNT]: New function.
7046         (strftime) [WINDOWSNT]: New macro.
7047         (mbx_delimit_begin): Go back to previous version of this code,
7048         now that there’s a special-purpose WINDOWSNT implementation
7049         that should do the right thing.  That way, the output continues
7050         to use leading space rather than leading zero for day of month.
7052 2016-03-05  Eli Zaretskii  <eliz@gnu.org>
7054         Fix bidi-paragraph-direction in Rmail view buffer
7056         * lisp/mail/rmail.el (rmail-show-message-1): Reset
7057         bidi-paragraph-direction to nil before formatting the message for
7058         display.
7060 2016-03-05  Dmitry Gutov  <dgutov@yandex.ru>
7062         Don't misindent computed property generator methods
7064         * lisp/progmodes/js.el (js--looking-at-operator-p):
7065         Don't misindent computed property generator methods
7066         (https://github.com/mooz/js2-mode/issues/317).
7068 2016-03-05  Eli Zaretskii  <eliz@gnu.org>
7070         Fix mbox files produced by movemail on MS-Windows
7072         * lib-src/movemail.c (mbx_delimit_begin): Use portable strftime
7073         format specifiers, as at least the MS-Windows version of strftime
7074         doesn't support %e and %T.
7076 2016-03-04  Paul Eggert  <eggert@cs.ucla.edu>
7078         doc string file descriptor exhaustion fix
7080         * src/doc.c (get_doc_string): Move newly-added check to a better
7081         location (Bug#22814).
7083 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
7085         Fix Bug#22814
7087         * src/doc.c (get_doc_string): Raise an error in case too many
7088         files are open.  (Bug#22814)
7090 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
7092         Fix insertion of edited servers in the dribble file
7094         * lisp/gnus/gnus-srvr.el (gnus-server-update-server): Don't
7095         insert explicit newlines, because they're quoted (bug#22903).
7097         Backport:
7099         (cherry picked from commit ca4e30058eba0531f38fff75f14734acffab84ea)
7101 2016-03-04  Martin Rudalics  <rudalics@gmx.at>
7103         Fix previous fix of enlarge-/shrink-window
7105         * lisp/window.el (enlarge-window, shrink-window): Consistently
7106         signal user-error instead of error.  Resize minibuffer window by
7107         delta lines instead of pixels.  When a window cannot be resized,
7108         signal an error only when this function was invoked by a command
7109         in the enlarge-/shrink-window group (this restores the behavior
7110         before the fix of bug#22723 for the non-interactive case).
7112 2016-03-03  Artur Malabarba  <bruce.connor.am@gmail.com>
7114         * lisp/isearch.el (isearch-define-mode-toggle): Fix toggling logic
7116 2016-03-03  Mark Oteiza  <mvoteiza@udel.edu>
7118         Complete temperature units in calc-convert-temperature
7120         * lisp/calc/calc-units.el (calc-convert-temperature): Complete with
7121         temperature units in math-standard-units.
7123 2016-03-02  Dmitry Gutov  <dgutov@yandex.ru>
7125         Make sure to use case-sensitive search
7127         * lisp/progmodes/xref.el (xref-collect-references): Make sure to
7128         use case-sensitive search.
7130 2016-03-02  Ulf Jasper  <ulf.jasper@web.de>
7132         Prevent infinite loop on not-well-formed xml. (Bug#16344)
7134         * lisp/xml.el (xml-parse-tag-1): Prevent inifinite loop. (Bug#16344)
7135         * test/automated/xml-parse-tests.el (xml-parse-tests--bad-data): Add
7136           test cases for Bug#16344.
7138 2016-03-02  Alan Third  <alan@idiocy.org>
7140         Add the missing test case for the previous patch
7142         lisp/dabbrev.el (dabbrev--substitute-expansion): Return EXPANSION after
7143         any processing.
7144         lisp/dabbrev.el (dabbrev-expand): Set EXPANSION to the return value of
7145         DABBREV--SUBSTITUTE-EXPANSION.
7146         test/automated/dabbrev-tests.el (dabbrev-expand-test): Test for bug#1948.
7148 2016-03-02  Alan Third  <alan@idiocy.org>
7150         Use the correct dabbrev expansion
7152         lisp/dabbrev.el (dabbrev--substitute-expansion): Return EXPANSION after
7153         any processing.
7154         lisp/dabbrev.el (dabbrev-expand): Set EXPANSION to the return value of
7155         DABBREV--SUBSTITUTE-EXPANSION.
7156         test/automated/dabbrev-tests.el (dabbrev-expand-test): Test for bug#1948.
7158 2016-03-02  Nicolas Petton  <nicolas@petton.fr>
7160         Bump version to 25.0.92
7162         * README:
7163         * configure.ac:
7164         * msdos/sed2v2.inp: Bump version to 25.0.92.
7166 2016-03-02  Nicolas Petton  <nicolas@petton.fr>
7168         * etc/AUTHORS: Update the AUTHORS file
7170 2016-03-02  Nicolas Petton  <nicolas@petton.fr>
7172         authors.el updates
7174         * admin/authors.el (authors-ignored-files): Addition.
7176 2016-03-02  Michael Albinus  <michael.albinus@gmx.de>
7178         Fix Bug#22859
7180         * lisp/filenotify.el (file-notify-callback): Return a `deleted'
7181         event in case of kqueue and file1 is nil.  (Bug#22859)
7183 2016-03-01  Eli Zaretskii  <eliz@gnu.org>
7185         Fix reordering of bidi text in an isolate inside an override
7187         * src/bidi.c (bidi_resolve_explicit): Override the orig_type value
7188         of FSI with either LRI or RLI, as determined by the first strong
7189         directional character in the isolate.  This prevents failure to
7190         isolate when the FSI...PDI text is inside a directional override.
7191         (Bug#22786)
7193 2016-03-01  Alan Mackenzie  <acm@muc.de>
7195         Document c-guess-basic-syntax in the CC Mode manual.
7197         * doc/misc/cc-mode.texi (Syntactic Analysis): Document the function, adding
7198         pxrefs to Custom Line-Up and Other Indentation.
7199         (Custom Line-Up): Add a note on using c-guess-basic-syntax with a pxref to
7200         Syntactic Analysis.
7202 2016-03-01  Michael Albinus  <michael.albinus@gmx.de>
7204         Fix targets in test/automated/Makefile.in
7206         * test/automated/Makefile.in: Use $(SELECTOR_DEFAULT) also for
7207         empty target and target all.
7209 2016-03-01  Leo Liu  <sdl.web@gmail.com>
7211         Comment on last change to define-derived-mode
7213         * lisp/emacs-lisp/derived.el (define-derived-mode): Add comment.
7215 2016-03-01  Lars Ingebrigtsen  <larsi@gnus.org>
7217         Allow binding `url-mime-accept-string'
7219         * lisp/url/url-http.el (url-http): Allow binding
7220         `url-mime-accept-string' (bug#22855).
7222         Backport:
7224         (cherry picked from commit 144bb0cf322b9756d29def3e27a42303e2edce43)
7226 2016-03-01  Lars Ingebrigtsen  <larsi@gnus.org>
7228         Also allow setting the paragraph direction to nil
7230         * lisp/net/eww.el (eww-toggle-paragraph-direction): Also allow
7231         setting the paragraph direction to nil ("auto").
7233 2016-02-29  Anders Lindgren  <andlind@gmail.com>
7235         Made the new OS X visible bell more visible.
7237         * src/nsterm.m: (EmacsBell:init:) Scaled up the visible bell
7238           "caution" image five times, as the image in its original size
7239           was hard to see.
7241 2016-02-29  Lars Ingebrigtsen  <larsi@gnus.org>
7243         Use the correct background color when filling nested <divs>
7245         * lisp/net/shr.el (shr-face-background): Return the first
7246         background, because that's the one that's visible (bug#22680).
7248         Backport:
7250         (cherry picked from commit cad0bc70558f9c28c808711c5295dec9fc5ad6e5)
7252 2016-02-29  Lars Ingebrigtsen  <larsi@gnus.org>
7254         Make <div> in <li> not insert extra newlines
7256         * lisp/net/shr.el (shr-tag-div): Make <div> in <li> not insert
7257         extra newlines (bug#19587).
7259         Backport:
7261         (cherry picked from commit 379a846b8548dc32a9019ef0a37c02f62cd9bad1)
7263 2016-02-29  Dmitry Gutov  <dgutov@yandex.ru>
7265         Uncomment the next-error-function integration in xref
7267         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
7268         Uncomment the next-error-function integration
7269         (http://debbugs.gnu.org/cgi/bugreport.cgi?bug=20489#110).
7271 2016-02-29  Dmitry Gutov  <dgutov@yandex.ru>
7273         Remove the word "valid", to avoid ambiguity
7275         * doc/emacs/maintaining.texi (Identifier Search)
7276         (Looking Up Identifiers): Remove the word "valid" (bug#22692).
7278 2016-02-28  Michael Albinus  <michael.albinus@gmx.de>
7280         Set auto-revert-use-notify to nil in global-auto-revert-mode.  (Bug#22814)
7282         * etc/NEWS:
7283         * etc/PROBLEMS: Mention this.
7285         * lisp/autorevert.el (global-auto-revert-mode): Set
7286         `auto-revert-use-notify' to nil.  (Bug#22814)
7288 2016-02-28  Paul Eggert  <eggert@cs.ucla.edu>
7290         * etc/TODO: Minor quoting and grammar fixes.
7292 2016-02-28  Friedrich Beckmann  <friedrich.beckmann@gmx.de>  (tiny change)
7294         Fix ModelSim error parsing
7296         * lisp/progmodes/vhdl-mode.el (vhdl-compiler-alist): Fix
7297         ModelSim error parsing (bug#5768).
7299 2016-02-28  Lars Ingebrigtsen  <larsi@gnus.org>
7301         Make parse-time-string-chars faster
7303         * lisp/calendar/parse-time.el (parse-time-string-chars): Clean
7304         up the code (backport:).
7306 2016-02-28  Lars Ingebrigtsen  <larsi@gnus.org>
7308         Add a eww command to toggle paragraph direction
7310         * lisp/net/eww.el (eww-toggle-paragraph-direction): New
7311         command and keystroke.
7313         * doc/misc/eww.texi (Advanced): Mention the `D' command.
7315 2016-02-27  Glenn Morris  <rgm@gnu.org>
7317         * nextstep/WISHLIST: Merge into etc/TODO and remove.
7319         * etc/TODO: Merge in items from nextstep/WISHLIST.
7320         * nextstep/README: Update for this change.
7322 2016-02-27  Andreas Schwab  <schwab@linux-m68k.org>
7324         Fix char signedness issue in bidi code
7326         * src/dispextern.h (struct bidi_t): Change type of resolved_level
7327         and isolate_level to signed char.  (Bug#22830)
7329 2016-02-27  Andreas Schwab  <schwab@linux-m68k.org>
7331         * lib-src/pop.c (socket_connection): Fix format string.
7333 2016-02-27  Eli Zaretskii  <eliz@gnu.org>
7335         Avoid inflooping in thing-at-point-looking-at
7337         * lisp/thingatpt.el (thing-at-point-looking-at): Avoid inflooping
7338         with regular expressions whose matching doesn't move point.
7339         (Bug#22756)
7340         Describe the argument DISTANCE in the doc string.
7342 2016-02-27  Leo Liu  <sdl.web@gmail.com>
7344         * lisp/emacs-lisp/derived.el (define-derived-mode): Revert indent change.
7346 2016-02-26  Michael Albinus  <michael.albinus@gmx.de>
7348         etc/PROBLEMS: Mention problems with using file descriptors
7350         * etc/PROBLEMS: Mention problems with using file descriptors
7351         of kqueue file notification library.
7353 2016-02-26  Kaushal Modi  <kaushal.modi@gmail.com>
7355         * lisp/apropos.el (apropos-variable): Doc fix.  (Bug#22813).
7357 2016-02-25  Eli Zaretskii  <eliz@gnu.org>
7359         Remove unneeded workaround in xftfont.c
7361         * src/xftfont.c (xftfont_open): Remove "dirty workaround" for
7362         XftTextExtents8 behavior, as it is no longer needed.  Suggested by
7363         Fangwen Yu <yynyygy@gmail.com>.  (Bug#22383)
7365 2016-02-25  Stefan Monnier  <monnier@iro.umontreal.ca>
7367         * lisp/saveplace.el (save-place-local-mode): New minor mode
7369         (toggle-save-place): Define as obsolete alias.
7370         (save-place--setup-hooks): New function.
7371         (save-place-mode): Use it.
7373 2016-02-25  Eli Zaretskii  <eliz@gnu.org>
7375         Fix redisplay on a TTY after 'make-frame'
7377         * src/xdisp.c (clear_garbaged_frames): Don't clear/redraw a
7378         garbaged TTY frame if it is not the selected frame.  (Bug#22794)
7380 2016-02-25  Alan Mackenzie  <acm@muc.de>
7382         Make double-click-1 work with unbalanced parens in CC Mode.  Fixes bug#5560.
7384         * lisp/mouse.el (mouse-start-end): check the syntax of alleged parens with
7385         `syntax-after' to ensure syntax-table text properties are respected.
7387 2016-02-25  Magnus Henoch  <magnus.henoch@gmail.com>
7389         Input method polish-slash should not use keyboard translation
7391         * lisp/leim/quail/latin-pre.el ("polish-slash"): Input method
7392         polish-slash should not use keyboard translation (bug#19081).
7394 2016-02-25  Chris Feng  <chris.w.feng@gmail.com>
7396         Fix an assertion
7398         * src/dispnew.c (clear_glyph_matrix_rows): Test matrix->nrows == 0 (which
7399         implies start == 0) separately.
7401 2016-02-24  Eli Zaretskii  <eliz@gnu.org>
7403         Fix 'toggle-save-place'
7405         * lisp/saveplace.el (toggle-save-place): Set up hooks necessary to
7406         support save-place in the buffer.  Autoload the command.
7408 2016-02-24  Stefan Monnier  <monnier@iro.umontreal.ca>
7410         * src/keyboard.c: Don't inadvertently set immediate_echo (bug#22581)
7412         * src/keyboard.c (read_key_sequence): Don't inadvertently set
7413         immediate_echo when we don't want any echo-keystrokes.
7414         (echo_keystrokes_p): Move earlier.
7416 2016-02-24  Chris Zheng  <chriszheng99@gmail.com>  (tiny change)
7418         Minor fixes in calculator.el
7420         * lisp/calculator.el (calculator-mode-map): Bind `E' for
7421         `calculator-exp'.
7422         (calculator-last-input): Fix a bug with pressing F1.
7423         (Bug#20764)
7425 2016-02-24  Anders Lindgren  <andlind@gmail.com>
7427         Update HISTORY section in readme for the NextStep interface.
7429         * nextstep/README: Update HISTORY after suggestion
7430         from former maintainer Adrian Robert.
7432 2016-02-24  Eli Zaretskii  <eliz@gnu.org>
7434         Improve documentation of 'save-place-mode'
7436         * lisp/saveplace.el (toggle-save-place): Update the doc string wrt
7437         turning on 'save-place-mode' globally.
7439         * etc/NEWS: Mention the need to call 'save-place-mode' for turning
7440         on the mode in all buffers.
7442 2016-02-24  Chris Feng  <chris.w.feng@gmail.com>  (tiny change)
7444         Allocate glyph matrices for the initial frame
7446         * src/frame.c (make_initial_frame): Allocate glyph matrices (Bug#22787).
7448         * src/dispnew.c (clear_glyph_matrix_rows): matrix->nrows can be 0.
7450 2016-02-24  Lars Ingebrigtsen  <larsi@gnus.org>
7452         Fix white space in last checkin
7454 2016-02-24  Dima Kogan  <gnuplot@dima.secretsauce.net>
7456         Make `insert-pair' always leave the cursor where documented
7458         * lisp/emacs-lisp/lisp.el (insert-pair): The docstring of
7459         insert-pair states that after insertion, the point ends up
7460         after the opening character. This was not true if the pair was
7461         inserted to surround a region (bug#16949).
7463 2016-02-24  Kaushal Modi  <kaushal.modi@gmail.com>
7465         etc/NEWS: Mention the new second parameter to `package-install'
7467         * etc/NEWS: Mention the new second parameter to
7468         `package-install' (bug#22784).
7470 2016-02-24  John F. Trudeau  <JFTrudeau@aetna.com>  (tiny change)
7472         Highlight assignments in Makefiles more correctly
7474         * lisp/progmodes/make-mode.el (makefile-macroassign-regex):
7475         Highlight assignments preceded by a TAB character correctly
7476         (bug#20787).
7479         Backport:
7481         (cherry picked from commit bbd86c5642bd62c43d72391669f28eaa14459fd5)
7483 2016-02-23  Eli Zaretskii  <eliz@gnu.org>
7485         Improve documentation of focus-related hooks
7487         * doc/lispref/commands.texi (Focus Events): Mention focus-related
7488         hooks.  (Bug#21728)
7490 2016-02-23  Eli Zaretskii  <eliz@gnu.org>
7492         Further improve doc string of 'disable-point-adjustment'
7494         * src/keyboard.c (syms_of_keyboard): <disable-point-adjustment>
7495         <global-disable-point-adjustment>: Clarify doc strings.  (Bug#22771)
7497 2016-02-23  Michael Albinus  <michael.albinus@gmx.de>
7499         Further adaptions in file-notify-tests.el for w32notify
7501         * test/automated/file-notify-tests.el
7502         (file-notify--test-read-event-timeout, file-notify--test-timeout):
7503         Decrease values.
7504         (file-notify-test03-autorevert)
7505         (file-notify-test04-file-validity)
7506         (file-notify-test05-dir-validity): Run tests also for w32notify.
7507         (file-notify-test08-watched-file-in-watched-dir):
7508         Adapt expected events for w32notify.
7510 2016-02-23  Jan Tatarik  <jan.tatarik@gmail.com>
7512         Don't bug out on localised dates in gnus-icalendar
7514         * lisp/gnus/gnus-icalendar.el
7515         (gnus-icalendar-event:org-timestamp): Don't bug out on
7516         localised dates.
7518 2016-02-23  Drew Adams  <drew.adams@oracle.com>
7520         (ls-lisp-insert-directory): Make -B work
7522         * lisp/ls-lisp.el (ls-lisp-insert-directory): Make -B work
7523         (bug#20776).
7525         Backport:
7527         (cherry picked from commit ef52e66efd78aac4c4e5bd5e11870e5ba3b37a1e)
7529 2016-02-23  Vaidheeswaran C  <vaidheeswaran.chinnaraju@gmail.com>
7531         Make buttons in header lines work
7533         * lisp/help-mode.el (help-button-action): `help-xref-button' in
7534         header line doesn't work (bug#21024).
7536         Backport:
7538         (cherry picked from commit c11e565a6b6d09fa39d4c3ef65bef08190eaecc1)
7540 2016-02-23  Christopher Wellons  <wellons@nullprogram.com>
7542         Make setf for frame-height/width work again
7544         * lisp/emacs-lisp/cl-lib.el (frame-height): Make setf for
7545         frame-height/width work again (bug#21979).
7547 2016-02-23  Łukasz Stelmach  <stlman@poczta.fm>
7549         Encode header strings before printing
7551         * lisp/ps-print.el (ps-generate-header-line): Encode the
7552         header strings to avoid problems with non-ASCII headers
7553         (bug#22611).
7555         Backport:
7557         (cherry picked from commit 3cedbdcc71ebefc12bd20ec84f74251fe99ee7d0)
7559 2016-02-23  Nicolas Richard  <youngfrog@members.fsf.org>
7561         (cl-union): Do not ignore :test argument when lists are equal.
7563         * lisp/emacs-lisp/cl-seq.el (cl-union): Do not ignore :test argument when lists are equal.
7565         * test/automated/cl-seq-tests.el: New file (bug#22729).
7567 2016-02-23  Lars Ingebrigtsen  <larsi@gnus.org>
7569         Add `isearch' to `basic-faces'
7571         * doc/lispref/display.texi (Basic Faces): Mention the isearch
7572         and lazy-highlight faces.
7574         * lisp/replace.el (match): Add `isearch' to the `basic-faces'
7575         group, too (bug#22760).
7577 2016-02-23  Dmitry Gutov  <dgutov@yandex.ru>
7579         Make $, : and @ "prefix characters" in ruby-mode
7581         * lisp/progmodes/ruby-mode.el (ruby-mode-syntax-table): Change the
7582         syntax classes of $, : and @ to "prefix character"
7583         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00272.html).
7584         (ruby-syntax-propertize): Undo that specifically for colons
7585         followed by an opening paren or bracket.
7586         (ruby-font-lock-keyword-beg-re): Include colon character.
7587         (ruby-font-lock-keywords): Adjust the constants matcher for `:'
7588         not being a symbol constituent anymore.
7590 2016-02-23  Dmitry Gutov  <dgutov@yandex.ru>
7592         Make find-tag-default-bounds more strict
7594         * lisp/subr.el (find-tag-default-bounds): Delegate to
7595         bounds-of-thing-at-point (bug#22692).
7597 2016-02-22  Michael Albinus  <michael.albinus@gmx.de>
7599         Minor fixes in filenotify.el
7601         * lisp/filenotify.el (top): Require 'cl-lib.
7602         (file-notify--rm-descriptor)
7603         (file-notify--event-watched-file): Use cl-caadr.
7604         (file-notify-callback): Handle also `ignore' events from inotify.
7606 2016-02-22  Michael Albinus  <michael.albinus@gmx.de>
7608         Additional fixes for file notification
7610         * lisp/filenotify.el (top): Require 'cl when compiling.
7611         (file-notify--event-watched-file): New defun.
7612         (file-notify--rm-descriptor, file-notify-callback):
7613         Handle case of several monitors running in parallel.
7615         * test/automated/file-notify-tests.el
7616         (file-notify--test-event-test): Simplify test.
7617         (file-notify--test-with-events): Get rid of outer definition.
7618         Check also results of tests performed in callbacks.
7619         (file-notify-test02-events): No wrapping when calling
7620         `file-notify-rm-watch'.  No special checking for callback tests.
7621         (file-notify-test07-backup): Adapt expected events for gfilenotify.
7622         (file-notify-test08-watched-file-in-watched-dir): Improve.
7624 2016-02-22  Eli Zaretskii  <eliz@gnu.org>
7626         Fix documentation of 'global-disable-point-adjustment'
7628         * src/keyboard.c (syms_of_keyboard) <disable-point-adjustment>
7629         <global-disable-point-adjustment>: Doc fixes.  (Bug#22771)
7631 2016-02-22  Daiki Ueno  <ueno@gnu.org>
7633         Set file modes of pinentry socket for extra safety
7635         * lisp/net/pinentry.el: Require 'cl-lib for `cl-letf'.
7636         (pinentry-start): Change the file modes of the socket file to 0700.
7637         This is just for extra safety since the parent directory is already
7638         protected with `server-ensure-safe-dir'.
7640 2016-02-22  Daiki Ueno  <ueno@gnu.org>
7642         Clarify GnuPG version compatibility chapter
7644         * doc/misc/epa.texi (GnuPG version compatibility): Make the gpg-agent
7645         description a bit clearer.
7647 2016-02-22  Daiki Ueno  <ueno@gnu.org>
7649         Revert "Change the default socket location for pinentry"
7651         This reverts commit e34fbdee8aca84b98393b06b2450837d175999ca.
7652         It turned out that the address is fixed in Pinentry itself.
7654 2016-02-21  Dmitry Gutov  <dgutov@yandex.ru>
7656         Kill off xref--display-history
7658         Now that the core workflow keeps the xref window visible, there's
7659         less value in storing this history.  And it never was
7660         comprehensive enough to undo scrolling changes.
7661         * lisp/progmodes/xref.el (xref--display-history)
7662         (xref--save-to-history, xref-quit): Remove.
7663         (xref--show-pos-in-buf): Update accordingly.
7664         (xref--xref-buffer-mode-map): Remove xref-quit binding.
7666 2016-02-21  Dmitry Gutov  <dgutov@yandex.ru>
7668         Keep the xref buffer visible until the user quits it explicitly
7670         * lisp/progmodes/xref.el (xref--pop-to-location):
7671         Rename WINDOW argument to ACTION.
7672         (xref--with-dedicated-window): New macro.
7673         (xref--show-pos-in-buf): Rename from `xref--display-position'.
7674         Add and handle new argument, SELECTED.  Use the above macro.
7675         (xref--show-location): Add SELECTED argument.
7676         (xref-show-location-at-point): Make an effort to avoid the
7677         original window when showing the location.
7678         (xref-goto-xref): Don't quit the xref window (bug#20487 and
7679         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01133.html).
7680         (xref--query-replace-1): Use xref--with-dedicated-window as well.
7681         (xref--next-error-function): Call xref--show-location instead of
7682         xref--pop-to-location.
7683         (xref--show-xrefs): Rename WINDOW argument to DISPLAY-ACTION.
7684         Only pass that value to xref--pop-to-location.  Pass the current
7685         selected window to xref-show-xrefs-function as the `window'
7686         property.
7687         (xref--find-xrefs, xref--find-definitions): Rename WINDOW argument
7688         to DISPLAY-ACTION as well.
7690 2016-02-21  Daiki Ueno  <ueno@gnu.org>
7692         Change the default socket location for pinentry
7694         * lisp/net/pinentry.el: Require 'cl-lib for `cl-letf'.
7695         (pinentry--socket-dir): Change the default from /tmp/emacsXXX to
7696         ~/.emacs.d/pinentry.
7697         (pinentry-start): Change the file modes of the socket file to 0700.
7698         This is just for extra safety since the parent directory is already
7699         protected with `server-ensure-safe-dir'.
7701 2016-02-21  Daiki Ueno  <ueno@gnu.org>
7703         Mention how to enable pinentry feature
7705         * etc/NEWS: Mention "gpgconf --reload gpg-agent".
7706         * lisp/net/pinentry.el: Likewise.
7708 2016-02-21  Paul Eggert  <eggert@cs.ucla.edu>
7710         Sync with gnulib
7712         This incorporates:
7713         2016-02-10 stdalign: port to older HP and IBM cc
7714         * doc/misc/texinfo.tex, lib/stdalign.in.h: Copy from gnulib.
7716 2016-02-21  David Engster  <deng@randomsample.de>
7718         Remove `semanticdb-save-all-db-idle' from `auto-save-hook'
7720         * lisp/cedet/semantic/db-mode.el (semanticdb-hooks): Do not put
7721           `semanticdb-save-all-db-idle' into `auto-save-hook'. The latter is
7722           not an idle hook, so it's not appropriate to call it there. It will
7723           already be called in the `semantic-idle-work-core-handler', which
7724           runs when Emacs is actually idle.
7726 2016-02-21  David Engster  <deng@randomsample.de>
7728         Restore point when writing semantic table to disk
7730         * lisp/cedet/semantic/db-file.el (object-write): Wrap call to
7731           `semantic-fetch-tags' in `save-excursion', since it might move point
7732           in current buffer. (Bug #22287)
7734 2016-02-21  Daiki Ueno  <ueno@gnu.org>
7736         Mention pinentry.el in epa manual
7738         * doc/misc/epa.texi (GnuPG version compatibility): New chapter,
7739         describing the differences between three GnuPG branches, and how
7740         to enable pinentry.el.
7741         (Caching Passphrases): Add xref to the compatibility chapter.
7743 2016-02-21  Michael Albinus  <michael.albinus@gmx.de>
7745         Fix Bug#22736
7747         * lisp/filenotify.el (file-notify-callback): Use the proper
7748         descriptor when calling the callback.  (Bug#22736)
7750         * test/automated/file-notify-tests.el
7751         (file-notify--test-event-handler): Deactivate trace.
7752         (file-notify-test08-watched-file-in-watched-dir): Bind
7753         `file-notify--test-tmpfile' temporarily in `dir-callback'.
7755 2016-02-21  Wieland Hoffmann  <themineo@gmail.com>  (tiny change)
7757         Grammar fix in doc string
7759         * lisp/custom.el (defgroup): Grammar fix in doc string.
7761 2016-02-20  Daiki Ueno  <ueno@gnu.org>
7763         Naming fix for consistency
7765         * lisp/epg-config.el (epg-find-configuration): Rename from
7766         `epg-configuration-find' to be consistent with other epg-* functions.
7767         Change all callers.
7769 2016-02-20  Daiki Ueno  <ueno@gnu.org>
7771         Prefer customized value for GnuPG executable
7773         * lisp/epg-config.el (epg-configuration-find): Don't check GPG
7774         configuration if it is already set with custom.  (Bug#22747)
7776 2016-02-20  Eli Zaretskii  <eliz@gnu.org>
7778         Fix memory reservation on MS-Windows
7780         * src/w32heap.c (mmap_alloc): Reserve memory in 64KB granular
7781         units.  This avoids leaving gaps in reserved memory regions that
7782         no one can use, since memory reservation must produce 64KB-aligned
7783         addresses.  (Bug#22526)
7785 2016-02-20  Anders Lindgren  <andlind@gmail.com>
7787         Update NextStep readme and add wish list.
7789         * nextstep/README: Rewritten from scratch. New sections on
7790         "History", "Overview of Cocoa and Objective-C", "Guidelines",
7791         "Tracing Support", and "GNUStep". Expanded the "See Also" section.
7792         * nextstep/WISHLIST: New file containing list of issues and ideas
7793         associated with the NS port of Emacs.
7795 2016-02-20  Michael Albinus  <michael.albinus@gmx.de>
7797         Report also result in `file-notify--test-event-handler'
7799 2016-02-20  Michael Albinus  <michael.albinus@gmx.de>
7801         Improve file-notify-test08-watched-file-in-watched-dir
7803         * test/automated/file-notify-tests.el (file-notify--test-desc2):
7804         New variable.
7805         (file-notify--test-cleanup): Use it.
7806         (file-notify--test-event-handler): Enable trace.
7807         (file-notify-test08-watched-file-in-watched-dir): Tag it as
7808         :expensive-test.  Rewrite callbacks to use
7809         `file-notify--test-event-handler'.  Read events in loop.  Check
7810         `file-notify--test-results'.
7811         (file-notify-test08-watched-file-in-watched-dir): Fix docstring.
7813 2016-02-20  Stephen Berman  <stephen.berman@gmx.net>
7815         Fix todo-mode item date editing bugs
7817         * lisp/calendar/todo-mode.el (todo-edit-item--header): Prevent out of
7818         range error by making sure the value of the numerical month date
7819         component cannot be nil.  Prevent wrong type error on trying to edit
7820         day number in February by making sure numerical instead of string
7821         value of the year component is passed to todo-read-date.
7822         (todo-read-date): When using the numerical month date component make
7823         sure to use `*' for an arbitrary month instead of its numerical value.
7825 2016-02-20  Eli Zaretskii  <eliz@gnu.org>
7827         Fix "[:upper:]" for non-ASCII characters
7829         * src/regex.c (re_match_2_internal): Support [:upper:] and
7830         [:lower:] for non-ASCII characters.  (Bug#18150)
7832 2016-02-20  Lars Ingebrigtsen  <larsi@gnus.org>
7834         Allow customising the article mode cursor behavior
7836         * doc/misc/gnus.texi (HTML): Mention gnus-article-show-cursor.
7838         * lisp/gnus/gnus-art.el (gnus-article-show-cursor): New variable.
7839         (gnus-article-mode): Use it.
7841 2016-02-20  Ari Roponen  <ari.roponen@gmail.com>
7843         Use pop-to-buffer-same-window in woman.el
7845         * lisp/woman.el (woman-really-find-file): Work around going to
7846         the wrong buffer by using `pop-to-buffer-same-window' (bug#22332).
7847         (WoMan-find-buffer): Ditto.
7849 2016-02-20  Tassilo Horn  <tsdh@gnu.org>
7851         New filenotify test for bug#22736
7853         * test/automated/file-notify-tests.el
7854         (file-notify-test08-watched-file-in-watched-dir):
7855         (file-notify--test-desc1): New filenotify test for bug#22736
7857 2016-02-20  Marcin Borkowski  <mbork@mbork.pl>
7859         Report critical battery errors
7861         * lisp/battery.el (battery-pmset): Report critical battery
7862         errors (bug#18157).
7864 2016-02-19  Kaushal Modi  <kaushal.modi@gmail.com>  (tiny change)
7866         Make eww message toggling message clearer
7868         * lisp/net/eww.el (eww-toggle-fonts): Make the message
7869         clearer.
7871 2016-02-19  Mark Oteiza  <mvoteiza@udel.edu>
7873         * lisp/calc/calc-units.el (math-standard-units): Update to 2014 CODATA adjustment.
7875 2016-02-18  Martin Rudalics  <rudalics@gmx.at>
7877         Fix bugs in window resizing code
7879         * lisp/window.el (adjust-window-trailing-edge): Fix mismatched
7880         parenthesis.
7881         (shrink-window, enlarge-window): Fix bug#22723 where windows
7882         with preserved size would not get resized.  Also now signal an
7883         error when the window cannot be shrunk or enlarged as requested.
7885 2016-02-17  Eli Zaretskii  <eliz@gnu.org>
7887         Fix decoding DOS EOL in a unibyte buffer
7889         * src/coding.c (decode_eol): Loop over bytes, not characters.
7890         (Bug#5251)
7892 2016-02-17  Alan Mackenzie  <acm@muc.de>
7894         Correct c-parse-state cache manipulation error.
7896         * lisp/progmodes/cc-engine.el (c-invalidate-state-cache-1): Correct a
7897         comparison bound.  Amend comments.
7899 2016-02-17  Daiki Ueno  <ueno@gnu.org>
7901         Take advantage of new GnuPG version check function
7903         * lisp/emacs-lisp/package.el (epg-configuration-find): Declare.
7904         (package-refresh-contents): Use `epg-configuration-find' to check if EPG
7905         is usable.
7907 2016-02-17  Daiki Ueno  <ueno@gnu.org>
7909         Make GnuPG version check robuster
7911         We changed the default gpg program to "gpg2" from "gpg" in the commit
7912         f93d669a16bd3cb3f43f0c8cfd22fe18b627a6a1.  However, there are two
7913         maintained branches (2.0 and 2.1) and Emacs doesn't work well with 2.0
7914         series.  Check the actual version of "gpg2" at run time, and properly
7915         divert to "gpg" if necessary.
7916         * lisp/epg-config.el: Require 'cl-lib for `cl-destructuring-bind'.
7917         (epg-config--program-alist): New variable.
7918         (epg--configurations): New variable.
7919         (epg-configuration-find): New function.
7920         (epg-config--make-gpg-configuration): New function.
7921         (epg-config--make-gpgsm-configuration): New function.
7922         (epg-configuration): Mark as obsolete.
7923         * lisp/epg.el (epg-context): Use `epg-configuration-find'.
7925 2016-02-17  Paul Eggert  <eggert@cs.ucla.edu>
7927         Fix x-load-color-file pointer signedness
7929         * src/xfaces.c (Fx_load_color_file) [!HAVE_X_WINDOWS]:
7930         For sscanf and int *, use %d, not %u.
7931         Problem found on Ubuntu 15.10 x32, which lacks X support.
7933 2016-02-17  Paul Eggert  <eggert@cs.ucla.edu>
7935         * lisp/time-stamp.el (time-stamp-time-zone): Fix doc string punct.
7937 2016-02-16  Mark Oteiza  <mvoteiza@udel.edu>
7939         Follow convention for greek letter constants.
7941         * lisp/calc/calc-units.el (math-standard-units):
7942         Add "sigma" and alias σ to it.
7944 2016-02-16  Mark Oteiza  <mvoteiza@udel.edu>
7946         Add Stefan-Boltzmann constant to calc units table.
7948         * lisp/calc/calc-units.el (math-standard-units):
7949         Add Stefan-Boltzmann constant.
7951 2016-02-16  Mark Oteiza  <mvoteiza@udel.edu>
7953         * lisp/calc/calc-units.el (math-build-units-table-buffer): Use special-mode.
7955 2016-02-16  Glenn Morris  <rgm@gnu.org>
7957         Avoid loading cl-lib for term/xterm.elc, eg in -Q -nw.  (Bug#22669)
7959         * lisp/emacs-lisp/cl-generic.el (cl--generic-dispatchers):
7960         Prefill with relevant elements for term/xterm.
7962 2016-02-16  Tassilo Horn  <tsdh@gnu.org>
7964         Fix soffice UserInstallation-URL for Windows
7966         * lisp/doc-view.el (doc-view-odf->pdf-converter-soffice): Fix
7967         UserInstallation-URL when calling soffice on Windows.
7969 2016-02-16  Lars Ingebrigtsen  <larsi@gnus.org>
7971         Fix display of <pre> elements
7973         * lisp/net/eww.el (eww-display-html): Remove CRLF before
7974         parsing so that <pre> elements don't render with ^M at the end
7975         of the lines.
7977 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
7979         Minor fixes in global-auto-composition-mode
7981         * lisp/emacs-lisp/easy-mmode.el (easy-mmode-pretty-mode-name):
7982         Produce prettier names of globalized minor modes.
7983         * lisp/composite.el (global-auto-composition-mode): Make it a
7984         globalized mode.  (Bug#22682)
7986 2016-02-15  Alan Mackenzie  <acm@muc.de>
7988         Allow arithmetic operators inside C++ template constructs.
7990         Fixes debbugs #22486.  This corrects the previous patch with this message
7991         which was empty.
7993         * lisp/progmodes/cc-langs.el (c-multichar->-op-not->>-regexp): New language
7994         variable.
7995         (c-<>-notable-chars-re): New language variable.
7997         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur): User
7998         c-<>-notable-chars-re in place of the former fixed string in searching for
7999         places to stop and examine.
8000         Use c-multichar->-op-not->>-regexp to check that a found ">" is not part of a
8001         multichar operator in place of the former c->-op-without->-cont-regexp.
8002         Add code to skip forwards over a balanced parenthesized expression.
8004 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
8006         Avoid crashes in semi-malformed 'condition-case'
8008         * src/eval.c (internal_lisp_condition_case): Treat a handler
8009         '(nil)' as if it were '(nil nil)'.  (Bug#22675)
8011 2016-02-15  Alan Mackenzie  <acm@muc.de>
8013         Allow arithmetic operators inside C++ template constructs.
8015         Fixes debbugs #22486.
8017         * lisp/progmodes/cc-langs.el (c-multichar->-op-not->>-regexp): New language
8018         variable.
8019         (c-<>-notable-chars-re): New language variable.
8021         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur): User
8022         c-<>-notable-chars-re in place of the former fixed string in searching for
8023         places to stop and examine.
8024         Use c-multichar->-op-not->>-regexp to check that a found ">" is not part of a
8025         multichar operator in place of the former c->-op-without->-cont-regexp.
8026         Add code to skip forwards over a balanced parenthesized expression.
8028 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
8030         Fix regression with 'recent-keys' and keyboard macros
8032         * src/keyboard.c (record_char): Don't record in 'recent_keys'
8033         events that come from executing keyboard macros.  (Bug#22674)
8035 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
8037         Fix wording in a doc-view.el comment
8039         * lisp/doc-view.el (doc-view--current-cache-dir): Don't use
8040         "illegal" for something that is not against the law.
8042 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
8044         CONTRIBUTE cleanups and updates
8046         * CONTRIBUTE: Mention URLs and info nodes more consistently,
8047         avoiding possibly-confusing punctuation adjacent to a URL, and
8048         giving full shell commands for 'info'.  Start with a brief but
8049         complete how-to, for people who want to get started right away.
8050         Then briefly discuss how to join the development process in the
8051         typical order.  Omit needless words.  Update some of the
8052         now-obsolete file names, info node names, and quoting styles.
8053         Better document emacs-NN branches and how they are merged.
8054         * admin/notes/git-workflow: Change emacs-24 to emacs-25,
8055         and trunk to master.  This file still needs work.
8057 2016-02-14  Paul Eggert  <eggert@cs.ucla.edu>
8059         Port USE_STACK_LISP_OBJECTS fix to Clang
8061         * src/lisp.h (USE_STACK_LISP_OBJECTS): Default to false for Clang.
8062         Recent versions of Clang claim to be GCC 4.2.1 but do not have
8063         the GCC bug.
8065 2016-02-14  Paul Eggert  <eggert@cs.ucla.edu>
8067         Port to x86 GCC 4.3.1 and earlier
8069         This tries to port to x86 FreeBSD 9, where Emacs dumps core (Bug#22065).
8070         * src/lisp.h (USE_STACK_LISP_OBJECTS): Default to false
8071         for GCC 4.3.1 and earlier.
8073 2016-02-14  Eli Zaretskii  <eliz@gnu.org>
8075         Fix point movement under 'scroll-conservatively'
8077         * src/xdisp.c (redisplay_window): Correct a typo in computing the
8078         effective number of text lines in a window.  (Bug#22637)
8080 2016-02-14  Thomas Plass  <thomas.plass@arcor.de>
8082         Replace colon in file name (not legal on Windows)
8084         * lisp/doc-view.el (doc-view--current-cache-dir): Replace colon in file
8085         name (not legal on Windows). [tiny change]
8087 2016-02-14  Eli Zaretskii  <eliz@gnu.org>
8089         Fix a typo in edt.texi
8091         * doc/misc/edt.texi: Fix a typo in an email address.  Reported by
8092         "Herbert J. Skuhra" <herbert@mailbox.org>.
8094 2016-02-14  Eli Zaretskii  <eliz@gnu.org>
8096         Make 'mmap_realloc' on MS-Windows more reliable
8098         * src/w32heap.c (mmap_alloc): If reserving memory succeeds, but
8099         committing fails, return NULL.  Don't call GetLastError twice for
8100         the same API error.
8101         (mmap_realloc): Zero out MEMORY_BASIC_INFORMATION structures
8102         before calling VirtualQuery, to avoid using garbled values if the
8103         call fails.  If committing more pages from the same block fails,
8104         fall back on mmap_alloc + CopyMemory.  Enhance debugging printouts
8105         if the call to VirtualAlloc to commit more pages fails.
8106         (Bug#22526)
8108 2016-02-14  Oscar Fuentes  <ofv@wanadoo.es>
8110         Grep alias `all' shall not match parent directory
8112         * lisp/progmodes/grep.el (grep-files-aliases): Don't match parent
8113           directory for `all'. Fixes bug#22577
8115 2016-02-13  Nicolas Petton  <nicolas@petton.fr>
8117         Bump version to 25.0.91
8119         * README:
8120         * configure.ac:
8121         * msdos/sed2v2.inp: Bump version to 25.0.91.
8123 2016-02-13  Nicolas Petton  <nicolas@petton.fr>
8125         * etc/AUTHORS: Update the AUTHORS file
8127 2016-02-13  Glenn Morris  <rgm@gnu.org>
8129         * lisp/dired-aux.el: Require cl-lib.  (Bug#22613)
8131 2016-02-13  Eli Zaretskii  <eliz@gnu.org>
8133         Index tilde characters in names of backup files
8135         * doc/emacs/files.texi (Backup Names): Improve indexing.
8136         (Bug#22625)
8138 2016-02-13  Eli Zaretskii  <eliz@gnu.org>
8140         Document deprecation of hi-lock-mode's 'C-x w' bindings
8142         * doc/emacs/display.texi (Highlight Interactively): Deprecate the
8143         "C-x w" bindings of hi-lock-mode.
8145         * etc/NEWS: Mark the deprecation entry as documented.
8147 2016-02-13  Stefan Monnier  <monnier@iro.umontreal.ca>
8149         Announce that the `C-x w' bindings are deprecated
8151 2016-02-13  Paul Eggert  <eggert@cs.ucla.edu>
8153         Suppress GNUstep hardening
8155         Fedora 23 normally hardens GNUstep applications, which causes
8156         ‘./configure --with-ns’ to break Emacs’s funky way of undumping.
8157         Fix this by eliding the hardening options (Bug#22518).
8158         * src/Makefile.in (LIBS_GNUSTEP): Omit options like
8159         ‘-specs=/usr/lib/rpm/redhat/redhat-hardened-ld’.
8160         (GNU_OBJC_CFLAGS): Omit options like
8161         ‘-specs=/usr/lib/rpm/redhat/redhat-hardened-cc1’.
8163 2016-02-12  Eli Zaretskii  <eliz@gnu.org>
8165         Fix redisplay after a large insertion
8167         * src/xdisp.c (redisplay_internal): Don't accept the results of
8168         "optimization 3" if the cursor ends up in a partially visible
8169         glyph row.  (Bug22637)
8171 2016-02-12  Andreas Schwab  <schwab@linux-m68k.org>
8173         Revert "Fix gnus-group-get-new-news-this-group on group with closed server"
8175         This reverts commit 9dc77e37aa84c6df9b3ddb4609f3c09201b0580e.
8177                 * lisp/gnus/nnimap.el (nnimap-change-group): Revert last
8178                 change.  (Bug#22634)
8180 2016-02-11  Paul Eggert  <eggert@cs.ucla.edu>
8182         * lib-src/make-docfile.c: Include stdarg.h.
8184 2016-02-11  Alan Mackenzie  <acm@muc.de>
8186         Extend gpm-mouse-mode's doc string and doc to point out limitations.
8188         * lisp/t-mouse.el (gpm-mouse-mode): Extend doc string to indicate the
8189         inability to transfer text between Emacs and other programs which use GPM.
8191         * doc/emacs/frames.texi (Text-Only Mouse): Note the inability to transfer text
8192         between Emacs and other progrmas which use GPM.
8194 2016-02-11  Eli Zaretskii  <eliz@gnu.org>
8196         Revert "Backport: * lisp/isearch.el: Turn char-folding off by default"
8198         * lisp/isearch.el: Turn char-folding back oon by default.
8200         This reverts commit 12c50e82c9b432b2fc31f8fb2215f43ceea80822.
8202 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
8204         Revert "Support integer image rotation and respect EXIF rotations"
8206         This reverts commit 0f600496050bf435f55dc81056e06fcd45992dc8.
8208         This change does not work on Fedora.
8210 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
8212         Revert "Document EXIF image rotation"
8214         This reverts commit 10b8ed27ec91ff52f93eb0297dcc3abb214931aa.
8216         This change does not work on Fedora, for instance.
8218 2016-02-11  Paul Eggert  <eggert@cs.ucla.edu>
8220         Document OS X LANG default
8222         * doc/emacs/cmdargs.texi (General Variables):
8223         Document OS X Language and Region system preference.
8224         Suggested by Alan Third.
8226 2016-02-11  Alan Third  <alan@idiocy.org>
8228         Set locale when run from OS X GUI
8230         * src/emacs.c (main): Call ns_init_locale.
8231         * src/nsterm.m (ns_init_locale): Get locale from OS and set LANG.
8232         * src/nsterm.h: Include ns_init_locale.
8234 2016-02-10  Paul Eggert  <eggert@cs.ucla.edu>
8236         make-docfile cleanup for I/O, etc.
8238         * lib-src/make-docfile.c (progname, generate_globals, num_globals)
8239         (num_globals_allocated, globals): Now static.
8240         (generate_globals, struct rcsoc_state, read_c_string_or_comment):
8241         (write_c_args, scan_c_stream, search_lisp_doc_at_eol, scan_lisp_file):
8242         Use bool for boolean.
8243         (verror): New function.
8244         (fatal, error): Use it.  API is now like printf.  All callers changed.
8245         (main): Remove err_count local that was always 0.
8246         (main, scan_c_stream, scan_lisp_file): Check for I/O error.
8247         (scan_file, scan_c_file, scan_c_stream, scan_lisp_file):
8248         Return void, not 0.
8249         (put_char, scan_keyword_or_put_char, scan_c_file): Use char for byte.
8250         (scan_keyword_or_put_char): Check for missing ( and unexpected EOF.
8251         (close_emacs_globals): Use ptrdiff_t for index, not int.
8252         (scan_c_file, scan_lisp_file): Exit with failure if file cannot be
8253         opened, rather than diagnosing but exiting with status 0.
8254         (search_lisp_doc_at_eol): Don't worry about ungetc of EOF; it's
8255         portable now.
8257 2016-02-10  Paul Eggert  <eggert@cs.ucla.edu>
8259         Memory-management cleanup in make-docfile
8261         I compiled it with -fsanitize=address and fixed the leaks it detected.
8262         Also, I changed it to prefer signed to unsigned integer types,
8263         and to check for integer overflow.
8264         * lib-src/make-docfile.c:
8265         Include <stddef.h>, <stdint.h>, <intprops.h>, <min-max.h>.
8266         (memory_exhausted): New function.
8267         (xmalloc, xrealloc): Use it.
8268         (xmalloc, xrealloc, scan_file, struct rcsoc_state, write_c_args)
8269         (uncompiled, scan_lisp_file):
8270         Prefer signed integer types to unsigned.
8271         (xstrdup): Remove.  All uses removed.
8272         (num_globals, num_globals_allocated, write_globals, scan_c_stream):
8273         Use ptrdiff_t, not int, for indexes that in theory could exceed INT_MAX.
8274         (add_global): Use const to pacify --enable-gcc-warnings.
8275         Make a copy here, rather than relying on strdup calls later.
8276         (add_global, write_globals, scan_c_stream):
8277         Avoid integer overflow when calculating sizes.
8278         (write_globals, scan_c_stream, scan_lisp_file): Avoid memory leak.
8279         (scan_c_stream): Check for add_global failure.
8281 2016-02-10  Kevin Gallagher  <Kevin.Gallagher@boeing.com>
8283         Kevin Gallagher has new email address
8285         * lisp/emulation/edt.el:
8286         * lisp/emulation/edt-lk201.el:
8287         * lisp/emulation/edt-mapper.el:
8288         * lisp/emulation/edt-pc.el:
8289         * lisp/emulation/edt-vt100.el:
8290         * etc/edt-user.el:
8291         * doc/misc/edt.texi: Update Kevin Gallagher's email address.
8293 2016-02-10  Eli Zaretskii  <eliz@gnu.org>
8295         Improve doc strings of 'forward/backward-word-strictly'
8297         * lisp/simple.el (backward-word): Refer to 'backward-word-strictly'
8298         in the doc string.  Suggested by Glenn Morris <rgm@gnu.org>.
8299         * lisp/subr.el (forward-word-strictly, backward-word-strictly):
8300         Mention 'subword-mode' in the doc strings.
8302         * src/syntax.c (Fforward_word): Refer to 'forward-word-strictly'
8303         in the doc string.  (Bug#22560)
8305 2016-02-10  Michael Albinus  <michael.albinus@gmx.de>
8307         Describe Makefile test targets in test/README
8309         * CONTRIBUTE: Move Makefile test targets to test/README.
8311         * Makefile.in:
8312         * test/README: Describe Makefile test targets.
8314 2016-02-10  Artur Malabarba  <bruce.connor.am@gmail.com>
8316         Backport: * lisp/isearch.el: Turn char-folding off by default
8318         (search-default-mode): Set default value to nil.
8320 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
8322         Document EXIF image rotation
8324         * doc/lispref/display.texi (ImageMagick Images): Mention EXIF rotation.
8326 2016-02-10  Dima Kogan  <dima@secretsauce.net>
8328         Support integer image rotation and respect EXIF rotations
8330         * src/image.c (imagemagick_load_image): Allow integer rotations in
8331         addition to floating point rotations (bug#22591).
8332         * src/image.c (imagemagick_load_image): Images that have an
8333         orientation given in EXIF and have no explicit :rotation tag are now
8334         pre-rotated.  All information such as width/height is reported for the
8335         rotated image.
8337 2016-02-10  Matthew Carter  <m@ahungry.com>
8339         Quote table names for postgres listings (sql-mode)
8341         * lisp/progmodes/sql.el (sql-postgres-completion-object): Avoid passing
8342           unquoted table names to the completion list.
8344 2016-02-10  Juri Linkov  <juri@linkov.net>
8346         * lisp/replace.el (replace-match-maybe-edit): Make arg `backward' optional.
8348         Doc fix.
8349         (replace-search, replace-highlight): Make arg `backward' optional.
8350         (Bug#18388)
8352 2016-02-10  Juri Linkov  <juri@linkov.net>
8354         * lisp/simple.el (next-line-or-history-element): Reset temporary-goal-column.
8356         (previous-line-or-history-element): Reset temporary-goal-column.
8357         Use end-of-visual-line instead of line-end-position.  (Bug#22544)
8359 2016-02-10  Paul Eggert  <eggert@cs.ucla.edu>
8361         Suppress ACL ops if configured with --disable-acl
8363         Without this patch, some ACL operations were suppressed, but not all.
8364         * src/fileio.c [!USE_ACL]: Do not include sys/acl.h.
8365         (Ffile_acl, Fset_file_acl) [!USE_ACL]: Return nil in this case.
8367 2016-02-09  Katsumi Yamaoka  <yamaoka@jpl.org>
8369         Mention web bugs
8371         * doc/misc/emacs-mime.texi (Display Customization):
8372         Mention web bugs in the mm-html-blocked-images section.
8374 2016-02-09  Katsumi Yamaoka  <yamaoka@jpl.org>
8376         Make mm-html-blocked-images default to "" again
8378         * lisp/gnus/mm-decode.el (mm-html-blocked-images):
8379         Default to "" that blocks all external images.
8381         * doc/misc/emacs-mime.texi (Display Customization):
8382         Mention that mm-html-blocked-images defaults to "".
8384 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
8386         Minor alignas cleanup
8388         * src/lisp.h (alignas): Remove now-redundant #ifdef that was left
8389         over from the old way of doing things, before Bug#20862 was fixed.
8391 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
8393         Add lmalloc commentary and tweak laligned
8395         * src/alloc.c (laligned): Help compiler in a tiny way by putting
8396         the more-commonly-failing disjunct first.
8398 2016-02-09  Eli Zaretskii  <eliz@gnu.org>
8400         Clarify documentation of key binding conventions
8402         * doc/lispref/tips.texi (Key Binding Conventions): Clarify which
8403         "punctuation characters" are reserved after "C-c".  (Bug#22604)
8405 2016-02-09  Oscar Fuentes  <ofv@wanadoo.es>
8407         * etc/NEWS: mention the `vc-faces' customization group
8409 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
8411         Sync with gnulib
8413         This incorporates:
8414         2016-02-09 stdalign: port to clang 3.7.0
8415         2016-02-06 misc: port better to gcc -fsanitize=address
8416         * doc/misc/texinfo.tex, lib/stdalign.in.h, m4/acl.m4, m4/getgroups.m4:
8417         Copy from gnulib.
8419 2016-02-09  Michael Albinus  <michael.albinus@gmx.de>
8421         * CONTRIBUTE: Add more examples for $(SELECTOR) make variable.
8423 2016-02-09  Katsumi Yamaoka  <yamaoka@jpl.org>
8425         Make mm-html-inhibit-images and mm-html-blocked-images default to nil
8427         * lisp/gnus/mm-decode.el (mm-html-inhibit-images)
8428         (mm-html-blocked-images): Default to nil.
8430         * doc/misc/emacs-mime.texi (Display Customization): Mention that
8431         mm-html-inhibit-images and mm-html-blocked-images default to nil.
8433         * etc/NEWS (Gnus): Document mm-html-inhibit-images and
8434         mm-html-blocked-images.
8436 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
8438         Increase success rate of fallback lmalloc
8440         * src/alloc.c (lmalloc, lrealloc): Reallocate with (typically)
8441         larger and larger sizes, to increase the probability that
8442         the allocator will return a Lisp-aligned pointer.
8444 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
8446         Make backgrounds extend to the end of the lines in shr
8448         * lisp/net/shr.el (shr-face-background): Faces can also be on
8449         the form `(:background "#fff)' (bug#22547).
8451 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
8453         Make the `R' command get the correct relative <img>s
8455         * lisp/net/eww.el (eww-readable): Preserve the base URL so
8456         that image expansions are fetched from the right place (bug#22605).
8458         (cherry picked from commit 8722e849f75ceafb82a1c17105e8ab76077a8ebc)
8460         Backport:
8462 2016-02-09  Mike Kupfer  <m.kupfer@acm.org>
8464         Fix typos in emacs-mime.texi and gnus.texi
8466         * doc/misc/emacs-mime.texi (Display Customization):
8467         * doc/misc/gnus.texi (HTML): Fix typo.
8469 2016-02-09  Katsumi Yamaoka  <yamaoka@jpl.org>
8471         * doc/misc/emacs-mime.texi (Display Customization):
8472         Doc fix for mm-html-inhibit-images.
8474 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
8476         Fix message-cross-post-followup-to group names
8478         * lisp/gnus/message.el (message-cross-post-followup-to): Don't
8479         insert group names like "nntp+foo:zot", because those aren't valid.
8481 2016-02-09  David Edmondson  <dme@dme.org>
8483         Compare recipient and keys case-insensitively
8485         * lisp/gnus/mml2015.el: (mml-secure-check-user-id): When comparing a
8486         recipient address with that from a key, do so in a case insensitive
8487         manner (bug#22603).
8489 2016-02-08  Glenn Morris  <rgm@gnu.org>
8491         * lisp/gnus/mm-decode.el (mm-alist-to-plist): Doc fix.
8493 2016-02-08  Katsumi Yamaoka  <yamaoka@jpl.org>
8495         Refactor HTML images handling of Gnus and mm-* (a part of bug#21650)
8497         * doc/misc/emacs-mime.texi (Display Customization):
8498         Remove mm-inline-text-html-with-images; add documentations for
8499         mm-html-inhibit-images and mm-html-blocked-images.
8501         * lisp/gnus/gnus-art.el (gnus-article-show-images):
8502         No need to bind mm-inline-text-html-with-images.
8503         (gnus-bind-safe-url-regexp): Rename to gnus-bind-mm-vars.
8504         (gnus-bind-mm-vars): Rename from gnus-bind-safe-url-regexp;
8505         bind mm-html-inhibit-images and mm-html-blocked-images.
8506         (gnus-mime-view-all-parts, gnus-mime-view-part-internally)
8507         (gnus-mm-display-part, gnus-mime-display-single)
8508         (gnus-mime-display-alternative): Use gnus-bind-mm-vars.
8510         * lisp/gnus/mm-decode.el (mm-inline-text-html-with-images): Remove.
8511         (mm-html-inhibit-images, mm-html-blocked-images): New user options.
8512         (mm-shr): Bind shr-inhibit-images and shr-blocked-images with
8513         mm-html-inhibit-images and mm-html-blocked-images respectively
8514         instead of gnus-inhibit-images and gnus-blocked-images.
8516         * lisp/gnus/mm-view.el (mm-setup-w3m): Use mm-html-inhibit-images
8517         instead of mm-inline-text-html-with-images.
8519 2016-02-08  Paul Eggert  <eggert@cs.ucla.edu>
8521         Port to FreeBSD 11-CURRENT i386
8523         Problem reported by Herbert J. Skuhra in:
8524         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00354.html
8525         Instead of trying
8526         * src/alloc.c (lmalloc, lrealloc, laligned): New functions.
8527         (xmalloc, xzalloc, xrealloc, lisp_malloc): Use them.
8528         (__alignof__) [!__GNUC__ && !__alignof__]: New macro.
8529         (MALLOC_IS_GC_ALIGNED): New macro.
8530         * src/lisp.h (NONPOINTER_BITS): Remove.  All uses removed.
8531         No longer needed now that alloc.c uses lmalloc and lrealloc.
8533 2016-02-08  Michael Albinus  <michael.albinus@gmx.de>
8535         Some fixes in file-notify-tests.el
8537         * test/automated/file-notify-tests.el
8538         (file-notify--test-with-events-check)
8539         (file-notify--test-with-events-explainer): New defuns.
8540         (file-notify--test-with-events): Use it.
8541         (file-notify-test07-backup): Fix docstring.  Some of the
8542         backends fire two `changed' events.  Backup by rename doesn't
8543         work for kqueue.
8545 2016-02-07  Michael Albinus  <michael.albinus@gmx.de>
8547         Fix Bug#22557
8549         * lisp/filenotify.el (file-notify-callback): Do not send a
8550         `stopped' event in case of backup by renaming.  (Bug#22557)
8552         * test/automated/Makefile.in: Use $(SELECTOR_EXPENSIVE) for
8553         all targets but check and check-maybe.
8555         * test/automated/file-notify-tests.el
8556         (file-notify--test-read-event-timeout): New defconst.
8557         (file-notify--deftest-remote, file-notify--wait-for-events)
8558         (file-notify-test02-events)
8559         (file-notify-test04-file-validity)
8560         (file-notify-test06-many-events): Use it.
8561         (file-notify--test-cleanup): Make it more robust.  Delete also
8562         backup file.
8563         (file-notify-test07-backup): New test.
8565 2016-02-07  Paul Eggert  <eggert@cs.ucla.edu>
8567         Fix test for dladdr
8569         Problem reported by Andreas Schwab in:
8570         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00327.html
8571         * configure.ac (dladdr): Link with LIBMODULES when checking for
8572         this function.
8574 2016-02-07  Andreas Schwab  <schwab@linux-m68k.org>
8576         Fix gnus-group-get-new-news-this-group on group with closed server
8578         * lisp/gnus/nnimap.el (nnimap-change-group): Lookup server
8579         method and pass to nnimap-open-server.
8581 2016-02-07  Artur Malabarba  <bruce.connor.am@gmail.com>
8583         * lisp/comint.el (comint-prompt-read-only): Clean tabs in docstring
8585         While tabs in code are mostly fine because the Emacs sources have a
8586         .dir-locals file specifying tab-width, the same is not true of tabs in
8587         code examples inside docstrings.  The docstring is printed on a *Help*
8588         buffer, which can be created on any directory and won't necessarily have
8589         the same tab-width set.
8591 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
8593         Don't inloop gnus-uu-mark-thread on the last thread
8595         * lisp/gnus/gnus-uu.el (gnus-uu-mark-thread): Don't infloop on the
8596         final thread in the summary buffer (bug#16666).
8598 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
8600         Display non-ASCII group names better in prompts
8602         * lisp/gnus/gnus-sum.el (gnus-articles-to-read): To decode the
8603         group name, we have to do that before we remove the prefix.
8605 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
8607         Default to gpg2 instead of gpg
8609         * lisp/epg-config.el (epg-gpg-program): Prefer gpg2 over gpg, if
8610         it exists.  This fixes many problems with using the GPG
8611         authentication agent.
8613 2016-02-06  David Edmondson  <dme@dme.org>
8615         src/process.c Correctly convert AF_INET6 addresses
8617         * src/process.c (conv_lisp_to_sockaddr): AF_INET6 addresses are
8618         converted to a list of 16 bit quantities by
8619         conv_sockaddr_to_lisp(). conv_lisp_to_sockaddr() should follow the
8620         same scheme rather than expecting a (longer) list of 8 bit
8621         quantities.
8623         Backport:
8625         (cherry picked from commit 55ce3c30d617c38eb086d5ad4ffbd881c20c559c)
8627 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
8629         * lisp/isearch.el (isearch-define-mode-toggle): Improve logic
8631 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
8633         * lisp/menu-bar.el (menu-bar-options-menu): New search submenu
8635         (menu-bar-search-options-menu): New variable
8637 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
8639         * lisp/isearch.el (search-default-mode)
8641         (isearch-regexp-function): Improve docstrings.
8643 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
8645         * lisp/isearch.el: Rename search-default-regexp-mode to search-default-mode
8647         (search-default-mode): New variable.
8648         (isearch-mode, isearch-define-mode-toggle)
8649         (isearch--describe-regexp-mode): Update accordingly.
8650         * lisp/menu-bar.el (nonincremental-search-forward): Update accordingly.
8651         * etc/NEWS: Update accordingly.
8652         * doc/emacs/search.texi: Update accordingly.
8654 2016-02-06  Oscar Fuentes  <ofv@wanadoo.es>
8656         Use monitor's resolution for positioning tooltips
8658         * src/xfns.c (compute_tip_xy): Use the resolution of the monitor where
8659           the mouse pointer is to avoid placing the tooltip over the border of
8660           the monitor on multi-head displays. Fixes bug#22549.
8662 2016-02-06  Eli Zaretskii  <eliz@gnu.org>
8664         Fix file-notify-test on MS-Windows
8666         * test/automated/file-notify-tests.el (file-notify--test-timeout):
8667         Reduce w32notify timeout to 10 sec.
8668         (file-notify-test06-many-events): Call read-event after each
8669         rename, to keep the w32notify backend happy in batch mode.
8670         (Bug#22534)
8672 2016-02-06  Eli Zaretskii  <eliz@gnu.org>
8674         Fix issues found by auditing w32notify code
8676         * src/w32inevt.c (handle_file_notifications): Count the number of
8677         events to be returned.
8678         * src/w32notify.c (send_notifications): Don't copy to the file
8679         notification buffer more than it can hold.  (Bug#22534)
8681 2016-02-06  Eli Zaretskii  <eliz@gnu.org>
8683         Extend etags Ruby support for accessors
8685         * lib-src/etags.c (Ruby_functions): Support accessors defined with
8686         parentheses.  (Bug#22563)
8688         * test/etags/ruby-src/test1.ru (A::B): Add tests for accessors
8689         defined with parentheses.
8690         * test/etags/ETAGS.good_1:
8691         * test/etags/ETAGS.good_2:
8692         * test/etags/ETAGS.good_3:
8693         * test/etags/ETAGS.good_4:
8694         * test/etags/ETAGS.good_5:
8695         * test/etags/ETAGS.good_6:
8696         * test/etags/CTAGS.good: Adapt to changes in Ruby tests.
8698 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
8700         Update publicsuffix.txt.
8702         * etc/publicsuffix.txt: Updated from
8703         https://publicsuffix.org/list/public_suffix_list.dat.
8705 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
8707         Ensure that Gnus dribble handling allows removing entries
8709         * lisp/gnus/gnus-start.el (gnus-dribble-enter): Ensure that each
8710         entry is on a single line.
8712 2016-02-05  OGAWA Hirofumi  <hirofumi@mail.parknet.co.jp>  (tiny change)
8714         Be consistent when using encoded strings in nnimap data
8716         * lisp/gnus/nnimap.el (nnimap-encode-gnus-group): New function
8717         (nnimap-request-list): Use it.
8718         (nnimap-request-newgroups): Ditto.
8720 2016-02-05  OGAWA Hirofumi  <hirofumi@mail.parknet.co.jp>  (tiny change)
8722         Display the decoded Gnus group name
8724         * lisp/gnus/gnus-sum.el (gnus-summary-read-group-1): Use the
8725         decoded group name in the message.
8727 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
8729         Use completion-ignore-case instead of defining command
8731         * lisp/erc/erc.el (erc-mode): Set completion-ignore-case so
8732         that we get case-insensitive completion.
8733         (erc-completion-at-point): Remove.
8735 2016-02-05  Michael Albinus  <michael.albinus@gmx.de>
8737         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
8739         Reduce the number of iterations to 250 in case of w32notify.
8741 2016-02-05  Eli Zaretskii  <eliz@gnu.org>
8743         Fix problems caused by new implementation of sub-word mode
8745         * lisp/subr.el (forward-word-strictly, backward-word-strictly):
8746         New functions.
8747         (word-move-empty-char-table): New variable.
8749         * etc/NEWS: Mention 'forward-word-strictly' and
8750         'backward-word-strictly'.
8752         * doc/lispref/positions.texi (Word Motion): Document
8753         'find-word-boundary-function-table', 'forward-word-strictly', and
8754         'backward-word-strictly'.  (Bug#22560)
8756         * src/syntax.c (syms_of_syntax)
8757         <find-word-boundary-function-table>: Doc fix.
8759         * lisp/wdired.el (wdired-xcase-word):
8760         * lisp/textmodes/texnfo-upd.el (texinfo-copy-node-name)
8761         (texinfo-copy-section-title, texinfo-start-menu-description)
8762         (texinfo-copy-menu-title, texinfo-specific-section-type)
8763         (texinfo-insert-node-lines, texinfo-copy-next-section-title):
8764         * lisp/textmodes/texinfo.el (texinfo-clone-environment)
8765         (texinfo-insert-@end):
8766         * lisp/textmodes/texinfmt.el (texinfo-format-scan)
8767         (texinfo-anchor, texinfo-multitable-widths)
8768         (texinfo-multitable-item):
8769         * lisp/textmodes/tex-mode.el (latex-env-before-change):
8770         * lisp/textmodes/flyspell.el (texinfo-mode-flyspell-verify):
8771         * lisp/skeleton.el (skeleton-insert):
8772         * lisp/simple.el (count-words):
8773         * lisp/progmodes/vhdl-mode.el (vhdl-beginning-of-libunit)
8774         (vhdl-beginning-of-defun, vhdl-beginning-of-statement-1)
8775         (vhdl-update-sensitivity-list, vhdl-template-block)
8776         (vhdl-template-break, vhdl-template-case, vhdl-template-default)
8777         (vhdl-template-default-indent, vhdl-template-for-loop)
8778         (vhdl-template-if-then-use, vhdl-template-bare-loop)
8779         (vhdl-template-nature, vhdl-template-procedural)
8780         (vhdl-template-process, vhdl-template-selected-signal-asst)
8781         (vhdl-template-type, vhdl-template-variable)
8782         (vhdl-template-while-loop, vhdl-beginning-of-block)
8783         (vhdl-hooked-abbrev, vhdl-port-copy, vhdl-hs-forward-sexp-func):
8784         * lisp/progmodes/verilog-mode.el (verilog-backward-sexp)
8785         (verilog-forward-sexp, verilog-beg-of-statement)
8786         (verilog-set-auto-endcomments, verilog-backward-token)
8787         (verilog-do-indent):
8788         * lisp/progmodes/vera-mode.el (vera-guess-basic-syntax)
8789         (vera-indent-block-closing):
8790         * lisp/progmodes/simula.el (simula-context)
8791         (simula-backward-up-level, simula-forward-down-level)
8792         (simula-previous-statement, simula-next-statement)
8793         (simula-skip-comment-backward, simula-calculate-indent)
8794         (simula-find-if, simula-electric-keyword):
8795         * lisp/progmodes/sh-script.el (sh-smie--rc-newline-semi-p):
8796         * lisp/progmodes/ruby-mode.el (ruby-smie--redundant-do-p)
8797         (ruby-smie--forward-token, ruby-smie--backward-token)
8798         (ruby-singleton-class-p, ruby-calculate-indent)
8799         (ruby-forward-sexp, ruby-backward-sexp):
8800         * lisp/progmodes/ps-mode.el (ps-run-goto-error):
8801         * lisp/progmodes/perl-mode.el (perl-syntax-propertize-function)
8802         (perl-syntax-propertize-special-constructs)
8803         (perl-backward-to-start-of-continued-exp):
8804         * lisp/progmodes/pascal.el (pascal-indent-declaration):
8805         * lisp/progmodes/octave.el (octave-function-file-p):
8806         * lisp/progmodes/mantemp.el (mantemp-insert-cxx-syntax):
8807         * lisp/progmodes/js.el (js--forward-function-decl):
8808         * lisp/progmodes/idlwave.el (idlwave-show-begin-check)
8809         (idlwave-beginning-of-block, idlwave-end-of-block)
8810         (idlwave-block-jump-out, idlwave-determine-class):
8811         * lisp/progmodes/icon.el (icon-is-continuation-line)
8812         (icon-backward-to-start-of-continued-exp, end-of-icon-defun):
8813         * lisp/progmodes/hideif.el (hide-ifdef-define):
8814         * lisp/progmodes/f90.el (f90-change-keywords):
8815         * lisp/progmodes/cperl-mode.el (cperl-electric-pod)
8816         (cperl-linefeed, cperl-electric-terminator)
8817         (cperl-find-pods-heres, cperl-fix-line-spacing)
8818         (cperl-invert-if-unless):
8819         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur):
8820         * lisp/progmodes/cc-align.el (c-lineup-java-inher):
8821         * lisp/progmodes/ada-mode.el (ada-compile-goto-error)
8822         (ada-adjust-case-skeleton, ada-create-case-exception)
8823         (ada-create-case-exception-substring)
8824         (ada-case-read-exceptions-from-file, ada-after-keyword-p)
8825         (ada-scan-paramlist, ada-get-current-indent, ada-get-indent-end)
8826         (ada-get-indent-if, ada-get-indent-block-start)
8827         (ada-get-indent-loop, ada-get-indent-type)
8828         (ada-search-prev-end-stmt, ada-check-defun-name)
8829         (ada-goto-decl-start, ada-goto-matching-start)
8830         (ada-goto-matching-end, ada-looking-at-semi-or)
8831         (ada-looking-at-semi-private, ada-in-paramlist-p)
8832         (ada-search-ignore-complex-boolean, ada-move-to-start)
8833         (ada-move-to-end, ada-which-function, ada-gen-treat-proc):
8834         * lisp/net/quickurl.el (quickurl-grab-url):
8835         * lisp/mail/sendmail.el (mail-do-fcc):
8836         * lisp/mail/rmail.el (rmail-resend):
8837         * lisp/mail/mailabbrev.el (mail-abbrev-complete-alias):
8838         * lisp/mail/mail-extr.el (mail-extract-address-components):
8839         * lisp/json.el (json-read-keyword):
8840         * lisp/files.el (insert-directory):
8841         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
8842         * lisp/completion.el (symbol-under-point, symbol-before-point)
8843         (symbol-before-point-for-complete, next-cdabbrev)
8844         (add-completions-from-c-buffer):
8845         * lisp/cedet/semantic/texi.el (semantic-up-context)
8846         (semantic-beginning-of-context):
8847         * lisp/cedet/semantic/bovine/el.el (semantic-get-local-variables):
8848         use 'forward-word-strictly' and 'backward-word-strictly' instead
8849         of 'forward-word' and 'backward-word'.
8851 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
8853         Fix doc string of tls-program
8855         * lisp/net/tls.el (tls-program): Document the %t parameter (bug#22559).
8857 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
8859         Restore window conf in nsm
8861         * lisp/net/nsm.el (nsm-query-user): Restore the window configuration.
8863         Backport:
8865 2016-02-05  Mark Oteiza  <mvoteiza@udel.edu>
8867         * etc/NEWS: Document new mpc.el features
8869 2016-02-04  Leo Liu  <sdl.web@gmail.com>
8871         * lisp/custom.el (defface): Revert indentation change.  (Bug#22524)
8873 2016-02-04  Alan Mackenzie  <acm@muc.de>
8875         Correctly fontify C++ initializations which "look like" functions.
8877         Fixes bug#7579.
8879         lisp/progmodes/cc-engine.el (c-forward-declarator): Add extra optional
8880         parameter to enable handling of "anonymous" declarators in declarations.
8882         lisp/progmodes/cc-fonts.el (c-font-lock-declarators): Check more rigorously
8883         whether a "(" opens a parameter list of a function, or an initialization of a
8884         variable.
8886 2016-02-04  Ulf Jasper  <ulf.jasper@web.de>
8888         Improve newsticker-treeview-selection-face
8890         * lisp/net/newst-treeview.el (newsticker-treeview-selection-face): Improve
8891         readability for dark background.
8893 2016-02-04  Eli Zaretskii  <eliz@gnu.org>
8895         Minor fix in tagging Ruby accessors by etags
8897         * lib-src/etags.c (Ruby_functions): Don't tag accessors whose
8898         names are not literal symbols.  (Bug#22241)
8900 2016-02-04  Paul Eggert  <eggert@cs.ucla.edu>
8902         Spelling fixes
8904 2016-02-04  Dmitry Gutov  <dgutov@yandex.ru>
8906         Remove 'def X' from the example
8908         * test/etags/ruby-src/test1.ru (A::B): Remove 'def X'
8909         (http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00167.html).
8910         * test/etags/CTAGS.good:
8911         * test/etags/ETAGS.good_1:
8912         * test/etags/ETAGS.good_2:
8913         * test/etags/ETAGS.good_3:
8914         * test/etags/ETAGS.good_4:
8915         * test/etags/ETAGS.good_5:
8916         * test/etags/ETAGS.good_6: Adjust accordingly.
8918 2016-02-04  Vasilij Schneidermann  <v.schneidermann@gmail.com>  (tiny change)
8920         Allow sending empty hidden values in eww
8922         * lisp/net/eww.el (eww-tag-input): Allow sending empty hidden
8923         values (bug#22388).
8925         (cherry picked from commit 5898da8210af7953e638ddf7821c05260979c3f0)
8927         Backport:
8929 2016-02-04  David Edmondson  <dme@dme.org>
8931         Make erc work better when encountering unknown prefix chars
8933         * lisp/erc/erc.el (erc-channel-receive-names): Output a warning
8934         instead of erroring out on unknown prefix chars (bug#22380).
8936 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
8938         Make erc completion case-insensitive again
8940         * lisp/erc/erc.el (erc-completion-at-point): Make erc completion
8941         case-insensitive again (bug#11360).
8943 2016-02-04  Carlos Pita  <carlosjosepita@gmail.com>  (tiny change)
8945         Make complection in erc use consistent casing
8947         * lisp/erc/erc-pcomplete.el (pcomplete-erc-all-nicks): Make
8948         case in the complection consistent (bug#18509).
8950 2016-02-04  Francis Litterio  <flitterio@gmail.com>
8952         Make /QUIT in erc more robust
8954         * lisp/erc/erc.el (erc-kill-query-buffers): Don't bug out if we're
8955         issuing /QUIT to disconnected servers (bug#22099).
8957 2016-02-04  Kevin Brubeck Unhammer  <unhammer@fsfe.org>  (tiny change)
8959         Make tracking faces in Emacs work more reliably
8961         * lisp/erc/erc-track.el (erc-faces-in): Always return lists of
8962         faces to avoid later ambiguity (bug#22424).
8964 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
8966         Make shr not bug out on images on non-graphical displays
8968         * lisp/net/shr.el (shr-put-image): Don't bug out on alt-less
8969         images on non-graphical displays (bug#22327).
8971 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
8973         Fix bookmark display widths
8975         * lisp/net/eww.el (eww-list-bookmarks): Pop to the buffer before
8976         preparing it so that the widths are computed correctly (bug#22328).
8978 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
8980         Fix typo in eww-make-unique-file-name
8982         * lisp/net/eww.el (eww-make-unique-file-name): Make this function
8983         actually work.
8985 2016-02-03  Lars Ingebrigtsen  <larsi@gnus.org>
8987         Make it possible to TAB to input fields
8989         * lisp/net/eww.el (eww-tag-input): Make it possible to TAB to
8990         input fields (bug#22540).
8992 2016-02-03  Lars Ingebrigtsen  <larsi@gnus.org>
8994         Insert complete alt texts when images are disabled
8996         * lisp/net/shr.el (shr-tag-img): When images are disabled, insert
8997         the complete alt/title string (bug#22293).
8999 2016-02-03  Lars Ingebrigtsen  <larsi@gnus.org>
9001         Allow eww text fields to grow
9003         * lisp/net/eww.el (eww-process-text-input): Allow text fields to
9004         grow when typing in stuff that's longer than the original width.
9006 2016-02-03  Dima Kogan  <dima@secretsauce.net>
9008         Make erc work when subword-mode is switched on
9010         * lisp/erc/erc-backend.el (erc-forward-word, erc-word-at-arg-p)
9011         (erc-bounds-of-word-at-point): New functions to do word-based
9012         things when subword-mode is switched on.
9014         * lisp/erc/erc-button.el (erc-button-add-nickname-buttons): Use them
9015         (bug#17558).
9017 2016-02-03  Teemu Likonen  <tlikonen@iki.fi>
9019         Fix IMAP doc example
9021         * doc/misc/gnus.texi (Client-Side IMAP Splitting): Fix example.
9023 2016-02-03  Paul Eggert  <eggert@cs.ucla.edu>
9025         Quoting fixes in doc strings and diagnostics
9027         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq, byte-compile-funcall):
9028         * lisp/gnus/mml-smime.el (mml-smime-get-dns-cert)
9029         (mml-smime-get-ldap-cert):
9030         Follow user style preference when quoting diagnostics.
9032 2016-02-03  Noam Postavsky  <npostavs@gmail.com>
9034         Fix warning message in hack-local-variables
9036         * lisp/files.el (hack-local-variables): use 'thisbuf' to reference
9037         the original buffer name in the warning message.  (Bug#21681)
9039 2016-02-03  Eli Zaretskii  <eliz@gnu.org>
9041         Etags: yet another improvement in Ruby tags
9043         * lib-src/etags.c (Ruby_functions): Handle continuation lines in
9044         Ruby accessor definitions.  (Bug#22241)
9046         * test/etags/ruby-src/test1.ru (A::B#X): Add some more tests for
9047         accessors and multiline definitions.
9048         * test/etags/ETAGS.good_1:
9049         * test/etags/ETAGS.good_2:
9050         * test/etags/ETAGS.good_3:
9051         * test/etags/ETAGS.good_4:
9052         * test/etags/ETAGS.good_5:
9053         * test/etags/ETAGS.good_6:
9054         * test/etags/CTAGS.good: Adapt to changes in Ruby tags.
9056 2016-02-03  Eli Zaretskii  <eliz@gnu.org>
9058         Fix x-popup-menu on TTYs without a mouse
9060         * src/menu.c (Fx_popup_menu): Be sure to initialize 'x' and 'y'
9061         for the TTY case without a mouse.  (Bug#22538)
9063 2016-02-03  Nicolas Petton  <nicolas@petton.fr>
9065         * lisp/emacs-lisp/map.el: Improvements to the docstring of the pcase macro
9067 2016-02-02  Lars Ingebrigtsen  <larsi@gnus.org>
9069         Use pop-to-buffer-same-window in eww
9071         * lisp/net/eww.el: pop-to-buffer-same-window throughout instead of
9072         switch-to-buffer (bug#22244).
9074 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
9076         * autogen.sh: Revert all recent changes.
9078 2016-02-02  Glenn Morris  <rgm@gnu.org>
9080         * make-dist: Updates related to nt/.
9082         * make-dist: Add modules/.
9084         * make-dist: Update for super-special file that can't live in etc/.
9086 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
9088         Fix failure to compile ns-win.el in parallel builds
9090         * src/Makefile.in ($(lispsource)/term/ns-win.elc): Add order-only
9091         dependency on $(lispsource)/international/charprop.el.
9092         (Bug#22501)
9094 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
9096         Fix names of tags generated for Ruby accessors
9098         * lib-src/etags.c (Ruby_functions): Don't include the leading
9099         colon ':' in tags for Ruby accessors and aliases.  (Bug#22241)
9101         * test/etags/ETAGS.good_1:
9102         * test/etags/ETAGS.good_2:
9103         * test/etags/ETAGS.good_3:
9104         * test/etags/ETAGS.good_4:
9105         * test/etags/ETAGS.good_5:
9106         * test/etags/ETAGS.good_6:
9107         * test/etags/CTAGS.good: Adapt to changes in Ruby tags.
9109 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
9111         Fix file-name recognition in 'etags'
9113         * lib-src/etags.c (get_language_from_filename): If FILE includes a
9114         leading directory, compare only its basename to the known file
9115         names in lang_names[].
9117         * test/etags/Makefile (RBSRC): Adapt to recent test1.ruby
9118         renaming.
9119         * test/etags/ETAGS.good_1:
9120         * test/etags/ETAGS.good_2:
9121         * test/etags/ETAGS.good_3:
9122         * test/etags/ETAGS.good_4:
9123         * test/etags/ETAGS.good_5:
9124         * test/etags/ETAGS.good_6:
9125         * test/etags/CTAGS.good: Adapt to changes in Ruby file names and
9126         to the results in Makefile due to the above etags.c fix.
9128 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
9130         Change Ruby file names and extensions recognized by 'etags'
9132         * lib-src/etags.c <Ruby_filenames>: New variable, holds names
9133         of Ruby files.
9134         <Ruby_suffixes>: Treat .rb, .ru, and .rbw as Ruby extensions.
9135         <lang_names>: Add Ruby_filenames to the Ruby entry.
9136         * test/etags/ruby-src/test1.ru: Renamed from test1.ruby.
9137         (Bug#22241)
9139 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
9141         More improvements for Ruby support in 'etags'
9143         * lib-src/etags.c (Ruby_functions): Tag Ruby accessors and
9144         alias_method.  Identify constants even if the assignment is not
9145         followed by whitespace.  (Bug#22241)
9147         * test/etags/ruby-src/test1.ru: Add tests for constants,
9148         accessors, and alias_method.
9149         * test/etags/ETAGS.good_1:
9150         * test/etags/ETAGS.good_2:
9151         * test/etags/ETAGS.good_3:
9152         * test/etags/ETAGS.good_4:
9153         * test/etags/ETAGS.good_5:
9154         * test/etags/ETAGS.good_6:
9155         * test/etags/CTAGS.good: Adapt to changes in Ruby tests.
9157 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
9159         Add --git-config option to autogen.sh
9161         * autogen.sh: New options --git-config, --help.
9162         (git_config): New shell var.  Alter function to respect this var.
9164 2016-02-02  Lars Ingebrigtsen  <larsi@gnus.org>
9166         Fix editing undo changes in eww fields
9168         * eww.el (eww-tag-form): Don't overwrite initial form data in text
9169         fields.
9170         (eww-process-text-input): Make `M-t' at the end of text fields work
9171         better (bug#19085).
9173 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
9175         Allow the user more control of popping up the eww window
9177         * eww.el (eww): Use pop-to-buffer-same-window (suggested by
9178         Michael Heerdegen) (bug#22244).
9180 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
9182         Make eww-browse-url with new-window parameter work again
9184         * eww.el (eww-browse-url): Stay in the same buffer if we're
9185         already in a eww mode buffer so that eww-browse-url with a
9186         new-window parameter works (bug#22244).
9188 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
9190         Clean up eww code slightly
9192         * eww.el (eww-browse-url): Clean up code slightly.
9194 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
9196         Don't insert nil faces in shr
9198         * shr.el (shr-insert-table): Don't add nil faces, because that
9199         will show up in *Messages* as "Invalid face reference: nil [32
9200         times]".
9202 2016-02-01  Glenn Morris  <rgm@gnu.org>
9204         Improve the custom type of some user options.
9206         * lisp/autoinsert.el (auto-insert-alist):
9207         * lisp/replace.el (query-replace-from-to-separator):
9208         * lisp/gnus/gnus-art.el (gnus-hidden-properties):
9209         * lisp/gnus/gnus-gravatar.el (gnus-gravatar-properties):
9210         * lisp/gnus/gnus-picon.el (gnus-picon-properties):
9211         * lisp/progmodes/prolog.el (prolog-keywords, prolog-types)
9212         (prolog-mode-specificators, prolog-determinism-specificators)
9213         (prolog-directives, prolog-program-name, prolog-program-switches)
9214         (prolog-consult-string, prolog-compile-string, prolog-eof-string)
9215         (prolog-prompt-regexp): Improve custom type.
9217 2016-02-01  Glenn Morris  <rgm@gnu.org>
9219         Mark some risky calendar variables.
9221         * lisp/calendar/cal-china.el (chinese-calendar-time-zone):
9222         Remove risky setting for deleted obsolete alias.
9223         (calendar-chinese-standard-time-zone-name)
9224         (calendar-chinese-daylight-saving-start)
9225         (calendar-chinese-daylight-saving-end):
9226         * lisp/calendar/calendar.el (calendar-iso-date-display-form)
9227         (calendar-european-date-display-form)
9228         (calendar-american-date-display-form, calendar-date-display-form):
9229         * lisp/calendar/diary-lib.el (diary-remind-message)
9230         (diary-header-line-format):
9231         * lisp/calendar/solar.el (calendar-time-display-form)
9232         (calendar-location-name): Mark as risky.
9234 2016-02-01  Simen Heggestøyl  <simenheg@gmail.com>
9236         Highlight two additional SCSS keywords
9238         * lisp/textmodes/css-mode.el (css-bang-ids): New defconst holding CSS
9239         identifiers on the form !foo.
9240         (scss-bang-ids): New defconst holding SCSS identifiers on the form
9241         !foo.
9242         (css--font-lock-keywords): Highlight the new SCSS bang identifiers in
9243         `font-lock-builtin-face'.
9245         * test/indent/css-mode.css: Add bang rule test case.
9247         * test/indent/scss-mode.scss: Add test cases for the introduced bang
9248         rules.
9250 2016-02-01  Karl Fogel  <kfogel@red-bean.com>
9252         Recommend enabling integrity-checking in git
9254         * admin/notes/git-workflow:  Recommend setting transfer.fsckObjects.
9256         This is related to the autogen.sh changes made by Paul Eggert in
9257         commit d766ca8f (2016-02-01) and commit cedd7cad (2016-02-01), and to
9258         my edits today to http://www.emacswiki.org/emacs/GitForEmacsDevs and
9259         to emacswiki.org/emacs/GitQuickStartForEmacsDevs.  See also the thread
9260         "Recommend these .gitconfig settings for git integrity." at
9261         https://lists.gnu.org/archive/html/emacs-devel/2016-01/threads.html#01802.
9263 2016-02-01  Martin Rudalics  <rudalics@gmx.at>
9265         Some corrections in Elisp manual
9267         * doc/lispref/buffers.texi (Read Only Buffers): Describe optional
9268         argument POSITION.
9269         * doc/lispref/debugging.texi (Error Debugging): `debug-on-signal'
9270         is an option.
9271         * doc/lispref/display.texi (Refresh Screen): Describe optional
9272         argument FRAME of `redraw-frame'.
9273         (Attribute Functions): Describe optional argument CHARACTER of
9274         `face-font'.
9275         (Defining Images): `image-load-path' is an option.
9276         (Beeping): `ring-bell-function' is an option.
9277         * doc/lispref/frames.texi (Size and Position): The PIXELWISE
9278         argument of `set-frame-size' is optional.
9279         (Raising and Lowering): The TERMINAL argument of `tty-top-frame'
9280         is optional.
9281         * doc/lispref/keymaps.texi (Controlling Active Maps): Fix doc of
9282         `set-transient-map'.
9283         * doc/lispref/minibuf.texi (Text from Minibuffer):
9284         `read-regexp-defaults-function' is an option.
9285         (Minibuffer Contents): `delete-minibuffer-contents' is a command.
9286         * doc/lispref/modes.texi (Mode Line Variables):
9287         `mode-line-position' and `mode-line-modes' are variables, not
9288         options.
9289         * doc/lispref/strings.texi (Creating Strings): The START argument
9290         of `substring' is optional.
9291         * doc/lispref/text.texi (Buffer Contents): Describe optional
9292         argument NO-PROPERTIES of `thing-at-point'.
9293         (User-Level Deletion): Both arguments of
9294         `delete-trailing-whitespace' are optional.
9295         (Margins): Use @key{RET} instead of @kbd{RET}.
9296         * doc/lispref/windows.texi (Display Action Functions): Write
9297         non-@code{nil} instead of non-nil.
9298         (Choosing Window Options): The WINDOW arg of
9299         `split-window-sensibly' is optional.
9300         (Choosing Window Options): Write non-@code{nil} instead of
9301         non-nil.
9302         (Window Start and End): Both args of `window-group-end' are
9303         optional.
9305         * src/buffer.c (Fbarf_if_buffer_read_only): Rename argument POS
9306         to POSITION to keep consisteny with doc-string.
9308 2016-02-01  Paul Eggert  <eggert@cs.ucla.edu>
9310         Chatter when autogen.sh changes Git configuration
9312         * autogen.sh (git_config): New function.  Use it instead of ‘git config’.
9314 2016-02-01  Kyle Meyer  <kyle@kyleam.com>
9316         * lisp/org/org-compat.el (org-font-lock-ensure): Fix bogus test (bug#22399)
9318 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
9320         Omit unnecessary history from Lisp intro
9322         * doc/lispintro/emacs-lisp-intro.texi (Review, Digression into C)
9323         (Conclusion): Reword so as not to talk about earlier versions
9324         of Emacs in what should be an intro.
9326 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
9328         * etc/HISTORY: Add some more history, plus git tags.
9330 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
9332         Improve elisp “Security Considerations” doc
9334         * doc/lispref/os.texi (Security Considerations):
9335         Mention call-process and rename-file as opposed to shell commands.
9336         Add some more cross-references.
9338 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
9340         autogen.sh now arranges for git to check hashes
9342         Suggested by Karl Fogel in:
9343         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01802.html
9344         * autogen.sh: Do "git config transfer.fsckObjects true".
9346 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
9348         Fix (c & 040) typo in emergency escapes
9350         * src/keyboard.c (handle_interrupt): Fix recently-introduced
9351         typo (040 should have been ~040) that silently suppressed
9352         auto-saves after emergency escapes.  Redo comparison to avoid
9353         similar problems.
9355 2016-01-31  Eli Zaretskii  <eliz@gnu.org>
9357         Fix display of overlay strings with 'display' and 'box' property
9359         * src/xdisp.c (get_next_display_element): Take the box face from
9360         display stack level that comes from a buffer, not an overlay
9361         string.  (Bug#22499)
9363 2016-01-31  Andreas Schwab  <schwab@linux-m68k.org>
9365         Fix imap-starttls-open
9367         * lisp/net/imap.el (imap-starttls-open): Log imap process
9368         output.  Call imap-parse-greeting.  (Bug#22500)
9370 2016-01-31  Andreas Schwab  <schwab@linux-m68k.org>
9372         Fix return value of imap-starttls-open
9374         * lisp/net/imap.el (imap-starttls-open): Fix return value.
9376 2016-01-31  John Wiegley  <johnw@newartisans.com>
9378         Correct reference to DARWIN_OS preprocessor symbol
9380         * src/alloc.c: Correct a preprocessor reference to DARWIN_OS, which may
9381           not be defined.
9383 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
9385         Spelling fix
9387         Spelling fixes
9389 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
9391         Pacify GCC on C library without glibc API
9393         Without this change, with --enable-gcc-warnings GCC would complain
9394         “error: redundant redeclaration of ‘aligned_alloc’”.
9395         * configure.ac: Simplify aligned_alloc testing.
9396         * src/alloc.c (aligned_alloc): Don’t use if DARWIN_OS,
9397         since the simplified configure.ac no longer checks for that.
9398         Don’t declare if HAVE_ALIGNED_ALLOC.
9399         Correct misspelling of HAVE_ALIGNED_ALLOC in ifdef.
9401 2016-01-30  Artur Malabarba  <bruce.connor.am@gmail.com>
9403         Backport: * lisp/files.el: Remove support for extra .dir-locals file
9405         (dir-locals-file-2, dir-locals--all-files): Remove.
9406         (dir-locals-collect-variables, dir-locals-file, dir-locals-find-file)
9407         (dir-locals-read-from-file, hack-dir-local-variables): Revert changes.
9409         * lisp/files-x.el (modify-dir-local-variable): Revert changes.
9411         * lisp/help-fns.el (describe-variable): Revert changes.
9413         * doc/emacs/custom.texi (Directory Variables): Revert changes.
9415         * etc/NEWS: Revert changes.
9417 2016-01-30  Glenn Morris  <rgm@gnu.org>
9419         * lisp/net/browse-url.el (browse-url-default-browser):
9420         Lower priority of non-free Chrome.
9422 2016-01-30  Glenn Morris  <rgm@gnu.org>
9424         Improve the custom type of some user options.
9426         * lisp/desktop.el (desktop-minor-mode-table):
9427         * lisp/man.el (Man-frame-parameters):
9428         * lisp/midnight.el (midnight-delay):
9429         * lisp/speedbar.el (speedbar-select-frame-method):
9430         * lisp/tooltip.el (tooltip-frame-parameters):
9431         * lisp/tree-widget.el (tree-widget-space-width):
9432         * lisp/type-break.el (type-break-keystroke-threshold):
9433         * lisp/woman.el (woman-imenu-generic-expression):
9434         * lisp/cedet/ede.el (ede-debug-program-function):
9435         * lisp/cedet/ede/project-am.el (project-am-debug-target-function):
9436         * lisp/emulation/viper-keym.el (viper-toggle-key):
9437         * lisp/erc/erc-networks.el (erc-server-alist):
9438         * lisp/gnus/message.el (message-deletable-headers, message-signature):
9439         * lisp/mail/mailalias.el (mail-directory-stream):
9440         * lisp/play/tetris.el (tetris-x-colors):
9441         * lisp/progmodes/gud.el (gud-tooltip-modes): Improve custom type.
9443 2016-01-30  Simen Heggestøyl  <simenheg@gmail.com>
9445         Highlight CSS variables with variable name face
9447         * lisp/textmodes/css-mode.el (css-nmstart-re): Don't match variables.
9448         (css--font-lock-keywords): Highlight variables in
9449         `font-lock-variable-name-face'.
9451 2016-01-30  Glenn Morris  <rgm@gnu.org>
9453         * lisp/gnus/gnus-kill.el (gnus-winconf-kill-file): Not user-serviceable.
9455 2016-01-30  Glenn Morris  <rgm@gnu.org>
9457         Mark some user options that can get evalled as risky.
9459         * lisp/allout.el (allout-title):
9460         * lisp/emacs-lisp/edebug.el (edebug-global-break-condition):
9461         * lisp/gnus/message.el (message-mailer-swallows-blank-line):
9462         * lisp/progmodes/gud.el (gud-tooltip-display):
9463         * lisp/vc/ediff-mult.el (ediff-default-filtering-regexp):
9464         Mark as risky.
9466 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
9468         Disable DebPrint in sys_read on MS-Windows
9470         * src/w32.c (sys_read): Disable a debugging print that is normal
9471         when non-blocking reads are retried.
9473 2016-01-30  Martin Rudalics  <rudalics@gmx.at>
9475         ;Fix ChangeLog entry
9477 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
9479         Fix typos in Introduction to Emacs Lisp manual
9481         * doc/lispintro/emacs-lisp-intro.texi (Emacs Initialization)
9482         (kill-new function, Digression into C)
9483         (Complete forward-sentence, Divide and Conquer, Find a File)
9484         (lengths-list-many-files, Columns of a graph, defcustom)
9485         (recursive-count-words): Fix typos.  Reported by Daniel Bastos
9486         <dbastos@toledo.com>.
9488 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
9490         Bump version to 25.0.90
9492         * README:
9493         * configure.ac:
9494         * msdos/sed2v2.inp: Bump version to 25.0.90.
9496 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
9498         * etc/AUTHORS: Update the AUTHORS file
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         authors.el updates
9516         * admin/authors.el (authors-renamed-files-alist): Additions.
9518 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
9520         Make it possible to run make change-history on emacs-25
9522         * Makefile.in: Check if the current branch is emacs-25 instead of
9523           master.
9525 2016-01-30  lu4nx  <lx@shellcodes.org>
9527         Support Go language in 'etags'
9529         * lib-src/etags.c <Ruby_help>: Fix documentation of Ruby tags.
9530         <Go_help>: New help.
9531         <Go_suffixes>: New variable.
9532         (Go_functions): New function.
9533         <lang_names>: Add entry for Go.  (Bug#22370)
9535         * doc/emacs/maintaining.texi (Tag Syntax): Document Go support.
9536         * doc/man/etags.1: Mention Go support.
9538         * etc/NEWS: Mention Go support.
9540         * test/etags/go-src/test.go:
9541         * test/etags/go-src/test1.go: New test files.
9542         * test/etags/Makefile (GOSRC): New variable.
9543         (SRCS): Add $(GOSRC).
9544         * test/etags/ETAGS.good_1:
9545         * test/etags/ETAGS.good_2:
9546         * test/etags/ETAGS.good_3:
9547         * test/etags/ETAGS.good_4:
9548         * test/etags/ETAGS.good_5:
9549         * test/etags/ETAGS.good_6:
9550         * test/etags/CTAGS.good: Adapt to addition of Go tests.
9552 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
9554         Improve Ruby support in 'etags'
9556         * lib-src/etags.c (Ruby_functions): Tag constants.  Don't tag
9557         singleton classes.  Remove class qualifiers from tags generated
9558         for method and constant names.  (Bug#22241)
9560         * doc/emacs/maintaining.texi (Tag Syntax): Mention that constants
9561         are tagged by etags in Ruby.
9563         * etc/NEWS: Mention that constants are tagged by etags in Ruby.
9565         * test/etags/ruby-src/test1.ru: Add more tests.
9566         * test/etags/ETAGS.good_1:
9567         * test/etags/ETAGS.good_2:
9568         * test/etags/ETAGS.good_3:
9569         * test/etags/ETAGS.good_4:
9570         * test/etags/ETAGS.good_5:
9571         * test/etags/ETAGS.good_6:
9572         * test/etags/CTAGS.good: Adapt to the changes in etags and in Ruby
9573         tests.
9575 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
9577         Adjust etags test results to changes in copyright years
9579         * test/etags/CTAGS.good:
9580         * test/etags/ETAGS.good_1:
9581         * test/etags/ETAGS.good_2:
9582         * test/etags/ETAGS.good_3:
9583         * test/etags/ETAGS.good_4:
9584         * test/etags/ETAGS.good_5:
9585         * test/etags/ETAGS.good_6: Adjust to shift in characters and
9586         in line numbers.
9588 2016-01-30  Andreas Schwab  <schwab@linux-m68k.org>
9590         Revert "Re-enable checks in member, memql, delete to complain about non-lists"
9592         This reverts commit f524e8b7f12d9b5a8b92084e5385429fe7b085b9.
9594 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
9596         Make it possible to run make change-history on emacs-25
9598         * Makefile.in: Check if the current branch is emacs-25 instead of
9599           master.
9601 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
9603         Don't fiddle with DEFAULT
9605         * lisp/progmodes/project.el (project--completing-read-strict):
9606         Don't change DEFAULT, whether is has any matches in
9607         COLLECTION, or not.
9609 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
9611         Document xwidget commands and functions
9613         * doc/lispref/display.texi (Xwidgets): New section, describes some
9614         of the xwidget primitives.
9615         * doc/lispref/display.texi (Display): Update the chapter menu.
9616         * doc/emacs/misc.texi (Embedded WebKit Widgets): New section.
9617         * doc/emacs/emacs.texi (Top): Update the master menu to include
9618         the xwidget node.
9620 2016-01-30  Lars Ingebrigtsen  <larsi@gnus.org>
9622         Build fix for shr.el
9624         * shr.el (seq): Require.
9626 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
9628         Improve project-find-file yet again!
9630         * lisp/progmodes/project.el (project--completing-read-strict):
9631         New function.
9632         (project-find-file-in): Use it.
9633         (project-file-completion-table): Move the default
9634         implementation inside the cl-defgeneric form.
9635         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01720.html)
9637 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
9639         Don't pass DIR to 'hg status'
9641         * lisp/vc/vc-hg.el (vc-hg-dir-status-files):
9642         Don't pass DIR to 'hg status' (bug#22481).
9644 2016-01-30  Stephen Leake  <stephen_leake@stephe-leake.org>
9646         Fix typo in previous commits
9648         * lisp/progmodes/project.el (project-find-file-in):
9649         * lisp/vc/vc-mtn.el (vc-mtn-find-ignore-file): Fix typo in previous
9650         commit.
9652 2016-01-30  Stephen Leake  <stephen_leake@stephe-leake.org>
9654         Improve project-find-file
9656         * lisp/progmodes/project.el (project-file-completion-table): New.
9657         (project-find-file, project-or-external-find-file): Default to filename
9658         at point.
9659         (project-file-completion-table): New, split out from
9660         project--find-file-in.
9661         (project-find-file-in): Renamed from project--find-file-in, use
9662         project-file-completion-table.
9664         * lisp/progmodes/xref.el (ede-minor-mode): New declaration.
9665         (xref--find-ignores-arguments): Add doc string.
9667 2016-01-30  Stephen Leake  <stephen_leake@stephe-leake.org>
9669         Implement vc-mtn-find-ignore-file, fix some doc strings
9671         * lisp/cedet/cedet-global.el (cedet-gnu-global-root): Improve doc string.
9673         * lisp/cedet/ede/locate.el (initialize-instance): Improve doc string.
9675         * lisp/vc/vc-git.el (vc-git-find-ignore-file): Fix doc string.
9677         * lisp/vc/vc-mtn.el (vc-mtn-find-ignore-file): New function.
9679 2016-01-29  Vincent Belaïche  <vincentb1@users.sourceforge.net>
9681         Correct a whole bunch of bugs coming with renamed cell relocation.
9683         This is the same change as commit on master branch. See
9684         http://git.savannah.gnu.org/cgit/emacs.git/commit/?id=badcd38aa86ed7973f2be2743c405710973a0bdd
9686         * lisp/ses.el (ses-localvars): rename variable
9687         `ses--renamed-cell-symb-list' into `ses--in-killing-named-cell-list'
9688         and adjust the comment about it.
9689         (ses-plist-delq): new defun.
9690         (ses--ses-buffer-list): new defvar.
9691         (ses--unbind-cell-name): new defun.
9692         (ses-relocate-symbol): Do not relocate symbol when it is a named cell.
9693         (ses-relocate-formula): Undo change of
9694         2011-12-27T19:30:39Z!vincentb1@users.sourceforge.net that was
9695         preventing relocation for named cell --- now doing this is delegated
9696         to function `ses-relocate-symbol'.
9697         (ses-relocate-range): In docstring, undo change of
9698         2016-01-03T07:31:52Z!johnw@newartisans.com, `ses-range' must remain
9699         lower case as it is not a variable.
9700         (ses-relocate-all): Cell name relocation : 1) check that cell is a
9701         renamed cell by testing `ses-cell' property to :ses-named, rather than
9702         comparing name to corresponding standard name. Set rowcol of renamed
9703         cell into the hashmap --- `ses-cell' property must not be used for
9704         that as the same name can be used for different locations in different
9705         SES sheets ; 2) use `local-variable-if-set-p' rather than `boundp' and
9706         `local-variable-p' to check if cell name is already in use in this
9707         sheet or needs initialization.
9708         (ses-relocate-all): Cell value relocation : 1) like for name
9709         relocation use the `ses-cell' property rather than comparing actual
9710         name to corresponding standard name. 2) Correct bug introduced in
9711         2011-12-27T19:30:39Z!vincentb1@users.sourceforge.net, as the test was
9712         made the other way round than the intention --- ie value relocation
9713         was disabled for standard cell, not for renamed cell as was the
9714         intention.
9715         (ses-relocate-all): Add loop for unbinding deleted renamed cells
9716         names.
9717         (ses-killbuffer-hook): new defun.
9718         (ses-mode): Add the ses--ses-buffer-list maintenance mechanism ---
9719         kill buffer hook, plus pushing current buffer if new in list.
9720         (ses-delete-row, ses-delete-column): Collect deleted renamed cells
9721         into `ses--in-killing-named-cell-list'.
9722         (ses-rename-cell): Remove update of variable
9723         `ses--renamed-cell-symb-list', this variable is renamed to
9724         `ses--in-killing-named-cell-list', and its setting is done in
9725         functions `ses-delete-row' and , `ses-delete-column' now.
9726         (ses-rename-cell): Make cell new name a buffer local variable.
9727         (ses-rename-cell): Change correction of
9728         2015-12-30T23:10:37Z!vincentb1@users.sourceforge.net concerning
9729         computation of the range over which `cursor-intangible' property was
9730         to be updated. This correction was ok for non spilling cells, but not
9731         for cells spilling over following blank cells. Simply use
9732         `next-single-property-change' rather than computing the end column
9733         from column widths.
9735 2016-01-29  Andreas Schwab  <schwab@linux-m68k.org>
9737         Re-enable checks in member, memql, delete to complain about non-lists
9739         * src/fns.c (Fmember, Fmemql, Fdelete): Revert 2007-10-16 change.
9741 2016-01-29  Martin Rudalics  <rudalics@gmx.at>
9743         Minor doc(-string) tweaks
9745         * lisp/window.el (window-in-direction): Fix doc-string typo.
9746         * doc/lispref/frames.texi (Frame Font): Mention canonical
9747         character width/height.
9748         * doc/lispref/windows.texi (Windows and Frames): Clarify
9749         handling of minibuffer window for `window-in-direction'.
9750         (Window Sizes): Minor tweaks in descriptions of
9751         `window-max-chars-per-line', `window-min-width' and
9752         `window-min-size'.
9753         (Deleting Windows): Minor tweak in `delete-window' description.
9754         (Selecting Windows): Clarify window use time description.
9755         (Cyclic Window Ordering): Minor tweak.
9756         (Switching Buffers): Clarify description of
9757         `switch-to-buffer-in-dedicated-window'.
9759 2016-01-29  Eli Zaretskii  <eliz@gnu.org>
9761         Minor improvements to 'pcase' documentation
9763         * doc/lispref/control.texi (Pattern matching case statement):
9764         Improve the documentation of 'pcase' per comments.  See two
9765         discussion threads on emacs-devel@gnu.org for the details:
9766         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01335.html
9767         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01336.html.
9769 2016-01-29  Glenn Morris  <rgm@gnu.org>
9771         Don't use eval to quieten prolog.el compilation.
9773         * lisp/progmodes/prolog.el (pltrace-on, pltrace-off): Declare.
9774         (prolog-enable-sicstus-sd, prolog-disable-sicstus-sd): Don't use eval.
9776 2016-01-29  Glenn Morris  <rgm@gnu.org>
9778         Mark some risky prolog variables.
9780         * lisp/progmodes/prolog.el (prolog-system-version)
9781         (prolog-keywords, prolog-types, prolog-mode-specificators)
9782         (prolog-determinism-specificators, prolog-directives)
9783         (prolog-program-name, prolog-program-switches)
9784         (prolog-consult-string, prolog-compile-string)
9785         (prolog-eof-string, prolog-prompt-regexp, prolog-help-function):
9786         Mark anything processed by prolog-find-value-by-system as risky.
9788 2016-01-28  Glenn Morris  <rgm@gnu.org>
9790         * lisp/custom.el (defcustom): Doc fix.
9792         * doc/lispref/customize.texi (Variable Definitions):
9793         Defcustom should always have a type.
9795 2016-01-28  Glenn Morris  <rgm@gnu.org>
9797         * lisp/cedet/semantic/db-file.el (semanticdb-persistent-path):
9798         Fix :type.
9800         * lisp/emacs-lisp/package.el (package-load-list): Improve :type.
9802 2016-01-28  Michael Albinus  <michael.albinus@gmx.de>
9804         Fix Bug#22452
9806         * lisp/net/tramp-adb.el (tramp-adb-maybe-open-connection):
9807         * lisp/net/tramp-gvfs.el (tramp-gvfs-maybe-open-connection):
9808         * lisp/net/tramp-sh.el (tramp-maybe-open-connection):
9809         * lisp/net/tramp-smb.el (tramp-smb-maybe-open-connection):
9810         Mark it as connected.
9812         * lisp/net/tramp.el (tramp-handle-file-remote-p): Check also, if
9813         connection property "connected" is set.  (Bug#22452)
9815 2016-01-27  Glenn Morris  <rgm@gnu.org>
9817         * lisp/xwidget.el (xwidget-query-on-exit-flag): Declare.
9819         * lisp/xwidget.el (xwidget-webkit-browse-url): Give explicit error
9820         if not compiled with xwidgets.
9822 2016-01-27  Paul Eggert  <eggert@cs.ucla.edu>
9824         C-u C-x = example doc fix
9826         * doc/emacs/mule.texi (International Chars):
9827         Adjust example to match current behavior of C-u C-x =.
9829 2016-01-27  Paul Eggert  <eggert@cs.ucla.edu>
9831         malloc.h hygiene
9833         This attempts to future-proof Emacs a bit against possible glibc
9834         changes, by having Emacs use <malloc.h> declarations rather than
9835         coding them up by hand.  Problem noted by Florian Weimer in:
9836         https://sourceware.org/ml/libc-alpha/2016-01/msg00777.html
9837         Implement this mainly by moving malloc.h-related functions from
9838         emacs.c (which does not include <malloc.h>) to alloc.c (which does).
9839         * src/alloc.c (my_heap_start) [DOUG_LEA_MALLOC || GNU_LINUX]:
9840         New function.
9841         The remaining changes to this file apply only if DOUG_LEA_MALLOC.
9842         (alloc_unexec_pre, alloc_unexec_post): New functions.
9843         (malloc_initialize_hook): Use my_heap_start and alloc_unexec_post.
9844         (__MALLOC_HOOK_VOLATILE): New macro, if not already defined.
9845         (__malloc_initialize_hook): Use it.
9846         (malloc_state_ptr, malloc_initialize_hook, __malloc_initialize_hook):
9847         Move here from ...
9848         * src/emacs.c: ... here.
9849         (malloc_get_state, malloc_set_state): Remove extern decls.
9850         (my_heap_start) [DOUG_LEA_MALLOC || GNU_LINUX]: Remove static var.
9851         All uses changed to similarly-named new function.
9852         (Fdump_emacs): Use new functions alloc_unexec_pre, alloc_unexec_post.
9853         * src/lisp.h (my_heap_start, alloc_unexec_pre, alloc_unexec_post):
9854         New decls.
9856 2016-01-26  Eli Zaretskii  <eliz@gnu.org>
9858         * doc/emacs/mark.texi (Using Region): Clarify wording.  (Bug#22467)
9860 2016-01-26  Paul Eggert  <eggert@cs.ucla.edu>
9862         Remove never-set var handle_user_signal_hook
9864         * src/keyboard.c, src/keyboard.h (handle_user_signal_hook):
9865         Remove never-set var.  All uses removed.
9867 2016-01-26  K. Handa  <handa@gnu.org>
9869         Backport:fix previous change of src/ftfont.c (ftfont_shape_by_flt)
9871         * src/ftfont.c (ftfont_shape_by_flt): Fix previous change.  Access the
9872         second glyph only when there are enough glyphs.
9874         (cherry picked from commit 9835757013569673854b692ccbb58bfb3c3ed1f7)
9876 2016-01-26  K. Handa  <handa@gnu.org>
9878         support rendering of wider range of combinging characters by ftfont backend
9880         * lisp/language/hebrew.el (hebrew-shape-gstring): If the font backend
9881         supports rendering of combining characters, call
9882         font-shape-gstring.
9884         * src/font.c (Ffont_get): Handle `combining-capability' property.
9885         (syms_of_font): New symbol ":combining-capability'.
9887         * src/font.h (struct font_driver): New member combining_capability.
9889         * src/ftfont.c: Include "category.h".
9890         (ftfont_driver): Initialize combining_capability to
9891         ftfont_combining_capability.
9892         (ftfont_shape_by_flt): If OTF is null, try to find a suitable
9893         FLT in advance.
9894         (ftfont_combining_capability): New function.
9896         (cherry picked from commit 536f48e9a2251b9e654ea974bd90ff2f40218753)
9898 2016-01-26  Anders Lindgren  <andlind@gmail.com>
9900         Fixed NextStep fullscreen issue (bug#22468)
9902         When in fullscreen mode, `[screen visibleFrame]' sometimes
9903         includes, sometimes excludes the menu bar. This could cause
9904         a frame to be placed too low when in fullscreen mode.
9906         * src/nsterm.m (ns_menu_bar_should_be_hidden): Trace.
9907         (constrain_frame_rect): New parameter, isFullscreen, when true don't
9908         query the height of the menu bar.
9909         (ns_constrain_all_frames): Pass `false' (isFullscreen) to
9910         `constrain_frame_rect'.
9911         ([EmacsView initFrameFromEmacs:]): Trace.
9912         ([EmacsView isFullscreen]): Trace.
9913         ([EmacsWindow constrainFrameRect:toScreen:]): Pass fullscreen
9914         state to `constrain_frame_rect'.
9916 2016-01-26  Artur Malabarba  <bruce.connor.am@gmail.com>
9918         * lisp/files.el: Use a fixed file name for the second dir-locals file
9920         (dir-locals-file): Revert to its original fixed value.
9921         (dir-locals-file-2): New const.
9922         (dir-locals--all-files): Don't use `file-name-all-completions'.
9923         Instead, just check for the 2 dir-locals files and return a list
9924         of the ones that exit (if any).
9926         * etc/NEWS: Document the change.
9928         * doc/emacs/custom.texi (Directory Variables): Document the change.
9930         * doc/lispref/variables.texi (Directory Local Variables): Update
9931         accordingly.
9933 2016-01-26  Artur Malabarba  <bruce.connor.am@gmail.com>
9935         * lisp/files-x.el (modify-dir-local-variable): Small rewrite
9937         Change a variable name to be more meaningful, and reorder some of
9938         the code with no change in behaviour.
9940 2016-01-26  Artur Malabarba  <bruce.connor.am@gmail.com>
9942         * lisp/files.el (dir-locals-find-file): Refactor return values
9944         Returning a cache remains unchanged, but the case of returning a
9945         file (or pattern) is now changed to return the contaning
9946         directory.
9948         (dir-locals-read-from-file): Rename to `dir-locals-read-from-dir'
9949         and make obsolete.
9950         (dir-locals-read-from-dir): Simplify accordingly.
9951         (hack-dir-local-variables): Simplify accordingly and rename a
9952         variable.
9954 2016-01-26  Glenn Morris  <rgm@gnu.org>
9956         * lisp/textmodes/flyspell.el (flyspell--prev-meta-tab-binding):
9957         Declare.
9959         * configure.ac (USE_CAIRO): Rename to more standard HAVE_CAIRO.
9961         * configure.ac (--with-cairo): Say it's experimental.
9963         * lisp/xwidget.el (xwidget-webkit-scroll-behavior):
9964         Rename using American spelling.  Update all uses.
9966 2016-01-26  Glenn Morris  <rgm@gnu.org>
9968         Yet more xwidget doc fixes.
9970         * lisp/xwidget.el (xwidget-webkit-scroll-behaviour)
9971         (xwidget-insert, xwidget-webkit-browse-url)
9972         (xwidget-webkit-scroll-up, xwidget-webkit-scroll-down)
9973         (xwidget-webkit-scroll-forward, xwidget-webkit-scroll-backward)
9974         (xwidget-webkit-insert-string, xwidget-webkit-show-named-element)
9975         (xwidget-webkit-show-id-element)
9976         (xwidget-webkit-show-id-or-named-element)
9977         (xwidget-webkit-adjust-size, xwidget-webkit-current-url)
9978         (xwidget-webkit-execute-script-rv)
9979         (xwidget-webkit-copy-selection-as-kill, xwidget-get)
9980         (xwidget-put):  Doc fixes.
9981         (xwidget-webkit-insert-string, xwidget-webkit-show-named-element)
9982         (xwidget-webkit-show-id-element)
9983         (xwidget-webkit-show-id-or-named-element): Prompt fixes.
9985 2016-01-25  Ted Zlatanov  <tzz@lifelogs.com>
9987         * lisp/gnus/gnus-art.el (gnus-blocked-images):
9988         Add explicit nil choice and tags.
9990 2016-01-25  Paul Eggert  <eggert@cs.ucla.edu>
9992         Spelling fixes
9994 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
9996         (font-lock-ensure-function): Fix bug#22399
9998         * lisp/font-lock.el (font-lock-ensure-function): Fix handling when
9999         font-lock-mode is not enabled (bug#22399).
10001 2016-01-25  Alan Mackenzie  <acm@muc.de>
10003         Expunge "allow" + infinitive from source and doc, part 2.
10005         Do the same for "permit", "enable", "prevent", and (where appropriate)
10006         "require".
10008         doc/misc/reftex.texi:
10009         doc/misc/url.texi:
10010         lib/get-permissions.c:
10011         lib/strftime.c:
10012         lisp/org/org-element.el:
10013         lisp/org/org-mobile.el:
10014         lisp/textmodes/reftex-vars.el:
10015         src/bidi.c:
10016         src/emacs.c:
10017         src/xdisp.c:
10018         test/etags/c-src/emacs/src/lisp.h:
10020         Expunge the likes of "This allows to do something" from the above files.
10022 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
10024         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-mode): Redundant line
10026         `special-mode' is already read-only.
10028 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
10030         * lisp/emacs-lisp/ert.el (ert--results-move): Change error to user-error
10032 2016-01-25  Paul Eggert  <eggert@cs.ucla.edu>
10034         Port "$@" to OpenIndiana ksh93
10036         In http://lists.gnu.org/archive/html/bug-autoconf/2015-12/msg00000.html
10037         Pavel Raiskup reports that ${1+"$@"} runs afoul of a bug in /bin/sh
10038         (derived from ksh 93t+ 2010-03-05).  ${1+"$@"} works around an ancient
10039         bug in long-dead shells, so remove the workaround.
10040         * admin/check-doc-strings, configure.ac, lib-src/rcs2log:
10041         Use plain "$@" rather than ${1+"$@"}.
10043 2016-01-25  Paul Eggert  <eggert@cs.ucla.edu>
10045         * src/xwidget.c (Fxwidget_set_adjustment): Fix doc string quoting typo.
10047 2016-01-25  Paul Eggert  <eggert@cs.ucla.edu>
10049         Improve wording for SMB support
10051         * doc/misc/tramp.texi (External methods): Improve and modernize
10052         wording for discussion of smbclient.  There is no longer any
10053         need to mention the laundry list of old MS Windows implementations
10054         of SMB and CIFS, nor to mention CIFS.  Also, give a URL for Samba.
10056 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
10058         Merge from gnulib
10060         This incorporates:
10061         2016-01-24 openat_proc_name: fix last '/' overwritten on OS/2 kLIBC
10062         2016-01-24 closedir, dirfd, opendir: port to OpenSolaris 5.10
10063         2016-01-15 detect utimes() correctly on OS/2 kLIBC
10064         2016-01-15 openat_proc_name: port to OS/2 kLIBC
10065         2016-01-14 stdint: check _INTPTR_T_DECLARED for intptr_t etc.
10066         2016-01-14 opendir, closedir, dirfd, fdopendir: port to OS/2 kLIBC
10067         2016-01-14 dup, dup2, fcntl: support a directory fd on OS/2 kLIBC
10068         2016-01-14 binary-io: don't put fd in binary mode if a console on EMX
10069         2016-01-14 sig2str: list all signals on FreeBSD >= 7
10070         2016-01-13 acl-permissions: port to USE_ACL==0 platforms
10071         2016-01-12 mktime: rename macro to avoid glibc clash
10072         2016-01-12 Port "$@" to OpenIndiana ksh93
10073         2016-01-12 Port Universal Time settings to strict POSIX
10074         * build-aux/gitlog-to-changelog, build-aux/update-copyright:
10075         * doc/misc/texinfo.tex, lib/acl-internal.c, lib/acl-internal.h:
10076         * lib/binary-io.h, lib/dirent.in.h, lib/dirfd.c, lib/dup2.c:
10077         * lib/fcntl.c, lib/fdopendir.c, lib/mktime.c, lib/openat-proc.c:
10078         * lib/sig2str.h, lib/stdint.in.h, m4/dirfd.m4, m4/dup2.m4:
10079         * m4/fcntl.m4, m4/utimes.m4:
10080         Copy from gnulib.
10081         * m4/gnulib-comp.m4: Regenerate.
10083 2016-01-24  Alan Mackenzie  <acm@muc.de>
10085         Expunge "allow" + infinitive without direct object from source and doc.
10087         Do the same for "permit", "enable", and "prevent".
10089         * doc/emacs/mule.texi:
10090         * doc/lispref/control.texi:
10091         * doc/lispref/display.texi:
10092         * doc/lispref/frames.texi:
10093         * doc/lispref/functions.texi:
10094         * doc/lispref/nonascii.texi:
10095         * doc/lispref/streams.texi:
10096         * doc/lispref/windows.texi:
10097         * doc/misc/dbus.texi:
10098         * doc/misc/eww.texi:
10099         * doc/misc/flymake.texi:
10100         * doc/misc/octave-mode.texi:
10101         * doc/misc/org.texi:
10102         * doc/misc/reftex.texi:
10103         * doc/misc/tramp.texi:
10104         * doc/misc/wisent.texi:
10105         * etc/NEWS:
10106         * lisp/autorevert.el:
10107         * lisp/cedet/mode-local.el:
10108         * lisp/cedet/semantic/senator.el:
10109         * lisp/cedet/semantic/wisent.el:
10110         * lisp/dos-fns.el:
10111         * lisp/frameset.el:
10112         * lisp/gnus/gnus-agent.el:
10113         * lisp/gnus/mm-util.el:
10114         * lisp/international/characters.el:
10115         * lisp/ldefs-boot.el:
10116         * lisp/mail/mailclient.el:
10117         * lisp/man.el:
10118         * lisp/mh-e/mh-search.el:
10119         * lisp/net/tramp-cmds.el:
10120         * lisp/net/tramp-gvfs.el:
10121         * lisp/org/org-crypt.el:
10122         * lisp/org/org-element.el:
10123         * lisp/org/org-feed.el:
10124         * lisp/org/org.el:
10125         * lisp/org/ox-ascii.el:
10126         * lisp/org/ox-icalendar.el:
10127         * lisp/org/ox-publish.el:
10128         * lisp/org/ox.el:
10129         * lisp/play/gamegrid.el:
10130         * lisp/play/gomoku.el:
10131         * lisp/progmodes/antlr-mode.el:
10132         * lisp/progmodes/python.el:
10133         * lisp/progmodes/vhdl-mode.el:
10134         * lisp/strokes.el:
10135         * lisp/textmodes/ispell.el:
10136         * lisp/tree-widget.el:
10137         * lisp/vc/pcvs.el:
10138         * lisp/window.el:
10139         * src/lisp.h:
10140         * src/w32.c:
10141         * src/w32heap.c:
10142         * src/w32term.c:
10143         * src/window.c:
10144         * src/xfaces.c:
10146         Replace solecisms like "This allow to do something" with a correct
10147         alternative, such as "This allow you to do something", "This allows
10148         something to be done" or "This allows the doing of something".
10150 2016-01-24  Kelvin White  <kwhite@gnu.org>
10152         Add NEWS entry for asynchronous reconnect in ERC
10154 2016-01-24  Kelvin White  <kwhite@gnu.org>
10156         browse-url.el: Add 'google-chrome' to supported browsers.
10158 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
10160         Port Tramp manual to latest Texinfo
10162         Otherwise, 'make pdf' did not work (Bug#22416).
10163         * doc/misc/tramp.texi (xxx, yyy): Remove macros.
10164         (trampfn): Specialize to the case where METHOD is nonempty.
10165         The 2nd argument is now user@host, not 2nd user and 3rd host args.
10166         All uses changed.
10167         (trampf): New macro.
10169 2016-01-24  Lars Ingebrigtsen  <larsi@gnus.org>
10171         * eww.el (eww-render): Protect against empty content-types.
10173 2016-01-24  Nicolas Petton  <nicolas@petton.fr>
10175         authors.el updates
10177         * admin/authors.el (authors-ignored-files, authors-renamed-files-alist):
10178           Additions.
10180 2016-01-24  Dmitry Gutov  <dgutov@yandex.ru>
10182         Rename xref-query-replace to xref-query-replace-in-results
10184         * lisp/progmodes/xref.el(xref-query-replace):
10185         Rename to xref-query-replace-in-results.
10186         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01240.html)
10188         * lisp/progmodes/xref.el (xref--xref-buffer-mode-map):
10189         * lisp/dired-aux.el (dired-do-find-regexp-and-replace):
10190         * doc/emacs/dired.texi (Operating on Files):
10191         * doc/emacs/maintaining.texi (Xref Commands)
10192         (Identifier Search, Identifier Search): Update accordingly.
10194 2016-01-24  Dmitry Gutov  <dgutov@yandex.ru>
10196         Update cl-defgeneric and cl-defmethod docstrings
10198         * lisp/emacs-lisp/cl-generic.el: Remove outdated TODO item.
10199         (cl-defgeneric): Rename BODY to DEFAULT-BODY.
10200         (cl-defmethod): Mention that multiple dispatch arguments are
10201         allowed.  Document supported types.  (Bug#22336)
10203 2016-01-23  Dmitry Gutov  <dgutov@yandex.ru>
10205         Comment out next-error-function integration in xref
10207         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
10208         Comment out next-error-function integration
10209         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01286.html).
10211 2016-01-23  John Wiegley  <johnw@newartisans.com>
10213         Correct a use of "which" in intro.texi
10215 2016-01-23  Alan Mackenzie  <acm@muc.de>
10217         Distinguish the two meanings of Java's keyword "default".  Fixes bug #22358.
10219         * lisp/progmodes/cc-engine.el (c-guess-basic-syntax CASE 14): Check the
10220         context of case labels (including "default") more rigorously.
10221         (c-guess-basic-syntax CASE 15): Consequential amendment.
10223         * lisp/progmodes/cc-langs.el (c-modifier-kwds): Add "default" to Java's value.
10225 2016-01-23  Oscar Fuentes  <ofv@wanadoo.es>
10227         Don't operate on menu bar of nonexistent frame
10229         * src/xfns.c (Fx_hide_tip) [USE_LUCID]: Check that the current frame
10230         is valid before redisplaying its menu. Fixes bug#22438.
10232 2016-01-23  Anders Lindgren  <andlind@gmail.com>
10234         Unbreak the GNUstep build.
10236         * src/nsterm.m ([EmacsBell init]): In GNUstep, don't use the
10237         predefined "caution" image. Add trace.
10238         (x_set_window_size): Remove unused variables `cols' and `rows'.
10239         (ns_draw_fringe_bitmap): Exclude assignment of `fromRect' when
10240         GNUstep is used.
10241         ([EmacsView updateFrameSize:]): Remove unused variable `win'.
10242         ([EmacsWindow zoom:]): Remove unused variable `f'.
10244 2016-01-23  Eli Zaretskii  <eliz@gnu.org>
10245             John Wiegley  <johnw@gnu.org>
10246             Michael Heerdegen  <michael_heerdegen@web.de>
10248         Improve documentation of 'pcase'
10250         * doc/lispref/control.texi (Pattern matching case statement):
10251         Reorganize, expand, and improve wording.
10253         * etc/NEWS: Mention that 'pcase' changes are documented.
10255 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
10257         * etc/NEWS: Say that Cairo is experimental.
10259 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
10261         Report error for PNG under Cairo
10263         * src/image.c (lookup_rgb_color): Signal a file error instead
10264         of dumping core when mishandling an image.
10266 2016-01-23  Arash Esbati  <esbati@gmx.de>
10268         Delete a spurious backquote (tiny change)
10270         * lisp/textmodes/reftex-ref.el (reftex-label): Delete a
10271         spurious backquote which raises an error with emacs 25.
10273 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
10275         Pacify --enable-gcc-warnings --with-cairo
10277         Problem reported by Alexander Kuleshov in:
10278         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01289.html
10279         * src/gtkutil.c (xg_get_page_setup):
10280         Use switch rather than if-then-else.
10281         * src/image.c (COLOR_TABLE_SUPPORT):
10282         Define directly rather than via #define and optional later #undef.
10283         (lookup_rgb_color) [USE_CAIRO && ENABLE_CHECKING]:
10284         Crash when the pixel is undefined, as there is a genuine bug
10285         here (Bug#22442).
10286         * src/image.c (tiff_load, gif_load, svg_load_image)
10287         (x_kill_gs_process) [USE_CAIRO]:
10288         * src/xterm.c (x_draw_fringe_bitmap) [USE_CAIRO]:
10289         Omit unused locals, or move them to where they’re needed.
10290         (x_clear_area1): Now ATTRIBUTE_UNUSED.
10292 2016-01-23  Eli Zaretskii  <eliz@gnu.org>
10294         Update documentation for Dired search and replace
10296         * doc/emacs/dired.texi (Operating on Files): Update descriptions
10297         of 'A' and 'Q' now bound to 'dired-do-find-regexp' and
10298         'dired-do-find-regexp-and-replace'.
10300         * etc/NEWS: Mention xref-related changes in Dired.
10302 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
10304         Port recent xdisp.c fix to picky C compilers
10306         * src/xdisp.c (dump_glyph): Redo the call to fprintf to avoid
10307         putting #if inside the arguments to a standard function, which
10308         the C standard says has undefined behavior.
10310 2016-01-22  Alan Mackenzie  <acm@muc.de>
10312         Prevent spurious recognition of K&R argument declarations.  Fixes bug #2203
10314         * lisp/progmodes/cc-engine.el (c-forward-declarator): New function.
10315         (c-in-knr-argdecl): Before recognizing a K&R argument declaration, check it is
10316         contained in the preceding arg list.
10318         * lisp/progmodes/cc-fonts.el (c-font-lock-declarators): Use the new function
10319         `c-forward-declarator' in place of inline code.
10321 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
10323         Fix the build with --enable-checking=glyphs
10325         * src/xdisp.c (dump_glyph): Don't refer to glyph->u.xwidget in a
10326         build without xwidget support.
10328 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
10330         Document cl-generic.el
10332         * doc/lispref/functions.texi (Generic Functions): New section.
10333         (Bug#22336)
10334         (Functions): Update the chapter menu.
10335         * doc/lispref/elisp.texi: Update the master menu.
10337 2016-01-22  Paul Eggert  <eggert@cs.ucla.edu>
10339         xwidgets style cleanup
10341         Adjust the newly-added Xwidgets code so that it uses a more-typical
10342         Emacs style.  This should not affect behavior, except that in
10343         a few places it adds runtime checks that Lisp arguments are of
10344         the proper type, and in one place it uses more-precise arithmetic.
10345         * src/buffer.c, src/dispnew.c, src/emacs.c, src/emacsgtkfixed.c:
10346         * src/emacs.c, src/print.c, src/window.c, src/xdisp.c, src/xterm.c:
10347         Include xwidget.h unconditionally.
10348         * src/buffer.c (Fkill_buffer):
10349         * src/dispnew.c (update_window):
10350         * src/emacs.c (main):
10351         * src/print.c (print_object):
10352         * src/window.c (Fdelete_window_internal):
10353         * src/xdisp.c (handle_single_display_spec, push_it, pop_it)
10354         (get_next_element, set_iterator_to_next, next_element_from_xwidget)
10355         (dump_glyph, calc_pixel_width_or_height, BUILD_GLYPH_STRINGS_XW)
10356         (BUILD_GLYPH_STRINGS, x_produce_glyphs, get_window_cursor_type):
10357         * src/xterm.c (x_draw_glyph_string, x_draw_bar_cursor):
10358         Call xwidget functions and macros without worrying about
10359         HAVE_XWIDGETS when the code is a no-op on non-xwidget
10360         platforms.
10361         * src/dispextern.h (XWIDGET_GLYPH, struct glyph_string.xwidget)
10362         (IT_XWIDGET, GET_FROM_XWIDGET, struct it.u.xwidget)
10363         (struct it.xwidget):
10364         * src/lisp.h (PVEC_XWIDGET, PVEC_XWIDGET_VIEW):
10365         Always define.
10366         * src/emacsgtkfixed.h: Omit unnecessary comment.
10367         * src/keyboard.c: Fix spacing.
10368         * src/xdisp.c (BUILD_XWIDGET_GLYPH_STRING, produce_xwidget_glyph):
10369         Define to be a no-op if not HAVE_XWIDGETS.
10370         * src/xwidget.c: Include xwidget.h first (after config.h)
10371         to make sure that it can stand by itself.
10372         (Fmake_xwidget, Fxwidget_webkit_execute_script):
10373         Fix typo in doc string.
10374         (Fmake_xwidget): Check type of args.
10375         (Fmake_xwidget, offscreen_damage_event)
10376         (webkit_document_load_finished_cb, webkit_download_cb)
10377         (webkit_new_window_policy_decision_requested_cb)
10378         (webkit_navigation_policy_decision_requested_cb)
10379         (xwidget_osr_draw_cb, xwidget_osr_event_forward)
10380         (xwidget_osr_event_set_embedder, xwidget_init_view):
10381         Omit unnecessary casts.
10382         * src/xwidget.c (Fmake_xwidget, xwidget_hidden)
10383         (xwidget_show_view, xwidget_hide_view)
10384         (x_draw_xwidget_glyph_string, xwidget_start_redisplay, xwidget_touch)
10385         (xwidget_touched):
10386         * src/xwidget.h (struct xwidget.kill_without_query)
10387         (struct xwidget_view.redisplayed, struct xwidget_view.hidden):
10388         Use bool for boolean.
10389         * src/xwidget.c (store_xwidget_event_string, Fxwidget_size_request):
10390         Simplify by using list functions.
10391         (WEBKIT_FN_INIT): Omit unnecessary test for nil.
10392         (Fxwidget_resize): Check type of integer args
10393         before doing any work.  Check that they are nonnegative.
10394         (Fxwidget_set_adjustment): Check type of integer arg.
10395         Avoid redundant call to gtk_scrolled_window_get_vadjustment.
10396         Simplify.  Use double, not float.
10397         (Fxwidget_info, Fxwidget_view_info): Simplify by using CALLN.
10398         (valid_xwidget_spec_p): Simplify.
10399         (xwidget_spec_value): Omit unused arg FOUND.  All callers changed.
10400         * src/xwidget.h: Include lisp.h first, so that includers do
10401         not need to worry about doing that before including this file.
10402         Make this .h file safe to include even on non-HAVE_XWIDGETS
10403         configurations, to simplify the includers.
10404         (x_draw_xwidget_glyph_string, syms_of_xwidget, valid_xwidget_spec_p)
10405         (xwidget_end_redisplay, lookup_xwidget)
10406         (xwidget_view_delete_all_in_window, kill_buffer_xwidgets):
10407         Now a no-op if !HAVE_XWIDGETS, to simplify callers.
10408         (struct glyph_matrix, struct glyph_string, struct xwidget)
10409         (struct xwidget_view, struct window):
10410         New forward or incomplete decls, so that includers need not
10411         assume the corresponding .h files are already included, or that
10412         HAVE_XWIDGETS is defined.
10413         (struct xwidget_type, xwidget_from_id): Remove; unused.
10415 2016-01-22  Michael Albinus  <michael.albinus@gmx.de>
10417         Backport kqueue integration from master
10419         * configure.ac (--with-file-notification): Add kqueue.
10420         (top): Remove special test for "${HAVE_NS}" and
10421         ${with_file_notification}, this is handled inside gfilenotify
10422         tests.  Add kqueue tests.  Use NOTIFY_CFLAGS and NOTIFY_LIBS
10423         instead of library specific variables.  Add error message for
10424         gfile on Nextstep.
10426         * doc/lispref/os.texi (File Notifications): Add kqueue as backend.
10427         Fix some glitches in the example.
10429         * etc/NEWS: Mention kqueue.
10431         * lisp/filenotify.el (file-notify--library)
10432         (file-notify-descriptors, file-notify-callback)
10433         (file-notify-add-watch, file-notify-rm-watch)
10434         (file-notify-valid-p): Add kqueue support.
10435         (file-notify--rm-descriptor): Remove WHAT arg.
10437         * src/Makefile.in: Use NOTIFY_CFLAGS and NOTIFY_LIBS.
10439         * src/emacs.c (main): Call globals_of_kqueue and syms_of_kqueue.
10441         * src/inotify.c (inotifyevent_to_event): Extract file name from
10442         watch_object if the event doesn't provide it.
10443         (Finotify_add_watch): Add file name to watch_object.
10445         * src/keyboard.c (make_lispy_event): Check also for HAVE_KQUEUE.
10447         * src/kqueue.c: New file.
10449         * src/lisp.h: Declare extern globals_of_kqueue and syms_of_kqueue.
10451         * test/automated/file-notify-tests.el
10452         (file-notify--test-expected-events): Remove.
10453         (file-notify--test-cleanup): Do not set that variable.
10454         (file-notify--test-timeout) Use different timeouts for
10455         different libraries.
10456         (file-notify--test-library): New defun.
10457         (file-notify--test-event-test): Make stronger checks.
10458         (file-notify--test-with-events): EVENTS can also be a list of
10459         lists.  Flush outstanding events before running the body.
10460         Make timeout heuristically depend on the number of events.
10461         (file-notify-test01-add-watch, file-notify-test02-events)
10462         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
10463         Rewrite in order to call file monitors but directory monitors.
10464         (file-notify-test02-events, file-notify-test04-file-validity): Do
10465         not skip cygwin tests.  Add additional test for file creation.
10466         Adapt expected result for different backends.
10467         (file-notify-test03-autorevert): Some of the tests don't work for
10468         w32notify.
10469         (file-notify-test06-many-events): New test.
10471 2016-01-22  John Wiegley  <johnw@newartisans.com>
10473         Further corrections to the pcase docstring
10475 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
10477         * doc/emacs/anti.texi (Antinews): Rewrite for Emacs 25.
10479 2016-01-22  Stephen Leake  <stephen_leake@stephe-leake.org>
10481         In xref-collect-references, force backends to respect the 'dir' arg
10483         * lisp/progmodes/xref.el (xref-collect-references): Force symref backends
10484         to use `default-directory'.
10486 2016-01-22  John Wiegley  <johnw@newartisans.com>
10488         Minor correction to pcase docstring
10490 2016-01-22  John Wiegley  <johnw@newartisans.com>
10492         Write a new docstring for the pcase macro
10494         * lisp/emacs-lisp/pcase.el (pcase): Write a new docstring.
10496 2016-01-21  Stephen Berman  <stephen.berman@gmx.net>
10498         Avoid byte-compiler warning in todo-mode (bug#21953)
10500         * lisp/calendar/todo-mode.el (todo-convert-legacy-files): Add limit argument
10501         to looking-back to comply with advertised-calling-convention.
10503 2016-01-21  Stephen Berman  <stephen.berman@gmx.net>
10505         Fix desktop support in todo-mode and doc-view (bug#22377)
10507         * lisp/calendar/todo-mode.el (todo-restore-desktop-buffer):
10508         * lisp/doc-view.el (doc-view-restore-desktop-buffer): Return current buffer.
10510         * lisp/calendar/todo-mode.el (todo-modes-set-2):
10511         * lisp/doc-view.el (doc-view-mode): Set desktop-save-buffer unconditionally.
10513 2016-01-21  Paul Eggert  <eggert@cs.ucla.edu>
10515         No need to configure gobject-introspection
10517         It wasn’t needed for the recently-installed xwidget_mvp code; see:
10518         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01154.html
10519         * configure.ac (DOES_XWIDGETS_USE_GIR, GIR_REQUIRED, GIR_MODULES):
10520         (HAVE_GIR):
10521         * src/Makefile.in (GIR_LIBS, GIR_CFLAGS):
10522         Remove.  All uses removed.
10523         * configure.ac (emacs_config_features): Don’t worry about GIR.
10525 2016-01-20  Paul Eggert  <eggert@cs.ucla.edu>
10527         Don’t export C symbols not used elsewhere
10529         These were recently added, mostly as part of xwidget code.
10530         * src/emacsgtkfixed.c (emacs_fixed_get_type): Now static.
10531         (EMACS_FIXED, EMACS_FIXED_GET_CLASS):
10532         Now static functions here, not macros in emacsgtkfixed.h.
10533         * src/emacsgtkfixed.h (EMACS_TYPE_FIXED):
10534         Remove.  All uses replaced by definiens.
10535         (EMACS_FIXED, EMACS_FIXED_GET_CLASS):
10536         Remove; these are now static functions in emacsgtkfixed.c.
10537         (EMACS_FIXED_CLASS, EMACS_IS_FIXED, EMACS_IS_FIXED_CLASS):
10538         Remove; unused.
10539         (emacs_fixed_get_type): Remove decl; no longer extern.
10540         * src/xwidget.c (offscreen_damage_event)
10541         (webkit_mime_type_policy_typedecision_requested_cb)
10542         (webkit_new_window_policy_decision_requested_cb)
10543         (webkit_navigation_policy_decision_requested_cb)
10544         (xwidget_spec_value, xwidget_view_lookup)
10545         (xwidget_start_redisplay, xwidget_touch):
10546         Now static.
10547         * src/xwidget.h (xwidget_start_redisplay, xwidget_touch):
10548         Remove decls.
10550 2016-01-20  Dmitry Gutov  <dgutov@yandex.ru>
10552         Support squiggly heredocs in ruby-mode
10554         * lisp/progmodes/ruby-mode.el (ruby-here-doc-beg-re):
10555         Support squiggly heredocs added in Ruby 2.3.
10557         * test/indent/ruby.rb: Add squiggly example.
10559 2016-01-20  Glenn Morris  <rgm@gnu.org>
10561         * configure.ac (emacs_config_features): Remove WEBKIT.
10563 2016-01-20  Paul Eggert  <eggert@cs.ucla.edu>
10565         Port to platforms with gtk3 but not webkitgtk3
10567         I ran into this problem on my Fedora 23 installation;
10568         Emacs configured but did not build when --with-xwidgets was specified.
10569         * configure.ac (HAVE_WEBKIT, HAVE_GIR): Omit unnecessary initializations.
10570         (DOES_XWIDGETS_USE_GIR): New var.
10571         If --with-xwidgets is specified, report an error if not
10572         doable, to be consistent with the other --with options.
10573         Require webkitgtk3 to use Xwidgets, as the Xwidgets code does
10574         not work at all without webkitgtk3.  Simplify use of
10575         EMACS_CHECK_MODULES.  Output message about gobject
10576         introspection only if xwidgets are used.
10577         * etc/NEWS: Users need webkitgtk3, not merely webkit.
10578         * src/xwidget.c (syms_of_xwidget): Don’t worry about HAVE_WEBKIT_OSR,
10579         since this file is no longer compiled if webkitgtk3 is not available.
10581 2016-01-20  Eli Zaretskii  <eliz@gnu.org>
10583         Fix doc string of 'isearch-search-fun-function'
10585         * lisp/isearch.el (isearch-search-fun-function)
10586         (isearch-search-string): Doc fixes.  (Bug#22411)
10588 2016-01-20  Stefan Monnier  <monnier@iro.umontreal.ca>
10590         * lisp/xwidget.el: Nitpicks
10592         * lisp/xwidget.el (xwidget-log, xwidget-webkit-callback):
10593         Use with-current-buffer rather than save-excursion + set-buffer.
10595 2016-01-20  Glenn Morris  <rgm@gnu.org>
10597         Don't hard-code 1 as point-min.
10599         * lisp/image-mode.el (image-display-size):
10600         * lisp/xwidget.el (xwidget-webkit-last-session)
10601         (xwidget-webkit-current-session): Don't hard-code 1 as point-min.
10603 2016-01-20  Glenn Morris  <rgm@gnu.org>
10605         * lisp/xwidget.el: Add declarations to silence non-xwidget compilation.
10607 2016-01-20  Glenn Morris  <rgm@gnu.org>
10609         Trivial doc copyedits.
10611         * src/xwidget.c (Fmake_xwidget, Fget_buffer_xwidgets)
10612         (Fxwidget_webkit_get_title, Fxwidget_resize)
10613         (Fxwidget_set_adjustment, Fxwidgetp, Fxwidget_view_p)
10614         (Fxwidget_info, Fxwidget_view_lookup)
10615         (Fset_xwidget_query_on_exit_flag): Trivial doc copyedits.
10617 2016-01-20  Glenn Morris  <rgm@gnu.org>
10619         Avoid advising image-display-size for xwidgets.
10621         * lisp/xwidget.el (xwidget-image-display-size): Remove.
10622         (image-display-size): Remove advice.
10623         * lisp/image-mode.el (xwidget-info, xwidget-at): Declare.
10624         (image-display-size): Incorporate xwidget code directly.
10626 2016-01-20  Glenn Morris  <rgm@gnu.org>
10628         Avoid breaking non-xwidget Emacs that happen to load xwidget.el.
10630         * lisp/xwidget.el (window-configuration-change-hook)
10631         (kill-buffer-query-functions): Only modify these hooks if
10632         compiled with xwidget support.
10634 2016-01-20  Glenn Morris  <rgm@gnu.org>
10636         * lisp/xwidget.el (xwidget-webkit-scroll-behaviour): Fix custom spec.
10638 2016-01-19  Glenn Morris  <rgm@gnu.org>
10640         * configure.ac (WEBKIT, GIR, CAIRO): Use EMACS_CHECK_MODULES, not PKG_.
10642         * configure.ac (emacs_config_features): Add XWIDGETS, WEBKIT, GIR.
10644         * configure.ac (HAVE_WEBKIT_OSR): Remove broken, duplicated gtk3 test.
10646 2016-01-19  Katsumi Yamaoka  <yamaoka@jpl.org>
10648         * lisp/gnus/nnir.el (nnir-request-update-mark):
10649         Default to the original mark.
10650         cf. <http://thread.gmane.org/gmane.emacs.gnus.general/86583>
10651         and <http://thread.gmane.org/gmane.emacs.gnus.general/86640>
10653 2016-01-19  Glenn Morris  <rgm@gnu.org>
10655         * lisp/xwidget.el (report-xwidget-bug): Remove.
10657         (top-level): No longer require reporter.
10659 2016-01-19  Joakim Verona  <joakim@verona.se>
10660             Grégoire Jadi  <daimrod@gmail.com>
10662         Support for the new Xwidget feature.
10664         * configure.ac:
10665         (HAVE_XWIDGETS, WIDGET_OBJ, EMACS_CONFIG_FEATURES):
10666         * src/xterm.c (x_draw_glyph_string, x_draw_bar_cursor):
10667         * src/xdisp.c:
10668         (handle_display_spec, handle_single_display_spec, push_it)
10669         (pop_it, set_iterator_to_next, dump_glyph)
10670         (calc_pixel_width_or_height, fill_xwidget_glyph_string)
10671         (BUILD_XWIDGET_GLYPH_STRING, BUILD_GLYPH_STRINGS)
10672         (produce_xwidget_glyph, x_produce_glyphs)
10673         (get_window_cursor_type):
10674         * src/window.c (Fdelete_window_internal):
10675         * src/termhooks.h (e):
10676         * src/print.c (print_object):
10677         * src/lisp.h (ptrdiff_t):
10678         * src/keyboard.c (kbd_buffer_get_event, make_lispy_event)
10679         (syms_of_keyboard):
10680         * src/emacs.c (main):
10681         * src/dispnew.c (update_window, scrolling_window):
10682         * src/dispextern.h (g, i):
10683         * Makefile.in (XWIDGETS_OBJ, WEBKIT_CFLAGS, WEBKIT_LIBS)
10684         (GIR_LIBS, ALL_CFLAGS, base_obj, LIBES):
10685         * src/keyboard.c (kbd_buffer_get_event):
10686         * src/emacsgtkfixed.c (emacs_fixed_gtk_widget_size_allocate)
10687         (emacs_fixed_class_init): Add case for an xwidget view.
10689         * src/xwidget.c, src/xwidget.h, lisp/xwidget.el: New files for xwidgets
10692         Various improvements to the Xwidget feature.
10693         * src/xwidget.c:
10694         * src/emacsgtkfixed.c:
10695         * lisp/xwidget.el:
10697 2016-01-19  Eli Zaretskii  <eliz@gnu.org>
10699         Improve documentation of 'alist-get'
10701         * doc/lispref/variables.texi (Setting Generalized Variables): Add
10702         'alist-get' to the list of functions that can appear in PLACE
10703         argument of 'setf'.
10705 2016-01-19  Eli Zaretskii  <eliz@gnu.org>
10707         Minor copyedits of doc/emacs/maintaining.texi
10709         * doc/emacs/maintaining.texi (List Identifiers): More accurate
10710         description of "C-M-i" wrt tags tables.
10711         (Tags Tables): Move the definition of "tag" to a footnote.
10713 2016-01-19  Eli Zaretskii  <eliz@gnu.org>
10715         Unbreak the Cygwin-w32 build
10717         * src/w32fns.c (globals_of_w32fns): Move the initialization of
10718         resetstkoflw into a part that isn't compiled on Cygwin.
10719         (Bug#22403)
10721 2016-01-19  Lars Magne Ingebrigtsen  <larsi@gnus.org>
10723         * shr.el (shr-table-body): Allow tables to have text children.
10725 2016-01-19  Phillip Lord  <phillip.lord@russet.org.uk>
10727         Cope with multiple overlapping faces.
10729         * lisp/htmlfontify.el (hfy-face-to-style-i): Treat inheritance right to
10730           left.
10731           (hfy-face-resolve-face): Handle font specification as well as font
10732           name. Documentation update. (Bug#21990)
10734 2016-01-19  Paul Eggert  <eggert@cs.ucla.edu>
10736         Fix spurious escapes in describe-input-method
10738         Problem reported by Vincent Belaïche (Bug#22309).
10739         * lisp/international/mule-cmds.el (describe-language-environment):
10740         * lisp/international/quail.el (quail-help):
10741         Apply substitute-command-keys to doc strings before displaying them.
10743 2016-01-19  Paul Eggert  <eggert@cs.ucla.edu>
10745         Minor improvements to (random t) documentation
10747         * doc/lispref/numbers.texi (Random Numbers):
10748         * src/fns.c (Frandom):
10749         Omit unnecessary details about randomness fallback.
10750         Say that it is a fallback.
10752 2016-01-19  Dmitry Gutov  <dgutov@yandex.ru>
10754         Rename methods in Ruby etags example file
10756         * test/etags/ruby-src/test.rb: Rename the example methods to
10757         correspond to the common terminology used in Ruby.
10758         * test/etags/CTAGS.good:
10759         * test/etags/ETAGS.good_1:
10760         * test/etags/ETAGS.good_2:
10761         * test/etags/ETAGS.good_3:
10762         * test/etags/ETAGS.good_4:
10763         * test/etags/ETAGS.good_5:
10764         * test/etags/ETAGS.good_6: Adjust accordingly.
10766 2016-01-19  Dmitry Gutov  <dgutov@yandex.ru>
10768         Propertize backtick in 'def `(abc)' as symbol constituent
10770         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize):
10771         Propertize backtick in 'def `(abc)' as symbol constituent.
10772         (ruby-syntax-propertize-function):
10773         Rename to ruby-syntax-propertize.
10775 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
10777         Fix scrolling under scroll-preserve-screen-position on TTY
10779         * src/window.c (window_scroll_line_based): When setting point to
10780         preserve screen coordinates, don't let cursor enter either of the
10781         two scroll margins.  (Bug#22395)
10783 2016-01-18  Lars Magne Ingebrigtsen  <larsi@gnus.org>
10785         Fix shr table rendering of nested tables
10787         * shr.el (shr-table-body): Don't include all tbodies in nested
10788         tables in the levels above.
10790 2016-01-18  Dmitry Gutov  <dgutov@yandex.ru>
10792         * lisp/progmodes/project.el (project--read-regexp): Quote the identifier.
10794 2016-01-18  Dmitry Gutov  <dgutov@yandex.ru>
10796         Add xref-based replacements for Dired search commands
10798         * lisp/dired-aux.el (dired-do-find-regexp)
10799         (dired-do-find-regexp-and-replace): New commands.
10800         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00864.html
10802         * lisp/dired.el (dired-mode-map): Change bindings for `A' and
10803         `Q' to the new commands.
10805         * lisp/progmodes/xref.el (xref-query-replace)
10806         (xref-collect-matches): Add progress reporters.
10807         (xref--find-ignores-arguments): Return nil for zero ignores.
10808         (xref--show-xrefs): Add an optional argument.
10809         (xref-collect-matches): Drop the assert.  'find' accepts a
10810         regular file in place of directory argument, too.
10812 2016-01-18  Alan Mackenzie  <acm@muc.de>
10814         * doc/lispref/frames.texi (Position Parameters): Say they don't exist on TTYs.
10816 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
10818         Improve user documentation of Xref
10820         * doc/emacs/maintaining.texi (Xref, Find Identifiers)
10821         (Looking Up Identifiers, Identifier Search, List Identifiers):
10822         Adjudicate comments by Dmitry Gutov <dgutov@yandex.ru>.  See
10823         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00650.html
10824         for the details.
10826 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
10828         Fix scrolling under scroll-preserve-screen-position and margins
10830         * src/window.c (window_scroll_pixel_based): When setting point to
10831         preserve screen coordinates, don't let cursor enter either of the
10832         two scroll margins.  Fix incorrect usage of
10833         WINDOW_WANTS_HEADER_LINE_P and use WINDOW_HEADER_LINE_HEIGHT
10834         instead of CURRENT_HEADER_LINE_HEIGHT.  (Bug#22395)
10836 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
10838         Unbreak the MS-Windows build
10840         * src/sysdep.c (emacs_gnutls_global_init, gnutls_rnd): Disable for
10841         WINDOWSNT, to avoid link failure.  (Bug#22202)
10843 2016-01-18  Alan Mackenzie  <acm@muc.de>
10845         Desktop: protect users against inadvertant upgrading of desktop file.
10847         An upgraded (version 208) desktop file cannot be read in Emacs < 25.
10849         * etc/NEWS: Add an entry about upgrading a desktop file.
10851         * lisp/desktop.el (desktop-file-version): Amend doc string.
10852         (desktop-native-file-version, desktop-io-file-version): new variables.
10853         (desktop-clear): Set desktop-io-file-version to nil.
10854         (desktop-buffer-info): make the presence of the last item on the list
10855         conditional on (>= desktop-io-file-version 208).
10856         (desktop-save): Add extra parameter VERSION to take user's C-u or C-u C-u.
10857         Amend the doc string.  Add code to determine the output file version.
10858         (desktop-create-buffer): Set desktop-io-file-version to the input file's
10859         version.
10861 2016-01-18  Paul Eggert  <eggert@cs.ucla.edu>
10863         Initialize GnuTLS before calling gnutls_rnd
10865         * src/gnutls.c (emacs_gnutls_global_init): Now extern.
10866         Don’t set gnutls_global_initialized if gnutls_global_init fails.
10867         * src/sysdep.c: Include "gnutls.h", and <gnutls/crypto.h>
10868         if 2.12 or later, which has gnutls_rnd.
10869         (emacs_gnutls_global_init, gnutls_rnd): New fallback
10870         placeholder macros if before 2.12.
10871         (init_random): Initialize gnutls globals before trying to
10872         use gnutls_rnd.
10874 2016-01-18  Andreas Schwab  <schwab@linux-m68k.org>
10876         Don't use GnuTLS before it is initialized
10878                 * src/sysdep.c (init_random): Don't use gnutls_rnd.
10880 2016-01-17  Paul Eggert  <eggert@cs.ucla.edu>
10882         Port cleanup attribute to OpenBSD
10884         The OpenBSD C compiler issues false alarms about strcpy, strcat, and
10885         sprintf, and this messes up 'configure' when it tests for the cleanup
10886         attribute.  Work around the problem by using __has_attribute directly.
10887         Problem reported by Joakim Jalap (Bug#22385).
10888         * configure.ac: Don’t use AX_GCC_VAR_ATTRIBUTE.
10889         * m4/ax_gcc_var_attribute.m4: Remove.
10890         * src/conf_post.h (__has_attribute): Provide a substitute, for
10891         non-GCC or older GCC compilers.  All uses changed to assume
10892         the substitute.  Check for the cleanup attribute.
10893         * src/emacs-module.c (module_has_cleanup): Just use __has_attribute.
10895 2016-01-17  Paul Eggert  <eggert@cs.ucla.edu>
10897         Prefer GnuTLS when acquiring random seed
10899         This attempts to improve on the fix for Bug#22202.
10900         * configure.ac (HAVE_DEV_URANDOM): Remove.
10901         Check /dev/urandom existence at run time, not at build time,
10902         since the device could exist in the former but not the latter.
10903         * src/sysdep.c [HAVE_GNUTLS]: Include gnutls/gnutls.h.
10904         (gnutls_rnd) [GNUTLS_VERSION_NUMBER < 0x020c00]: New fallback macro.
10905         (random_seed): New typedef.
10906         (set_random_seed): New static function.
10907         (seed_random): Use them.
10908         (init_random): Use random_seed instead of uintmax_t, so as to
10909         not consume more entropy than needed.  Prefer gnutls_rnd if it
10910         works; this avoids a redundant open of /dev/urandom on
10911         GNU/Linux with modern GnuTLS.
10913 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10915         Improve documentation of dynamic modules
10917         * doc/lispref/loading.texi (How Programs Do Loading): Update the
10918         description of searching for files in 'load' when Emacs was built
10919         with support for dynamic modules.
10921 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10923         * INSTALL: Document --with-modules.
10925 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10927         Document 'function-put'
10929         * doc/lispref/symbols.texi (Symbol Plists): Document
10930         'function-put'.  Update documentation of 'function-get'.
10932 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10934         Document 'funcall-interactively'
10936         * doc/lispref/commands.texi (Interactive Call): Document
10937         'funcall-interactively'.
10938         * doc/lispref/functions.texi (Calling Functions): Mention
10939         'funcall-interactively' and provide a cross-reference.
10941 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10943         * doc/lispref/lists.texi (Association Lists): Document 'alist-get'.
10945         * doc/lispref/strings.texi (Text Comparison): Document 'string-greaterp'.
10947 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10949         Document renaming of selection-related functions
10951         * doc/lispref/frames.texi (Window System Selections): Rename "x-*"
10952         functions into the corresponding "gui-*" functions.  Make the
10953         description slightly less X-centric.
10955 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10957         * doc/lispref/macros.texi (Expansion): Document 'macroexpand-1'.
10959 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10961         Document 'define-inline'
10963         * doc/lispref/functions.texi (Defining Functions): Document
10964         'define-inline' and related macros.
10966         * lisp/emacs-lisp/inline.el (inline-letevals): Doc fix.
10968 2016-01-16  Artur Malabarba  <bruce.connor.am@gmail.com>
10970         * lisp/files.el (dir-locals--all-files): Respect absolute file-names
10972         * lisp/help-fns.el (describe-variable): Fix a left-over parenthesis
10974 2016-01-16  Artur Malabarba  <bruce.connor.am@gmail.com>
10976         * lisp/dired-x.el (dired-omit-here-always): Use add-dir-local-variable
10978         instead of manually writing a dir-locals file.
10980 2016-01-16  Artur Malabarba  <bruce.connor.am@gmail.com>
10982         * lisp/files.el (dir-locals--all-files): Use completion instead of wildcards
10984         (dir-locals-file)
10985         * lisp/files-x.el (modify-dir-local-variable)
10986         * lisp/dos-fns.el (dosified-file-name)
10987         * lisp/help-fns.el (describe-variable): Change accordingly.
10989 2016-01-16  Jussi Lahdenniemi  <jussi@aprikoodi.fi>  (tiny change)
10991         Fix incompatbilities with MS-Windows 2000 and older
10993         * src/w32.c <multiByteToWideCharFlags>: New global variable.
10994         (filename_to_utf16, filename_from_ansi, check_windows_init_file):
10995         Use it instead of the literal MB_ERR_INVALID_CHARS.
10996         (maybe_load_unicows_dll): Initialize multiByteToWideCharFlags as
10997         appropriate for the underlying OS version.  For details, see
10998         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00835.html.
10999         * src/w32.h: Declare multiByteToWideCharFlags.
11000         * src/w32fns.c (Fx_file_dialog, Fw32_shell_execute)
11001         (add_tray_notification): Use multiByteToWideCharFlags instead of
11002         the literal MB_ERR_INVALID_CHARS.
11003         (_resetstkoflw_proc): New typedef.
11004         (w32_reset_stack_overflow_guard): Call _resetstkoflw via a
11005         pointer, as this function is absent in msvcrt.dll shipped with W2K
11006         and older systems.
11008 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
11010         Mention in PROBLEMS an issue with MS-Windows NT4
11012         * etc/PROBLEMS (MS-Windows): Mention the problem with Shell32.dll
11013         on Windows NT4.  For the details, see
11014         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00835.html.
11016 2016-01-16  Jussi Lahdenniemi  <jussi@aprikoodi.fi>  (tiny change)
11018         Ensure 8-byte aligned memory allocation on MS-Windows 9X
11020         * src/w32heap.c (init_heap): Redirect malloc, realloc, and free to
11021         special functions on Windows 9X.  Refuse to dump Emacs on Windows 9X.
11022         (malloc_after_dump_9x, realloc_after_dump_9x)
11023         (free_after_dump_9x): New functions.  (Bug#22379)  See also
11024         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00852.html
11025         for more details about the original problem.
11027         * nt/inc/ms-w32.h (malloc_after_dump_9x, realloc_after_dump_9x)
11028         (free_after_dump_9x): Add prototypes.
11030 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
11032         Fix tests for active region in hideif.el
11034         * lisp/progmodes/hideif.el (hif-evaluate-macro, hide-ifdef-block): Use
11035         'use-region-p' to test whether to operate on region, instead of
11036         testing 'mark-active'.
11038 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
11040         Fix interactive specs in some hideif.el commands
11042         * lisp/progmodes/hideif.el (hif-evaluate-macro)
11043         (hide-ifdef-undef, show-ifdef-block): Don't use '(interactive "r")'
11044         in commands that should only act on the region if it's active.
11046 2016-01-15  Phillip Lord  <phillip.lord@russet.org.uk>
11048         Enable test selector from command line
11050         * test/automated/Makefile.in: Change variable manipulation to avoid
11051           over-writing selector.
11053 2016-01-15  Alan Mackenzie  <acm@muc.de>
11055         Don't confuse "::" with ":" when trying to parse member initializers.
11057         * lisp/progmodes/cc-engine.el (c-back-over-member-initializers): Check
11058         more robustly for ":" token when searching backwards for it.
11060         * lisp/progmodes/cc-langs.el (c-:$-multichar-token-regexp): New language
11061         variable.
11063 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
11065         Ensure positive number of glyphs for margins of positive width
11067         * src/dispnew.c (margin_glyphs_to_reserve): Always return a
11068         positive value when a non-zero width of the marginal area was
11069         requested.  (Bug#22356)
11071 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
11073         Fix crashes when mini-window has non-zero margins
11075         * src/window.c (resize_frame_windows): Use 'new_size' to set
11076         minibuffer window's 'total_cols' value, as 'size' might be in
11077         pixels.  (Bug#22356)
11079 2016-01-15  Alan Mackenzie  <acm@muc.de>
11081         In comment-dwim with style `extra-line', respect indent-tabs-mode.
11083         This fixes bug #22369.
11085         * lisp/newcomment.el (comment-make-bol-ws): New function.
11086         (comment-make-extra-lines): Use new function instead of a crude `make-string'.
11088 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
11090         Make 'random' seeds cryptographically secure if possible
11092         * configure.ac: Check for "/dev/urandom".
11094         * src/sysdep.c (init_random) [HAVE_DEV_URANDOM]: Read the stream
11095         for the seed from "/dev/urandom".
11096         [WINDOWSNT]: Obtain the stream for the seed from w32 APIs.
11097         * src/fns.c (Frandom): Update the doc string to indicate that
11098         system entropy is used when available.
11099         * src/w32.c: Include wincrypt.h.
11100         (w32_init_crypt_random, w32_init_random): New functions, use the
11101         CryptGenRandom API.
11102         (globals_of_w32): Initialize w32_crypto_hprov handle to zero.
11103         * src/w32.h (w32_init_random): Add prototype.
11105         * doc/lispref/numbers.texi (Random Numbers): Document more details
11106         about 't' as the argument to 'random'.
11108         * etc/NEWS: Mention that '(random t)' now uses a cryptographically
11109         strong seed if possible.
11111         (Bug#22202)
11113 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
11115         Unhide the --no-line-directive option to 'etags'
11117         * lib-src/etags.c (print_help): Un-undocument the --no-line-directive
11118         option.  (Bug#22306)
11120         * doc/man/etags.1: Document the --no-line-directive option.
11122 2016-01-15  Alan J Third  <alan@idiocy.org>  (tiny change)
11124         Fix picture-mode wrt double-width characters
11126         * lisp/textmodes/picture.el (picture-insert): Check the width of
11127         the character being replaced, not just that of the replacement.
11128         (Bug#1808)
11130 2016-01-15  Eric Abrahamsen  <eric@ericabrahamsen.net>
11132         Honor docstring of gnus-group-get-new-news
11134         * lisp/gnus/gnus-start.el (gnus-get-unread-articles): If the prefix arg is t,
11135         but non-numeric, unconditionally consider all groups to need updating.
11137 2016-01-14  Simen Heggestøyl  <simenheg@gmail.com>
11139         Disallow parenthesis in non-pseudo CSS selectors
11141         * lisp/textmodes/css-mode.el (css--font-lock-keywords): Disallow
11142         parenthesis in selectors except for in the function notation that
11143         might appear right after a pseudo-class.
11144         * test/indent/scss-mode.scss: Add a test for it.
11146 2016-01-14  Katsumi Yamaoka  <yamaoka@jpl.org>
11148         * lisp/gnus/nntp.el (nntp-request-newgroups): Simplify
11150 2016-01-14  Michael Albinus  <michael.albinus@gmx.de>
11152         check-maybe shall run only default tests
11154         * test/automated/Makefile.in (check, check-expensive): Depend on
11155         mostlyclean.
11156         (check-maybe): Re-run only default tests.
11157         (check-doit): Use code of check-maybe.
11158         (mostlyclean): Move *.log files away.
11160 2016-01-14  Mark Oteiza  <mvoteiza@udel.edu>
11162         * lisp/thingatpt.el (thing-at-point-uri-schemes): Add "magnet:"
11164 2016-01-14  Dmitry Gutov  <dgutov@yandex.ru>
11166         Un-obsolete tags-loop-continue
11168         * lisp/progmodes/etags.el (tags-loop-continue): Un-obsolete.
11169         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00682.html
11171 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
11173         Document obsoletion of 'intangible' and 'point-entered/left'
11175         * doc/lispref/text.texi (Special Properties): Document the new
11176         properties 'cursor-intangible' and 'cursor-sensor-functions'.
11177         Document the obsolete status of 'intangible', 'pointer-left',
11178         and 'point-entered' properties, and of 'inhibit-point-motion-hooks'.
11179         * doc/lispref/display.texi (Overlay Properties): Document that
11180         'intangible' overlay property is obsolete.
11182         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor-mode): Doc fix.
11184 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
11186         Updater documentation of 'looking-back'
11188         * doc/lispref/searching.texi (Regexp Search): Update documentation
11189         of 'looking-back'.  Fix markup.
11191 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
11193         Document 'pre-redisplay-functions'
11195         * doc/lispref/hooks.texi (Standard Hooks):
11196         * doc/lispref/display.texi (Forcing Redisplay): Document
11197         'pre-redisplay-functions'.
11199 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
11201         Document the new deafault value of 'load-read-function'
11203         * doc/lispref/loading.texi (How Programs Do Loading): Document the
11204         change in the default value of 'load-read-function'.
11206 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
11208         Document 'bufferpos-to-filepos' and 'filepos-to-bufferpos'
11210         * doc/lispref/nonascii.texi (Text Representations): Document
11211         'bufferpos-to-filepos' and 'filepos-to-bufferpos'.
11213 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
11215         Document the new prefix-command hooks
11217         * doc/lispref/hooks.texi (Standard Hooks): Document
11218         `prefix-command-echo-keystrokes-functions' and
11219         `prefix-command-preserve-state-hook'.
11221 2016-01-13  Paul Eggert  <eggert@cs.ucla.edu>
11223         Fix one more misuse of time-stamp-time-zone
11225         * test/etags/html-src/softwarelibero.html: Use "UTC0" rather
11226         than the unportable "GMT" for time zone.
11228 2016-01-13  Paul Eggert  <eggert@cs.ucla.edu>
11230         Fix NNTP NEWGROUPS off-by-a-few-hours bug
11232         * lisp/gnus/nntp.el (nntp-request-newgroups): Format string
11233         in Universal Time, since we’re telling the server “GMT”.
11235 2016-01-13  Paul Eggert  <eggert@cs.ucla.edu>
11237         Update publicsuffix.txt from upstream
11239         * etc/publicsuffix.txt: Update from
11240         https://publicsuffix.org/list/effective_tld_names.dat
11241         dated 2016-01-12 11:52:01 UTC.
11243 2016-01-13  Glenn Morris  <rgm@gnu.org>
11245         Fix some declarations.
11247         * lisp/descr-text.el (internal-char-font):
11248         * lisp/cedet/mode-local.el (xref-item-location):
11249         * lisp/gnus/mml-smime.el (epg-key-sub-key-list)
11250         (epg-sub-key-capability, epg-sub-key-validity):
11251         * lisp/international/mule-util.el (internal-char-font):
11252         Fix declarations.
11254 2016-01-13  Glenn Morris  <rgm@gnu.org>
11256         Fix some custom types.
11258         * lisp/gnus/gnus-fun.el (gnus-x-face-omit-files, gnus-face-omit-files):
11259         * lisp/gnus/gnus.el (gnus-valid-select-methods):
11260         * lisp/mail/rmail.el (rmail-get-coding-function):
11261         * lisp/net/newst-treeview.el (newsticker-groups-filename):
11262         * lisp/progmodes/hideif.el (hide-ifdef-exclude-define-regexp):
11263         * lisp/textmodes/tildify.el (tildify-space-predicates):
11264         * lisp/url/url-tramp.el (url-tramp-protocols):
11265         Fix custom types.
11267 2016-01-13  Glenn Morris  <rgm@gnu.org>
11269         Add some missing version tags.
11271         * lisp/electric.el (electric-quote-comment)
11272         (electric-quote-string, electric-quote-paragraph):
11273         * lisp/epg-config.el (epg-gpgconf-program):
11274         * lisp/rect.el (rectangle-preview):
11275         * lisp/emacs-lisp/check-declare.el (check-declare-ext-errors):
11276         * lisp/emacs-lisp/package.el (package-selected-packages)
11277         (package-hidden-regexps):
11278         * lisp/erc/erc.el (erc-network-hide-list, erc-channel-hide-list):
11279         * lisp/eshell/em-term.el (eshell-destroy-buffer-when-process-dies):
11280         * lisp/gnus/mml-sec.el (mml1991-signers, mml2015-signers)
11281         (mml-smime-signers, mml1991-encrypt-to-self, mml2015-encrypt-to-self)
11282         (mml-smime-encrypt-to-self, mml2015-sign-with-sender)
11283         (mml-smime-sign-with-sender, mml2015-always-trust)
11284         (mml-secure-fail-when-key-problem, mml-secure-key-preferences):
11285         * lisp/net/browse-url.el (browse-url-conkeror-new-window-is-buffer)
11286         (browse-url-conkeror-arguments):
11287         * lisp/net/newst-reader.el (newsticker-download-logos):
11288         * lisp/progmodes/gud.el (gud-guiler-command-name):
11289         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
11290         * lisp/progmodes/project.el (project-vc):
11291         * lisp/progmodes/python.el (python-indent-guess-indent-offset-verbose)
11292         (python-shell-remote-exec-path, python-shell-first-prompt-hook)
11293         (python-shell-completion-native-disabled-interpreters)
11294         (python-shell-completion-native-enable)
11295         (python-shell-completion-native-output-timeout)
11296         (python-shell-completion-native-try-output-timeout):
11297         * lisp/progmodes/xref.el (xref):
11298         * lisp/term/screen.el (xterm-screen-extra-capabilities):
11299         * lisp/term/xterm.el (xterm-max-cut-length):
11300         Add missing version tags.
11302 2016-01-13  Glenn Morris  <rgm@gnu.org>
11304         * test/automated/core-elisp-tests.el
11305         (core-elisp-tests-1-defvar-in-let): Add a custom type.
11307 2016-01-13  Glenn Morris  <rgm@gnu.org>
11309         * src/buffer.c (syms_of_buffer) <major-mode>: Doc fix.
11311         Remove comments that do not apply since 2005-08-09.  (Bug#22349)
11313 2016-01-12  Paul Eggert  <eggert@cs.ucla.edu>
11315         Merge from gnulib
11317         This mostly just changes "UTC" to "UTC0" for POSIX conformance.
11318         It also updates to the latest version of texinfo.tex.
11319         * build-aux/gitlog-to-changelog, build-aux/move-if-change:
11320         * build-aux/update-copyright, doc/misc/texinfo.tex:
11321         Update from gnulib.
11323 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
11325         Update documentation of 'process-running-child-p'
11327         * doc/lispref/processes.texi (Input to Processes): Document the
11328         changes in return value of 'process-running-child-p'.
11330 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
11332         Update documentation of 'deactivate-mark'.
11334         * doc/lispref/markers.texi (The Mark): Document that
11335         'deactivate-mark' is now buffer-local when set.
11337 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
11339         Update documentation of 'completion-table-dynamic'
11341         * doc/lispref/minibuf.texi (Programmed Completion): Document the
11342         new optional argument to 'completion-table-dynamic'.
11344 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
11346         Document changes in 'read-buffer' and 'read-buffer-function'
11348         * doc/lispref/minibuf.texi (High-Level Completion): Document the
11349         4th argument to 'read-buffer' and 'read-buffer-function'.
11351 2016-01-12  Paul Eggert  <eggert@cs.ucla.edu>
11353         Fix time-stamp-time-zone bugs introduced in July
11355         This fixes a bug introduced when the July changes to
11356         format-time-string installed, as the changes were not
11357         correctly handled in this module (Bug#22302).
11358         Also, document time stamp time zones.
11359         * lisp/time-stamp.el (time-stamp-time-zone): Document values better.
11360         (time-stamp--format): New private function.
11361         (time-stamp-string, time-stamp-string-preprocess)
11362         (time-stamp-do-number): Use it.
11363         * doc/emacs/files.texi (Time Stamps): Mention time zones.
11364         * doc/misc/autotype.texi (Timestamps): Document time-stamp-time-zone.
11366 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
11368         Make piping to subprocesses more robust on MS-Windows
11370         * src/w32.c (sys_write): Don't write to a pipe more stuff than its
11371         buffer can hold.  Don't return -1 if something has been written to
11372         the pipe.  Zero out 'errno' before calling '_write', to avoid
11373         returning a stale value.  (Bug#22344)
11374         * src/w32proc.c (syms_of_ntproc) <w32-pipe-buffer-size>: New variable.
11375         * src/w32.c (pipe2): Use it to request a user-defined size for the
11376         pipe being created.
11378         * etc/NEWS: Mention 'w32-pipe-buffer-size'.
11380         * doc/emacs/msdos.texi (Windows Processes): Document
11381         'w32-pipe-buffer-size'.
11383 2016-01-11  Dmitry Gutov  <dgutov@yandex.ru>
11385         test/automated/vc-hg.el: Support out-of-tree build
11387         * test/automated/vc-hg.el
11388         (vc-hg-annotate-extract-revision-at-line-with-filename)
11389         (vc-hg-annotate-extract-revision-at-line-with-both):
11390         Don't refer to source-directory.
11391         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00755.html
11393 2016-01-11  Michael Albinus  <michael.albinus@gmx.de>
11395         Minor change in tramp-tests.el
11397         * test/automated/tramp-tests.el (tramp-test29-vc-registered):
11398         Use `dired-uncache' instead of a Tramp internal function.
11400 2016-01-11  Peter Feigl  <peter.feigl@nexoid.at>
11402         * etc/HELLO: Add Armenian and Mongolian greetings.
11404         (Bug#22346)
11406 2016-01-11  Alan Mackenzie  <acm@muc.de>
11408         Java Mode: Fontify identifiers in the presence of annotations.
11410         * lisp/progmodes/cc-engine.el (c-forward-annotation): Tidy up the coding:
11411         Don't move point when the defun fails.
11412         (c-forward-decl-or-cast-1): Correct a usage of match data.
11414         * lisp/progmodes/cc-fonts.el (c-font-lock-maybe-decl-faces): Remove.
11415         (c-font-lock-declarations): Use the new c-maybe-decl-faces in place of the
11416         removed variable.
11418         * lisp/progmodes/cc-langs.el (c-maybe-decl-faces): New language variable.
11420 2016-01-11  Eli Zaretskii  <eliz@gnu.org>
11422         Avoid an infloop when we run out of memory
11424         * src/alloc.c (garbage_collect_1): Don't bother saving and
11425         restoring the echo-area message if we are GC'ing after running out
11426         of memory.  This avoids an infloop due to repeated attempts to
11427         allocate memory for the cons cell needed to save the message,
11428         which signals the memory-full error, which attempts to save the
11429         echo-area message, which signals memory-full again, etc.
11431 2016-01-11  Eli Zaretskii  <eliz@gnu.org>
11433         Avoid unnecessary failures of auto-saving after fatal error
11435         * src/w32.c (map_w32_filename): Avoid non-trivial system calls for
11436         the benefit of FAT volumes if we are called as part of shutting
11437         down due to a fatal error, which probably means we are trying to
11438         auto-save the session.
11439         * src/lread.c (check_obarray): Don't bother making the obarray
11440         valid if we are shutting down due to a fatal error.  This avoids
11441         interfering with auto-saving the crashed session.
11443 2016-01-11  Paul Eggert  <eggert@cs.ucla.edu>
11445         Simplify HAVE_MODULES use in mark_maybe_pointer
11447         * src/alloc.c (HAVE_MODULES): Now a constant 0 if not defined,
11448         so that later code can use 'if' rather than '#ifdef'.
11449         (mark_maybe_pointer): Simplify based on HAVE_MODULES now
11450         always working.
11452 2016-01-11  Paul Eggert  <eggert@cs.ucla.edu>
11454         Revert attempt to use 'noexcept' in typedef
11456         This use of 'noexcept' runs afoul of the C++11 standard.
11457         Problem reported by Philipp Stephani in:
11458         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00706.html
11459         * src/emacs-module.c (emacs_finalizer_function):
11460         Move this typedef here ...
11461         * src/emacs-module.h: ... from here, and use only the C
11462         version of the typedef.  The typedef is now private since it
11463         is never used in the .h file now and anyway it seemed to be
11464         causing more confusion than it cured.
11465         (make_user_ptr, get_user_finalizer, set_user_finalizer):
11466         Open-code the type instead.
11468 2016-01-10  Eli Zaretskii  <eliz@gnu.org>
11470         Update documentation of 'indirect-function'
11472         * doc/lispref/eval.texi (Function Indirection): Update the
11473         documentation of 'indirect-function'.
11475 2016-01-10  Eli Zaretskii  <eliz@gnu.org>
11477         Update documentation for obsoleting 'syntax-begin-function'
11479         * doc/lispref/syntax.texi (Position Parse): Undocument
11480         'syntax-begin-function' that is now obsolete.
11482 2016-01-10  Eli Zaretskii  <eliz@gnu.org>
11484         Document new features if Eshell
11486         * doc/misc/eshell.texi (Input/Output): Document the new
11487         '#<bufname>' syntax.
11488         (Input/Output): Document 'eshell-destroy-buffer-when-process-dies'.
11489         Disable "Key Index" generation, as there are no @kindex entries in
11490         this manual.
11492 2016-01-10  Michael Albinus  <michael.albinus@gmx.de>
11494         Handle too long commands in Tramp
11496         * lisp/net/tramp-sh.el (tramp-sh-handle-make-symbolic-link)
11497         (tramp-do-file-attributes-with-ls): Send sequence of commands, in
11498         order to not exceed shell command line limit.
11500         * test/automated/tramp-tests.el (tramp--test-darwin-p): Remove.
11501         (tramp--test-utf8): Include Arabic file name, again.
11503 2016-01-10  Paul Eggert  <eggert@cs.ucla.edu>
11505         * .gitattributes: *.cur and *.pif are binary files too.
11507 2016-01-10  Stefan Monnier  <monnier@iro.umontreal.ca>
11509         * src/alloc.c (mark_maybe_pointer): HAVE_MODULES may be undefined
11511 2016-01-10  Stefan Monnier  <monnier@iro.umontreal.ca>
11513         * lisp/progmodes/sh-script.el (sh-smie-sh-rules): Improve indentation inside $(...)
11515         * lisp/progmodes/sh-script.el (sh-smie-sh-rules): Improve indentation
11516         within $(...).
11517         * test/indent/shell.sh: Add corresponding test.
11519 2016-01-10  Stefan Monnier  <monnier@iro.umontreal.ca>
11521         * src/alloc.c (mark_maybe_pointer): Also check wide-int's emacs_value
11523         (mark_memory): Simplify loop.  Don't assume a pointer-sized word can be
11524         cast to Lisp_Object.
11526 2016-01-10  Dmitry Gutov  <dgutov@yandex.ru>
11528         Use short date for 'hg annotate', and output the author
11530         * lisp/vc/vc-hg.el (vc-hg-annotate-command):
11531         Change '-d' to '-dq'.  (Bug#21805)
11532         (vc-hg-annotate-switches): Default to "-u" "--follow".
11533         (vc-hg-annotate-re): Update to recognize the short date format
11534         and the optional username.
11535         (vc-hg-annotate-time)
11536         (vc-hg-annotate-extract-revision-at-line): Update accordingly.
11538         * test/automated/vc-hg.el: New file.
11540 2016-01-10  Paul Eggert  <eggert@cs.ucla.edu>
11542         Spelling fix
11544 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
11546         Document user-level functions in project.el
11548         * lisp/progmodes/project.el (project-find-file)
11549         (project-or-external-find-file): Add doc strings.
11551 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
11553         Document the user-level features of the Xref package
11555         * doc/emacs/maintaining.texi (Maintaining): Add a list of
11556         described features.
11557         (Xref): New section, made out of thoroughly rewritten "Tags"
11558         section.
11559         (Find Identifiers, Looking Up Identifiers, Xref Commands)
11560         (Identifier Search, List Identifiers): New subsections,
11561         incorporating the old tags commands and the new xref commands.
11562         (Tags Tables, Tag Syntax, Create Tags Table, Etags Regexps):
11563         Section and subsections demoted to a lower level.
11564         * doc/emacs/search.texi (Search):
11565         * doc/emacs/windows.texi (Pop Up Window):
11566         * doc/emacs/frames.texi (Creating Frames):
11567         * doc/emacs/programs.texi (Imenu, Symbol Completion):
11568         * doc/emacs/building.texi (Grep Searching):
11569         * doc/emacs/dired.texi (Operating on Files):
11570         * doc/emacs/glossary.texi (Glossary): All references to tags changed.
11572 2016-01-09  Stefan Monnier  <monnier@iro.umontreal.ca>
11574         * doc/lispref/loading.texi: Add `define-type' entry for load-history
11576         * doc/lispref/loading.texi (Where Defined): Remove incorrect
11577         cl-defmethod description, and add missing define-type entry.
11579 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
11581         Improve doc strings and prompts in xref.el
11583         * lisp/progmodes/xref.el (xref-backend-functions)
11584         (xref-find-definitions): Doc fixes.
11585         (xref-query-replace): Doc fix.  Improve prompts for arguments.
11587 2016-01-09  Alan Mackenzie  <acm@muc.de>
11589         Allow the use of `font-lock-extend-region-multiline' in CC Mode.
11591         * lisp/progmodes/cc-mode.el (c-font-lock-init): Remove
11592         `font-lock-extend-regions-wholelines' from
11593         `font-lock-extend-region-functions' rather than setting the latter to
11594         nil.
11596 2016-01-09  Michael Albinus  <michael.albinus@gmx.de>
11598         Fix coding system for Tramp on OS X.
11600         * lisp/net/tramp-compat.el: Require ucs-normalize.
11602         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
11603         Set coding system to `utf-8-hfs' for Mac OS X.
11605         * test/automated/tramp-tests.el (tramp-test29-vc-registered):
11606         Flush directory properties when needed.
11607         (tramp--test-utf8): Include Chinese file name, again.
11609 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
11611         Update 'load-history' docs
11613         * doc/lispref/loading.texi (Where Defined): Update the list of
11614         forms in 'load-history' by adding the forms created for the
11615         'cl-generic' generics.  (Bug#21422)
11617 2016-01-09  Paul Eggert  <eggert@cs.ucla.edu>
11619         Fix (error ...) error
11621         Problem reported by Glenn Morris in:
11622         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00561.html
11623         * lisp/vc/add-log.el (change-log-goto-source): Fix typos
11624         introduced in my Aug 28 change, where I got confused by the
11625         two meanings of (error ...).
11627 2016-01-08  Alan Mackenzie  <acm@muc.de>
11629         Correctly analyze brace arguments in templated C++ function declarations.
11631         * lisp/progmodes/cc-defs.el (c-go-list-forward, c-go-list-backward): add
11632         POS and LIMIT parameters, like the other c-go-list-* functions have.
11634         * lisp/progmodes/cc-engine.el (c-restore-<>-properties): Check backwards
11635         for a ?\( rather than a ?<.  (c-looking-at-inexpr-block): Handle names
11636         followed by template specifiers.
11638 2016-01-08  Glenn Morris  <rgm@gnu.org>
11640         * lisp/cedet/mode-local.el (describe-function-orig-buffer): Declare.
11642         * lisp/ffap.el (ffap-latex-mode): Avoid free variable.
11644 2016-01-08  Mark Oteiza  <mvoteiza@udel.edu>
11646         * lisp/play/dunnet.el (dun-fix-screen): Avoid `end-of-buffer`.
11648 2016-01-08  Alan Mackenzie  <acm@muc.de>
11650         Respect fontification region calculated by major mode.  Fixes bug #22316.
11652         * lisp/font-lock.el (font-lock-extend-jit-lock-region-after-change): when a
11653         fontification region has been calculated by a function on
11654         font-lock-extend-after-change-region-function use this region rather than
11655         changing the end position to somewhere else.
11657 2016-01-08  Eli Zaretskii  <eliz@gnu.org>
11659         Improve documentation of Delete Selection mode
11661         * lisp/delsel.el (delete-selection-mode)
11662         (delete-selection-helper): Update and expand the doc strings.
11663         (Bug#22296)
11665         * doc/emacs/mark.texi (Using Region): Document the behavior of
11666         delete commands in Delete Selection mode.  (Bug#22296)
11668         * doc/lispref/markers.texi (The Mark): Document how to add the
11669         support for Delete Selection mode to Lisp programs. (Bug#22296)
11671 2016-01-08  Dmitry Gutov  <dgutov@yandex.ru>
11673         Fix two project-find-file issues
11675         * lisp/progmodes/project.el (project--value-in-dir):
11676         Temporarily set enable-local-variables to :all.
11677         (project-find-file, project-or-external-find-file):
11678         All autoloads.
11679         (project--find-file-in): Require xref.
11681 2016-01-08  Eli Zaretskii  <eliz@gnu.org>
11683         Clarify doc string of 'dired-current-directory'
11685         * lisp/dired.el (dired-current-directory): Doc fix: clarify that
11686         the return value might not end in a slash when called with the
11687         optional argument non-nil.  (Bug#6273)
11689 2016-01-08  Eli Zaretskii  <eliz@gnu.org>
11691         Use the face of preceding text for displaying the ellipsis
11693         * src/xdisp.c (setup_for_ellipsis): Use the face of the preceding
11694         text in it->saved_face_id for displaying the ellipsis, and ignore
11695         the face, if any, of the invisible text.  (Bug#22320)
11697 2016-01-08  Michael Albinus  <michael.albinus@gmx.de>
11699         Suppress Chinese file name test for OSX in tramp-tests.el
11701         * test/automated/tramp-tests.el (tramp--test-utf8):
11702         Remove instrumentation.  Suppress Chinese file name test for OSX.
11704 2016-01-08  Glenn Morris  <rgm@gnu.org>
11706         * admin/admin.el (set-version): Also handle the NEWS file.
11708 2016-01-08  Dmitry Gutov  <dgutov@yandex.ru>
11710         apropos-library: Skip obvious duplicates; don't error on generics
11712         * lisp/apropos.el (apropos-library): Skip "was an autoload"
11713         entries, to avoid obvious duplicates.  For each cl-defmethod
11714         entry, take just its function symbol (bug#21422).
11716 2016-01-07  Dmitry Gutov  <dgutov@yandex.ru>
11718         Add project-find-file and project-or-external-find-file
11720         * lisp/minibuffer.el (completion-category-defaults):
11721         Add `project-file' category.
11723         * lisp/progmodes/project.el (project-find-file)
11724         (project-or-external-find-file): New commands.
11725         (project--find-file-in): New private function.
11727         * lisp/progmodes/xref.el (xref-collect-matches): Use
11728         `expand-file-name' on DIR, to expand the tildes.
11729         (xref--find-ignores-arguments): Extract from
11730         `xref--rgrep-command'.
11732 2016-01-07  Leo Liu  <sdl.web@gmail.com>
11734         Add defvar-local to lisp-imenu-generic-expression
11736         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression): Add
11737           defvar-local.
11739 2016-01-07  Leo Liu  <sdl.web@gmail.com>
11741         Revert commit b1e3d14845517bfa9fa5d6d3840f3ab3160306fd
11743         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
11744           Don't declare (indent 1).
11746 2016-01-07  Glenn Morris  <rgm@gnu.org>
11748         * lisp/emacs-lisp/autoload.el (autoload-find-destination): Doc fix.
11750 2016-01-07  Glenn Morris  <rgm@gnu.org>
11752         * lisp/emacs-lisp/autoload.el (autoload-find-destination):
11754         Avoid specifying the length of a time object (it has not been "2"
11755         for some time).
11757 2016-01-06  Andreas Schwab  <schwab@linux-m68k.org>
11759         Properly encode/decode base64Binary data in SOAP
11761                 * lisp/net/soap-client.el (soap-encode-xs-basic-type): Encode
11762                 base64Binary value as utf-8.
11763                 (soap-decode-xs-basic-type): Decode base64Binary value as utf-8.
11765 2016-01-06  Eli Zaretskii  <eliz@gnu.org>
11767         Obey coding-system-for-write when writing stdout/stderr in batch
11769         * src/print.c (printchar_to_stream):
11770         * src/xdisp.c (message_to_stderr): If coding-system-for-write has
11771         a non-nil value, use it to encode output in preference to
11772         locale-coding-system.  See the discussions in
11773         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00048.html
11774         for the details.
11776         * doc/lispref/os.texi (Terminal Output): Document how to send
11777         non-ASCII text via 'send-string-to-terminal'.
11778         (Batch Mode): Document how text written to standard streams is
11779         encoded.  Fix inaccuracy regarding which output streams are used
11780         by output functions in batch mode.
11782 2016-01-06  Xue Fuqiao  <xfq.free@gmail.com>
11784         * doc/misc/efaq.texi (Packages that do not come with Emacs):
11785         Update the URI of MELPA and marmalade-repo.  Reported by CHENG Gao
11786         <chenggao@royau.me> in
11787         https://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00390.html.
11789 2016-01-06  Maksim Golubev  <maksim.golubev72@gmail.com>  (tiny change)
11791         * lisp/progmodes/opascal.el (opascal-mode-syntax-table):
11793         Fix backslash.  (Bug#22224)
11795 2016-01-06  Federico Beffa  <beffa@ieee.org>  (tiny change)
11797         * lisp/progmodes/xscheme.el (xscheme-prompt-for-expression-exit):
11799         Make it actually work.  (Bug#22265)
11801 2016-01-05  Alan Mackenzie  <acm@muc.de>
11803         Remove function wrongly on AWK Mode value of context fontification hook.
11805         * lisp/progmodes/cc-langs.el (c-before-context-fontification-functions):
11806         swap order of entries so that awk's entry isn't superseded by the default.
11808         * lisp/progmodes/cc-mode.el (c-before-context-fl-expand-region): Correct
11809         to handle nil value of c-before-context-fontification-functions.
11811 2016-01-05  Paul Eggert  <eggert@cs.ucla.edu>
11813         * src/buffer.c: Stick with ASCII in doc string.
11815 2016-01-05  Paul Eggert  <eggert@cs.ucla.edu>
11817         Reword transient-mark-mode doc string
11819         * src/buffer.c (syms_of_buffer): Reword doc string to avoid confusion.
11820         The value 'lambda (literally) can be interpreted as (quote lambda),
11821         which is not intended here; we want just the lambda symbol.
11823 2016-01-05  Eli Zaretskii  <eliz@gnu.org>
11825         Update doc string of 'selective-display'
11827         * src/buffer.c (syms_of_buffer) <selective-display>: Say that
11828         using it with the value of 't' is obsolete.  (Bug#1092)
11830 2016-01-05  Alan Mackenzie  <acm@muc.de>
11832         Make C++ buffers writeable when writing their initial text properties.
11834         This is a correction to yesterday's CC Mode patch.
11836         * lisp/progmodes/cc-engine.el (c-before-change-check-<>-operators): Put
11837         c-save-buffer-state around the function rather than a mere `let'.
11839 2016-01-05  Michael Albinus  <michael.albinus@gmx.de>
11841         Additional changes for "make check-expensive"
11843         * CONTRIBUTE : Encourage use of ":tags '(:expensive-test)".
11844         Explain make target `check-expensive'.
11846         * etc/NEWS: Mention new make target `check-expensive'.
11848         * test/automated/Makefile.in (check-doit): New target.
11849         (check, check-expensive): Use it.
11851 2016-01-04  Alan Mackenzie  <acm@muc.de>
11853         Apply text properties for <, > in new after-change function (C++ Java Modes).
11855         These are category/syntax-table properties to give < and > paren syntax.
11856         Also apply certain `c-type' text properties to the insides of <..> constructs
11857         to ensure that identifiers contained by them get fontified.  This patch fixes
11858         bug #681.
11860         * lisp/progmodes/cc-cmds.el (c-electric-lt-gt): Reformulate due to new
11861         after-change action.
11863         * lisp/progmodes/cc-engine.el (c-before-change-check-<>-operators): Expand
11864         change region to include <s and >s which might not be already marked as
11865         parens, rather than just when paren text properties are removed.
11866         (c-restore-<>-properties): New after-change function, which applies text
11867         properties marking < and > with paren syntax.
11869         * lisp/progmodes/cc-fonts.el (c-font-lock-declarations): Ensure `c-type'
11870         properties are applied to the interiors of <...> constructs, to ensure
11871         fontification of identifiers there.
11873         * lisp/progmodes/cc-langs.el (c-before-font-lock-functions): Add
11874         c-restore-<>-properties to this list for C++ and Java.
11876         * lisp/progmodes/cc-mode.el (c-common-init): When invoking
11877         c-before-font-lock-functions, exclude c-restore-<>-properties from the
11878         functions invoked.
11879         (c-before-change): Initialize c-new-BEG/END here (rather than c-after-change)
11880         to allow modification by before-change functions.
11881         (c-after-change): Amend c-new-END here, rather than initializing it and
11882         c-new-BEG.
11884 2016-01-04  Michael Albinus  <michael.albinus@gmx.de>
11886         Introduce check-expensive tests.
11888         * Makefile.in (check-expensive):
11889         * test/automated/Makefile.in (check-expensive): New target.
11891         * test/automated/auto-revert-tests.el
11892         (auto-revert-test01-auto-revert-several-files):
11893         * test/automated/file-notify-tests.el (file-notify--deftest-remote):
11894         * test/automated/tramp-tests.el (tramp-test26-process-file)
11895         (tramp-test27-start-file-process, tramp-test28-shell-command)
11896         (tramp-test29-vc-registered)
11897         (tramp-test31-special-characters-with-stat)
11898         (tramp-test31-special-characters-with-perl)
11899         (tramp-test31-special-characters-with-ls)
11900         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
11901         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
11902         (tramp-test35-unload): Tag the tests as :expensive-test.
11904 2016-01-04  Lars Magne Ingebrigtsen  <larsi@gnus.org>
11906         shr-tag-video bug fix
11908         * shr.el (shr-tag-video): Protect against the `poster' being
11909         empty.
11911 2016-01-04  Michael Albinus  <michael.albinus@gmx.de>
11913         Minor fixes in tramp-tests.el
11915         * test/automated/tramp-tests.el (tramp-test26-process-file):
11916         Move point properly.
11917         (tramp-test29-vc-registered): Work with relative file names.
11919 2016-01-04  Eli Zaretskii  <eliz@gnu.org>
11921         Ensure redisplay when 'truncate-lines' is set
11923         * lisp/frame.el (redisplay--variables): Add 'truncate-lines'.
11924         (Bug#22303)
11926 2016-01-04  Eli Zaretskii  <eliz@gnu.org>
11928         Fix a doc string of 'transient-mark-mode'
11930         * src/buffer.c (syms_of_buffer) <transient-mark-mode>: Prevent
11931         "lambda" in doc string from becoming a link to lambda expressions.
11933 2016-01-04  Eli Zaretskii  <eliz@gnu.org>
11935         MS-Windows followup to latest gnulib update
11937         * nt/gnulib.mk (EXTRA_DIST): Add ignore-value.h.
11939 2016-01-04  Paul Eggert  <eggert@cs.ucla.edu>
11941         Spelling fix
11943 2016-01-04  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
11945         Do secure signed Bcc handling
11947         * lisp/gnus/message.el (message-send): Do secure signed Bcc handling
11948         (bug#18718).
11950 2016-01-04  Paul Eggert  <eggert@cs.ucla.edu>
11952         Avoid stdio in SIGINT handler
11954         * admin/merge-gnulib (GNULIB_MODULES): Add ignore-value.
11955         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
11956         * lib/ignore-value.h: New file, from gnulib.
11957         * src/keyboard.c: Include it.
11958         (write_stdout, read_stdin): New functions.
11959         (handle_interrupt): Use them instead of printf and getchar,
11960         and avoid fflush when handling signals.
11962 2016-01-04  Paul Eggert  <eggert@cs.ucla.edu>
11964         * doc/misc/texinfo.tex: Revert unwanted copyright change.
11966 2016-01-03  Artur Malabarba  <bruce.connor.am@gmail.com>
11968         * lisp/align.el (align): Simplify a lambda
11970         * lisp/align.el (align): Fix arg order in call to `align-region'
11972 2016-01-03  Eli Zaretskii  <eliz@gnu.org>
11974         Fix compilation next-error in buffers with selective-display
11976         * lisp/progmodes/compile.el (compilation-beginning-of-line): New
11977         function.
11978         (compilation-internal-error-properties)
11979         (compilation-next-error-function, compilation-set-window): Use
11980         it.  (Bug#1092)
11982 2016-01-03  Lars Magne Ingebrigtsen  <larsi@gnus.org>
11984         * lisp/net/nsm.el (nsm-check-protocol): Fix typo in the message.
11986 2016-01-03  Lars Magne Ingebrigtsen  <larsi@gnus.org>
11988         Add SHA1 warnings for high network security settings
11990         * lisp/net/nsm.el (nsm-check-protocol): When using high security, warn
11991         about SHA1 certificates, which are now believed to be open to
11992         spoofing.
11994 2016-01-03  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
11996         Refactor mml-smime.el, mml1991.el, mml2015.el
11998         (Maybe this is the last merge from Gnus git to Emacs git)
12000         Cf. discussion on ding mailing list, messages in
12001         <http://thread.gmane.org/gmane.emacs.gnus.general/86228>.
12002         Common code from the three files mml-smime.el, mml1991.el, and
12003         mml2015.el is moved to mml-sec.el.  Auxiliary functions are added
12004         to gnus-util.el.
12006         The code is supported by test cases with necessary test keys.
12008         Documentation in message.texi is updated.
12010         * doc/misc/message.texi (Security, Using S/MIME):
12011         Update for refactoring mml-smime.el, mml1991.el, mml2015.el.
12012         (Using OpenPGP): Rename from "Using PGP/MIME"; update contents.
12013         (Passphrase caching, Encrypt-to-self, Bcc Warning): New sections.
12015         * lisp/gnus/gnus-util.el (gnus-test-list, gnus-subsetp, gnus-setdiff):
12016         New functions.
12018         * lisp/gnus/mml-sec.el: Require gnus-util and epg.
12019         (epa--select-keys): Autoload.
12020         (mml-signencrypt-style-alist, mml-secure-cache-passphrase): Doc fix.
12021         (mml-secure-openpgp-signers): New user option;
12022         make mml1991-signers and mml2015-signers obsolete aliases to it.
12023         (mml-secure-smime-signers): New user option;
12024         make mml-smime-signers an obsolete alias to it.
12025         (mml-secure-openpgp-encrypt-to-self): New user option;
12026         make mml1991-encrypt-to-self and mml2015-encrypt-to-self obsolete
12027         aliases to it.
12028         (mml-secure-smime-encrypt-to-self): New user option;
12029         make mml-smime-encrypt-to-self an obsolete alias to it.
12030         (mml-secure-openpgp-sign-with-sender): New user option;
12031         make mml2015-sign-with-sender an obsolete alias to it.
12032         (mml-secure-smime-sign-with-sender): New user option;
12033         make mml-smime-sign-with-sender an obsolete alias to it.
12034         (mml-secure-openpgp-always-trust): New user option;
12035         make mml2015-always-trust an obsolete alias to it.
12036         (mml-secure-fail-when-key-problem, mml-secure-key-preferences):
12037         New user options.
12038         (mml-secure-cust-usage-lookup, mml-secure-cust-fpr-lookup)
12039         (mml-secure-cust-record-keys, mml-secure-cust-remove-keys)
12040         (mml-secure-add-secret-key-id, mml-secure-clear-secret-key-id-list)
12041         (mml-secure-cache-passphrase-p, mml-secure-cache-expiry-interval)
12042         (mml-secure-passphrase-callback, mml-secure-check-user-id)
12043         (mml-secure-secret-key-exists-p, mml-secure-check-sub-key)
12044         (mml-secure-find-usable-keys, mml-secure-select-preferred-keys)
12045         (mml-secure-fingerprint, mml-secure-filter-keys)
12046         (mml-secure-normalize-cust-name, mml-secure-select-keys)
12047         (mml-secure-select-keys-1, mml-secure-signer-names, mml-secure-signers)
12048         (mml-secure-self-recipients, mml-secure-recipients)
12049         (mml-secure-epg-encrypt, mml-secure-epg-sign): New functions.
12051         * lisp/gnus/mml-smime.el: Require epg;
12052         refactor declaration and autoloading of epg functions.
12053         (mml-smime-use): Doc fix.
12054         (mml-smime-cache-passphrase, mml-smime-passphrase-cache-expiry):
12055         Obsolete.
12056         (mml-smime-get-dns-cert, mml-smime-get-ldap-cert):
12057         Use format instead of gnus-format-message.
12058         (mml-smime-epg-secret-key-id-list): Remove variable.
12059         (mml-smime-epg-passphrase-callback, mml-smime-epg-find-usable-key)
12060         (mml-smime-epg-find-usable-secret-key): Remove functions.
12061         (mml-smime-epg-sign, mml-smime-epg-encrypt): Refactor.
12063         * lisp/gnus/mml1991.el (mml1991-cache-passphrase)
12064         (mml1991-passphrase-cache-expiry): Obsolete.
12065         (mml1991-epg-secret-key-id-list): Remove variable.
12066         (mml1991-epg-passphrase-callback, mml1991-epg-find-usable-key)
12067         (mml1991-epg-find-usable-secret-key): Remove functions.
12068         (mml1991-epg-sign, mml1991-epg-encrypt): Refactor.
12070         * lisp/gnus/mml2015.el (mml2015-cache-passphrase)
12071         (mml2015-passphrase-cache-expiry): Obsolete.
12072         (mml2015-epg-secret-key-id-list): Remove variable.
12073         (mml2015-epg-passphrase-callback, mml2015-epg-check-user-id)
12074         (mml2015-epg-check-sub-key, mml2015-epg-find-usable-key)
12075         (mml2015-epg-find-usable-secret-key): Remove functions.
12076         (mml2015-epg-decrypt, mml2015-epg-clear-decrypt, mml2015-epg-sign)
12077         (mml2015-epg-encrypt): Refactor.
12079 2016-01-02  Glenn Morris  <rgm@gnu.org>
12081         * lisp/progmodes/fortran.el (fortran-make-syntax-propertize-function):
12083         Explicitly ignore case.  (Bug#22262)
12085 2016-01-02  Stefan Monnier  <monnier@iro.umontreal.ca>
12087         (semantic-symref-derive-find-filepatterns): Return a list
12089         * lisp/cedet/semantic/symref/grep.el
12090         (semantic-symref-derive-find-filepatterns): Return a list.
12091         (semantic-symref-perform-search): Quote the result here once and for all.
12093 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
12095         Fix xref-find-references on MS-Windows
12097         * lisp/cedet/semantic/symref/grep.el
12098         (semantic-symref-derive-find-filepatterns): Use
12099         'shell-quote-argument' instead of manually quoting in a way that
12100         only works with Posix shells.  (Bug#22289)
12102 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
12104         Document new features of tildify-mode
12106         * lisp/textmodes/tildify.el (tildify-foreach-ignore-environments)
12107         (tildify-mode): Spelling fixes in doc strings.
12109         * etc/NEWS: Reformat the tildify-mode entry.
12111 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
12113         Document new features of Whitespace mode
12115         * doc/emacs/display.texi (Useless Whitespace): Document
12116         'whitespace-toggle-options' and the new 'big-indent' style.
12117         Document 'whitespace-big-indent-regexp'.  Document the Global
12118         Whitespace mode.
12120 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
12122         Improve documentation of new Hide-IfDef features
12124         * etc/NEWS: Expand and reword Hide-IfDef section.
12126 2016-01-02  Leo Liu  <sdl.web@gmail.com>
12128         Fix regression in font-locking cl-assert and cl-check-type
12130         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2): Fix
12131           el-errs-re.
12133 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
12135         Spelling and grammar fixes
12137 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
12139         Fix copyright years by hand
12141         These are dates that admin/update-copyright did not update, or
12142         updated incorrectly.
12144 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
12146         Update copyright year to 2016
12148         Run admin/update-copyright.
12150 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
12152         Merge from gnulib
12154         This mostly just updates copyright dates of gnulib files.
12155         It also updates to the latest version of texinfo.tex.
12157 2015-12-31  Mark Oteiza  <mvoteiza@udel.edu>
12159         lisp/emacs-lisp/chart.el (chart-new-buffer): Move to silence byte compiler.
12161 2015-12-31  Mark Oteiza  <mvoteiza@udel.edu>
12163         Port chart.el methods to cl-generic.
12165         cl-call-next-method cannot be used inside EIEIO's defmethod.
12166         * lisp/emacs-lisp/chart.el: Require cl-generic at compile time.
12167         * lisp/emacs-lisp/chart.el (initialize-instance, chart-draw):
12168         (chart-draw-title, chart-size-in-dir, chart-draw-axis):
12169         (chart-axis-draw, chart-translate-xpos, chart-translate-ypos):
12170         (chart-translate-namezone, chart-draw-data, chart-add-sequence):
12171         (chart-trim, chart-sort): Use cl-defmethod instead of defmethod.
12173 2015-12-31  Brian Burns  <bburns.km@gmail.com>
12175         Add nt/INSTALL.W64 build instructions
12177         * nt/INSTALL.W64: New file.
12178         * nt/INSTALL: Point to INSTALL.W64 for 64-bit build instructions.
12180 2015-12-31  Joakim Jalap  <joakim.jalap@fastmail.com>
12182         Add new input method 'programmer-dvorak'
12184         * lisp/leim/quail/programmer-dvorak.el ("programmer-dvorak"): New
12185         input method.
12187         * etc/NEWS: Mention it.
12189 2015-12-31  Eli Zaretskii  <eliz@gnu.org>
12191         Allow to invoke original M-TAB binding in 'flyspell-prog-mode'
12193         * lisp/textmodes/flyspell.el (flyspell-prog-mode): Record the
12194         original M-TAB binding in a buffer-local variable.
12195         (flyspell-auto-correct-word): Invoke the original binding of M-TAB
12196         if that is recorded, when point is in a place where flyspell
12197         should not be active (e.g., because the user turned on
12198         'flyspell-prog-mode').  (Bug#18533)
12200 2015-12-31  Eli Zaretskii  <eliz@gnu.org>
12202         Fix EWW rendering of long RTL lines
12204         * lisp/net/shr.el (shr-insert-document): Undo any previous hscroll
12205         of the selected window before filling its lines.  (Bug#22250)
12207 2015-12-31  Vincent Belaïche  <vincentb1@users.sourceforge.net>
12209         fix  bug#21054
12211         * lisp/ses.el (ses-check-curcell): Call `ses-set-curcell' unconditionally
12213 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12215         Clean up cairo printing code
12217         * src/gtkutil.c (xg_get_page_setup): Use listn.
12218         * src/xfns.c (Fx_export_frames, Fx_print_frames_dialog): Doc fix.  Use
12219         decode_window_system_frame and FRAME_VISIBLE_P.
12220         (Fx_print_frames_dialog): Use redisplay_preserve_echo_area instead
12221         of Fdisplay.
12222         * src/xterm.c (x_cr_export_frames): Use redisplay_preserve_echo_area
12223         instead of Fdisplay.  Temporarily unblock_input around QUIT.
12225 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12227         Move variables to inner loop, preparing for Mac port merge
12229         * src/keyboard.c (command_loop_1): Move variables `cmd',
12230         `keybuf', and `i' to inner loop.
12232 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12234         Add handle_user_signal_hook
12236         * src/keyboard.h (handle_user_signal_hook): New declaration.
12237         * src/keyboard.c (handle_user_signal_hook): New variable.
12238         (handle_user_signal): Call it.
12240 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12242         Avoid writing to purespace
12244         * src/alloc.c (Fmake_string): Don't write to empty string contents.
12245         (allocate_vector): Don't write to empty vector size.
12246         * src/character.h (CHECK_CHARACTER_CAR, CHECK_CHARACTER_CDR):
12247         Don't call unnecessary XSETCAR or XSETCDR.
12248         * src/lisp.h (STRING_SET_UNIBYTE, STRING_SET_MULTIBYTE): Don't
12249         write to empty string size_byte.
12251 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12253         Remove unused variable
12255         * lisp/international/mule-cmds.el: Remove unused variable
12256         `mac-system-coding-system'.
12258 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12260         * configure.ac: Find libxml2 headers in Xcode SDK dir on Darwin.
12262 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12264         Use posix_openpt instead of openpty on Darwin
12266         * configure.ac (PTY_ITERATION, FIRST_PTY_LETTER, PTY_OPEN)
12267         (PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF): Remove
12268         Darwin-specific definitions.  Use posix_openpt instead.
12270 2015-12-30  Shakthi Kannan  <shakthimaan@gmail.com>
12272         Document support for ':documentation' in Lisp mode
12274         * lisp/emacs-lisp/lisp-mode.el (lisp-string-in-doc-position-p)
12275         (lisp-string-after-doc-keyword-p)
12276         (lisp-font-lock-syntactic-face-function): Add doc strings.
12278 2015-12-30  Shakthi Kannan  <shakthimaan@gmail.com>
12280         Document new features of TeX mode
12282         * doc/emacs/text.texi (TeX Print): Document
12283         'tex-print-file-extension'.
12284         * doc/emacs/programs.texi (Misc for Programs): Document support
12285         for Prettify Symbols mode in TeX mode.
12287 2015-12-30  Eli Zaretskii  <eliz@gnu.org>
12289         Clarify docs of hscroll in RTL text
12291         * doc/lispref/windows.texi (Horizontal Scrolling): Clarify the
12292         meaning of a window's horizontal scroll amount for RTL paragraphs.
12294 2015-12-30  Eli Zaretskii  <eliz@gnu.org>
12296         Fix rendering of HTML pages that use character composition
12298         * src/indent.c (Fvertical_motion): Fix the case when point starts
12299         in the middle of a composition, as in shr-vertical-motion.
12300         (Bug#22250)
12302 2015-12-30  Eli Zaretskii  <eliz@gnu.org>
12304         Avoid some compiler warnings in w32.c
12306         * src/w32.c (codepage_for_filenames, crlf_to_lf)
12307         (ansi_encode_filename, socket_to_fd, sys_write)
12308         (check_windows_init_file): Avoid compiler warnings about
12309         differences in pointer signedness.
12311 2015-12-30  Dmitry Gutov  <dgutov@yandex.ru>
12313         Undo ill-advised change
12315         * lisp/progmodes/xref.el (xref-collect-matches): Undo
12316         ill-advised change.  The hits come in the order that `find'
12317         produces them in, which isn't alphabetical.
12319 2015-12-30  Dmitry Gutov  <dgutov@yandex.ru>
12321         Unbreak completion in python-mode buffers
12323         * lisp/progmodes/python.el (python-shell-completion-at-point):
12324         Unbreak in python-mode buffers.
12326 2015-12-29  Eli Zaretskii  <eliz@gnu.org>
12328         Fix typos in CC Mode manual
12330         * doc/misc/cc-mode.texi (c-offsets-alist, Style Variables): Fix
12331         typos.  (Bug#22267)
12333 2015-12-29  Eli Zaretskii  <eliz@gnu.org>
12335         Avoid assertion violations in compact_font_cache_entry
12337         * src/alloc.c (compact_font_cache_entry): Don't use VECTORP to
12338         avoid assertion violation in ASIZE.  (Bug#22263)
12340 2015-12-29  Eli Zaretskii  <eliz@gnu.org>
12342         Fix filling text with bidirectional characters in shr.el
12344         * lisp/net/shr.el (shr-insert-document): Bind
12345         bidi-display-reordering to nil while filling lines.  This is
12346         required for when a line includes characters whose bidi
12347         directionality is opposite to the base paragraph direction,
12348         because columns are counted in the logical order.  (Bug#22250)
12350 2015-12-29  Martin Rudalics  <rudalics@gmx.at>
12352         * src/xfns.c (x_create_tip_frame): Process alpha parameter.
12354 2015-12-29  Michael Albinus  <michael.albinus@gmx.de>
12356         Sync with Tramp 2.2.13
12358         * doc/misc/trampver.texi: Change version to "2.2.13.25.1".
12360         * lisp/net/tramp-compat.el (tramp-compat-delete-dups):
12361         Use `tramp-compat-funcall'.
12363         * lisp/net/tramp-gvfs.el (tramp-gvfs-parse-device-names):
12364         Make `split-string' call compatible with older Emacsen.
12366         * lisp/net/trampver.el: Change version to "2.2.13.25.1".
12368 2015-12-29  Lambda Coder  <sjLambda@gmail.com>
12370         * doc/misc/tramp.texi: Editorial revisions to the Tramp manual
12372 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
12374         Mention that tls.el is secure by default, and will fail
12376 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
12378         Make tls.el use trustfiles by default
12380         * lisp/net/tls.el (tls-program): Add a certfile by default (bug#21227).
12381         (open-tls-stream): Insert the trustfile by looking at
12382         `gnutls-trustfiles'.
12384 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
12386         Refactor out gnutls-trustfiles
12388         * lisp/net/gnutls.el (gnutls-trustfiles): Refactor out for reuse by tls.el.
12390 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
12392         Remove --insecure from gnutls-cli invocation
12394         * tls.el (tls-program): Default to using secure TLS
12395         connections (bug#19284).
12397 2015-12-29  Paul Eggert  <eggert@cs.ucla.edu>
12399         Spelling fix
12401 2015-12-29  Paul Eggert  <eggert@cs.ucla.edu>
12403         Port report-emacs-bug to deterministic builds
12405         * lisp/mail/emacsbug.el (report-emacs-bug): Future-proof the
12406         recent "built on" change to deterministic builds where
12407         emacs-build-system will be nil.  See:
12408         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg01369.html
12410 2015-12-29  Jose A. Ortega Ruiz  <jao@gnu.org>  (tiny change)
12412         Fix URL auth error message
12414         * lisp/url/url-http.el (url-http-handle-authentication): Make the error
12415         message more correct (bug#20069).
12417 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
12419         shr link traversal fixup
12421         * shr.el (shr-next-link): Don't bug out on adjacent links.
12423         Backport:
12425         (cherry picked from commit 1efc5f8b09273c359683ce13be95fb5df7a84311)
12427 2015-12-28  Tom Tromey  <tom@tromey.com>
12429         set :safe on css-indent-offset
12431         * lisp/textmodes/css-mode.el (css-indent-offset): Add :safe 'integerp.
12433 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
12435         * eww.el (eww-mode): Remove superfluous bidi reset.
12437 2015-12-28  James Stout  <james.wolf.stout@gmail.com>  (tiny change)
12439         Make chunked encoding trailer detection more compliant
12441         * lisp/url/url-http.el
12442         (url-http-chunked-encoding-after-change-function): Make
12443         trailer detection more compliant (bug#16345).
12445 2015-12-28  Martin Rudalics  <rudalics@gmx.at>
12447         Fix Bug#10873 in `report-emacs-bug'
12449         * lisp/mail/emacsbug.el (report-emacs-bug): If
12450         `report-emacs-bug-no-explanations' is nil, make sure we can show
12451         mail and warnings buffer on this frame (Bug#10873).
12453 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
12455         Always reset the bidi direction
12457         * eww.el (eww-display-html): Always reset the bidi direction
12458         to `left-to-right' (bug#22257).
12460 2015-12-28  Alan Mackenzie  <acm@muc.de>
12462         Allow line comments ending with escaped NL to be continued to the next line.
12464         Use this in C, C++, and Objective C Modes.  Fixes bug#22246
12466         * src/syntax.c (comment-end-can-be-escaped): New buffer local variable.
12467         (forw-comment, back-comment): On encountering an end of comment character,
12468         test whether it is escaped when `comment-end-can-be-escaped' is non-nil.
12470         * doc/lispref/syntax.texi (Control Parsing): Describe
12471         `comment-end-can-be-escaped'.
12473         * etc/NEWS (Lisp Changes): Describe `comment-end-can-be-escaped'.
12475         * lisp/progmodes/cc-langs.el: New c-lang-setvar `comment-end-can-be-escaped'.
12477 2015-12-28  Dmitry Gutov  <dgutov@yandex.ru>
12479         Rename project-library-roots to project-external-roots
12481         * lisp/progmodes/project.el (project-library-roots): Rename to
12482         project-external-roots.
12483         (project-library-roots-function): Rename to
12484         project-vc-external-roots-function.  Only use it in the VC
12485         backend, for now.  Update project-external-roots accordingly.
12486         (project-vc-library-roots): Remove.
12487         (project-or-libraries-find-regexp):
12488         Rename to project-or-external-find-regexp.
12490         * lisp/progmodes/elisp-mode.el (elisp-library-roots):
12491         Rename to elisp-load-path-roots.
12493         * lisp/progmodes/etags.el (etags-library-roots): Remove.  Use
12494         an anonymous function for the default value of
12495         project-vc-external-roots-function.
12497 2015-12-27  Deniz Dogan  <deniz@dogan.se>
12499         Clear erc user list upon disconnection
12501         * lisp/erc/erc-backend.el (erc-process-sentinel): Clear channel user
12502         lists upon disconnection.  This prevents invalid channel
12503         user lists when reconnecting (bug#10947).
12505 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
12507         Don't bug out in erc after waking from sleep
12509         * lisp/erc/erc-backend.el (erc-server-send-ping): If the server has
12510         closed connection, this may already have been detected and
12511         `erc-server-last-received-time' has been set to nil (bug#13608).
12513 2015-12-27  David Edmondson  <dme@dme.org>
12515         Proxy error in erc with multiple clients
12517         * lisp/erc/erc.el (erc-channel-receive-names): Fix errors
12518         generated when multiple IRC clients talk to a single IRC proxy
12519         (bug#19034).
12521         Backport:
12523         (cherry picked from commit 507e98a54d1aa37823c64993d6b59257a82fe8f4)
12525 2015-12-27  Dima Kogan  <dima@secretsauce.net>
12527         Ensure that we don't have several timers in erc
12529         * lisp/erc/erc-backend.el (erc-server-setup-periodical-ping): Checks
12530         for existing timers in the alist before adding new ones.  If a
12531         timer already exists, it is cancelled and
12532         overwritten. (bug#19292).
12534 2015-12-27  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
12536         Fix mml-sec build warnings
12538         * lisp/gnus/mml-sec.el: Fix warnings by adding autoloads
12539         (bug#18718).
12541         Backport:
12543         (cherry picked from commit 3603097f62f5f4aa5451716e9ac380161f6829e2)
12545 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
12547         Don't insert erc logs at the end
12549         * lisp/erc/erc-log.el (erc-log-setup-logging): Insert the previous log
12550         at the start of the buffer, not at the end (bug#20496).
12552 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
12554         (eww-setup-buffer): Restore left-to-right defaults
12556         * eww.el (eww-setup-buffer): Restore left-to-right defaults.
12558         Backport:
12560         (cherry picked from commit 96c874b96b617c124d500a94de761a61f2a08685)
12562 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
12564         Don't join erc channels doubly
12566         * lisp/erc/erc-join.el (erc-autojoin-channels): Don't join channels
12567         more than once (if you have several nicks) (bug#20695).
12569 2015-12-27  Eli Zaretskii  <eliz@gnu.org>
12571         Avoid leaving "ghost" of mouse pointer on MS-Windows
12573         * src/w32term.c (frame_set_mouse_pixel_position):
12574         * src/w32fns.c (Fw32_mouse_absolute_pixel_position): Momentarily
12575         disable "mouse trails" when moving the mouse pointer.  (Bug#22247)
12576         * src/w32term.c (frame_set_mouse_pixel_position): Include
12577         w32common.h.
12579 2015-12-27  Krzysztof Jurewicz  <krzysztof.jurewicz@gmail.com>  (tiny change)
12581         Fix auth source lookups from erc with port numbers
12583         * lisp/erc/erc.el (erc-open): `auth-source' wants strings, not port
12584         numbers (bug#20541).
12586 2015-12-27  Fran Litterio  <flitterio@gmail.com>
12588         Run erc-kill-channel-hook always on exit
12590         * lisp/erc/erc.el (erc-kill-buffer-function): Run erc-kill-channel-hook
12591         when erc-kill-queries-on-quit is set (bug#21187).
12593 2015-12-27  Paul Eggert  <eggert@cs.ucla.edu>
12595         Spelling fix
12597         * test/automated/url-parse-tests.el:
12598         (url-generic-parse-url/same-document-reference):
12599         Rename from url-generic-parse-url/same-decument-reference.
12601 2015-12-27  Paul Eggert  <eggert@cs.ucla.edu>
12603         Reword initial *scratch* for brevity, appearance
12605         * lisp/startup.el (initial-scratch-message):
12606         Reword to avoid apostrophes, and to make it shorter.
12607         See the thread starting in:
12608         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg01241.html
12610 2015-12-26  Leo Liu  <sdl.web@gmail.com>
12612         Add ert-deftest to lisp-mode.el
12614         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression,
12615           lisp-el-font-lock-keywords-1): Add ert-deftest.
12617 2015-12-26  Lars Ingebrigtsen  <larsi@gnus.org>
12619         Mark imap changes as not needing doc changes
12621         * lisp/net/imap.el (imap-ssl-open): Remove
12623 2015-12-26  Lars Ingebrigtsen  <larsi@gnus.org>
12625         Use built-in encryption in imap.el
12627         * lisp/net/imap.el (imap-ssl-program): Remove (bug#21134).
12628         (imap-starttls-open): Use open-network-stream instead of starttls.el.
12629         (imap-tls-open): Use open-network-stream instead of tls.el.
12631 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12633         Don't try using /bin/sh in artist.el on MS-Windows
12635         * lisp/textmodes/artist.el (artist-figlet-get-font-list-windows):
12636         New function.
12637         (artist-figlet-choose-font): Use it on MS-Windows and MS-DOS.
12638         (Bug#20167)
12640 2015-12-26  Wolfgang Jenkner  <wjenkner@inode.at>
12642         Always define gmalloc etc. in src/gmalloc.c
12644         This is a work-around to prevent the compiler from using semantic
12645         knowledge about malloc for optimization purposes.  E.g., gcc 5.2
12646         with -O2 replaces most of calloc's definition by a call to calloc;
12647         see Bug#22085.
12648         * src/gmalloc.c [!HYBRID_MALLOC] (malloc, realloc, calloc)
12649         (aligned_alloc, free): Do not undef.  Instead, define these as
12650         functions (perhaps renamed to gmalloc etc.) in terms of gmalloc etc.
12652 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12654         Fix documentation of browse-url browser-related functions
12656         * lisp/net/browse-url.el (browse-url)
12657         (browse-url-default-browser, browse-url-default-windows-browser)
12658         (browse-url-default-macosx-browser, browse-url-chromium)
12659         (browse-url-kde, browse-url-text-xterm): Clarify the usage of ARGS
12660         and NEW-WINDOW arguments in these functions.  (Bug#19421)
12662 2015-12-26  Paul Eggert  <eggert@cs.ucla.edu>
12664         Propagate Bug#14412 fix to backtrace_eval_unrewind
12666         * src/eval.c (unbind_to): Redo so that the FALLTHROUGH!! comment
12667         becomes accurate again. This shouldn’t affect behavior.
12668         (backtrace_eval_unrewind): Apply the recent unbind_to fix here, too.
12670 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12672         Don't produce non-ASCII characters in *scratch*
12674         * lisp/startup.el (initial-scratch-message): Quote apostrophes to
12675         avoid producing non-ASCII characters in the *scratch* buffer's
12676         commentary.
12678 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12680         Document changes in 'compare-windows'
12682         * lisp/vc/compare-w.el (compare-windows-removed)
12683         (compare-windows-added): Doc fix.
12685         * doc/emacs/files.texi (Comparing Files): Document the changes in
12686         window selection by 'compare-windows'.
12688 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12690         Document 'vc-annotate-background-mode'
12692         * doc/emacs/maintaining.texi (Old Revisions): Document
12693         'vc-annotate-background-mode'.
12695 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12697         Document 'vc-region-history'
12699         * doc/emacs/maintaining.texi (VC Change Log): Document
12700         'vc-region-history'.
12702 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12704         Improve documentation of 'vc-push'
12706         * doc/emacs/maintaining.texi (Pulling / Pushing): Expand and
12707         improve the documentation of 'vc-push'.
12709         * lisp/vc/vc.el (vc-pull, vc-push): Doc fix.
12711 2015-12-26  Alain Schneble  <a.s@realize.ch>
12713         Include the tests for the URL parsing fixes
12715 2015-12-26  Alain Schneble  <a.s@realize.ch>
12717         Make relative URL parsing and resolution consistent with RFC 3986 (bug#22044)
12719         * test/automated/url-parse-tests.el: Add tests covering url-generic-parse-url.
12720         * test/automated/url-expand-tests.el: Add tests covering url-expand-file-name.
12721         * lisp/url/url-parse.el (url-generic-parse-url): Keep empty fragment
12722         information in URL-struct.
12723         * lisp/url/url-parse.el (url-path-and-query): Do not artificially turn empty
12724         path and query into nil path and query, respectively.
12725         * lisp/url/url-expand.el (url-expander-remove-relative-links): Do not turn
12726         empty path into an absolute ("/") path.
12727         * lisp/url/url-expand.el (url-expand-file-name): Properly resolve
12728         fragment-only URIs. Do not just return them unchanged.
12729         * lisp/url/url-expand.el (url-default-expander): An empty path in the relative
12730         reference URI should not drop the last segment.
12732         Backport:
12734         (cherry picked from commit b792ecea1715e080ad8e232d3d154b8a25d2edfb)
12736 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12738         Document 'url-user-agent'.
12740         * lisp/url/url-http.el (url-user-agent): Move from here...
12741         * lisp/url/url-vars.el (url-user-agent): ...to here.  This is to
12742         keep all the URL defcustoms in one place, and also have it defined
12743         whenever the URL library is loaded.
12745         * doc/misc/url.texi (Customization): Document 'url-user-agent'.
12747 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12749         Document protocols supported by URL library via Tramp
12751         * doc/misc/url.texi (Tramp): New node, describes the URL schemes
12752         supported via Tramp.
12753         (Supported URL Types, file/ftp, rlogin/telnet/tn3270): Mention
12754         Tramp.
12756 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12758         Document changes in Shell-script mode
12760         * lisp/progmodes/sh-script.el (sh-mode, sh-set-shell): Document
12761         the 'sh-shell' file-local variable.
12762         (top level): Add an auto-load form to avoid byte-compiler warning
12763         about 'comint-send-string'.
12765 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12767         Fix documentation of 'ses-define-local-printer'
12769         * doc/misc/ses.texi (Printer functions): Fix whitespace between
12770         sentences and punctuation.  Add an index entry for
12771         'ses-define-local-printer'.
12773 2015-12-26  Shakthi Kannan  <shakthimaan@gmail.com>
12775         Document 'ert-summarize-tests-batch-and-exit'
12777         * doc/misc/ert.texi (Running Tests in Batch Mode): Document
12778         'ert-summarize-tests-batch-and-exit'.
12780 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12782         Avoid assertion violation in unbind_to
12784         * src/eval.c (unbind_to) <SPECPDL_LET>: Avoid assertion violation
12785         if we get here with an object that is not a symbol.  (Bug#14412)
12787 2015-12-25  Andreas Schwab  <schwab@linux-m68k.org>
12789         Don't treat /foo/bar:mumble as ange-ftp address
12791                 * lisp/net/browse-url.el (browse-url-filename-alist): Match colons
12792                 only in the first component.  (bug#5362)
12794 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12796         Follow <meta> redirects in eww
12798         Merge conflict, but I think I resolved it.
12800             Follow meta refresh tags in eww
12802             * eww.el (eww-tag-meta): Follow meta refresh tags (bug#22234).
12804         Backport:
12806 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12808         Allow http://user:pass@foo/ URLs again
12810         * lisp/url/url-auth.el (url-basic-auth): Allow explicit
12811         user/passwords in URLs (bug#19046).
12813         Backport:
12815         (cherry picked from commit b563715a2db265517d5a77f165a42afa1e233fdd)
12817 2015-12-25  Samer Masterson  <samer@samertm.com>
12819         Autoload url-insert-buffer-contents
12821         * lisp/url/url-handlers.el: Add autoload cookie so that
12822         `package-list-packages' doesn't bug out (bug#21927) (tiny change)
12824         Backport:
12826         (cherry picked from commit 7a7b5b492ff9929eecd90c4564db6fbf3b192323)
12828 2015-12-25  Eli Zaretskii  <eliz@gnu.org>
12830         Make sure *scratch* etc. use forward slashes in its default-directory
12832         * lisp/startup.el (normal-top-level): On MS-Windows, convert
12833         backslashes to forward slashes while decoding default-directory
12834         of the initially-created buffers.
12836 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12838         More eww file name coding fixes
12840         * eww.el (eww-decode-url-file-name): Use the base coding
12841         system to check for encodability.
12843         Backport:
12845         (cherry picked from commit a8627008abe4ab339df19b417776da28b3ce0fc7)
12847 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12849         Always save eww history
12851         * eww.el (eww-setup-buffer): Always save history, even when
12852         called from outside the eww buffer (bug#19638).
12854         Backport:
12856         (cherry picked from commit 2a0f18d9b6ce0ccce3d9c4a4a3b5743bae71b41e)
12858 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12860         Default web pages to right-to-left
12862         * eww.el (eww-mode): Most web pages are left-to-right, so make
12863         that the default (bug#19801).
12865         * shr.el (shr-tag-html): Respect "dir" attributes
12866         (left-to-right, right-to-left).
12868         Backport:
12870         (cherry picked from commit 9e089ec8a380ec3758fcf1564c5f86dc92c68c2a)
12872 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12874         Make toggling checkboxes work again
12876         * eww.el (eww-update-field): Make toggling checkboxes work
12877         again (bug#21881).
12879         Backport:
12881         (cherry picked from commit 5e56f606952e5e81b4d3a93ea70e791b74b33041)
12883 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12885         Don't store cookies with empty names
12887         * lisp/url/url-cookie.el (url-cookie-store): Refuse to store
12888         cookies with empty names (bug#21936).
12890         Backport:
12892         (cherry picked from commit 9f0fd7cb1aec3eb9e2e0f7b8854c30870286d96c)
12894 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12896         Stop rendering HTML before specdlr exhaustion
12898         Fixes: 22117
12900         * shr.el (shr-descend): Stop rendering before we run out of
12901         specpdl room (bug#22117).
12903         Backport:
12905         (cherry picked from commit 248da292fe46224b0b5a79b632c89cf4de2c2081)
12907 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12909         Use cl-reduce, not reduce.
12911         Backport:
12913         (cherry picked from commit fe4606f93b91ff3d046aee0cf21ecc277af7a786)
12915 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12917         Allow several <tbody> tags in shr
12919         * shr.el (shr-table-body): New function to find the real body
12920         of a table.
12921         (shr-tag-table): Use it to render several <tbody> tags in a
12922         table (bug#22170).
12924         Backport:
12926         (cherry picked from commit cdaf33029d6620073833876d76056045ecfbc7c4)
12928 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12930         Make prettier unique file names in eww
12932         (eww-make-unique-file-name): Make unique file names by making
12933         files like foo(2).jpg instead of foo(1)(2).jpg.
12935         Backport:
12937         (cherry picked from commit edfdd0a6cbdfa9e5e4bd0553e2b489401ca39266)
12939 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12941         Decode hex-encoded URLs before using them as file names
12943         * eww.el (eww-decode-url-file-name): New function.
12944         (eww-download-callback): Use it to decode file names before
12945         saving them.
12947         Backport:
12949         (cherry picked from commit af22a010d87516c2a646572fb27512c03057784f)
12951 2015-12-25  Ashish SHUKLA  <ashish.is@lostca.se>
12953         Add FreeBSD cert bundle
12955         * doc/misc/emacs-gnutls.texi (Help For Users): Document
12956         FreeBSD bundle.
12958         * lisp/net/gnutls.el (gnutls-trustfiles): Add FreeBSD cert bundle.
12960         Backport:
12962         (cherry picked from commit 60c0f1a18ad88d6dc1a8f4ee5d9d18940eaeb6f7)
12964 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12966         Ignore invalid SVG images
12968         * shr.el (shr-tag-svg): Ignore SVG images that have no width
12969         or height, because these can't be displayed by ImageMagick,
12970         anyway.
12972         Backport:
12974         (cherry picked from commit 821107d53c2e390240d25c036b99ebbf9b4a93b6)
12976 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12978         shr table rendering fix
12980         * shr.el (shr-tag-table): Allow rendering body-less tables
12981         that have headers.
12983         Backport:
12985         (cherry picked from commit b05471e42c17e02c56c87d7599ada0c124a5fe09)
12987 2015-12-25  Eli Zaretskii  <eliz@gnu.org>
12989         Restore info about the build host in bug reports
12991         * lisp/mail/emacsbug.el (report-emacs-bug): Report the system on
12992         which Emacs was built.  This is important information for
12993         investigating bug reports reported by users who don't build their
12994         Emacs.
12996 2015-12-25  Eli Zaretskii  <eliz@gnu.org>
12998         Fix bootstrap broken by changes related to OS X file-name encoding
13000         * lisp/international/ucs-normalize.el (eval-when-compile): Make
13001         sure char-code-property-alist includes elements that allow access
13002         to 'decomposition' and 'canonical-combining-class' Unicode
13003         properties, as compiling ucs-normalize.el requires that.
13004         * lisp/loadup.el (featurep 'ns): Load ucs-normalize and ns-win
13005         only of charprop.el was already loaded.
13007         * src/Makefile.in ($(lispsource)/international/ucs-normalize.elc):
13008         New order-only dependency.
13010 2015-12-25  Leo Liu  <sdl.web@gmail.com>
13012         * lisp/ido.el (ido-add-virtual-buffers-to-list): Use bookmark-get-filename.
13014 2015-12-25  Michael Albinus  <michael.albinus@gmx.de>
13016         Make tramp-test29-vc-registered more robust
13018         * test/automated/tramp-tests.el (tramp-test29-vc-registered):
13019         Move `bzr' case down.  Skip test when `vc-create-repo' fails.
13020         Remove instrumentation.
13022 2015-12-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
13024         * lisp/term/x-win.el (x-gtk-stock-map): Fix typo.
13026 2015-12-24  Katsumi Yamaoka  <yamaoka@jpl.org>
13028         Fix `gnus-union' so as to behave like `cl-union'
13030         * lisp/gnus/gnus-group.el (gnus-group-prepare-flat):
13031         Make gnus-union use `equal' to compare items in lists.
13033         * lisp/gnus/gnus-util.el (gnus-union):
13034         Make it behave like cl-union partially.
13036 2015-12-23  Paul Eggert  <eggert@cs.ucla.edu>
13038         Fix dired.c typo with ptrdiff_t vs Lisp_Object
13040         * src/dired.c (file_name_completion): Don't assume Lisp_Object is
13041         an integer type, fixing a problem introduced in the recent fix for
13042         Bug#22169.
13044 2015-12-23  Eli Zaretskii  <eliz@gnu.org>
13046         Document default process sentinel more prominently
13048         * doc/lispref/processes.texi (Asynchronous Processes): Mention the
13049         defaults for process filter and sentinel.  Provide cross-references.
13050         (Process Information): Provide cross-references to where filters
13051         and sentinels are described.
13052         (Filter Functions): Add an index entry for "default filter".
13053         (Sentinels): Add a few status messages not documented previously.
13054         Resolve the "killed" confusion.  Document and describe the default
13055         sentinel.  (Bug#22220)
13057 2015-12-23  Eli Zaretskii  <eliz@gnu.org>
13059         Fix file-name completion on OS X
13061         * src/dired.c (file_name_completion): Reject false matches due to
13062         file-name-coding-systems that decompose characters when encoding
13063         file names, by comparing decoded file names as well.  (Bug#22169)
13064         (syms_of_dired) <Qdecomposed_characters>: New DEFSYM.
13066         * lisp/international/ucs-normalize.el (utf-8-hfs): Give it a
13067         non-nil 'decomposed-characters' property.
13069 2015-12-23  Anders Lindgren  <andlind@gmail.com>
13071         File-name completion of non-ASCII characters on OS X (bug#22169)
13073         The coding system `utf-8-nfd', locally defined in ns-win.el,
13074         didn't provide a :pre-write-conversion method, causing file name
13075         completion of non-ASCII characters to fail.  Solved by using the
13076         `utf-8-hfs' coding system provided by `ucs-normalize'.
13078         * lisp/loadup.el: Load international/ucs-normalize (when building
13079         for ns).
13081         * lisp/term/ns-win.el (utf-8-nfd): Made `utf-8-nfd' as alias for
13082         `utf-8-hfs' and removed the old implementation.  Set `utf-8-hfs'
13083         as the file name coding system.
13085         * src/nsfns.m (ns-convert-utf8-nfd-to-nfc): Removed.
13087 2015-12-23  Tom Tromey  <tom@tromey.com>
13089         Fix bug #18588 by making bug-reference-bug-regexp more lenient
13091         * lisp/progmodes/bug-reference.el (bug-reference-bug-regexp): Accept
13092         "bug NNNN".  (Bug #18588)
13094 2015-12-23  Tom Tromey  <tom@tromey.com>
13096         add some cl-* aliases to lisp-mode imenu
13098         * (lisp-imenu-generic-expression): Add cl-define-compiler-macro,
13099         cl-defgeneric, and cl-defmethod.
13101 2015-12-22  Tom Tromey  <tom@tromey.com>
13103         Make a variable buffer-local
13105         * lisp/generic-x.el (generic-rul-mode-setup-function): Make
13106         font-lock-syntax-table buffer-local.  (Bug #21627)
13108 2015-12-22  Eli Zaretskii  <eliz@gnu.org>
13110         Fix decoding of text in URLs retrieved by EWW
13112         * lisp/net/eww.el (eww-render): Pass 'charset' to
13113         'eww-display-raw'.  Use the value of 'last-coding-system-used', if
13114         non-nil, to set 'buffer-file-coding-system' of the buffer where we
13115         show the URL.
13116         (eww-display-html, eww-display-raw): Decode the text correctly,
13117         using the charset found in the headers, and defaulting to UTF-8.
13118         If the user told us to use a specific encoding, override the
13119         charset from the headers.  (Bug#22222)
13121 2015-12-22  Alan Mackenzie  <acm@muc.de>
13123         Fix a coding error in c-forward-<>-arglist-recur.  Fixes bug#22156
13125         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur): Remove unused
13126         variable `tmp'.
13127         After a failed search for a matching ">", restore point before continuing.
13129 2015-12-22  Michael Albinus  <michael.albinus@gmx.de>
13131         Instrument Tramp tests
13133         * test/automated/tramp-tests.el (tramp-test29-vc-registered)
13134         (tramp--test-utf8): Instrument tests.
13136 2015-12-22  Martin Rudalics  <rudalics@gmx.at>
13138         Fix `display-buffer' call in `display-message-or-buffer' (Bug#22221)
13140         * lisp/simple.el (display-message-or-buffer): Call
13141         `display-buffer' with ACTION instead of NOT-THIS-WINDOW
13142         (Bug#22221).
13144 2015-12-22  Juri Linkov  <juri@linkov.net>
13146         * lisp/saveplace.el (toggle-save-place, save-place-to-alist)
13148         (save-places-to-alist, save-place-dired-hook):
13149         Check for dired-subdir-alist.  (Bug#19851)
13151 2015-12-21  Paul Eggert  <eggert@cs.ucla.edu>
13153         Add FIXME comment re stack overflow and modules
13155 2015-12-21  Paul Eggert  <eggert@cs.ucla.edu>
13157         Revert some recent emacs-module commentary
13159         Most of the recently-added commentary was incorrect, due to the
13160         possibility of stack overflow.
13162 2015-12-21  Paul Eggert  <eggert@cs.ucla.edu>
13164         Spelling fix: prefer "cooperate" to "co-operate"
13166 2015-12-21  Paul Eggert  <eggert@cs.ucla.edu>
13168         Port undo fixes to -fno-common
13170         Port recent fix for Bug#21968 to platforms like 'gcc -fno-common'.
13171         * src/keyboard.c, src/keyboard.h (point_before_last_command_or_undo)
13172         (buffer_before_last_command_or_undo):
13173         Declare in keyboard.h, and define in keyboard.c,
13174         instead of assuming the traditional Unix relaxed ref-def linkage.
13176 2015-12-20  Philipp Stephani  <phst@google.com>
13178         Improve commentary for emacs-module.c
13180         * src/lisp.h: Document emacs-module.c assumptions about EQ and NILP.
13181         * src/emacs-module.c (module_non_local_exit_get): Document that we
13182         cannot use the current implementation.
13183         (module_is_not_nil, module_eq): Document assumptions about EQ and
13184         NILP.
13186 2015-12-20  Michael Albinus  <michael.albinus@gmx.de>
13188         Suppress test on Mac OS X
13190         * test/automated/tramp-tests.el (tramp--test-darwin-p): New defun.
13191         (tramp--test-utf8): Use it.
13193 2015-12-20  Alan Mackenzie  <acm@muc.de>
13195         Merge branch 'scratch/follow' into emacs-25
13197         This allows Isearch, etc., to work well when Follow Mode is active.
13199 2015-12-19  Michael Albinus  <michael.albinus@gmx.de>
13201         * lisp/net/tramp-sh.el (tramp-get-ls-command-with-w-option): Improve check.
13203 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13205         Fix last commit
13207         * doc/emacs/rmail.texi (Rmail Deletion): Document new behavior of 'u'
13208         with numeric argument.
13210 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13212         Document new features of Rmail
13214         * doc/emacs/rmail.texi (Rmail Summary Edit, Rmail Deletion):
13215         Document new behavior of 'd' and 'C-d' with numeric argument.
13216         (Rmail Display): Document the rendering of HTML MIME parts.
13218 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13220         Improve documentation of new cl-lib functions
13222         * doc/misc/cl.texi (Predicates on Numbers, Numerical Functions):
13223         Fix wording.
13225 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13227         Document the new feature of 'minibuffer-with-setup-hook'
13229         * lisp/files.el (minibuffer-with-setup-hook): Clarify how FUN is
13230         added to `minibuffer-setup-hook'.
13232 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13234         Document new features of Font Lock
13236         * doc/lispref/modes.texi (Other Font Lock Variables): Document
13237         'font-lock-flush-function' and 'font-lock-ensure-function'.
13238         (Font Lock Basics): Document the basic fontification functions
13239         referenced in "Other Font Lock Variables".
13241         * lisp/font-lock.el (font-lock-flush, font-lock-ensure): Doc fix.
13243 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13245         Document new features of Rectangle mode
13247         * doc/emacs/killing.texi (Rectangles): Document "C-x C-x" in
13248         rectangle-mark-mode.
13250 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13252         Manual followup to last change
13254         * doc/lispref/display.texi (Displaying Messages): Sync with the
13255         doc string.  (Bug#22210)
13257 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13259         Clarify doc string of 'display-message-or-buffer'
13261         * lisp/simple.el (display-message-or-buffer): Doc fix.  Suggested
13262         by Sebastian Wiesner <swiesner@lunaryorn.com>.  (Bug#22210)
13264 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13266         * doc/emacs/emacs.texi (Top): Update top-level menus.
13268         * doc/lispref/elisp.texi (Top): Update top-level menus.
13270 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13272         Document how to avoid file-local variables that aren't
13274         * doc/emacs/custom.texi (Specifying File Variables): Describe how
13275         to prevent Emacs from interpreting unrelated text as file-local
13276         variables.  (Bug#22166)
13278 2015-12-19  Dave Thomas  <dave@pragprog.org>  (tiny change)
13280         Fix a typo in eterm-color's termcap entry
13282         * lisp/term.el (term-termcap-format): Fix a typo in the "ue="
13283         entry.  (Bug#22184)
13285 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13287         Allow 'browse-url-emacs' visit non-existent URLs
13289         * lisp/url/url-handlers.el (url-insert-file-contents): Don't
13290         signal an error if VISIT is non-nil, to more faithfully emulate
13291         the behavior of 'insert-file-contents'.  (Bug#22160)
13293 2015-12-19  Paul Eggert  <eggert@cs.ucla.edu>
13295         Remove SunOS 4.x cruft
13297         Support for SunOS 4.x was removed in Emacs 23 but some cruft was left behind.
13298         * lib-src/pop.c [sun]: Remove no-longer-needed include.
13299         * lwlib/xlwmenu.c (SUNSO41): Remove.
13301 2015-12-19  Paul Eggert  <eggert@cs.ucla.edu>
13303         Merge from gnulib
13305         This mostly commentary fixes.
13306         * doc/misc/texinfo.tex, lib/intprops.h: Copy from gnulib.
13307         * lib/gnulib.mk: Regenerate with new gnulib-tool.
13309 2015-12-18  Michael Albinus  <michael.albinus@gmx.de>
13311         Minor fixes in Tramp
13313         * lisp/net/tramp-sh.el (tramp-do-file-attributes-with-ls):
13314         Reorder ls arguments.
13316         * lisp/net/tramp.el (tramp-dissect-file-name): Fix docstring.
13318 2015-12-18  Michael Albinus  <michael.albinus@gmx.de>
13320         Make tramp a built-in package
13322         * lisp/finder.el (finder-compile-keywords): Update
13323         `package--builtins' also when Version: keyword is available.
13325         * lisp/net/trampver.el: Add Version: keyword.
13326         (tramp-version): Change it to "2.2.13.25.1", in order to be
13327         compatible with `version-to-list'.
13329 2015-12-18  Lele Gaifax  <lele@metapensiero.it>
13331         * etc/tutorials/TUTORIAL.it: Update and fix typos.
13333 2015-12-18  Alan Mackenzie  <acm@muc.de>
13335         Rename `recenter-group' to `recenter-window-group'
13337         * doc/lispref/windows.texi (Textual Scrolling)
13338         * lisp/window.el (top level, recenter-group)
13339         * lisp/follow.el (follow-mode)
13340         * lisp/isearch.el (isearch-back-into-window): Rename `recenter-group' to
13341         `recenter-window-group' and `recenter-group-function' to
13342         `recenter-window-group-function'.
13344 2015-12-18  Eli Zaretskii  <eliz@gnu.org>
13346         Fix vertical-motion in tabulated-list mode
13348         * src/indent.c (Fvertical_motion): When moving from line beginning
13349         to point under line truncation, assume overshoot by one line only
13350         if point actually lies beyond the window's right margin.
13351         (Bug#22194)
13353 2015-12-18  Martin Rudalics  <rudalics@gmx.at>
13355         Don't have help functions call x-display-pixel-width/-height on ttys
13357         * lisp/help.el (temp-buffer-max-height, temp-buffer-max-width):
13358         Don't call x-display-pixel-width/-height on ttys.
13360 2015-12-18  Dmitry Gutov  <dgutov@yandex.ru>
13362         Use 'hg id' in vc-hg-previous-revision
13364         * lisp/vc/vc-hg.el (vc-hg-previous-revision):
13365         Use 'hg id' to retrieve it (bug#22032).
13367 2015-12-17  Alan Mackenzie  <acm@muc.de>
13369         * lisp/follow.el (follow-sit-for): Remove (it's redundant).
13371 2015-12-17  Eli Zaretskii  <eliz@gnu.org>
13373         Fix a typo in the Emacs manual
13375         * doc/emacs/trouble.texi (Sending Patches): Fix a typo.  Reported
13376         by Lele Gaifax <lele@metapensiero.it>.  (Bug#22193)
13378 2015-12-17  Eli Zaretskii  <eliz@gnu.org>
13380         Fix parsing netrc entries with ports
13382         * lisp/gnus/auth-source.el (auth-source-ensure-strings): Don't
13383         make a list out of 't'.  (Bug#22188)
13385         * test/automated/auth-source-tests.el
13386         (auth-source-test-netrc-parse-entry): New test.
13388 2015-12-17  Paul Eggert  <eggert@cs.ucla.edu>
13390         Fix typo in Doug Lea malloc configure log
13392         * configure.ac (emacs_cv_var_doug_lea_malloc):
13393         Fix typo that confused the log output of 'configure'.
13395 2015-12-16  Nicolas Petton  <nicolas@petton.fr>
13397         * etc/NEWS: Mention the new pcase patterns `seq' and `map'.
13399 2015-12-16  Alan Mackenzie  <acm@muc.de>
13401         * etc/NEWS: Move entry on pcase to correct section
13403         (Accidentally omitted from previous commit)
13405 2015-12-16  Alan Mackenzie  <acm@muc.de>
13407         Add documentation for changes to Show Paren mode.
13409         * lisp/paren.el (show-paren-highlight-openparen): Enhance doc string.
13411         * doc/emacs/programs.texi (Matching): Add descriptions of some pertinent user
13412         options, including the new show-paren-when-point-inside-paren and
13413         show-paren-when-point-in-periphery.
13415         * etc/NEWS (.. Specialized Modes ...): Add an entry for Show Paren mode.
13416         Move an entry on pcase to the Lisp Changes section.
13418 2015-12-16  Eli Zaretskii  <eliz@gnu.org>
13420         Document Eldoc changes
13422         * doc/emacs/programs.texi (Lisp Doc): Document Global Eldoc mode.
13424 2015-12-16  Eli Zaretskii  <eliz@gnu.org>
13426         Fix invocation of Python and Guile interpreters from gdb-mi
13428         * lisp/progmodes/gdb-mi.el (gdb-control-commands-regexp): Add
13429         commands for interactive Python and Guile interpreters.
13430         (gdb-send): Recognize various ways of exiting from Python and
13431         Guile interpreters and returning to GDB.  For details, see
13432         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00693.html
13433         and http://stackoverflow.com/questions/31514741.
13435 2015-12-16  Paul Eggert  <eggert@cs.ucla.edu>
13437         Remove attempt to use C11 threads
13439         C11 threads are not needed for Emacs now, and their use is causing
13440         hassles on FreeBSD 10.x.  Problem reported by Ashish SHUKLA in:
13441         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00648.html
13442         * configure.ac: Do not check for C11 threads. Remove unnecessary
13443         fiddling with CPPFLAGS when configuring pthreads.
13444         * src/emacs-module.c (main_thread, check_main_thread)
13445         (module_init): Do not worry about C11 threads.
13447 2015-12-15  Michael Albinus  <michael.albinus@gmx.de>
13449         Set utf8 encoding with stty in Tramp
13451         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
13452         Move up uname check.  Handle Mac OS X eol encoding.  Set utf8
13453         encoding with stty.
13455 2015-12-15  Alan Mackenzie  <acm@muc.de>
13457         Tidy up documentation associated with window groups.
13459         * doc/lispref/windows.texi (Basic Windows): Add an @anchor for "Window
13460         Groups".  Correct example function to `window-group-start'.
13461         (Window Start and End, Textual scrolling): Point to the new anchor.  State
13462         that (most of) the args in window group functions have the same meaning as for
13463         the corresponding window primitives.
13465         * doc/lispref/positions.texi (Screen Lines).  Same as above.
13467 2015-12-15  Michael Albinus  <michael.albinus@gmx.de>
13469         Complete last commit
13471         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
13472         Move uname check up.  Handle Mac OS X eol encoding.
13474 2015-12-15  Michael Albinus  <michael.albinus@gmx.de>
13476         Handle Mac OS X eol encoding in Tramp
13478         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
13479         Handle Mac OS X eol encoding.
13481 2015-12-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
13483         Fix variable name typo in compute_tip_xy
13485         * src/w32fns.c (compute_tip_xy):
13486         * src/xfns.c (compute_tip_xy): Modify *root_x instead of *root_y
13487         when `right' is integer.
13489 2015-12-14  foudfou  <foudil.newbie+git@gmail.com>
13491         * lisp/ibuffer.el: Add ability to (un-)mark or delete buffers in the region.
13493 2015-12-14  Tassilo Horn  <tsdh@gnu.org>
13495         Revert "Fix rx matcher overflow without limiting"
13497         This reverts commit fe27e037663d36be3e5741c2ce86ab4ee8017db1.
13499 2015-12-14  Alan Mackenzie  <acm@muc.de>
13501         Ispell: Bind isearch-regexp-function to nil around call to isearch..-new-loop
13503         * lisp/textmodes/ispell.el (ispell-highlight-spelling-error-overlay): bind
13504         isearch-regexp-function to nil around call to isearch-lazy-highligh-new-loop.
13506 2015-12-14  Tassilo Horn  <tsdh@gnu.org>
13508         Fix rx matcher overflow without limiting
13510         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Improve last
13511         change to the regexp without imposing a limit on the length of the
13512         options.
13514 2015-12-14  Alan Mackenzie  <acm@muc.de>
13516         Enhance ispell-skip-region-alist by generating part of it at runtime.
13518         * lisp/textmodes/ispell.el (ispell--\\w-filter, ispell--make-\\w-expression)
13519         (ispell--make-filename-or-URL-re): New functions which generate a regexp.
13520         (ispell-skip-region-alist): Remove the bit that matches a filename/URL, etc.
13521         (ispell-begin-skip-region-regexp, ispell-skip-region-list, ispell-message):
13522         Include the result of ispell--make-filename-or-URL-re in regexps.
13524 2015-12-14  Glenn Morris  <rgm@gnu.org>
13526         * build-aux/gitlog-to-emacslog: Ignore more pointless merge commits.
13528 2015-12-14  Alan Mackenzie  <acm@muc.de>
13530         Replace GROUP argument in six window primitives by new functions.
13532         * doc/lispref/windows.texi (Window Start and End, Textual Scrolling)
13533         * doc/lispref/positions.texi (Screen Lines): Remove optional GROUP argument
13534         from description of six window functions.  Add in description of new functions
13535         window-group-start, window-group-end, set-window-group-start,
13536         pos-visible-in-window-group-p, recenter-group and move-to-window-group-line,
13537         together with the six variables indirecting to the pertinent group
13538         functions.
13540         * src/window.c
13541         * src/keyboard.c: Revert the commit from 2015-11-11 12:02:48, in so far as it
13542         applies to these two files, which added the GROUP argument to six window
13543         primitives.
13545         * lisp/follow.el (follow-mode): Use updated variable names for the indirected
13546         functions.
13548         * lisp/isearch.el (isearch-update, isearch-done, isearch-string-out-of-window)
13549         (isearch-back-into-window, isearch-lazy-highlight-new-loop)
13550         (isearch-lazy-highlight-search, isearch-lazy-highlight-update): Replace calls
13551         to window primitives (e.g. window-start) with a GROUP argument by calls to
13552         new functions (e.g. window-group-start).
13554         * lisp/textmodes/ispell.el (ispell-command-loop): Replace call to
13555         pos-visible-in-window-p with pos-visible-in-window-group-p.
13557         * lisp/window.el (window-group-start, window-group-end)
13558         (set-window-group-start, recenter-group, pos-visible-in-window-group-p)
13559         (selected-window-group, move-to-window-group-line): New functions.
13560         (window-group-start-function, window-group-end-function)
13561         (set-window-group-start-function, recenter-group-function)
13562         (pos-visible-in-window-group-p-function, selected-window-group-function)
13563         (move-to-window-group-line-function): New variables.
13565 2015-12-14  Vitorio Miguel  <vdrbandeiras@gmail.com>  (tiny change)
13567         * etc/tutorials/TUTORIAL.pt_BR: Fix a typo.  (Bug#22165)
13569 2015-12-13  Tassilo Horn  <tsdh@gnu.org>
13571         Improve regex to not trigger stack overflow
13573         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Improve regex in
13574         order not to trigger a stack overflow in regex matcher with unbalanced
13575         brackets (bug#22146).
13577 2015-12-13  Eli Zaretskii  <eliz@gnu.org>
13579         Fix visiting files with raw-text
13581         * src/fileio.c (Finsert_file_contents): Fix setting buffer unibyte
13582         when some stuff was actually read.  (Bug#22162)
13584 2015-12-13  Tassilo Horn  <tsdh@gnu.org>
13586         Fix regex matching keyval labels
13588         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Fix regexp
13589         matching keyval labels.
13591 2015-12-13  Michael Albinus  <michael.albinus@gmx.de>
13593         * lisp/ido.el (ido-file-name-all-completions-1): Do not raise an error
13595         ... in case of Tramp.  (Bug#20821)
13597 2015-12-13  Paul Eggert  <eggert@cs.ucla.edu>
13599         Fix performance regression with gcc -O0
13601         This fixes the smaller performance hit that I noted in:
13602         https://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00357.html
13603         * src/alloc.c (macro_XPNTR_OR_SYMBOL_OFFSET, macro_XPNTR):
13604         * src/puresize.h (puresize_h_PURE_P)
13605         (puresize_h_CHECK_IMPURE):
13606         New macros, with the old contents of the functions.
13607         * src/alloc.c (XPNTR_OR_SYMBOL_OFFSET, XPNTR):
13608         * src/puresize.h (PURE_P, CHECK_IMPURE):
13609         Use the new macros.  Also macros, if DEFINE_KEY_OPS_AS_MACROS.
13610         * src/conf_post.h (ATTRIBUTE_UNUSED):
13611         * src/lisp.h (DEFINE_KEY_OPS_AS_MACROS): New macros.
13613 2015-12-12  Artur Malabarba  <bruce.connor.am@gmail.com>
13615         * lisp/emacs-lisp/package.el (package-unpack): Security check
13617         Check that we received the package we were offered.
13619 2015-12-12  Artur Malabarba  <bruce.connor.am@gmail.com>
13621         * lisp/emacs-lisp/package.el (package--compile): Don't activate
13623         `package-unpack' takes care of all activations now (other than
13624         `package-initialize).  `package--compile' now only compiles.
13626 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
13628         Document the new bindings of <UP> and <DOWN> in the minibuffer
13630         * doc/emacs/mini.texi (Minibuffer History): Describe the new
13631         bindings of <UP> and <DOWN> in the minibuffer.
13633 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
13635         Document new features of Ido
13637         * doc/misc/ido.texi (Misc): Document 'C-S-b'.
13639 2015-12-12  Martin Rudalics  <rudalics@gmx.at>
13641         Fix frame height calculations with added menu bar on Windows (Bug#22105)
13643         * doc/lispref/frames.texi (Parameter Access): Mention pitfalls
13644         when simultaneously specifying multiple parameters for
13645         `modify-frame-parameters' that all may change the frame's size.
13646         * src/w32fns.c (x_set_menu_bar_lines): Don't set
13647         windows_or_buffers_changed here.
13648         (my_create_tip_window, Fx_show_tip): Call AdjustWindowRect
13649         with third argument false.
13650         * src/w32menu.c (set_frame_menubar): Set
13651         windows_or_buffers_changed here.
13652         * src/w32term.c (x_set_window_size): Determine third argument of
13653         AdjustWindowRect from whether the frame has a menu bar and not
13654         from whether it wants one.
13656 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
13658         Document the change in interactive shell mode
13660         * doc/emacs/misc.texi (Interactive Shell): Document that the
13661         '*shell*' buffer by default displays in a new window.
13663 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
13665         Document new features of package.el
13667         * doc/emacs/package.texi (Package Menu): Document the 'external'
13668         status and the new menu commands.
13669         (Package Installation): Document archive priorities.
13671         * lisp/emacs-lisp/package.el (package-archive-priorities): Doc fix.
13672         (package-menu-hide-low-priority): Doc fix.
13674 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
13676         Update and document new features of xterm support
13678         * doc/emacs/frames.texi (Text-Only Mouse): Document that
13679         track-mouse is supported by newer xterm versions.
13681 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
13683         Document new features of Prettify Mode
13685         * doc/emacs/programs.texi (Misc for Programs): Document
13686         'prettify-symbols-compose-predicate' and
13687         'prettify-symbols-unprettify-at-point'.
13689         * lisp/progmodes/prog-mode.el (prettify-symbols-alist)
13690         (prettify-symbols-default-compose-p)
13691         (prettify-symbols-compose-predicate)
13692         (prettify-symbols--compose-symbol): Doc fixes.
13694 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
13696         Document multi-mode indentation facilities
13698         * doc/lispref/text.texi (Mode-Specific Indent): Document
13699         'prog-indentation-context', 'prog-first-column', and 'prog-widen'.
13701         * lisp/progmodes/prog-mode.el (prog-indentation-context)
13702         (prog-widen): Doc fixes.
13704 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
13706         Document 'vc-refresh-state'
13708         * doc/emacs/maintaining.texi (Version Control): Document
13709         'vc-refresh-state'.
13711         * lisp/vc/vc-hooks.el (vc-refresh-state): Doc fix.
13713 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
13715         Fix echo for "C-u"
13717         * src/keyboard.c (command_loop_1): Undo last change.  It caused
13718         duplicate echo of C-u.  (Bug#22107)
13720 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
13722         Avoid errors when creating files under SVN in new directory
13724         * lisp/vc/vc-svn.el (vc-svn-registered): Use
13725         file-accessible-directory-p, to avoid cd'ing to a non-existing
13726         directory, which signals an error on some systems.  (Bug#21984)
13727         (vc-svn-checkin): Call log-edit-extract-headers with 2 arguments.
13728         Use declare-function to avoid byte-compiler warnings.
13730 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
13732         Improve Lua support in etags
13734         * lib-src/etags.c (Lua_functions): Skip spaces before looking for
13735         "function".
13737         * etc/NEWS: Mention improved Lua support by 'etags'.
13739         * test/etags/lua-src/test.lua (test): Add tests for indented
13740         function definitions.
13741         * test/etags/ETAGS.good_1:
13742         * test/etags/ETAGS.good_2:
13743         * test/etags/ETAGS.good_3:
13744         * test/etags/ETAGS.good_4:
13745         * test/etags/ETAGS.good_5:
13746         * test/etags/ETAGS.good_6:
13747         * test/etags/CTAGS.good: Adapt to the modified Lua tests.
13749 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
13751         Fix 'this-command-keys' wrt prefix argument
13753         * src/keyboard.c (command_loop_1): Restore the feature whereby C-u
13754         was part of this-command-keys, but not of this-single-command-keys.
13755         (Bug#22107)
13757         * lisp/simple.el (internal-echo-keystrokes-prefix): Add
13758         commentary about the function's return value.
13760 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
13762         * lisp/files.el (load-library): Doc fix.  (Bug#22140)
13764 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
13766         Improve and document Ruby support in 'etags'
13768         * lib-src/etags.c (Ruby_suffixes): Add ".ruby".
13769         (Ruby_functions): Support "module" and overloaded operators.
13770         (Ruby_help): Mention "module".
13772         * test/etags/ruby-src/test.rb:
13773         * test/etags/ruby-src/test1.ru: New files.
13774         * test/etags/Makefile (RBSRC): New tests.
13775         (SRCS): Add ${RBSRC}.
13776         * test/etags/ETAGS.good_1:
13777         * test/etags/ETAGS.good_2:
13778         * test/etags/ETAGS.good_3:
13779         * test/etags/ETAGS.good_4:
13780         * test/etags/ETAGS.good_5:
13781         * test/etags/ETAGS.good_6:
13782         * test/etags/CTAGS.good: Adapt to the new Ruby tests.
13784         * doc/man/etags.1: Mention Ruby support.
13785         * etc/NEWS: Mention Ruby support.
13787 2015-12-11  Xi Lu  <lx@shellcodes.org>
13789         Initial support for Ruby in 'etags'
13791         * lib-src/etags.c <Ruby_suffixes>: New variable.
13792         (lang_names): Add an entry for Ruby.
13793         (Ruby_functions): New function.  (Bug#22116)
13795 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
13797         Clarify documentation of 'modify-frame-parameters'
13799         * doc/lispref/frames.texi (Parameter Access): Clarify what "ignored
13800         PARMs" mean for 'modify-frame-parameters'.
13802         * src/frame.c (Fmodify_frame_parameters): Clarify what "ignored
13803         PARMs" mean for this function.  (Bug#22104)
13805 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
13807         Fix setting buffer unibyte when reading from a device
13809         * src/fileio.c (Finsert_file_contents): Call Fset_buffer_multibyte
13810         to make a (possibly non-empty) buffer unibyte.  (Bug#22096)
13812 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
13814         Clarify documentation of 'values'
13816         * doc/lispref/eval.texi (Eval): Clarify that 'values' are not
13817         updated by any evaluation commands in 'lisp-interaction-mode'.
13818         (Bug#22056)
13820 2015-12-11  Anders Lindgren  <andlind@gmail.com>
13822         Fixed subversion vc error when opening file in new directory (bug#21984).
13824         * lisp/vc/vc-svn.el (vc-svn-registered): Check if directory exists.
13826 2015-12-09  Eli Zaretskii  <eliz@gnu.org>
13828         Yet another fix for when point ends up in invisible text
13830         * src/xdisp.c (redisplay_window): When someone forced
13831         window-start, and honoring that failed to show the cursor, try
13832         moving out of invisible text, before falling back to the middle of
13833         the window.  (Bug#22098)
13835 2015-12-09  Michael Albinus  <michael.albinus@gmx.de>
13837         Fix error in Tramp perl script for cygwin
13839         * lisp/net/tramp-sh.el (tramp-perl-file-truename): Do not raise an
13840         error if file doesn't exist.
13842 2015-12-09  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
13844         Remove font workaround for limited outdated versions
13846         * src/macfont.m (mac_font_descriptor_get_adjusted_weight): Remove
13847         workaround for HiraginoSans-W7 on OS X 10.11 and 10.11.1.
13849 2015-12-09  Anders Lindgren  <andlind@gmail.com>
13851         Don't add "." to load path (bug#21104)
13853         When configured with --enable-locallisppath=no, which is the
13854         default for OS X, the load-path incorrectly was populated with ".".
13856         * src/lread.c (init_lread): Don't call `decode_env_path' when
13857         PATH_SITELOADSEARCH is empty.
13859 2015-12-08  Artur Malabarba  <bruce.connor.am@gmail.com>
13861         * lisp/emacs-lisp/package.el (package--with-response-buffer):
13863         Search for the blank-line in the right buffer.
13865 2015-12-08  Glenn Morris  <rgm@gnu.org>
13867         * test/automated/simple-test.el (undo-auto-boundary-timer): Update
13868         for recent change.
13870 2015-12-08  Glenn Morris  <rgm@gnu.org>
13872         Fix some display-warning usage.
13874         * lisp/files.el (hack-local-variables, hack-dir-local-variables):
13875         * lisp/calendar/diary-lib.el (diary-include-files, diary-sexp-entry):
13876         * lisp/calendar/holidays.el (calendar-holiday-list):
13877         * lisp/mail/rmailout.el (rmail-output-read-file-name):
13878         Fix display-warning usage.
13880 2015-12-08  Glenn Morris  <rgm@gnu.org>
13882         * lisp/calendar/cal-html.el: Require diary-lib.
13884         (cal-html-list-diary-entries): Handle no diary.  (Bug#21994)
13886 2015-12-08  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
13888         Add Obsolete-since header to eudcb-ph.el
13890         * lisp/obsolete/eudcb-ph.el: Add Obsolete-since header.
13892 2015-12-07  Paul Eggert  <eggert@cs.ucla.edu>
13894         Spelling fixes
13896         * doc/misc/calc.texi (Predefined Units): Use the bland modern
13897         scientific style for spelling the units “ampere” and
13898         “angstrom” rather than the older style “Ampere” and
13899         “Ångstrom”.  The latter spelling was wrong anyway (it should
13900         have been “Ångström”).
13901         * lisp/emacs-lisp/ert.el (ert--explain-equal-rec):
13902         Fix misspelling of ‘atom’ in code.
13904 2015-12-07  Eli Zaretskii  <eliz@gnu.org>
13906         Improve documentation of kill commands
13908         * lisp/simple.el (region-extract-function, delete-backward-char)
13909         (delete-forward-char, kill-region, copy-region-as-kill)
13910         (kill-ring-save): Better document the optional argument REGION in
13911         the doc strings.  Mention in the doc strings that text put in the
13912         kill-ring can be filtered by 'filter-buffer-substring'.
13914         * doc/lispref/text.texi (Kill Functions): Mention that functions
13915         described in this subsection can filter text they put in the
13916         kill-ring.  Add a cross-reference to "Buffer Contents" and an
13917         index entry.  Document the optional argument 'region' and its
13918         effect.
13919         (Bug#21315)
13921 2015-12-07  Alan Mackenzie  <acm@muc.de>
13923         Further progress making Isearch, Ispell, Replace work with Follow Mode.
13925         * lisp/follow.el: (follow-mode): Remove references to sit*-for-function, which
13926         no longer exists.  Add follow-post-command-hook to  three special purpose
13927         hooks at setup, and remove them at tear down.
13929         * lisp/isearch.el: (isearch-update): invoke isearch-update-post-hook before
13930         isearch-lazy-highlight-new-loop.
13931         (isearch-lazy-highlight-new-loop): Restore this function to what it previously
13932         was, merging the functionality of isearch-lazy-highlight-maybe-new-loop into
13933         it.
13934         (isearch-lazy-highlight-maybe-new-loop): function removed.
13936         * lisp/replace.el: (replace-update-post-hook): New hook variable.
13937         (perform-replace): Add second (nil) argument to looking-back.  Invoke
13938         replace-update-post-hook before calling replace-highlight.
13940         * lisp/textmodes/ispell.el: (ispell-update-post-hook): New hook variable.
13941         (ispell-command-loop): invoke ispell-update-post-hook.  Add GROUP argument to
13942         call of pos-visible-in-window-p.
13943         (ispell-display-buffer): Place *Choices* window at the top of the last window
13944         in a window group.
13946 2015-12-07  Alan Mackenzie  <acm@muc.de>
13948         Amend doc of `mapconcat': it can take sequences, not merely strings.
13950         * doc/lispref/functions.texi (Mapping Functions): Amend the doc of `mapconcat'
13951         to say that SEPARATOR and the results from FUNCTION may be any character
13952         sequences, not just strings.  Add an @xref to "Sequences Arrays Vectors".
13954 2015-12-07  Michael Albinus  <michael.albinus@gmx.de>
13956         Fix an utf8 problem for Tramp on BSD
13958         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
13959         Make lax check for utf8.
13960         (tramp-get-remote-locale): Add "en_US.UTF-8" as candidate.
13962 2015-12-07  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
13964         Make eudcb-ph.el obsolete
13966         * doc/misc/eudc.texi: Bump version to 1.40.0.
13967         Remove PH/QI sections and mentions.
13968         * lisp/obsolete/eudcb-ph.el: Make obsolete.
13969         * lisp/net/eudc-vars.el (eudc-known-protocols): Remove ph.
13970         (eudc-ph-bbdb-conversion-alist): Make obsolete.
13971         * etc/NEWS: Mention this.  (Bug#21191)
13973 2015-12-07  Paul Eggert  <eggert@cs.ucla.edu>
13975         Remove overenthusiastic eassert
13977         * src/lisp.h (XSYMBOL): Remove eassert incorrectly added in
13978         previous change.  It breaks on MS-Windows --with-wide-int.
13979         Problem reported by Eli Zaretskii in:
13980         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00275.html
13982 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
13984         Pacify gcc -Wparentheses
13986         * src/xdisp.c (row_containing_pos): Reparenthesize.
13988 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
13990         Port mod-test to 32-bit Emacs --without-wide-int
13992         * modules/mod-test/test.el (mod-test-sum-test):
13993         Bring back the 2**29 tests, but port them to 32-bit Emacs
13994         --without-wide-int.
13996 2015-12-06  Michael Albinus  <michael.albinus@gmx.de>
13998         Fix minor Tramp problems found on BSD
14000         * lisp/net/tramp-sh.el (tramp-perl-file-truename): Do not append
14001         trailing slash.  Quote apostrophes.
14002         (tramp-sh-handle-file-truename): Do not append trailing slash in
14003         the "ls" case.
14004         (tramp-get-ls-command-with-w-option): New defun.
14005         (tramp-do-file-attributes-with-ls)
14006         (tramp-do-directory-files-and-attributes-with-stat): Use it.
14008         * test/automated/tramp-tests.el
14009         (tramp-test31-special-characters-with-perl)
14010         (tramp-test31-special-characters-with-ls)
14011         (tramp-test32-utf8-with-perl, tramp-test32-utf8-with-ls):
14012         Suppress also readlink.
14014 2015-12-06  Eli Zaretskii  <eliz@gnu.org>
14016         Fix cursor display when invisible text is at line beginning
14018         * src/xdisp.c (redisplay_window): When scrolling fails to show
14019         point, prefer using the desired matrix if possible for finding the
14020         fallback glyph row for displaying the cursor.  (Bug#22098)
14021         (row_containing_pos): Exit the loop as soon as we hit the first
14022         disabled glyph row.  Otherwise we risk accessing garbled data and
14023         departing to the no-no land.
14025 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
14027         Improve module interface when WIDE_EMACS_INT
14029         * src/emacs-module.c (plain_values): New constant.
14030         (module_nil): Now a constant.
14031         (Finternal_module_call, value_to_lisp_bits, lisp_to_value_bits)
14032         (syms_of_module): Use if, not #ifdef, so that both sides are
14033         checked at compile-time, and so that GCC doesn’t complain
14034         about an unused var in the typical case.  Also, depend on
14035         plain_values, not on WIDE_EMACS_INT; the code shouldn’t assume
14036         that WIDE_EMACS_INT implies !USE_LSB_TAG.
14037         (value_to_lisp_bits, lisp_to_value_bits): New functions.
14038         Sign-extend integers rather than zero-extending them, as small
14039         negative integers are more likely.
14040         (value_to_lisp, lisp_to_value): Rewrite in terms of the new *_bits
14041         functions.
14042         (HAVE_STRUCT_ATTRIBUTE_ALIGNED): Define to 0 if not already defined.
14043         (mark_modules): Remove.  All uses removed.
14044         (lisp_to_value): Don’t assume Fcons returns a pointer aligned
14045         to GCALIGNMENT.
14046         (syms_of_module): Check that module_nil converts to Qnil.
14047         * src/lisp.h (lisp_h_XSYMBOL, XSYMBOL): Use signed conversion, since
14048         we prefer signed to unsigned when either will do.
14049         (TAG_PTR): Sign-extend pointers when USE_LSB_TAG, as this is
14050         a bit better for emacs-module.c.
14052 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
14054         Port mod-test to x86-64 GNU/Linux running 32-bit
14056         * modules/mod-test/test.el (mod-test-sum-test):
14057         Don’t attempt to match descriptions to operating systems.
14058         It didn’t work on Fedora x86-64 running a 32-bit executable,
14059         and it’s not worth the trouble anyway.
14060         Port to 32-bit platforms by removing an assumption about
14061         fixnum widths.
14063 2015-12-06  Michael Albinus  <michael.albinus@gmx.de>
14065         Fix auto-revert-tests.el when filenotify isn't used
14067         * test/automated/auto-revert-tests.el (auto-revert--wait-for-revert):
14068         Make it working also when filenotify isn't used.
14070 2015-12-06  Juri Linkov  <juri@linkov.net>
14072         * lisp/textmodes/ispell.el (ispell-highlight-spelling-error-overlay):
14074         Let-bind isearch-regexp-function to nil.  (Bug#22097)
14076 2015-12-05  Artur Malabarba  <bruce.connor.am@gmail.com>
14078         * lisp/emacs-lisp/package.el: Don't install bad signatures (bug#22089)
14080         (package--with-response-buffer): NOERROR and ERROR-FORM only
14081         handle connection errors.
14082         (bad-signature): New error type.
14083         (package--check-signature-content): Use it.
14084         (package--check-signature): Properly distinguish connection errors
14085         from bad-signature errors.  Do the check for
14086         `package-check-signature' `allow-unsigned' here instead of forcing
14087         the callbacks to do it.  Add a new argument, UNWIND.
14088         (package--download-one-archive, package-install-from-archive):
14089         Update usage of `package--check-signature'.
14091 2015-12-05  Ulf Jasper  <ulf.jasper@web.de>
14093         Fix Bug#22092.
14095         * lisp/calendar/icalendar.el (icalendar--get-unfolded-buffer):
14096           Clean up inconsistent line endings. (Bug#22092)
14097           (icalendar--clean-up-line-endings): New.
14098         * test/automated/icalendar-tests.el (icalendar-real-world): Add test
14099           for Bug#22092.
14101 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
14103         Document 'bookmark-set-no-overwrite'
14105         * doc/emacs/regs.texi (Bookmarks): Document the new command
14106         'bookmark-set-no-overwrite' and its keybinding.
14108 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
14110         Document new binding of 'mouse-buffer-menu'
14112         * doc/emacs/buffers.texi (Buffer Menus): 'mouse-buffer-menu' is
14113         now also on C-F10.
14115 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
14117         Initial documentation of dynamic modules
14119         * doc/lispref/loading.texi (Dynamic Modules): New section with
14120         initial documentation for dynamic modules.
14121         * doc/lispref/elisp.texi (Top): Add "Dynamic Modules" to the
14122         detailed menu
14124         * etc/NEWS: Fix typos in dynamic modules' entry.
14126 2015-12-05  Artur Malabarba  <bruce.connor.am@gmail.com>
14128         Remove copyright statements from trivial test files
14130 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
14132         Add "Preliminaries" section to etc/DEBUG
14134         * etc/DEBUG: Add the "Preliminaries" section for GDB beginners.
14135         Most of the content was suggested by Phillip Lord
14136         <phillip.lord@russet.org.uk>.  Remove the section about debugging
14137         with the Visual Studio, as building Emacs with the Microsoft
14138         compilers is no longer supported.  Minor fixes in some other
14139         sections.
14141 2015-12-05  Alex Dunn  <dunn.alex@gmail.com>  (tiny change)
14143         Improve parsing of version strings
14145         * lisp/subr.el (version-regexp-alist): Allow "." as priority separator
14146         (version-to-list): More helpful error messages.
14147         (version-to-list): ".5" is valid (update docstring).  Make
14148         "22.8X3" invalid, as the doc string says.
14150         * test/automated/subr-tests.el (ert-test-version-parsing): New
14151         tests for version string processing.
14153 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
14155         Fix documentation of 'undo' changes
14157         * doc/lispref/text.texi (Undo): Minor wording changes.  Use US
14158         English conventions for spelling and whitespace between sentences.
14160         * etc/NEWS: Fix wording and spelling of undo-related entries.
14161         Mark them as documented.
14163 2015-12-05  Glenn Morris  <rgm@gnu.org>
14165         * lisp/net/net-utils.el: Small improvements.
14167         (net-utils--executable-find-sbin): New function.
14168         (ifconfig-program): Check sbin directories.
14169         Fallback to "ip".  (Bug#22091)
14170         (ifconfig-program-options): Check the actual program in use.
14171         (arp-program): Check sbin directories.
14173 2015-12-04  Arash Esbati  <esbati@gmx.de>  (tiny change)
14175         Fix wrong-type-argument integer-or-marker-p nil error
14177         * lisp/textmodes/reftex-auc.el (reftex-what-index-tag):
14178         Fix (wrong-type-argument integer-or-marker-p nil) error (bug#22077).
14180 2015-12-04  Alan Mackenzie  <acm@muc.de>
14182         lisp/isearch.el: Eliminate macro isearch-call-message, replacing with funcall.
14184 2015-12-04  Alan Mackenzie  <acm@muc.de>
14186         First commit to scratch/follow.  Make Isearch work with Follow Mode, etc.
14188         doc/lispref/window.texi (Basic Windows): Add paragraph defining "Group of
14189         Windows" and new @defun selected-window-group.
14190         (Window Start and End): Describe new &optional parameter GROUP and
14191         ...-group-function for window-start, window-end, set-window-start, and
14192         pos-visible-in-window-p.
14193         (Textual Scrolling) Describe the same for recenter.
14194         doc/lispref/positions.texi (Screen Lines): Describe the same for
14195         move-to-window-line.
14197         src/window.c (Fwindow_start, Fwindow_end, Fset_window_start)
14198         (Fpos_visible_in_window_p, Frecenter, Fmove_to_window_line): To each, add ar
14199         new optional parameter "group".  At the beginning of each, check whether the
14200         corresponding ...-group-function is set to a function, and if so execute this
14201         function in place of the normal processing.
14202         (syms_of_window): Define symbols for the six new variables below.
14203         (window-start-group-function, window-end-group-function)
14204         (set-window-start-group-function, recenter-group-function)
14205         (pos-visible-in-window-p-group-function, move-to-window-line-group-function):
14206         New permanent local buffer local variables.
14207         src/keyboard.c (Fposn_at_point): Add extra parameter in call to
14208         Fpos_visible_in_window_p.
14210         lisp/window.el (selected-window-group-function): New permanent local buffer
14211         local variable.
14212         (selected-window-group): New function.
14214         lisp/follow.el (follow-mode): Set the ...-group-function variables at mode
14215         enable, kill them at mode disable.  Add/remove follow-after-change to/from
14216         after-change-functions.
14217         (follow-start-end-invalid): New variable.
14218         (follow-redisplay): Manipulate follow-start-end-invalid.
14219         (follow-after-change, follow-window-start, follow-window-end)
14220         (follow-set-window-start, follow-pos-visible-in-window-p)
14221         (follow-move-to-window-line, follow-sit-for): New functions.
14223         lisp/isearch.el (isearch-call-message): New macro.
14224         (isearch-update, with-isearch-suspended, isearch-del-char)
14225         (isearch-search-and-update, isearch-ring-adjust): Invoke above new macro.
14226         (with-isearch-suspended): Rearrange code such that isearch-call-message is
14227         invoked before point is moved.
14228         (isearch-message): Add comment about where point must be at function call.
14229         (isearch-search): Remove call to isearch-message.
14230         (isearch-lazy-highlight-window-group): New variable.
14231         (isearch-lazy-highlight-new-loop): Unconditionally start idle timer.  Move
14232         the battery of tests to ...
14233         (isearch-lazy-highlight-maybe-new-loop): New function, started by idle timer.
14234         Note: (sit-for 0) is still called.
14235         (isearch-lazy-highlight-update): Check membership of
14236         isearch-lazy-highlight-window-group.  Don't set the `window' overlay
14237         property.
14238         (isearch-update, isearch-done, isearch-string-out-of-window)
14239         (isearch-back-into-window, isearch-lazy-highlight-maybe-new-loop)
14240         (isearch-lazy-highlight-search, isearch-lazy-highlight-update)
14241         (isearch-lazy-highlight-update): Call the six amended primitives (see
14242         src/window.c above) with the new `group' argument set to t, to cooperate
14243         with Follow Mode.
14245 2015-12-04  Stefan Monnier  <monnier@iro.umontreal.ca>
14247         * lisp/emacs-lisp/ert.el: Prefer pcase over cl-typecase
14249         * lisp/emacs-lisp/ert.el (ert--should-error-handle-error)
14250         (ert--explain-format-atom, ert--explain-equal-rec)
14251         (ert--print-backtrace, ert-test-result-type-p, ert-select-tests)
14252         (ert--insert-human-readable-selector): Prefer pcase over cl-typecase.
14254 2015-12-04  Artur Malabarba  <bruce.connor.am@gmail.com>
14256         * lisp/character-fold.el: Remove special case-folding support
14258         (character-fold-to-regexp): Remove special code for
14259         case-folding.  Char-fold search still respects the
14260         `case-fold-search' variable (i.e., f matches F).  This only
14261         removes the code that was added to ensure that f also matched
14262         all chars that F matched.  For instance, after this commit, f
14263         no longer matches 𝔽.
14265         This was necessary because the logic created a regexp with
14266         2^(length of the string) redundant paths.  So, when a very
14267         long string "almost" matched, Emacs took a very long time to
14268         figure out that it didn't.  This became particularly relevant
14269         because isearch's lazy-highlight does a search bounded by (1-
14270         match-end) (which, in most circumstances, is a search that
14271         almost matches).  A recipe for this can be found in bug#22090.
14273 2015-12-04  Stefan Monnier  <monnier@iro.umontreal.ca>
14275         * lisp/emacs-lisp/cl-macs.el (character): Can't be negative
14277         Fixes (bug#21701)
14279 2015-12-04  Daiki Ueno  <ueno@gnu.org>
14281         lisp/gnus/qp.el: Don't replace "from " at bol
14283         * lisp/gnus/qp.el (quoted-printable-encode-region): Bind `case-fold-search'
14284         to nil when looking for "^From ".  Problem reported by Simon Josefsson.
14286 2015-12-03  Phillip Lord  <phillip.lord@russet.org.uk>
14288         Externalize some symbols in undo-auto
14290          * doc/lispref/text.texi: Update symbols.
14291          * lisp/simple.el (undo-auto--amalgamate,
14292            undo-auto--current-boundary-timer): Make symbols public.
14293          * src/cmds.c (Fself_insert_command,Fdelete_char): Call
14294            updated symbol.
14296 2015-12-03  Stefan Monnier  <monnier@iro.umontreal.ca>
14298         * lisp/emacs-lisp/smie.el (smie-next-sexp): Fix BOB "token"
14300 2015-12-03  Michael Albinus  <michael.albinus@gmx.de>
14302         Some error message improvements in tramp-sh.el
14304         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
14305         Suppress error messages for "mesg" and "biff" calls.
14306         (tramp-get-remote-path): Ignore errors when expanding
14307         `tramp-own-remote-path'.  Raise a warning instead.
14309 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
14311         Document 'nacl' value for 'system-type'
14313         * doc/lispref/os.texi (System Environment): Document the 'nacl'
14314         value of 'system-type'.
14316 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
14318         Document 'window-max-chars-per-line'
14320         * doc/lispref/windows.texi (Window Sizes): Document
14321         'window-max-chars-per-line'.
14323 2015-12-03  Artur Malabarba  <bruce.connor.am@gmail.com>
14325         Fix some file headers for the purpose of `package--builtins'
14327         * lisp/emacs-lisp/cl-preloaded.el
14328         * lisp/emacs-lisp/eieio-compat.el
14329         * lisp/net/sasl-scram-rfc.el: Add a "Package:" header
14331         * lisp/ielm.el: Fix summary line.
14333 2015-12-03  Artur Malabarba  <bruce.connor.am@gmail.com>
14335         * lisp/emacs-lisp/package.el (package-unpack): Load before compiling
14337         Reload any previously loaded package files before compiling
14338         the package (also reload the same files after compiling).
14339         This ensures that we have the most recent definitions during
14340         compilation, and avoids generating bad elc files when a macro
14341         changes and it is used in a different file from the one it's
14342         defined in.
14344 2015-12-03  Artur Malabarba  <bruce.connor.am@gmail.com>
14346         * lisp/emacs-lisp/package.el: Refactor package activation code
14348         (package-activate): Move code that activates dependencies into
14349         package-activate-1.
14350         (package--load-files-for-activation): New function.
14351         (package-activate-1): Add code for (optionally) activating
14352         dependencies, and move file-loading code into
14353         `package--load-files-for-activation'.
14355 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
14357         Document new font-related functionality
14359         * doc/lispref/display.texi (Low-Level Font): Document
14360         'default-font-width', 'default-font-height', 'window-font-width',
14361         and 'window-font-height'.
14363         * etc/NEWS: Move entries for 'default-font-width',
14364         'default-font-height', 'window-font-width', and 'window-font-height'
14365         to their place and mark them documented.
14367 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
14369         Fix documentation and implementation of 'directory-name-p'
14371         * lisp/files.el (directory-name-p): Modify to recognize
14372         backslashes on MS-Windows and MS-DOS.  Adjust the doc string
14373         accordingly.  Use '=', not char-equal, for comparison, as
14374         letter-case cannot possibly be an issue here.
14376         * doc/lispref/files.texi (Directory Names): Move the documentation
14377         of directory-name-p here from "Relative File Names".  Update the
14378         description per the changes in implementation.
14380         * etc/NEWS: Move the entry for 'directory-name-p' to its proper
14381         place and mark it documented.
14383 2015-12-02  Eli Zaretskii  <eliz@gnu.org>
14385         Minor copyedit in Emacs manual
14387         * doc/emacs/search.texi (Lax Search): Make wording about character
14388         folding by default less definitive.  (Bug#22043)
14390 2015-12-02  Eli Zaretskii  <eliz@gnu.org>
14392         More emacs-module.c fixes for wide ints
14394         * src/emacs-module.c (value_to_lisp) [WIDE_EMACS_INT]: Use
14395         unsigned data types to manipulate pointers, to avoid sign
14396         extension coming after us with a vengeance.
14398         * modules/mod-test/test.el (mod-test-sum-test): Add tests for
14399         Emacs with wide ints that verify integer values near the critical
14400         value that requires us to switch to a cons cell.
14402 2015-12-02  Stephen Leake  <stephen_leake@stephe-leake.org>
14404         Fix bug#22069 in cl-generic.el
14406         * lisp/emacs-lisp/cl-generic.el (cl-no-method): Remove %S; this string is
14407         not run thru `format'.
14409 2015-12-02  Dmitry Gutov  <dgutov@yandex.ru>
14411         APPEND etags--xref-backend to xref-backend-functions
14413         * lisp/progmodes/xref.el (xref-backend-functions):
14414         Use APPEND when adding the default element
14415         (http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00061.html).
14417 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
14419         More accurate documentation of lax whitespace matching
14421         * lisp/isearch.el (isearch-forward-word, isearch-forward-symbol)
14422         (word-search-backward, word-search-forward)
14423         (word-search-backward-lax, word-search-forward-lax): Mention in
14424         doc strings that toggling lax whitespace matching has no effect on
14425         these commands.
14427         * doc/emacs/search.texi (Word Search, Symbol Search): Clarify that
14428         lax whitespace matching has no effect on these commands.
14430 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
14432         Fix emacs-module.c for wide ints
14434         * src/emacs-module.c (lisp_to_value): Compare the produced value
14435         with the original Lisp object, not with the one potentially
14436         converted into a Lisp_Cons.  Fixes assertion violations when
14437         working with integers larger than fit into a 32-bit value.
14439         * modules/mod-test/test.el (mod-test-sum-test): Add tests for
14440         large integers, to test --with-wide-int.
14442 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
14444         Document 'directory-files-recursively'
14446         * lisp/files.el (directory-files-recursively): Doc fix.  Rename
14447         the argument MATCH to REGEXP, to be more explicit about its form.
14449         * doc/lispref/files.texi (Contents of Directories): Improve the
14450         documentation of 'directory-files-recursively'.  Add
14451         cross-references.
14453         * etc/NEWS: Move the entry for 'directory-files-recursively' to
14454         its place and mark it documented.
14456 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
14458         Document 'inhibit-read-only' property
14460         * doc/lispref/text.texi (Special Properties): Describe the new
14461         'inhibit-read-only' text property.  Add cross-reference to where
14462         read-only buffers are described.
14463         * doc/lispref/buffers.texi (Read Only Buffers): Mention that
14464         'inhibit-read-only' property exempts text from being read-only.
14465         Add cross-reference to "Special Properties".
14467         * etc/NEWS: Move the entry about 'inhibit-read-only' property to
14468         its place and mark it documented.
14470 2015-12-01  Artur Malabarba  <bruce.connor.am@gmail.com>
14472         * lisp/emacs-lisp/package.el: Update header comments
14474 2015-12-01  Artur Malabarba  <bruce.connor.am@gmail.com>
14476         * lisp/character-fold.el: Add back multi-char matching
14478         (character-fold-to-regexp): Uncomment recently commented code
14479         and make the algorithm "dummer" by not checking every possible
14480         combination.  This will miss some possible matches, but it
14481         greatly reduces regexp size.
14483         * test/automated/character-fold-tests.el
14484         (character-fold--test-fold-to-regexp): Comment out test of
14485         functionality no longer supported.
14487 2015-12-01  Xue Fuqiao  <xfq.free@gmail.com>
14489         * doc/emacs/ack.texi (Acknowledgments): Update.
14491 2015-12-01  Michael Albinus  <michael.albinus@gmx.de>
14493         Check `file-remote-p' over absolute files names in files.el
14495         * lisp/files.el (directory-files-recursively)
14496         (get-free-disk-space): Check `file-remote-p' over absolute files names.
14498 2015-12-01  Andreas Schwab  <schwab@linux-m68k.org>
14500                 * src/lread.c (syms_of_lread): Doc fix.
14502 2015-12-01  Dmitry Gutov  <dgutov@yandex.ru>
14504         Don't mistake certain JS method calls for keywords
14506         * lisp/progmodes/js.el (js--ctrl-statement-indentation):
14507         Braceless keyword can't come after a period (bug#22063).
14509 2015-12-01  David Reitter  <david.reitter@gmail.com>
14511         Read frame_title_format from buffer-local variable for NS port
14513         * src/nsfns.m (x_implicitly_set_name): Read frame-title-format and
14514         icon-title-format variables from buffer in appropriate window.
14515         (Bug#22048)
14517 2015-12-01  Juri Linkov  <juri@linkov.net>
14519         * lisp/replace.el (occur-engine): Count matches in empty lines.
14521         (Bug#22062)
14523 2015-11-30  Aurélien Aptel  <aurelien.aptel@gmail.com>
14525         * src/emacs-module.h: Fix finalizer typedef for C++11
14527         C++11 standard doesn't allow exception-specification in typedef.
14528         The workaround is to declare a dummy function prototype and use
14529         decltype on it.
14531 2015-11-30  Eli Zaretskii  <eliz@gnu.org>
14533         Fix last change
14535         * src/emacs-module.c (lisp_to_value, value_to_lisp)
14536         [WIDE_EMACS_INT]: Avoid compiler warnings.
14538 2015-11-30  Stefan Monnier  <monnier@iro.umontreal.ca>
14540         Rely on conservative stack scanning to find "emacs_value"s
14542         * src/emacs-module.c (struct emacs_value_tag)
14543         (struct emacs_value_frame, struct emacs_value_storage): Remove.
14544         (value_frame_size): Remove constant.
14545         (struct emacs_env_private): Use Lisp_Object for non_local_exit info.
14546         (lisp_to_value): Remove first arg.
14547         (module_nil): New constant.
14548         Use it instead of NULL when returning an emacs_value.
14549         (module_make_function): Adjust to new calling convention of
14550         Qinternal_module_call.
14551         (DEFUN): Receive args in an array rather than a list.
14552         Use SAFE_ALLOCA rather than xnmalloc.  Skip the lisp_to_value loop when
14553         we don't have WIDE_EMACS_INT.  Adjust to new type of non_local_exit info.
14554         (module_non_local_exit_signal_1, module_non_local_exit_throw_1):
14555         Adjust to new type of non_local_exit info.
14556         (ltv_mark) [WIDE_EMACS_INT]: New constant.
14557         (value_to_lisp, lisp_to_value): Rewrite.
14558         (initialize_frame, initialize_storage, finalize_storage): Remove functions.
14559         (allocate_emacs_value): Remove function.
14560         (mark_modules): Gut it.
14561         (initialize_environment): Don't initialize storage any more.
14562         Keep the actual env object on Vmodule_environments.
14563         (finalize_environment): Don't finalize storage any more.
14564         (syms_of_module): Initialize ltv_mark and module_nil.
14566         * src/emacs-module.h (emacs_value): Make it more clear that this type
14567         is really opaque, including the fact that NULL may not be valid.
14569         * modules/mod-test/mod-test.c (Fmod_test_signal, Fmod_test_throw):
14570         Don't assume that NULL is a valid emacs_value.
14572 2015-11-30  Eli Zaretskii  <eliz@gnu.org>
14574         Yet another doc improvement for search commands
14576         * doc/emacs/search.texi (Word Search, Symbol Search)
14577         (Regexp Search): Document commands that don't support lax
14578         whitespace matching or character folding.
14579         (Nonincremental Search): Mention the search commands that can be
14580         invoked from the menu bar.
14582         * lisp/isearch.el (isearch-define-mode-toggle-word)
14583         (isearch-define-mode-toggle-symbol)
14584         (isearch-define-mode-toggle-character-fold): Note in the doc
14585         string that turning these on exits the regexp mode.
14586         (isearch-forward-regexp, isearch-forward-word)
14587         (isearch-forward-symbol, isearch-backward-regexp)
14588         (word-search-backward, word-search-forward)
14589         (word-search-backward-lax, word-search-forward-lax): State in the
14590         doc string which commands don't support character folding and/or
14591         lax-whitespace matching.
14593 2015-11-30  Martin Rudalics  <rudalics@gmx.at>
14595         Run `window-size-change-functions' also when reading from minibuffer
14597         * src/xdisp.c (redisplay_internal): Run `window-size-change-functions'
14598         also when reading from minibuffer.
14600 2015-11-30  Ulf Jasper  <ulf.jasper@web.de>
14602         Fix scrambling of html-rendered item buffers
14604         * lisp/net/newst-treeview.el (newsticker--treeview-render-text): Fix
14605           scrambling of contents by wrapping call to html-renderer in
14606           save-selected-window.
14608 2015-11-30  Paul Eggert  <eggert@cs.ucla.edu>
14610         Fix font typo in previous doc fix.
14612 2015-11-30  Paul Eggert  <eggert@cs.ucla.edu>
14614         A bit more security doc, esp. file local vars
14616         * doc/emacs/emacs.texi (Top):
14617         * doc/emacs/misc.texi (Miscellaneous Commands):
14618         Refer to new Host Security section.
14619         (Host Security): New section.
14620         * doc/lispref/os.texi (Security Considerations):
14621         Mention file local variables.
14623 2015-11-30  Artur Malabarba  <bruce.connor.am@gmail.com>
14625         * lisp/character-fold.el: Comment out branching code
14627         (character-fold-to-regexp): Comment out code that uses multi-char
14628         table.  The branching caused by this induces absurdly long regexps,
14629         up to 10k chars for as little as 25 input characters.
14631 2015-11-30  Paul Eggert  <eggert@cs.ucla.edu>
14633         Spelling and grammar fixes
14635 2015-11-30  Dmitry Gutov  <dgutov@yandex.ru>
14637         Make lisp-completion-at-point a wrapper instead of an alias
14639         * lisp/progmodes/elisp-mode.el (lisp-completion-at-point):
14640         Turn into an obsolete wrapper around elisp-completion-at-point
14641         (bug#20455).
14643 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
14645         * lisp/isearch.el (isearch-search-fun-default): Nicer error
14647         message when the search fails.
14649 2015-11-29  Dmitry Gutov  <dgutov@yandex.ru>
14651         Update menu-bar-goto-uses-etags-p for the current xref API
14653         * lisp/menu-bar.el (menu-bar-goto-uses-etags-p): Consult
14654         xref-backend-functions, instead of now-nonexistent
14655         xref-find-function.
14657 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
14659         * lisp/isearch.el (isearch-define-mode-toggle): Advertise binding
14661 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
14663         * lisp/menu-bar.el: Use folding in searches
14665         (nonincremental-search-forward): Use `isearch-search-fun-default'
14666         to determine the search function.
14667         (nonincremental-search-backward)
14668         (nonincremental-repeat-search-forward)
14669         (nonincremental-repeat-search-backward): Use it.
14671 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
14673         * lisp/menu-bar.el (menu-bar-goto-uses-etags-p): Fix a warning
14675 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
14677         * lisp/character-fold.el (character-fold-to-regexp): Be careful
14679         not to return huge regexps.
14681 2015-11-29  Eli Zaretskii  <eliz@gnu.org>
14683         Improve documentation of string-collate-* functions
14685         * doc/lispref/strings.texi (Text Comparison): Improve wording and
14686         indexing of 'string-collate-equalp' and 'string-collate-lessp'.
14688         * etc/NEWS: Move the entry of 'string-collate-equalp' and
14689         'string-collate-lessp' to "Lisp Changes" section and mark it as
14690         documented.
14692 2015-11-29  Eli Zaretskii  <eliz@gnu.org>
14694         Document truncate-string-ellipsis
14696         * doc/lispref/display.texi (Size of Displayed Text): Document
14697         'truncate-string-ellipsis'.
14699         * lisp/international/mule-util.el (truncate-string-ellipsis): Doc fix.
14700         (truncate-string-to-width): Mention in the doc string that the
14701         default for ELLIPSIS comes from 'truncate-string-ellipsis'.
14703         * etc/NEWS: Move the 'truncate-string-ellipsis' entry to the "Lisp
14704         Changes" section.
14706 2015-11-29  Eli Zaretskii  <eliz@gnu.org>
14708         Fix confusion wrt character folding in the Emacs manual
14710         * doc/emacs/search.texi (Nonincremental Search, Regexp Search):
14711         Document that invoking search-forward/backward and
14712         re-search-forward/backward supports only case folding, but not the
14713         rest of the lax-search features.  Reported by Mike Kupfer
14714         <m.kupfer@acm.org>.
14716 2015-11-29  Ken Brown  <kbrown@cornell.edu>
14718         Update mod-test-sum-test
14720         * modules/mod-test/test.el (mod-test-sum-test): Update to
14721         accommodate the lack of dladdr on Cygwin.
14723 2015-11-29  Alan Mackenzie  <acm@muc.de>
14725         Byte compiler: Catch missing argument to `funcall'.  Fixes bug#22051.
14727         * lisp/emacs-lisp/bytecomp.el (byte-compile-funcall): When there's no argument
14728         to `funcall', (i) Output an error message; (ii) Generate code to signal a
14729         `wrong-number-of-arguments' error.
14731 2015-11-29  Martin Rudalics  <rudalics@gmx.at>
14733         * lisp/window.el (split-window): Don't sanitize sizes when SIZE is non-nil.
14735 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
14737         * lisp/character-fold.el (character-fold-to-regexp)
14739         Warn about using long strings.
14741         * test/automated/character-fold-tests.el
14742         (character-fold--test-lax-whitespace)
14743         (character-fold--test-consistency): Reduce string size for tests.
14745 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14747         Document renaming of x-select-enable-* variables
14749         * doc/emacs/killing.texi (Clipboard): Rename
14750         x-select-enable-clipboard to select-enable-clipboard and
14751         x-select-enable-primary to select-enable-primary.  Update index
14752         entries.
14754         * etc/NEWS: Mark entry as documented.
14756 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14758         Document the shorthand hints displayed by M-x
14760         * doc/emacs/m-x.texi (M-x): Document the numeric meaning of
14761         suggest-key-bindings.  Document the shorthand hints for commands
14762         that have no key bindings.  Document that M-x completion ignores
14763         obsolete commands.
14765         * etc/NEWS: Move the M-x entry to "Editing Changes" and mark it as
14766         documented.
14768 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14770         Update docs of character folding
14772         * doc/emacs/search.texi (Lax Search): Update the description of
14773         character folding for the latest changes.
14775 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
14777         * lisp/character-fold.el: Also play nice with case-folding
14779         (character-fold-to-regexp): Take `case-fold-search' into account.
14781 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
14783         * lisp/character-fold.el: Add support for multi-char matches
14785         (character-fold-table): Now has an extra-slot. This is a second
14786         char-table that holds multi-character matches.  See docstring for
14787         details.
14788         (character-fold-to-regexp): Can build branching regexps when a
14789         character's entry the extra slot of `character-fold-table' matches the
14790         characters that succeed it.
14792 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
14794         * lisp/character-fold.el: Code simplifications
14796         (character-fold-table): Reduce the scope of a variable.
14797         (character-fold-to-regexp): Change logic to work directly on the
14798         input string.  It's a little easier to understand, probably
14799         faster, and sets us up for implementing multi-char matches.
14801         * test/automated/character-fold-tests.el
14802         (character-fold--test-fold-to-regexp): New test.
14804 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14806         Document changes in "C-h l"
14808         * doc/emacs/help.texi (Misc Help): Document the changes in "C-h l".
14810         * etc/NEWS: mark "C-h l" changes as documented.
14812 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14814         Finalize documentation of 'custom-prompt-customize-unsaved-options'
14816         * doc/emacs/custom.texi (Saving Customizations): Index the new
14817         function 'custom-prompt-customize-unsaved-options'.
14819         * etc/NEWS: Mention when 'custom-prompt-customize-unsaved-options'
14820         is useful.
14822 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14824         Document 'comment-line'
14826         * doc/emacs/programs.texi (Comment Commands): Document
14827         'comment-line'.
14829         * etc/NEWS: Move the entry for 'comment-line' into "Editing Changes".
14831 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14833         Document new checkdoc features
14835         * doc/lispref/tips.texi (Tips, Library Headers): Document the
14836         keyword-checking features of checkdoc and the commands
14837         'checkdoc-file' and 'checkdoc-current-buffer'.
14839         * etc/NEWS: Move the checkdoc-related entries to their own
14840         section.
14842 2015-11-28  Philipp Stephani  <p.stephani2@gmail.com>
14844         Simplify the prologue of emacs-module.c functions
14846         * src/emacs-module.c (MODULE_FUNCTION_BEGIN): New macro.
14847         (module_make_global_ref)
14848         (module_free_global_ref, module_make_function, module_funcall)
14849         (module_intern, module_type_of, module_extract_integer)
14850         (module_make_integer, module_extract_float, module_make_float)
14851         (module_copy_string_contents, module_make_string)
14852         (module_make_user_ptr, module_get_user_ptr, module_set_user_ptr)
14853         (module_get_user_finalizer, module_set_user_finalizer)
14854         (module_vec_set, module_vec_get, module_vec_size): Use new helper
14855         macro MODULE_FUNCTION_BEGIN.
14857 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14859         Don't reject module calls with no arguments
14861         * src/emacs-module.c (Finternal_module_call): Allow ARGLIST be nil.
14863 2015-11-28  Philipp Stephani  <p.stephani2@gmail.com>
14865         Make module-call be visible from Lisp
14867         * src/emacs-module.c (module_make_function): Use internal--module-call.
14868         (Finternal_module_call): Renamed from Fmodule_call.  Add safety
14869         checks.
14870         (syms_of_module): DEFSYM save-value-p and save-pointer-p.  Do
14871         defsubr internal--module-call.
14873 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14875         Add etags tests for the recent Lua-related bugfix
14877         * test/etags/lua-src/test.lua: New file, tests the issues raised
14878         by bug#21934.
14879         * test/etags/Makefile (LUASRC): Add test.lua.
14880         * test/etags/ETAGS.good_1:
14881         * test/etags/ETAGS.good_2:
14882         * test/etags/ETAGS.good_3:
14883         * test/etags/ETAGS.good_4:
14884         * test/etags/ETAGS.good_5:
14885         * test/etags/ETAGS.good_6:
14886         * test/etags/CTAGS.good: Adapt to the new Lua test.  Also, an old
14887         regression fix, resolved around 25 May 2015, required changes to
14888         the "good" ETAGS files.
14890 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14892         Fix Lua tags when a function name includes '.' or ':'
14894         * lib-src/etags.c (Lua_functions): Add a tag for the last element
14895         of a function name after a dot or a colon.  (Bug#21934)
14897 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14899         Improve documentation of search and replace commands
14901         * doc/emacs/search.texi (Replacement and Lax Matches): Document
14902         which commands are affected by 'replace-character-fold'.
14903         (Lax Search): Add a cross reference to "Replacement and Lax
14904         Matches".  Improve wording.  Fix lost extra whitespace.
14905         (Search Customizations): Improve wording.  (Bug#22036)
14906         See also comments in
14907         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02376.html.
14909         * lisp/replace.el (query-replace, query-replace-regexp)
14910         (query-replace-regexp-eval, replace-string, replace-regexp):
14911         Mention 'replace-character-fold' in the doc strings.
14913 2015-11-28  Paul Eggert  <eggert@cs.ucla.edu>
14915         Fix minor problems found by static checking
14917         * src/undo.c (prepare_record): Add proper prototype for C.
14919 2015-11-27  Stefan Monnier  <monnier@iro.umontreal.ca>
14921         * src/emacs-module.c (struct env_storage): Delete
14923         (struct emacs_runtime_private): Keep an emacs_env instead.
14924         (Fmodule_load, Fmodule_call): Declare emacs_env_private separately.
14925         (initialize_environment): Split the arg in two.  Adjust all callers.
14926         Only store the private part in Vmodule_environments.
14927         (finalize_environment): Change the arg to only be the private env.
14928         Adjust all callers.
14930 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
14932         Improve documentation of 'replace-character-fold'
14934         * lisp/replace.el (replace-character-fold): Clarify which commands
14935         are affected by this variable.
14937 2015-11-27  Mark Oteiza  <mvoteiza@udel.edu>
14939         Backport: Add interactive seek command.
14941         * lisp/mpc.el (mpc-cmd-seekcur): New function.
14942         (mpc-seek-current): New command.
14943         (mpc-mode-menu): Add entry for mpc-seek-current
14944         (mpc-mode-map): Bind mpc-seek-current to "g"
14946 2015-11-27  Dmitry Gutov  <dgutov@yandex.ru>
14948         Autoload etags when using its xref backend
14950         * lisp/progmodes/xref.el (xref--etags-backend):
14951         Rename to etags--xref-backend.  Move to etags.el.  Autoload.
14952         (Bug#22026)
14954 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
14956         * lisp/character-fold.el: Allow complex chars to match their decomposition
14958         (character-fold-table): When a character's decomposition does not
14959         involve a formatting tag (i.e., if it has an "exact" description via
14960         other characters), then this character is allowed to match the
14961         decomposition.
14963 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
14965         * lisp/character-fold.el: More descriptive variable names
14967         (character-fold-table): Rename a lot of the lexical variables to
14968         make the code easier to read.
14970 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
14972         * lisp/isearch.el: Ensure we still support `isearch-new-word'
14974         (isearch-new-regexp-function): Define variable.
14975         (isearch-new-word): Define as an obsolete alias. (Bug#22018)
14977 2015-11-27  Lee Bochicchio  <lboc.home@gmail.com>
14979         * test/automated/abbrev-tests.el: Define more tests
14981         (abbrev-table-name-test, kill-all-abbrevs-test)
14982         (clear-abbrev-table-test): New tests.
14984 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
14986         Add module tests for wrong-type-argument
14988         * modules/mod-test/test.el (mod-test-sum-test): Add tests for
14989         wrong-type-argument.
14991 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
14993         Improve handling of signals and 'throw' in modules
14995         * src/emacs-module.c: Add commentary explaining how to write
14996         functions in this file.
14997         (module_make_global_ref, module_free_global_ref)
14998         (module_non_local_exit_signal, module_non_local_exit_throw)
14999         (module_make_function, module_funcall, module_intern)
15000         (module_type_of, module_is_not_nil, module_eq)
15001         (module_extract_integer, module_make_integer)
15002         (module_extract_float, module_make_float)
15003         (module_copy_string_contents, module_make_string)
15004         (module_make_user_ptr, module_get_user_ptr, module_set_user_ptr)
15005         (module_get_user_finalizer, module_set_user_finalizer)
15006         (module_vec_set, module_vec_get, module_vec_size)
15007         (module_non_local_exit_signal_1, module_non_local_exit_throw_1):
15008         Do nothing and return with failure indication immediately, if some
15009         previous module call signaled an error or wants to throw.  See
15010         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02133.html
15011         for the relevant discussions.
15013 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
15015         Add ':version' tag to 'checkdoc-package-keywords-flag'
15017         * lisp/emacs-lisp/checkdoc.el (checkdoc-package-keywords-flag):
15018         Add a ':version' tag.
15020 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
15022         Improve documentation of 'eval-buffer' and 'eval-region'
15024         * src/lread.c (Feval_buffer, Feval_region): Doc fixes.  (Bug#22023)
15026         * doc/lispref/eval.texi (Eval): Mention narrowing to clarify
15027         "accessible portion of buffer".
15029 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
15031         Unbreak the Cygwin w32 build
15033         * src/emacs.c (main): Call w32_init_main_thread in the Cygwin w32
15034         build as well.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
15036 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
15038         Improve commentary in character-fold.el
15040         * lisp/character-fold.el (character-fold-to-regexp): Move detailed
15041         description from commit log message to comments.  (Bug#22019)
15043 2015-11-26  Alan Mackenzie  <acm@muc.de>
15045         Byte Compiler: generate code to adjust stack count after call to `signal'.
15047         Corrects change from earlier today.
15049         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): supply the current value of
15050         `byte-compile--for-effect' as argument to `byte-compile-form'.
15052 2015-11-26  Eli Zaretskii  <eliz@gnu.org>
15054         Improve commentary of prepare_to_modify_buffer_1
15056         * src/insdel.c (prepare_to_modify_buffer_1): Mention in commentary
15057         that this function runs Lisp.  Suggested by Richard Stallman
15058         <rms@gnu.org>.
15060 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
15062         Fix regression after merge.
15064          * src/undo.c (prepare_record): Remove call to run_undoable_change.
15066 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
15068         After delete, record point location in undo.
15070         Addresses Bug #21968.
15072                 * lisp/simple.el (undo-auto--add-boundary): Clean up code to
15073                 better support intercalating calls.
15074                 * src/keyboard.c, src/keyboard.h (command_loop_1): Store value of
15075                 point and current buffer before each command.
15076                 * src/undo.c (record_point): Now only record the point.
15077                 * src/undo.c (prepare_record): Functionality removed form
15078                 record_point.
15079                 * src/undo.c (record_delete): Check if point needs recording.
15080                 * src/undo.c (undo-boundary): Record value of point before each
15081                 boundary.
15082                 * test/automated/simple-test.el: New tests.
15084         Conflicts:
15085                 src/undo.c
15087 2015-11-26  Eli Zaretskii  <eliz@gnu.org>
15089         Fix compiler warnings in w32.c
15091         * src/w32.c (sys_socket): In case of error, use -1 as return
15092         value, not INVALID_SOCKET, which causes compiler warnings.
15093         (maybe_load_unicows_dll): Cast the return value of GetProcAddress
15094         to the appropriate function signature, to avoid compiler errors.
15095         Reported by Andy Moreton <andrewjmoreton@gmail.com>.  (Bug#21953)
15097 2015-11-26  Dmitry Gutov  <dgutov@yandex.ru>
15099         Check if the file exists on disk before producing the revert diff
15101         * lisp/vc/vc-dispatcher.el (vc-buffer-sync): Check if the file
15102         exists on disk (bug#20558).
15104 2015-11-26  Alan Mackenzie  <acm@muc.de>
15106         Byte compiler: on setq with an odd number of arguments, generate a `signal'
15108         * lisp/emacs-lisp/cconv.el (cconv-convert): Don't transform `setq' form when
15109         it has an odd number of arguments, to allow bytecomp to handle the error.
15111         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): In a `setq' form with an
15112         odd number of arguments, generate a `signal' instead of the normal code.
15114 2015-11-26  Dmitry Gutov  <dgutov@yandex.ru>
15116         Use find-tag-default for xref-backend-identifier-at-point
15118         * lisp/progmodes/etags.el (find-tag-tag)
15119         (tags-completion-at-point-function): Extract common code as
15120         find-tag--default.
15121         (xref-backend-identifier-at-point): Define in terms of the new
15122         function.
15124 2015-11-26  Paul Eggert  <eggert@cs.ucla.edu>
15126         * src/undo.c (record_property_change): Remove now-unused local.
15128 2015-11-25  Phillip Lord  <phillip.lord@russet.org.uk>
15130         run_undoable_changes now called from insdel.
15132         The original calls from inside undo.c are not always at a safe position
15133         to call lisp, as they originate in varied positions within insdel.c.
15134         Calling them directly from prepare_to_modify_buffer_1 ensures that they
15135         are always run at the same point.
15137          * src/undo.c (run_undoable_changes,syms_of_undo): Remove function
15138          and symbol used.
15139          * src/insdel.c (run_undoable_changes): Add function and symbol.
15141 2015-11-25  Eli Zaretskii  <eliz@gnu.org>
15143         Improve and update documentation of search commands
15145         * doc/emacs/search.texi (Lax Search): Renamed from "Search Case";
15146         all references changed.  Move the description of lax-whitespace
15147         here.  Add description of the new character folding features and
15148         additional customizable options.
15149         (Isearch Yank): Move before "Error in Search".
15150         (Basic Isearch): Improve wording.  Add index entries.  Add short
15151         description of how to abandon search, making this subsection a
15152         complete introduction to search basics.
15153         (Repeat Isearch): Add index entries.  Describe additional
15154         customizable options.  Describe mouse clicks.
15155         (Isearch Yank): Add index entries.  Describe mouse-2 click in echo
15156         area.  Describe more customizable options.
15157         (Error in Isearch): Add index entries.
15158         (Special Isearch): Move actual description of some isearch
15159         commands to other sections, leaving here just the summary of the
15160         commands.  Add command that toggles character folding.  Describe
15161         commands, like "C-h C-h", that were previously omitted for some
15162         reason.
15163         (Not Exiting Isearch): Describe search-exit-option.  Add index
15164         entries.
15165         (Word Search): Describe eww-search-word and eww-search-prefix.
15166         (Symbol Search): Add index entries.
15167         (Regexp Search): Describe regexp-search-ring-max.
15168         (Replacement and Lax Matches): Renamed from "Replacement and
15169         Case"; all references changed.  Describe lax-whitespace matching
15170         in replace commands and related options.  Describe character
15171         folding in replace commands and related options.
15172         (Query Replace): Describe query-replace-from-to-separator and the
15173         new history features.  Add index entries for highlighted text.
15174         Describe query-replace-skip-read-only.  Describe more keys
15175         accepted by query-replace.
15176         (Other Repeating Search): More index entries for Occur.  Describe
15177         list-matching-lines-default-context-lines.
15178         (Search Customizations): New section, documents customizable
15179         options that were not documented until now.
15180         * doc/emacs/glossary.texi (Glossary): Add "Case Folding" and
15181         "Character Folding".
15183         * etc/NEWS: Move search- and replace-related entries to a single
15184         parent section.
15186         * lisp/replace.el (query-replace-show-replacement): Doc fix.
15187         * lisp/isearch.el (search-nonincremental-instead)
15188         (isearch-hide-immediately): Doc fixes.
15190 2015-11-25  Katsumi Yamaoka  <yamaoka@jpl.org>
15192         Remove nnml-retrieve-groups that is unnecessary and somewhat problematic
15194         * lisp/gnus/nnml.el (nnml-retrieve-groups): Remove.  See:
15195         <http://thread.gmane.org/gmane.emacs.gnus.general/86308> and
15196         <http://thread.gmane.org/gmane.emacs.gnus.general/86321>
15198 2015-11-25  Paul Eggert  <eggert@cs.ucla.edu>
15200         Fix module_format_fun_env when dynlib_addr fails
15202         * src/emacs-module.c (module_format_fun_env):
15203         exprintf doesn’t support %p, so use %x.  Reported by Eli Zaretskii in:
15204         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02122.html
15206 2015-11-25  Paul Eggert  <eggert@cs.ucla.edu>
15208         Disambiguate variable help a bit better
15210         * lisp/help-fns.el (describe-variable): Quote the
15211         variable’s value if it is a symbol other than t or nil.
15212         See: T.V Raman in:
15213         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02147.html
15215 2015-11-25  Dmitry Gutov  <dgutov@yandex.ru>
15217         Pass SVN commit message through log-edit-extract-headers
15219         * lisp/vc/vc-svn.el (vc-svn-checkin): Pass COMMENT through
15220         log-edit-extract-headers (bug#18954).
15222 2015-11-24  Alan Mackenzie  <acm@muc.de>
15224         CC Mode: Eliminate compiler warning messages.
15226         * lisp/progmodes/cc-mode.el (top level): remove compile time declaration of
15227         `font-lock-syntactic-keywords' (which CC Mode doesn't use).
15228         * lisp/progmodes/cc-awk.el (awk-mode-syntax-table)
15229         (c-awk-set-syntax-table-properties): Clarify comments about
15230         `font-lock-syntactic-keywords'.
15232         * lisp/progmodes/cc-bytecomp.el (cc-bytecomp-load): Create a dummy declaration
15233         of this before the real (interpreted) one, to satisfy the byte compiler.
15235 2015-11-24  Simen Heggestøyl  <simenheg@gmail.com>
15237         Extend the test suite for json.el
15239         * lisp/json.el (json-plist-p): Clarify docstring.
15241         * test/automated/json-tests.el (json-tests--with-temp-buffer): New
15242         macro.
15243         (test-json-join, test-json-alist-p)
15244         (test-json-plist-p, test-json-advance, test-json-peek)
15245         (test-json-pop, test-json-skip-whitespace)
15246         (test-json-read-keyword, test-json-encode-keyword)
15247         (test-json-read-number, test-json-encode-number)
15248         (test-json-read-escaped-char, test-json-read-string)
15249         (test-json-encode-string, test-json-encode-key)
15250         (test-json-new-object, test-json-add-to-object)
15251         (test-json-read-object, test-json-encode-list)
15252         (test-json-read-array, test-json-encode-array)
15253         (test-json-read, test-json-read-from-string)
15254         (test-json-encode): New tests.
15255         (json-read-simple-alist): Merged into `test-json-read-object'.
15256         (json-encode-string-with-special-chars): Merged into
15257         `test-json-encode-string'.
15258         (json-read-string-with-special-chars): Split into
15259         `test-json-encode-string' and `test-json-read-from-string'.
15261 2015-11-24  Anders Lindgren  <andlind@gmail.com>
15263         Fixed bug#18283: Enable applescript in NextStep.
15265         * nextstep/templates/Info.plist.in: Set NSAppleScriptEnabled to YES.
15267 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
15269         Allow completion on dynamic module files in load-library
15271         * lisp/files.el (load-library): Bind completion-ignored-extensions
15272         to nil, to allow completion on dynamic modules typed as file
15273         names.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
15275 2015-11-24  Alan Mackenzie  <acm@muc.de>
15277         CC Mode: eliminate almost all byte compilation warnings
15279         * lisp/progmodes/cc-bytecomp.el (cc-bytecomp-noruntime-functions): Remove.
15280         (cc-require): Remove the crude hack that saved and restored
15281         byte-compile-noruntime-functions.
15282         (cc-conditional-require, cc-conditional-require-after-load): New macros.
15284         * lisp/progmodes/cc-defs.el (top level): Reformulate code which loaded
15285         cc-fix.el using the new macros in cc-bytecomp.el.
15287         * lisp/progmodes/cc-langs.el (c++-template-syntax-table)
15288         (c-no-parens-syntax-table): Add extra "(eval ..)"s around "'(lambda ..)"
15289         forms to remove the superflous quotes.
15291 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
15293         Add one more mod-test test
15295         * modules/mod-test/test.el (mod-test-sum-test): Test the error
15296         signaled when the function is invoked with a wrong number of
15297         arguments.
15299 2015-11-24  Philipp Stephani  <phst@google.com>
15301         * modules/mod-test/mod-test.c (Fmod_test_sum): Verify there are 2 args.
15303 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
15305         Implement dynlib_addr for MS-Windows
15307         * src/dynlib.c [WINDOWSNT]: Include w32common.h.
15308         <g_b_init_get_module_handle_ex> [WINDOWSNT]: New static variable.
15309         (GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS)
15310         (GET_MODULE_HANDLE_EX_FLAG_UNCHANGED_REFCOUNT) [WINDOWSNT]: Define
15311         if undefined.
15312         (dynlib_reset_last_error): Reset g_b_init_get_module_handle_ex to
15313         zero.
15314         (dynlib_addr) [WINDOWSNT]: Non-trivial implementation to report
15315         the full file name of the module for a given address.
15317 2015-11-24  Alan Mackenzie  <acm@muc.de>
15319         Squashed commit of the following:
15321         commit e1ecf76585bef2eb87995f7a7f92cc12003a6f70
15322         Author: Alan Mackenzie <acm@muc.de>
15323         Date:   Tue Nov 24 16:50:09 2015 +0000
15325             Byte compile: minor amendments.
15327             * lisp/emacs-lisp/bytecomp.el (byte-compile-initial-macro-environment):
15328             add a comment to explain the binding of variables around a subsidiary
15329             compilation.
15330             (byte-compile-new-defuns): Amend the doc string.
15332         commit c537bfed1dda1593d218956ff00c6105a3ff0316
15333         Author: Alan Mackenzie <acm@muc.de>
15334         Date:   Sat Nov 21 18:43:57 2015 +0000
15336             Byte compiler: fix spurious warnings "might not be defined at runtime".
15338             Also initialize byte-compile-noruntime-functions between runs.
15340             * lisp/emacs-lisp/bytecomp.el (byte-compile-new-defuns): New variable.
15341             (byte-compile-initial-macro-environment): For eval-when-compile: bind
15342             byte-compile-unresolved-functions and byte-compile-new-defuns around
15343             byte-compile-top-level, to prevent spurious entries being made.
15344             (byte-compile-warn-about-unresolved-functions): Check whether function is
15345             in byte-compile-new-defuns before emitting a warning about it.
15346             (byte-compile-from-buffer): Initialize new variable and
15347             byte-compile-noruntime-functions to nil.
15348             (byte-compile-file-form-require): record all new functions defined by a
15349             `require' in byte-compile-new-defuns.
15350             (byte-compile-file-form-defmumble): record the new alias in
15351             byte-compile-new-defuns.
15353 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
15355         Fix crash at startup related to GC of font entities
15357         * src/font.h (GC_FONT_SPEC_P, GC_FONT_ENTITY_P)
15358         (GC_FONT_OBJECT_P, GC_XFONT_SPEC, GC_XFONT_ENTITY)
15359         (GC_XFONT_OBJECT): New macros, for use in garbage collector.
15360         * src/alloc.c (compact_font_cache_entry, compact_font_caches):
15361         Don't ifdef away font cache compaction on NT_GUI, as the problems
15362         which led to that seem to have been solved.
15363         (compact_font_cache_entry): Use GC_FONT_SPEC_P, GC_XFONT_SPEC,
15364         GC_XFONT_ENTITY, and GC_XFONT_OBJECT, instead of their non-GC_
15365         cousins.  (Bug#21999)
15367 2015-11-24  Alan Mackenzie  <acm@muc.de>
15369         Byte compile: Output an error, not a warning, for odd number of args to setq
15371         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): Amend.
15373 2015-11-24  Ken Raeburn  <raeburn@raeburn.org>
15375         Fix kbd_buffer iteration loop in readable_events
15377         * src/keyboard.c (readable_events): Wrap the event pointer back to the
15378         start of the kbd_buffer array inside the top of the loop instead of
15379         right before checking the loop condition, since kbd_fetch_ptr and
15380         kbd_store_ptr point past the end of the array to mean that element 0
15381         is next. (bug#21935)
15383 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
15385         Improve text-quoting-style doc again
15387         * doc/lispref/help.texi (Keys in Documentation):
15388         Omit overkill discussion of ‘setq’.  Mention Emacs versions
15389         where ‘grave’ style was standard.
15391 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
15393         Improve text-quoting-style doc
15395 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
15397         Simplify module_make_function
15399         * src/emacs-module.c (module_make_function):
15400         Simplify by calling build_unibyte_string.
15402 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
15404         Port better to FreeBSD’s dlfunc vs dlsym
15406         This avoids warnings when converting between void * and
15407         function pointers, which strict C11 does not allow.
15408         * configure.ac (dlfunc): Check for existence.
15409         * src/dynlib.c (dlfunc) [!HAVE_DLFUNC]: New macro.
15410         (dynlib_func): New function.
15411         * src/dynlib.h (dynlib_function_ptr, dynlib_func): New decls.
15412         * src/emacs-module.c (Fmodule_load): Use dynlib_func, not
15413         dynlib_sym, for function pointers.
15415 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
15417         Simplify use of emacs_finalizer_function type
15419         * src/emacs-module.h (emacs_finalizer_function):
15420         Now EMACS_NOEXCEPT.  All users simplified to omit EMACS_NOEXCEPT.
15421         (struct emacs_env_25): Use emacs_finalizer_function where applicable.
15423 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
15425         module_format_fun_env fixes
15427         * src/doprnt.c (exprintf) [HAVE_MODULES]: Also define in this case.
15428         * src/emacs-module.c (module_format_fun_env):
15429         Convert path and sym to UTF-8.
15430         Don’t use VLAs, as the C11 standard says they’re optional,
15431         and anyway they can cause core dumps with large allocations.
15432         Use exprintf rather than snprintf, as exprintf handles arbitrarily
15433         long strings.  Simplify the code a bit.
15435 2015-11-23  Dmitry Gutov  <dgutov@yandex.ru>
15437         Don't use package-user-dir in elisp-library-roots if it's not bound
15439         * lisp/progmodes/elisp-mode.el (elisp-library-roots): Don't
15440         use package-user-dir if it's not bound (bug#19759).
15442 2015-11-23  Anders Lindgren  <andlind@gmail.com>
15444         New visible-bell for NextStep (OS X El Capitan compatible).
15446         Instead of inverting a rectangle in the middle of the frame, use
15447         the standard NextStep image "caution", represented using an
15448         warning sign with an exclamation mark.  (Bug#21662)
15450         Implemented based on a suggestion drafted by Mustafa Kocaturk.
15452         * src/nsterm.m (EmacsBell): New class for managing the caution
15453         image.  Support multiple active bells, the image is removed once
15454         all bells have timed out.
15455         (ns_timeout): Removed, no longer used.
15456         (ns_ring_bell): Reimplemented to use EmacsBell.
15458 2015-11-23  Johan Bockgård  <bojohan@gnu.org>
15460         * lisp/emacs-lisp/nadvice.el (add-function): Fix debug spec.
15462         (remove-function): Ditto. (Bug#20376)
15464 2015-11-23  Mark Oteiza  <mvoteiza@udel.edu>
15466         * lisp/leim/quail/tamil-dvorak.el: Add necessary escapes.
15468 2015-11-23  Eli Zaretskii  <eliz@gnu.org>
15470         Improve how non-ASCII strings are accepted from modules
15472         * src/emacs-module.c (module_make_function, module_make_string):
15473         Build a unibyte Lisp string and then decode it by UTF-8, instead
15474         of building a multibyte string without decoding.  This is more
15475         tolerant to deviations from UTF-8.
15477 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
15479         Port recent module changes to pickier compilers
15481         * src/emacs-module.c (module_make_function)
15482         (module_make_string): Add casts to fix pointer signedness issues.
15484 2015-11-23  Philipp Stephani  <phst@google.com>
15486         Fix how strings are accepted from modules
15488         * src/emacs-module.c (module_make_function, module_make_string): Use
15489         make_multibyte_string.
15490         (module_copy_string_contents): Encode before reading the byte
15491         size.  Return false if and only if an error occurred.
15493 2015-11-23  Shakthi Kannan  <shakthimaan@gmail.com>
15495         Add the tamil-dvorak input method
15497         * lisp/leim/quail/tamil-dvorak.el: New file.  (Bug#21768)
15499         * etc/NEWS: Mention the new input method.
15501 2015-11-23  Martin Rudalics  <rudalics@gmx.at>
15503         Move setting FRAME_WINDOW_SIZES_CHANGED to resize_frame_windows.
15505         * src/frame.c (adjust_frame_size): Don't set
15506         FRAME_WINDOW_SIZES_CHANGED here ...
15507         * src/window.c (resize_frame_windows): ... but here, as suggested
15508         by Stefan Monnier.  Also remove some dead code along the way.
15510 2015-11-23  Alan Mackenzie  <acm@muc.de>
15512         * etc/NEWS (Incompatible Lisp Changes): Also `setf' needs an even # of args.
15514 2015-11-23  Alan Mackenzie  <acm@muc.de>
15516         Signal an error when `setf' gets an odd number of arguments.
15518         * lisp/emacs-lisp/gv.el (setf): Amend.
15520 2015-11-23  Stefan Monnier  <monnier@iro.umontreal.ca>
15522         * lisp/emacs-lisp/smie.el (smie-backward-sexp): Handle BOB better.
15524 2015-11-23  Alan Mackenzie  <acm@muc.de>
15526         * etc/NEWS (Incompatible Lisp Changes): Document new restriction on `setq'.
15528 2015-11-23  Alan Mackenzie  <acm@muc.de>
15530         Expunge occurrences of `setq' with an odd number of arguments.
15532         * lisp/apropos.el (apropos-documentation):
15533         * lisp/obsolete/complete.el (PC-include-file-all-completions):
15534         * lisp/progmodes/compile.el (compilation-goto-locus):
15535         * lisp/vc/vc-cvs.el (vc-cvs-parse-root): (twice)
15536         Insert missing nil at end of `setq' forms.
15538         * lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-autoload): Remove an
15539         erroneous trailing variable name from a setq, thus allowing a compilation
15540         properly to track functions not defined at runtime.
15542 2015-11-23  John Wiegley  <johnw@newartisans.com>
15544         Add a note about a questionable use of bool in xdisp.c
15546 2015-11-23  Alan Mackenzie  <acm@muc.de>
15548         Issue a warning from the byte compiler on a malformed `setq' form.
15550         Partly fixes bug#20241.
15551         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): Issue a warning when a
15552         `setq' form with an odd number of arguments is compiled.
15554 2015-11-23  Alan Mackenzie  <acm@muc.de>
15556         Don't let cconv_convert insert a nil argument into a `setq' form.
15558         Fixes bug#21983.
15559         * lisp/emacs-lisp/cconv.el (cconv-convert): Don't silently insert a nil last
15560         argument into a `setq' when there're an odd number of args.  This enables the
15561         byte compiler to issue a message in this case.
15563 2015-11-23  Alan Mackenzie  <acm@muc.de>
15565         Signal an error when `setq' has an odd number of arguments.  Fixes bug#20241.
15567         * src/eval.c (Fsetq): Signal an error on an odd number of arguments.
15568         (syms_of_eval): Add a DEFSYM for Qsetq.
15570 2015-11-23  Martin Rudalics  <rudalics@gmx.at>
15572         * doc/lispref/windows.texi (Window Sizes): Fix indices and references.
15574         * src/frame.c (adjust_frame_size): Set FRAME_WINDOW_SIZES_CHANGED (Bug#21975).
15576 2015-11-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
15578         Add EUDC BBDB 3 entry in NEWS
15580         * NEWS: Mention EUDC BBDB backend support for BBDB 3.
15582 2015-11-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
15584         Improve EUDC to BBDB 3 export
15586         * lisp/net/eudc-vars.el (eudc-ldap-bbdb-conversion-alist): Change phone
15587         entry to single item.  Add company conversion.
15588         * lisp/net/eudc-export.el (eudc-bbdbify-company): New function.
15589         (bbdb-parse-phone): Declare function.
15590         (eudc-bbdbify-phone): Add BBDB 3 support.
15591         (Bug#21971)
15593 2015-11-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
15595         Add BBDB 3 support for EUDC export
15597         * lisp/net/eudc.el: Add bbdb-version defvar.
15598         (eudc--using-bbdb-3-or-newer-p): New function.
15599         * lisp/net/eudc-export.el (eudc-create-bbdb-record): Add support for
15600         bbdb-create-internal argument list changes introduced in BBDB 3.
15601         * lisp/net/eudcb-bbdb.el: Remove bbdb-version defvar.
15602         (eudc-bbdb-field): Call eudc--using-bbdb-3-or-newer-p.
15603         (Bug#21971)
15605 2015-11-22  Eli Zaretskii  <eliz@gnu.org>
15607         Allow loading modules by 'load-file'
15609         * src/lread.c (Fload): Call 'unbind_to' with 'Fmodule_load' as the
15610         2nd arg, to avoid the "binding stack not balanced" error.
15611         (syms_of_lread) <module-file-suffix>: New Lisp variable.
15613         * lisp/files.el (module-file-suffix): Declare.
15614         (load-file): Remove 'module-file-suffix' from
15615         'completion-ignored-extensions', to allow completion on modules.
15617         * etc/NEWS: Mention 'module-file-suffix'.
15619 2015-11-22  Eli Zaretskii  <eliz@gnu.org>
15621         Fix unoptimized builds
15623         * src/lisp.h (XTYPE): Move before XSYMBOL, to fix unoptimized
15624         builds.
15626 2015-11-22  Dmitry Gutov  <dgutov@yandex.ru>
15628         Work around the asynchronous-empty-diff problem
15630         * lisp/vc/vc-rcs.el (vc-rcs-diff):
15631         * lisp/vc/vc-mtn.el (vc-mtn-diff):
15632         * lisp/vc/vc-hg.el (vc-hg-diff):
15633         * lisp/vc/vc-git.el (vc-git-diff): Ignore the ASYNC argument,
15634         do a synchronous process call (bug#21969).
15636 2015-11-22  Karl Fogel  <kfogel@red-bean.com>
15638         Finish excising electric indent from `open-line'
15640         * lisp/simple.el (open-line): Remove INTERACTIVE argument.
15642         * test/automated/simple-test.el (open-line-indent, open-line-hook):
15643           Adjust accordingly.
15645         This change finishes what my commit of Thu Nov 19 17:32:37 2015 -0600
15646         (git commit c59353896) started.  It turns out that having INTERACTIVE
15647         cause `post-self-insert-hook' to run (via `newline') meant `open-line'
15648         still had the electric indent behavior, as `post-self-insert-hook'
15649         normally contains `electric-indent-post-self-insert-function' ever
15650         since `electric-indent-mode' has been on by default.  Tracing the code
15651         change in `open-line' is mildly twisty, because Artur Malabarba's
15652         earliest two commits of 24 Oct 2015 first removed the `interactive'
15653         form entirely (git commit 6939896e2) and then restored it with the new
15654         extra "p" already added (git commit bd4f04f86), such that there is no
15655         single-commit diff in which one sees the second "p" appear.  Thus this
15656         change is effectively a reversion of parts of each of those commits.
15658         This could close bug#21884, at least until further discussion.
15660 2015-11-22  Dmitry Gutov  <dgutov@yandex.ru>
15662         Adhere closer to the "implicit tag name" definition
15664         * lisp/progmodes/etags.el (etags-tags-completion-table):
15665         Adhere closer to the "implicit tag name" definition.  Simplify
15666         the regexp.  Search for the explicit tag name first, and when
15667         not found, search locally for the implicit one.  (Bug#21934)
15669 2015-11-22  Stefan Monnier  <monnier@iro.umontreal.ca>
15671         Unrevert most of regexp reentrancy abort patch
15673         The problem was in:
15674           * src/syntax.c (update_syntax_table_forward): Propertize even when truncated
15675         which is hence not unreverted.
15676         The rest is:
15677         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
15678         (UPDATE_SYNTAX_TABLE_FAST): Re-introduce.
15679         All callers in regex.c changed back to the _FAST versions.
15681         * test/automated/message-mode-tests.el: Tweak the test to rely on auto
15682         propertization in backward-sexp.
15684 2015-11-21  Paul Eggert  <eggert@cs.ucla.edu>
15686         Revert regexp reentrancy abort patch
15688         Although the patch does fix Bug#21688 and prevents a core dump,
15689         it also makes the message-mode-propertize test fail; see:
15690         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01667.html
15691         Perhaps someone else can come up with a better fix some day.
15692         * src/syntax.c (update_syntax_table_forward):
15693         Propertize even when truncated.
15694         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
15695         (UPDATE_SYNTAX_TABLE_FAST): Remove.
15696         All callers changed back to the non-_FAST versions.
15698 2015-11-21  Paul Eggert  <eggert@cs.ucla.edu>
15700         Add a few safety checks when ENABLE_CHECKING
15702         This was motivated by the recent addition of module code,
15703         which added some ENABLE_CHECKING-enabled checks that are
15704         useful elsewhere too.
15705         * src/alloc.c (compact_font_cache_entry):
15706         * src/fns.c (sweep_weak_table):
15707         * src/lread.c (oblookup):
15708         Use gc_asize rather than doing it by hand.
15709         * src/emacs-module.c (module_make_global_ref)
15710         (module_free_global_ref, module_vec_size):
15711         Omit assertions that lisp.h now checks.
15712         * src/lisp.h (XFASTINT, ASIZE): In functional implementations,
15713         check that the result is nonnegative.  Use eassume, as this
15714         info can help a bit when optimizing production code.
15715         (XSYMBOL) [!USE_LSB_TAG]: Assert that argument is a symbol,
15716         to be consistent with the USE_LSB_TAG case.
15717         (gc_asize): New function, when ASIZE is needed in the gc.
15718         (gc_aset): Use it.
15719         (HASH_TABLE_P): Move definition up, so that it can be used ...
15720         (XHASH_TABLE): ... here, to assert that the arg is a hash table.
15722 2015-11-21  Eli Zaretskii  <eliz@gnu.org>
15724         Simplify recording of main thread's ID on MS-Windows
15726         * src/w32term.c (w32_initialize):
15727         * src/w32console.c (initialize_w32_display):
15728         * src/w32fns.c (globals_of_w32fns): Don't record the main thread
15729         ID independently for each type of session (GUI, TTY, batch).
15730         * src/w32term.c (w32_init_main_thread): New function, records the
15731         main thread's thread ID.
15732         * src/w32term.h: Add prototype for w32_init_main_thread.
15733         * src/emacs.c (main) [WINDOWSNT]: Call w32_init_main_thread.
15735         * src/emacs-module.c [WINDOWSNT]: Rename main_thread_id to
15736         main_thread, for consistency with other threading libraries.  All
15737         users changed.  Include w32term.h.
15738         (check_main_thread) [WINDOWSNT]: Simplify the test: no need to
15739         make sure the main thread is alive, as we hold a handle on it
15740         opened by w32_init_main_thread.
15741         (module_init) [WINDOWSNT]: Reuse the thread ID recorded by
15742         w32_init_main_thread, instead of calling the requisite APIs once
15743         more.
15745 2015-11-21  Mark Oteiza  <mvoteiza@udel.edu>
15747         Backport: Fix issue where a new tempfile was created every refresh
15749         * lisp/mpc.el (mpc-format): Leave dir as relative path
15751 2015-11-21  Eli Zaretskii  <eliz@gnu.org>
15753         Call 'window-size-change-functions' for mini-windows
15755         * src/window.c (grow_mini_window, shrink_mini_window): Set the
15756         frame's 'window_sizes_changed' flag.
15757         * src/xdisp.c (redisplay_internal): Call the hooks on
15758         'window-size-change-functions' if the call to 'echo_area_display'
15759         sets the frame's 'window_sizes_changed' flag.
15760         (syms_of_xdisp) <window-size-change-functions>:
15761         Update doc string to indicate the mini-window resizes trigger a
15762         call to the hooks, and don't promise that will happen "before
15763         redisplay".  (Bug#19576, Bug#21333)
15765         * doc/lispref/windows.texi (Window Hooks): Update the description
15766         of 'window-size-change-functions'.
15768 2015-11-21  Eli Zaretskii  <eliz@gnu.org>
15770         Improve documentation of dynamic modules
15772         * src/fns.c (Frequire): Doc fix to include the dynamic module
15773         support.
15774         * src/lread.c (Fload, Vload_suffixes): Doc fixes to include the
15775         dynamic module support.
15776         (Fload): Treat the module suffix the same as '*.el' and '*.elc'
15777         wrt the MUST-SUFFIX argument.
15779         * etc/NEWS: Expand documentation of dynamically loaded modules.
15781 2015-11-21  Philipp Stephani  <phst@google.com>  (tiny change)
15783         Initial documentation for dynamic modules
15785         * etc/NEWS: Mention the new support for dynamically loaded modules.
15787 2015-11-21  Dmitry Gutov  <dgutov@yandex.ru>
15789         Add xref--etags-backend to xref-backing-functions using add-hook
15791         * lisp/progmodes/xref.el (xref-backend-functions): Move the
15792         default value into a separate `add-hook' call (bug#21964).
15794         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
15795         Don't declare the xref-backend-functions variable.
15796         It doesn't make any difference.
15798 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
15800         Fix double-decrement bug when freeing global refs
15802         * src/emacs-module.c (module_free_global_ref): Add a FIXME
15803         comment about error reporting.  Fix a recently-introduced typo
15804         that double-decremented the refcount.
15806 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
15808         Declare emacs_module_init in the module API
15810         * src/emacs-module.h (emacs_module_init): New decl.
15811         Without it, GCC might complain about a module that defines
15812         emacs_module_init without using it.  This also checks the
15813         API better.
15815 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
15817         Fix module test to use ptrdiff_t nargs too
15819         * modules/mod-test/mod-test.c (Fmod_test_return_t)
15820         (Fmod_test_sum, Fmod_test_signal, Fmod_test_throw)
15821         (Fmod_test_non_local_exit_funcall, Fmod_test_globref_make)
15822         (Fmod_test_string_a_to_b, Fmod_test_userptr_make)
15823         (Fmod_test_userptr_get, Fmod_test_vector_fill)
15824         (Fmod_test_vector_eq): Arg counts are ptrdiff_t, not int.
15825         (finalizer): Remove; no longer used.
15827 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
15829         Fix reindent-introduced typo in module code
15831         * src/emacs-module.c (MODULE_SETJMP_1): Fix typo that I
15832         introduced while reindenting the code earlier, and add a
15833         comment explaining the unusual use of do-while here.
15835 2015-11-20  Anders Lindgren  <andlind@gmail.com>
15837         Fixed bug#19576: `write-file' saves wrong buffer.
15839         If a function on the hook `window-size-change-functions' doesn't
15840         restore the current buffer, functions that save and restore the
15841         current window configuration (like `y-or-no-p') could silently
15842         change the current buffer.  When `write-file' asked the user
15843         confirmation to overwrite a file, `y-or-no-p' changed the current
15844         buffer, and the wrong buffer was saved to the file.
15846         * lisp/follow.el (follow-windows-start-end): Call `select-frame'
15847         using the `norecord' parameter.
15848         (follow-window-size-change): Restore current buffer. Call
15849         `select-frame' using the `norecord' parameter. Cleanup.
15851 2015-11-20  John Wiegley  <johnw@newartisans.com>
15853         Correct a documentation error in frames.texi
15855 2015-11-20  Stephen Leake  <stephen_leake@stephe-leake.org>
15857         * lisp/cedet/mode-local.el: Delete obsolete comment
15859 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
15861         Module function arg counts are ptrdiff_t, not int
15863         * src/emacs-module.c (struct module_fun_env)
15864         (module_make_function, module_funcall, Fmodule_call):
15865         * src/emacs-module.h (struct emacs_runtime, struct emacs_env_25):
15866         Use ptrdiff_t, not int, for arg counts.
15867         * src/emacs-module.c (module_make_function): Don’t bother
15868         checking arity against MOST_POSITIVE_FIXNUM, as that’s
15869         unnecessary here.  Make the checking clearer by negating it.
15870         (module_make_function, Fmodule_call): No need to use xzalloc
15871         since the storage doesn’t need to be cleared.
15872         (module_funcall): Don’t use VLA, since C11 doesn’t guarantee support
15873         for it, and many implementations are buggy with large VLAs anyway.
15874         Use SAFE_ALLOCA_LISP instead.
15875         (module_vec_set): Don’t crash if i < 0.
15876         (module_vec_get): Don’t crash if i < MOST_NEGATIVE_FIXNUM.
15877         (module_vec_set, module_vec_get): Do fixnum checks only when
15878         i is out of array bounds, for efficiency in the usual case.
15879         (Fmodule_load): Simplify fixnum range check.
15880         (Fmodule_call): Simplify arity check.  Use xnmalloc to detect
15881         integer overflow in array allocation size.
15883 2015-11-20  Eli Zaretskii  <eliz@gnu.org>
15885         Minor improvements in module test
15887         * modules/mod-test/mod-test.c: Include stdlib.h, to avoid warnings
15888         about missing prototype of malloc.
15889         * modules/mod-test/Makefile (CFLAGS): Add -std=gnu99, to avoid
15890         compiler warnings.
15892 2015-11-20  Eli Zaretskii  <eliz@gnu.org>
15894         Improve MS-Windows implementation in dynlib.c
15896         * src/dynlib.c [WINDOWSNT]: Include errno.h, lisp.h, and w32.h.
15897         No need to include windows.h, as w32.h already does that.
15898         <dynlib_last_err>: New static variable.
15899         (dynlib_reset_last_error): New function.
15900         (dynlib_open): Convert forward slashes to backslashes.  Convert
15901         file names from UTF-8 to either UTF-16 or the current ANSI
15902         codepage, and call either LoadLibraryW or LoadLibraryA.  If the
15903         argument is NULL, return a handle to the main module, like
15904         'dlopen' does.  Record the error, if any, for use by dynlib_error.
15905         (dynlib_sym): Check the handle for validity. Record the error, if
15906         any, for use by dynlib_error.
15907         (dynlib_error): Call w32_strerror to produce the error string, and
15908         zero out the last error code, like dlerror does.
15909         (dynlib_close): Check the handle for validity.  Record the error,
15910         if any, for use by dynlib_error.  Don't call FreeLibrary with a
15911         handle for the main module.
15912         * src/w32.c (globals_of_w32): Call dynlib_reset_last_error.
15914 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
15916         Include-file tweaks for modules
15918         * src/dynlib.c, src/emacs-module.c: Include <config.h> first.
15919         * src/dynlib.h: Do not include config.h.
15920         It’s every .c file’s responsibility to include config.h first.
15921         * src/emacs-module.c: Include emacs-module.h immediately after
15922         config.h, to test that emacs-module.h doesn’t depend on
15923         include files other than config.h.
15925 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
15927         Simplify push_handler and profile its malloc
15929         * src/lisp.h (PUSH_HANDLER): Remove.
15930         All callers changed to use push_handler directly.
15931         * src/eval.c (internal_condition_case)
15932         (internal_condition_case_1, internal_condition_case_2)
15933         (internal_condition_case_n):
15934         Use same pattern as for other invokers of push_handler.
15935         (push_handler, push_handler_nosignal): Use call-by-value
15936         instead of call-by-reference.  All uses changed.
15937         (push_handler): Simplify by rewriting in terms of
15938         push_handler_nosignal.
15939         (push_handler_nosignal): Profile any newly allocated memory.
15941 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
15943         * src/emacs-module.h: Include stddef.h, not stdlib.h.
15945 2015-11-20  Juanma Barranquero  <lekktu@gmail.com>
15947         Discover repository version in linked worktrees (bug#21930)
15949         * lisp/version.el (emacs-repository--version-git-1): Do not assume
15950         HEAD is at .git/HEAD, it can also be at .git/worktrees/<branch>/HEAD.
15951         (emacs-repository-get-version): Grok linked worktrees when EXTERNAL
15952         is nil too.
15954 2015-11-20  Juri Linkov  <juri@linkov.net>
15956         * lisp/replace.el (occur-regexp-descr): New function.
15957         (occur-1, occur-engine): Use it.
15959         * lisp/isearch.el (isearch-occur): Propertize regexp with
15960         isearch-string and isearch-regexp-function-descr for
15961         occur-regexp-descr to display the correct description
15962         message in the header (bug#21176, bug#21180).
15964 2015-11-20  Karl Fogel  <kfogel@red-bean.com>
15966         Revert `open-line' electric-indent sensitivity
15968         * lisp/simple.el (open-line): Remove electric indent code.
15969           (electric-indent-just-newline): Don't declare.
15971         * test/automated/simple-test.el (open-line-indent): Adjust test.
15973         This partly reverts Artur Malabarba's change that added electric
15974         indent sensitivity to `open-line' (Oct 24 22:26:27 2015 +0100, git
15975         commit bd4f04f86), and adjusts a new test he added right afterwards
15976         (Sat Oct 24 23:43:06 2015 +0100, git commit 207f235e3) accordingly.
15977         However, the new INTERACTIVE argument to `open-line', which he also
15978         added in the first commit, is not reverted here.
15980         See the thread "Questioning the new behavior of `open-line'." on the
15981         Emacs Devel mailing list, and in particular this message:
15983           From: Artur Malabarba
15984           Subject: Re: Questioning the new behavior of `open-line'.
15985           To: Karl Fogel
15986           Cc: David Kastrup, Pierpaolo Bernardi, emacs-devel
15987           Date: Wed, 18 Nov 2015 21:03:58 +0000
15988           Message-ID: \
15989             <CAAdUY-KN06pvCMy5bt3+Buk3yeKjf6n9iB2FaSTTOPpCqPwyhA@mail.gmail.com>
15991           https://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01707.html
15993 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
15995         Omit unnecessary clear in Fmodule_load
15997         * src/emacs-module.c (Fmodule_load):
15998         Simplify and avoid unnecessary initialization of priv member to 0.
16000         * src/emacs-module.c: (module_vec_set, module_vec_get, module_vec_size)
16002 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
16004         Prefer signed integer types in module code
16006         Generally speaking, at the C level the Emacs source code prefers
16007         signed types like ‘ptrdiff_t’ to unsigned types like ‘size_t’,
16008         partly to avoid the usual signedness confusion when comparing values.
16009         Change the module API to follow this convention.
16010         Use ‘int’ for small values that can’t exceed INT_MAX.
16011         * modules/mod-test/mod-test.c (Fmod_test_globref_make)
16012         (Fmod_test_string_a_to_b, Fmod_test_vector_fill)
16013         (Fmod_test_vector_eq):
16014         * src/emacs-module.c (struct emacs_value_frame)
16015         (module_make_global_ref, module_free_global_ref)
16016         (module_copy_string_contents, module_make_string)
16017         (module_vec_set, module_vec_get, module_vec_size):
16018         * src/emacs-module.h (struct emacs_runtime, struct emacs_env_25):
16019         * src/lread.c (suffix_p):
16020         Prefer signed to unsigned integer types.
16022 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
16024         Omit ‘const’ on locals
16026         Remove ‘const’ qualifier from locals that were newly added.
16027         We don’t normally bother declaring locals with ‘const’ even
16028         though they are not modified, for the same reason we don’t
16029         bother declaring them with ‘register’ even though their
16030         addresses are not taken; the advantage in compile-time
16031         checking isn’t worth the loss of readability.
16032         * modules/mod-test/mod-test.c (Fmod_test_non_local_exit_funcall)
16033         (Fmod_test_vector_fill, Fmod_test_vector_eq):
16034         * src/emacs-module.c (MODULE_SETJMP_1)
16035         (module_make_global_ref, module_free_global_ref)
16036         (module_non_local_exit_get, module_make_function)
16037         (module_extract_integer, module_extract_float)
16038         (module_get_user_ptr, module_set_user_ptr)
16039         (module_get_user_finalizer, module_set_user_finalizer)
16040         (module_vec_get, Fmodule_call)
16041         (module_non_local_exit_signal_1)
16042         (module_non_local_exit_throw_1, lisp_to_value)
16043         (finalize_storage, allocate_emacs_value, mark_modules)
16044         (module_handle_signal, module_handle_throw)
16045         (module_format_fun_env):
16046         * src/eval.c (push_handler, push_handler_nosignal)
16047         (init_handler):
16048         * src/lread.c (suffix_p):
16049         Omit unnecessary ‘const’.
16051 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
16053         Prefer intmax_t to int64_t in module code
16055         * modules/mod-test/mod-test.c (sum, Fmod_test_sum):
16056         * src/emacs-module.c (module_extract_integer)
16057         (module_make_integer):
16058         * src/emacs-module.h (struct emacs_env_25):
16059         Prefer intmax_t to int64_t.  This doesn’t change the generated
16060         code on any of the machines Emacs currently ports to, but it’s
16061         at least in theory more future-proof as C99 doesn’t guarantee
16062         that int64_t exists.
16064 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
16066         Rename module.c to emacs-module.c, etc.
16068         * src/emacs-module.c: Rename from src/module.c.
16069         * src/emacs-module.h: Rename from src/module.h.
16070         All uses changed.
16072 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
16074         Fix minor module problems found by static checking
16076         * src/dynlib.c (dynlib_close): #ifdef out for now, as it’s not used.
16077         * src/eval.c, src/lisp.h (lisp_eval_depth): Now static.
16078         * src/emacs-module.c (Fmodule_load): Fix pointer signedness bug.
16079         (Fmodule_call): Tell GCC that the default case is unreachable.
16081 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
16083         Style fixes for indenting etc. in module code
16085         This is mostly indenting and spacing changes.  Also, remove
16086         some unnecessary static decls instead of bothering to reindent them.
16087         * src/emacs-module.h (EMACS_EXTERN_C_BEGIN): Remove, and do this inline,
16088         as most other Emacs files do for this sort of thing.
16090 2015-11-19  Eli Zaretskii  <eliz@gnu.org>
16092         Minor improvements in modules testing Makefile
16094         * modules/mod-test/Makefile (EMACS, SO): New variables.
16095         (CFLAGS): When SO = dll, don't use -fPIC.
16096         (check): New target, runs the test.
16098 2015-11-19  Eli Zaretskii  <eliz@gnu.org>
16100         * .gitignore: Add "*.dll".
16102 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
16104         Migrate modules/.gitignore into .gitignore
16106         * .gitignore: Add former contents of modules/.gitignore.
16107         * modules/.gitignore: Remove.
16109 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
16111         Add copyright notices to module code
16113         Put them in the usual format for GNU Emacs copyright notices.
16115 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
16117         Rename emacs_module.h to module.h
16119         * src/module.h: Rename from src/emacs_module.h.
16120         All uses changed.
16122 2015-11-19  Juanma Barranquero  <lekktu@gmail.com>
16124         * src/module.c (Fmodule_load): Remove unused vars `doc_name', `args'
16126         * src/lread.c (Fload): Remove unused variable `size'
16128 2015-11-19  Alan Mackenzie  <acm@muc.de>
16130         src/keyboard.c (pre-command-hook): Fix typo in doc string: "pre" -> "post".
16132 2015-11-19  Dmitry Gutov  <dgutov@yandex.ru>
16134         Prioritize looking inside vc-parent-buffer over log-view-mode fallback
16136         * lisp/vc/vc.el (vc-deduce-fileset): Prioritize looking inside
16137         vc-parent-buffer over log-view-mode fallback (bug#21955).
16139 2015-11-18  Alan Mackenzie  <acm@muc.de>
16141         lisp/isearch.el: Eliminate macro isearch-call-message, replacing with funcall.
16143 2015-11-18  Ken Brown  <kbrown@cornell.edu>
16145         * configure.ac (LIBMODULES): Don’t define on Cygwin
16147 2015-11-18  Eli Zaretskii  <eliz@gnu.org>
16149         Fix MS-Windows build --with-modules
16151         * src/module.c: Reformat copyright commentary.
16152         (module_vec_get): Use explicit cast to size_t to avoid compiler
16153         warning in 32-bit builds.
16154         (check_main_thread) [WINDOWSNT]: Fix letter-case in Windows APIs.
16155         Compare thread IDs directly, as GetThreadId is not available
16156         before Windows Vista.
16157         (check_main_thread) [WINDOWSNT]: Duplicate the thread handle
16158         without using APIs and constants not available on XP and older
16159         systems.  Obtain and store the thread ID as well.
16161 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
16162             Philipp Stephani  <phst@google.com>
16164         Add dynamic module test and helper script
16166         Add 'modhelp.py' script (python2) to automate module testing and
16167         module generation.
16169         To build and test all modules in the modules/ dir
16170           $ ./modhelp.py test
16172         To generate a module from template code (good starting point)
16173           $ ./modhelp init mynewtestmodule
16175         See the script -h option for more documentation.
16177         * modules/modhelp.py: New module helper script.
16178         * modules/mod-test/Makefile: New file. Makefile for the test module.
16179         * modules/mod-test/mod-test.c: New file. Test module source file.
16180         * modules/mod-test/test.el: New file. ert test suite for the test module.
16181         * modules/.gitignore: New file. Local .gitignore file.
16183 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
16185         Make 'Fload' look for modules
16187         'Fload' can now load dynamic modules. This also makes 'require' work.
16189         * src/lread.c:
16190           (suffix_p): New function.
16191           (Fload): Use 'suffix_p'.  Call 'Fmodule_load' when we try to load a file
16192           with a module suffix.
16193           (syms_of_lread): Append module suffix to 'Vload_suffixes'.
16195 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
16196             Philipp Stephani  <phst@google.com>
16198         Add dynamic module module support
16200         * configure.ac: Add '--with-modules' option.  Conditionally add
16201           dynlib.o and module.o to the list of objects.  Add any system
16202           specific flags to the linker flags to support dynamic libraries.
16203         * m4/ax_gcc_var_attribute.m4: Add autoconf extension to test gcc
16204           attributes.
16205         * src/Makefile.in: Conditionally add module objects and linker flags.
16206         * src/alloc.c (garbage_collect_1): protect module local values from
16207           GC.
16208         * src/lisp.h: Add 'module_init' and 'syms_of_module' prototypes.
16209         * src/emacs-module.h: New header file included by modules.  Public
16210           module API.
16211         * src/emacs-module.c: New module implementation file.
16213 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
16215         Add new User Pointer (User_Ptr) type
16217         * src/lisp.h: Add new Lisp_Misc_User_Ptr type.
16218         (XUSER_PTR): New User_Ptr accessor.
16219         * src/alloc.c (make_user_ptr): New function.
16220         (mark_object, sweep_misc): Handle Lisp_Misc_User_Ptr.
16221         * src/data.c (Ftype_of): Return 'user-ptr' for user pointer.
16222         (Fuser-ptrp): New user pointer type predicate function.
16223         (syms_of_data): New 'user-ptrp', 'user-ptr' symbol.  New 'user-ptrp'
16224         subr.
16225         * src/print.c (print_object): Add printer for User_Ptr type.
16227 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
16228             Philipp Stephani  <phst@google.com>
16230         Add portable layer for dynamic loading
16232         * src/dynlib.h: New file.
16233         * src/dynlib.c: New file.
16235 2015-11-18  Philipp Stephani  <phst@google.com>
16237         Add catch-all & no-signal version of PUSH_HANDLER
16239         Ground work for modules. Add a non-signaling version of PUSH_HANDLER and
16240         a new "catch-all" handler type.
16242         * src/eval.c (init_handler, push_handler, push_handler_nosignal): New
16243           functions.
16244         * src/fns.c (hash_remove_from_table): Expose function public.
16245         * src/lisp.h: New handler type, define macro to push_handler call.
16247 2015-11-18  Ken Brown  <kbrown@cornell.edu>
16249         Silence byte-compiler warning
16251         * lisp/server.el (server-process-filter): Silence byte-compiler
16252         warning.
16254 2015-11-18  Paul Eggert  <eggert@cs.ucla.edu>
16256         Quote symbols in docstrings using `'
16258         Be more systematic about quoting symbols `like-this' rather than
16259         `like-this or 'like-this' in docstrings.  This follows up Artur
16260         Malabarba's email in:
16261         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01647.html
16263 2015-11-18  Peder O. Klingenberg  <peder@klingenberg.no>
16265         Fix savegames in dunnet
16267         * lisp/play/dunnet.el (dun-rot13): Use the standard rot13-region instead
16268           of separate implementation.
16270 2015-11-18  Artur Malabarba  <bruce.connor.am@gmail.com>
16272         * lisp/emacs-lisp/package.el (package--with-response-buffer):
16274         Ensure we're at the start of the buffer before searching for
16275         the end of headers.
16277 2015-11-18  Xue Fuqiao  <xfq.free@gmail.com>
16279         * admin/release-process: Improve wording.
16281 2015-11-18  Xue Fuqiao  <xfq.free@gmail.com>
16283         Backport: * CONTRIBUTE: Remove information about feature freeze.
16285         (cherry picked from commit ae0653b5ab9ee223751ec389b87011963e1cbbef)
16287 2015-11-18  Xue Fuqiao  <xfq.free@gmail.com>
16289         Backport: Document the release process
16291         * admin/notes/versioning: Add information about RC releases.
16292         * admin/release-process: Document the release process.
16293         * admin/authors.el (authors-ignored-files):
16294         * admin/README: Change FOR-RELEASE to release-process.
16295         * CONTRIBUTE:
16296         * admin/notes/bugtracker: Don't mention FOR-RELEASE.
16298         (cherry picked from commit 9a4aa0f5945a03611ae29c516025dbd353bd26ab)
16300 2015-11-18  Xue Fuqiao  <xfq.free@gmail.com>
16302         Backport: * admin/release-process: Rename from admin/FOR-RELEASE.
16304         (cherry picked from commit f8cc14b59700e51a4e31139c0a65c8154995e055)
16306 2015-11-18  Xue Fuqiao  <xfq.free@gmail.com>
16308         Backport: Mention CONTRIBUTE in README
16310         Mention CONTRIBUTE in README, since it was moved from etc/ to root.
16311         * etc/TODO: Remove the reference to `etc/CONTRIBUTE'.
16312         * README: Mention CONTRIBUTE.
16314         (cherry picked from commit ed2e7e20ae0945288c98091f308f5460c3453873)
16316 2015-11-18  Paul Eggert  <eggert@cs.ucla.edu>
16318         Fix docstring quoting problems with ‘ '’
16320         Problem reported by Artur Malabarba in:
16321         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01513.html
16322         Most of these fixes are to documentation; many involve fixing
16323         longstanding quoting glitches that are independent of the
16324         recent substitute-command-keys changes.  The changes to code are:
16325         * lisp/cedet/mode-local.el (mode-local-augment-function-help)
16326         (describe-mode-local-overload):
16327         Substitute docstrings before displaying them.
16328         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
16329         Quote the generated docstring for later substitution.
16331 2015-11-17  Eli Zaretskii  <eliz@gnu.org>
16333         Improve configure --help text for wide ints
16335         * configure.ac (wide-int): Clarify user-level advantages and
16336         disadvantages.
16338 2015-11-17  Stephen Leake  <stephen_leake@stephe-leake.org>
16340         Improve doc string
16342         * lisp/progmodes/xref.el (xref-backend-references): Improve doc string.
16344 2015-11-17  Paul Eggert  <eggert@cs.ucla.edu>
16346         eval_sub followed dangling pointer when debugging
16348         Problem reported by Pip Cet (Bug#21245).
16349         This bug could occur in eval_sub if the C compiler reused
16350         storage associated with the ‘argvals’ local after ‘argvals’
16351         went out of scope, and if the Elisp debugger stopped on Elisp
16352         function exit and accessed ‘argvals’.  It could also occur if
16353         a variadic function was called with so many arguments (over
16354         2048 args on x86-64) that SAFE_ALLOCA_LISP called malloc, then
16355         SAFE_FREE freed the arguments, then the memory manager used
16356         the storage for other purposes, then the debugger accessed the
16357         arguments.
16358         * src/eval.c (eval_sub): Declare ‘argvals’ at top level of
16359         function body.  Simplify local decls.
16360         When allocating args via SAFE_ALLOCA, call
16361         debugger before invoking SAFE_FREE, as the debugger needs
16362         access to the args.
16363         (eval_sub, apply_lambda): Rework to avoid need for
16364         set_backtrace_debug_on_exit hack.  This is cleaner,
16365         and should work better with buggy custom debuggers.
16367 2015-11-17  Daiki Ueno  <ueno@gnu.org>
16369         * lisp/image-mode.el: Support encrypted file
16371         (image-toggle-display-image): Read content from the buffer instead
16372         of the file, if the buffer holds a decrypted data.  (Bug#21870)
16374 2015-11-17  Paul Eggert  <eggert@cs.ucla.edu>
16376         ELF unexec: align section header
16378         This ports the recent unexelf.c changes to Fedora x86-64
16379         when configured with GCC’s -fsanitize=undefined option.
16380         * src/unexelf.c (unexec): Align new_data2_size to a multiple
16381         of ElfW (Shdr)’s alignment, so that NEW_SECTION_H returns a
16382         pointer aligned appropriately for its type.
16384 2015-11-17  Andreas Schwab  <schwab@linux-m68k.org>
16386         Do more checks on bytecode objects (Bug#21929)
16388         * src/eval.c (funcall_lambda): Check size of compiled function
16389         object.
16390         (Ffetch_bytecode): Likewise.
16392 2015-11-16  Johan Bockgård  <bojohan@gnu.org>
16394         pcase.el: Fix edebugging of backquoted cons patterns
16396         * lisp/emacs-lisp/pcase.el (pcase-QPAT): Fix edebugging of backquoted
16397         cons patterns. (Bug#21920)
16399 2015-11-16  Paul Eggert  <eggert@cs.ucla.edu>
16401         Improve fix for regex reentrancy abort
16403         Suggested by Stefan Monnier (Bug#21688).
16404         * src/syntax.c (update_syntax_table_forward):
16405         Remove recently-added PROPERTIZE arg, and assume it is true.
16406         All callers changed.
16407         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
16408         Invoke update_syntax_table directly.
16410 2015-11-16  Artur Malabarba  <bruce.connor.am@gmail.com>
16412         * lisp/faces.el (faces--attribute-at-point): Use `face-list-p'
16414         * lisp/emacs-lisp/package.el (package--with-response-buffer): Missing require
16416         * lisp/emacs-lisp/nadvice.el (add-function): Escape quote
16418 2015-11-16  Vasily Korytov  <vasily.korytov@yahoo.com>
16420         Recognize .rbw and .pyw files (bug#18753)
16422         * lisp/progmodes/python.el (auto-mode-alist):
16423         Recognize .pyw files.
16425         * lisp/progmodes/ruby-mode.el (auto-mode-alist):
16426         Recognize .rbw files.
16428 2015-11-16  Dmitry Gutov  <dgutov@yandex.ru>
16430         Fix ruby-mode auto-mode-alist entry
16432         * lisp/progmodes/ruby-mode.el (auto-mode-alist): Add grouping
16433         around the extensions (bug#21257).
16435 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
16437         Fix etags completion near eob
16439         * lisp/progmodes/etags.el (tags-completion-at-point-function):
16440         Use `goto-char', to avoid the end-of-buffer error (bug#20061).
16442 2015-11-15  Alan Mackenzie  <acm@muc.de>
16444         De-pessimize detection of C++ member initialization lists.
16446         list/progmodes/cc-engine.el (c-back-over-list-of-member-inits): New macro.
16447         (c-back-over-member-initializers): Reformulate such that c-at-toplevel-p
16448         is only called when a construct "looks right" rather than continually.
16449         (c-guess-basic-syntax, CASE 5R): Add a check for the mode being C++ Mode.
16451 2015-11-15  Artur Malabarba  <bruce.connor.am@gmail.com>
16453         Backport: * lisp/emacs-lisp/package.el: Fix a decoding issue.
16455         * lisp/url/url-handlers.el (url-insert-file-contents): Move some code to
16456         `url-insert-buffer-contents'.
16457         (url-insert-buffer-contents): New function
16459         (package--with-response-buffer): Use `url-insert-buffer-contents'.
16460         The previous code had some issues with decoding. Refactoring that
16461         function allows us to use the decoding from url-handlers while still
16462         treating both sync and async requests the same.
16464 2015-11-15  Stephen Leake  <stephen_leake@stephe-leake.org>
16466         Improve a few doc strings, comments
16468         * lisp/cedet/cedet-global.el (cedet-gnu-global-expand-filename):
16469         * lisp/cedet/ede/locate.el (ede-locate-base):
16470         * lisp/cedet/semantic/symref.el (semantic-symref-calculate-rootdir):
16471         * src/fns.c (Fdelq): Improve doc string.
16473         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions): Add FIXME.
16475 2015-11-15  Anders Lindgren  <andlind@gmail.com>
16477         Enhance NSTRACE (trace output for NextStep).
16479         Trace can be disabled for groups of functions. By default, event
16480         functions and functions that generate lots of output are disabled.
16482         Trace output of Objective-C functions now use the "[ClassName
16483         parameter:]" form.
16485         * src/nsterm.h (NSTRACE_ALL_GROUPS, NSTRACE_GROUP_EVENTS)
16486         (NSTRACE_GROUP_UPDATES, NSTRACE_GROUP_FRINGE, NSTRACE_GROUP_COLOR)
16487         (NSTRACE_GROUP_GLYPHS, NSTRACE_GROUP_FOCUS): New macros,
16488         controlling in which function groups trace should be active.
16489         (NSTRACE_WHEN): Support for silencing a function, this also
16490         silencing all called functions.
16491         (NSTRACE_UNSILENCE): New macro, used to re-enable trace.
16492         (NSTRACE_FMT_FSTYPE, NSTRACE_ARG_FSTYPE): New macros, used to
16493         print the full screen state in NSTRACE functions.
16495         * src/nsterm.m (nstrace_depth, nstrace_num): Made volatile as they
16496         can be accessed from multiple threads.
16497         (nstrace_enabled_global): New variable, when FALSE, trace is
16498         silenced.
16499         (nstrace_restore_global_trace_state): New function, used to
16500         restore `nstrace_enabled_global' at end of block.
16501         ([EmacsView setFrame:], [EmacsWindow setFrame:display:])
16502         ([EmacsWindow setFrame:display:animation:])
16503         ([EmacsWindow setFrameTopLeftPoint:]): New functions, print trace
16504         and call corresponding super function.
16505         (Many functions): Add or enhance trace output.
16507         * src/nsimage.m (ns_image_from_file): Enhanced trace output.
16509         * src/nsfns.m (x_set_tool_bar_lines): Add trace output.
16511         * src/nsmenu.m ([EmacsToolbar setVisible:]): New function, print trace
16512         and call corresponding super function.
16514 2015-11-15  Anders Lindgren  <andlind@gmail.com>
16516         Fixed a toolbar related issue on OS X.
16518         Earlier, when toggling the tool-bar in a maximized frame, the
16519         frame size didn't match the number of text lines, leaving an
16520         unused area at the bottom of the frame.
16522         * src/nsfns.m (x_set_tool_bar_lines): Exit maximized and full height
16523         fullscreen modes when tool bar is disabled.
16525 2015-11-15  Anders Lindgren  <andlind@gmail.com>
16527         Fixed OS X 10.6.8 build issue (bug#21862).
16529         * src/nsterm.h (EmacsView): Add missing declarations.
16530         * src/nsterm.m ([EmacsView windowDidBecomeKey]): New method, like
16531         the standard method but without the notification parameter.
16532         Intended to be used for direct calls.
16533         ([EmacsView windowDidEnterFullScreen]): Call the non-notification
16534         version of `windowDidBecomeKey'. Made the notification method call
16535         the non-notification method instead of the vice versa.
16536         (NSWindowDidEnterFullScreenNotification): Deleted, no longer
16537         needed.
16539 2015-11-15  Artur Malabarba  <bruce.connor.am@gmail.com>
16541         * lisp/faces.el (faces--attribute-at-point): Fix an issue
16543         Previous code would signal an error when the face at point was
16544         a manually built list of attributes such as '(:foregroud "white").
16546         * test/automated/faces-tests.el (faces--test-color-at-point): Add a test
16548 2015-11-15  Paul Eggert  <eggert@cs.ucla.edu>
16550         Fix regex abort when it tries to reenter itself
16552         Problem reported by Ken Raeburn.
16553         Solution suggested by Stefan Monnier (Bug#21688).
16554         * src/regex.c (re_match_2_internal):
16555         Use new _FAST functions to avoid regex code reentering itself.
16556         * src/syntax.c (update_syntax_table_forward): New arg PROPERTIZE.
16557         All callers changed.
16558         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST)
16559         (UPDATE_SYNTAX_TABLE_FAST): New inline functions.
16561 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
16563         Improve Ruby 1.9-style keyword keys highlighting
16565         * lisp/progmodes/ruby-mode.el (ruby-font-lock-keywords):
16566         Handle required keyword arguments (bug#21367).
16567         And highlight the colon together with the name.
16569 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
16571         Unify the absolutely equal xref-backend-references implementations
16573         * lisp/progmodes/elisp-mode.el (xref-backend-references):
16574         Remove.
16576         * lisp/progmodes/etags.el (xref-backend-references):
16577         Remove.
16579         * lisp/progmodes/xref.el (xref-backend-references):
16580         Define the default implementation.
16582 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
16584         Update project-find-regexp for the new xref API
16586         * lisp/progmodes/project.el (project--read-regexp):
16587         Update to use the new xref API methods.
16589         * lisp/progmodes/xref.el (xref-find-backend): Autoload.
16591 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
16593         Fix replacing a match with a shorter string
16595         In effect, partially reverting fe973fc.
16597         * lisp/progmodes/xref.el (xref-query-replace): Store the end
16598         of each match as a marker again, instead of length.
16599         (xref--query-replace-1): Update accordingly.
16601 2015-11-14  Artur Malabarba  <bruce.connor.am@gmail.com>
16603         * lisp/progmodes/xref.el (xref-pop-marker-stack): Downgrade errors
16605         Signal user-errors instead.
16607 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
16609         Document 'describe-symbol'
16611         * doc/emacs/help.texi (Help Summary): Mention "C-h o".
16612         (Name Help): Document "C-h o" and describe-symbol.
16614         * lisp/help-fns.el (describe-symbol): Doc fix.
16616 2015-11-14  Paul Eggert  <eggert@cs.ucla.edu>
16618         Change test name to avoid spellcheck issue.
16620 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
16622         Avoid signaling an error in 'describe-symbol'
16624         * lisp/help-fns.el (describe-symbol): Avoid errors when the symbol
16625         exists as a function/variable/face/etc., but is undocumented.
16627         * test/automated/help-fns.el (help-fns-test-describe-symbol): New
16628         test.
16630 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
16632         * INSTALL (--with-cairo): Document this new configure option.
16634 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
16636         Document that GNU Make >= 3.81 is required to build Emacs
16638         * doc/lispref/internals.texi (Building Emacs): Document that GNU
16639         Make 3.81 or later is now required.
16641 2015-11-14  Artur Malabarba  <bruce.connor.am@gmail.com>
16643         Backport: * lisp/emacs-lisp/package.el: Refactor -with-work-buffer-async.
16645         (package--with-work-buffer-async): Reimplement as
16646         `package--with-response-buffer'.
16647         (package--with-work-buffer): Mark obsolete.
16648         (package--with-response-buffer): New macro. This is a more self
16649         contained and less contrived version of
16650         `package--with-work-buffer-async'.  It uses keyword arguments,
16651         doesn't have async on the name, doesn't fallback on
16652         `package--with-work-buffer', and has _much_ simpler error
16653         handling.  On master, this macro will soon be part of another
16654         library (either standalone or inside url.el), which is why this
16655         commit is not to be merged back.
16657         (package--check-signature, package--download-one-archive)
16658         (package-install-from-archive, describe-package-1): Use it.
16660         (package--download-and-read-archives): Let
16661         `package--download-one-archive' take care of calling
16662         `package--update-downloads-in-progress'.
16664 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
16666         * CONTRIBUTE (Branches): Improve wording for back-ported commits.
16668 2015-11-14  Dmitry Gutov  <dgutov@yandex.ru>
16670         Use generic dispatch for xref backends
16672         * lisp/progmodes/xref.el (xref-backend-functions):
16673         New variable.
16674         (xref-find-function): Remove.
16675         (xref-find-backend)
16676         (xref--etags-backend): New functions.
16677         (xref-identifier-at-point-function)
16678         (xref-identifier-completion-table-function): Remove.
16679         (xref-backend-definitions, xref-backend-references)
16680         (xref-backend-apropos, xref-backend-identifier-at-point)
16681         (xref-backend-identifier-completion-table):
16682         New generic functions.
16684         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
16685         Add `elisp--xref-backend' to the beginning of
16686         `xref-backend-functions', locally.  Delete references to
16687         removed functions and vars.
16688         (elisp-xref-find): Remove.
16689         (elisp--xref-backend): New function.
16690         (elisp--xref-find-references, elisp--xref-find-apropos)
16691         (elisp--xref-identifier-completion-table):
16692         Turn into appropriately named generic methods.
16694         * lisp/progmodes/etags.el (etags-xref-find): Remove.
16695         (xref-backend-identifier-completion-table)
16696         (xref-backend-references, xref-backend-definitions)
16697         (xref-backend-apropos): New generic methods.
16699 2015-11-14  Juri Linkov  <juri@linkov.net>
16701         Support rectangular regions for more commands
16703         * lisp/simple.el (region-extract-function): Handle the arg
16704         value ‘bounds’.
16705         (region-insert-function): New function.
16706         (shell-command-on-region): Add arg ‘region-noncontiguous-p’.
16707         If non-nil, operate on multiple chunks.
16708         (region-noncontiguous-p): New function.
16710         * lisp/rect.el: Add function rectangle--insert-region
16711         around region-insert-function.
16712         (extract-rectangle-bounds): New function.
16713         (rectangle--extract-region): Handle the arg value ‘bounds’.
16714         (rectangle--insert-region): New function.
16716         * lisp/emulation/cua-rect.el: Add function cua--insert-rectangle
16717         around region-insert-function.
16718         (cua--extract-rectangle-bounds): New function.
16719         (cua--rectangle-region-extract): Handle the arg value ‘bounds’.
16721         * lisp/replace.el (query-replace, query-replace-regexp): Add arg
16722         ‘region-noncontiguous-p’.  Use ‘use-region-p’.
16723         (query-replace-regexp-eval, map-query-replace-regexp)
16724         (replace-string, replace-regexp): Use ‘use-region-p’.
16725         (keep-lines, flush-lines, how-many): Use ‘use-region-p’.
16726         (perform-replace): Add arg ‘region-noncontiguous-p’.
16727         If non-nil, operate on multiple chunks.
16729         * src/casefiddle.c (Fdowncase_region): Add arg ‘region-noncontiguous-p’.
16730         If non-nil, operate on multiple chunks.  (Bug#19829)
16732 2015-11-14  Dmitry Gutov  <dgutov@yandex.ru>
16734         Handle multiple matches on the same line; add highlighting
16736         * lisp/progmodes/xref.el (xref-location-marker): Interpret the
16737         column value in characters.
16738         (xref--collect-matches): Rename from `xref--collect-match'.
16739         Search for all matches in the hit line.  Add `highlight' face to
16740         the matched region in the summary.  Update both callers.
16742 2015-11-14  Dmitry Gutov  <dgutov@yandex.ru>
16744         Replace xref-match-bounds with xref-match-length
16746         Relying on xref-location-marker to point to the beginning of the match
16748         * lisp/progmodes/xref.el (xref-match-bounds): Remove.
16749         (xref-match-length): Add.
16750         (xref-make-match): Change the arguments.
16751         (xref--match-buffer-bounds): Remove.
16752         (xref-match-item): Store length, instead of end-column.
16753         (xref-pulse-momentarily)
16754         (xref--collect-match)
16755         (xref--query-replace-1): Update accordingly.
16756         (xref-query-replace): Ditto.  And check that the search results
16757         are up-to-date.
16759 2015-11-13  Kelvin White  <kwhite@gnu.org>
16761         Reconnect asynchronously in erc.
16763 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
16765         Merge from gnulib
16767         This incorporates:
16768         2015-11-13 xalloc-oversized: improve performance with GCC 5
16769         * lib/xalloc-oversized.h: Copy from gnulib.
16771 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
16773         Spruce up ftfont.c memory allocation
16775         * src/ftfont.c (setup_otf_gstring):
16776         Avoid O(N**2) behavior when reallocating.
16777         (ftfont_shape_by_flt): Prefer xpalloc to xrealloc when
16778         reallocating buffers; this simplifies the code.  Do not trust
16779         mflt_run to leave the output areas unchanged on failure, as
16780         this isn’t part of its interface spec.
16782 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
16784         Port recent XCB changes to 64-bit ‘long int’
16786         For historical reasons, libX11 represents 32-bit values like Atoms as
16787         ‘long int’ even on platforms where ‘long int’ is 64 bits.  XCB doesn’t
16788         do that, so adapt the recent XCB code to behave properly on 64-bit
16789         platforms.  Also, fix what appears to be a bug in the interpretation
16790         of xcb_get_property_value_length, at least on my Fedora platform
16791         which is running libxcb-1.11-5.fc21.
16792         * src/xfns.c (x_real_pos_and_offsets):
16793         * src/xterm.c (get_current_wm_state):
16794         xcb_get_property_value_length returns a byte count, not a word count.
16795         For 32-bit quantities, xcb_get_property_value returns a vector
16796         of 32-bit words, not of (possibly 64-bit) long int.
16798         Backport.
16800 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
16802         * src/undo.c (run_undoable_change): Now static.
16804         Backport.
16806 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16808         Remove support for ':timeout' from w32 tray notifications
16810         * src/w32fns.c (Fw32_notification_notify): Delete the code that
16811         supports ':timeout'.
16812         (syms_of_w32fns): Don't DEFSYM ':timeout'.  This avoids clashes
16813         with dbusbind.c when D-Bus is compiled in.
16815         * doc/lispref/os.texi (Desktop Notifications): Don't mention
16816         ':timeout'.
16818         Backport.
16820 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
16822         * test/automated/simple-test.el: Add test for bug#20698 (bug#21885)
16824         (simple-test--transpositions): New macro.
16825         (simple-transpose-subr): New test.
16827         Backport.
16829 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
16831         * lisp/progmodes/elisp-mode.el: Declare function `project-roots'
16833         Backport.
16835 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
16837         * src/undo.c: Small fixes for previous change
16839         (run_undoable_change): Mark void argument list.
16840         (record_property_change): Remove unused variable `boundary'.
16842         Backport.
16844 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16846         Add a few more variables to redisplay--variables
16848         * lisp/frame.el (redisplay--variables): Add bidi-paragraph-direction
16849         and bidi-display-reordering to the list.
16851         Backport.
16853 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16855         * lisp/loadup.el: Enlarge the size of the hash table to 80000.
16857         Backport.
16859 2015-11-13  Eli Barzilay  <eli@barzilay.org>
16861         Fix point positioning after transposing with negative arg
16863         * lisp/simple.el (transpose-subr): When invoked with a negative
16864         argument, move point to after the transposed text, like we do
16865         when invoked with a positive argument.  (Bug#21885)
16867         Backport.
16869 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16871         Fix last change in shr.el
16873         * lisp/net/shr.el (shr--have-one-fringe-p): Rename from
16874         have-fringes-p.  All callers changed.  Doc fix.  (Bug#21895)
16876         Backport.
16878 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16880         Fix last change
16882         * src/w32fns.c (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]:
16883         Don't DEFSYM tray notification symbols if D-Bus is being used.
16885         Backport.
16887 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16889         Another fix for MinGW64 and Cygwin builds due to notifications
16891         * src/w32fns.c: Ifdef away tray notification code if D-Bus is
16892         being compiled into Emacs.
16893         (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]: Don't defsubr
16894         Sw32_notification_notify and Sw32_notification_close if the code
16895         is not compiled.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
16897         Backport.
16899 2015-11-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
16901         Remove intern calls and XXX comments from Fx_export_frames
16903         * src/xfns.c (Fx_export_frames): Use Qpdf, Qpng, Qpostscript, and
16904         Qsvg instead of intern calls.  Use "postscript" instead of "ps"
16905         for consistency with image types.  Remove XXX comments.
16906         (syms_of_xfns) <Qpdf>: DEFSYM it.
16908         Backport.
16910 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
16912         Port recent XCB changes to 64-bit ‘long int’
16914         For historical reasons, libX11 represents 32-bit values like Atoms as
16915         ‘long int’ even on platforms where ‘long int’ is 64 bits.  XCB doesn’t
16916         do that, so adapt the recent XCB code to behave properly on 64-bit
16917         platforms.  Also, fix what appears to be a bug in the interpretation
16918         of xcb_get_property_value_length, at least on my Fedora platform
16919         which is running libxcb-1.11-5.fc21.
16920         * src/xfns.c (x_real_pos_and_offsets):
16921         * src/xterm.c (get_current_wm_state):
16922         xcb_get_property_value_length returns a byte count, not a word count.
16923         For 32-bit quantities, xcb_get_property_value returns a vector
16924         of 32-bit words, not of (possibly 64-bit) long int.
16926 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
16928         * src/undo.c (run_undoable_change): Now static.
16930 2015-11-13  Michael Albinus  <michael.albinus@gmx.de>
16932         Adapt Tramp version, do not merge with master
16934         * doc/misc/trampver.texi (trampver):
16935         * lisp/net/trampver.el (tramp-version): Set to "2.2.13-25.1".
16937 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16939         Remove support for ':timeout' from w32 tray notifications
16941         * src/w32fns.c (Fw32_notification_notify): Delete the code that
16942         supports ':timeout'.
16943         (syms_of_w32fns): Don't DEFSYM ':timeout'.  This avoids clashes
16944         with dbusbind.c when D-Bus is compiled in.
16946         * doc/lispref/os.texi (Desktop Notifications): Don't mention
16947         ':timeout'.
16949 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
16951         * test/automated/simple-test.el: Add test for bug#20698 (bug#21885)
16952         (simple-test--transpositions): New macro.
16953         (simple-transpose-subr): New test.
16955 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
16957         * lisp/progmodes/elisp-mode.el: Declare function `project-roots'
16959 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
16961         * src/undo.c: Small fixes for previous change
16962         (run_undoable_change): Mark void argument list.
16963         (record_property_change): Remove unused variable `boundary'.
16965 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16967         Add a few more variables to redisplay--variables
16969         * lisp/frame.el (redisplay--variables): Add bidi-paragraph-direction
16970         and bidi-display-reordering to the list.
16972 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16974         * lisp/loadup.el: Enlarge the size of the hash table to 80000.
16976 2015-11-13  Eli Barzilay  <eli@barzilay.org>
16978         Fix point positioning after transposing with negative arg
16980         * lisp/simple.el (transpose-subr): When invoked with a negative
16981         argument, move point to after the transposed text, like we do
16982         when invoked with a positive argument.  (Bug#21885)
16984 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16986         Fix last change in shr.el
16988         * lisp/net/shr.el (shr--have-one-fringe-p): Rename from
16989         have-fringes-p.  All callers changed.  Doc fix.  (Bug#21895)
16991 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16993         Fix last change
16995         * src/w32fns.c (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]:
16996         Don't DEFSYM tray notification symbols if D-Bus is being used.
16998 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
17000         Another fix for MinGW64 and Cygwin builds due to notifications
17002         * src/w32fns.c: Ifdef away tray notification code if D-Bus is
17003         being compiled into Emacs.
17004         (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]: Don't defsubr
17005         Sw32_notification_notify and Sw32_notification_close if the code
17006         is not compiled.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
17008 2015-11-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
17010         Remove intern calls and XXX comments from Fx_export_frames
17012         * src/xfns.c (Fx_export_frames): Use Qpdf, Qpng, Qpostscript, and
17013         Qsvg instead of intern calls.  Use "postscript" instead of "ps"
17014         for consistency with image types.  Remove XXX comments.
17015         (syms_of_xfns) <Qpdf>: DEFSYM it.
17017 2015-11-13  Eric Hanchrow  <eric.hanchrow@gmail.com>
17019         shr: don't invoke unbound function (Bug#21895)
17021         * lisp/net/shr.el (have-fringes-p): New function.
17022         (shr-insert-document, shr-fill-text): Use it.
17024 2015-11-12  Juanma Barranquero  <lekktu@gmail.com>
17026         * test/automated/keymap-tests.el: Fix test to make it repeatable
17028         (keymap-store_in_keymap-FASTINT-on-nonchars): Reset Buffer-menu-mode-map
17029         entry to its initial value to make the test repeatable in interactive
17030         sessions (assuming it doesn't fail and crashes Emacs, of course).
17032 2015-11-13  Artur Malabarba  <bruce.connor.am@gmail.com>
17034         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors): Small fix
17036 2015-11-12  Phillip Lord  <phillip.lord@russet.org.uk>
17038         : Tests for undo-auto functionality.
17040 2015-11-12  Phillip Lord  <phillip.lord@newcastle.ac.uk>
17042         The heuristic that Emacs uses to add an `undo-boundary' has been
17043         reworked, as it interacts poorly with functions on `post-command-hook'
17044         or `after-change-functions'.
17046         * lisp/simple.el: New section added.
17047         * src/cmds.c (remove_excessive_undo_boundaries): Now in lisp.
17048         (self_insert_command): Calls simple.el to amalgamate.
17049         (delete_char): Calls simple.el to amalgamate.
17050         * src/keyboard.c (last_undo_boundary): Removed.
17051         * src/undo.c (run_undoable_change): New function.
17053 2015-11-12  Juri Linkov  <juri@linkov.net>
17055         Bind [?\S-\ ] to previous line command in Dired-like modes.
17057         * lisp/arc-mode.el (archive-mode-map):
17058         * lisp/dired.el (dired-mode-map):
17059         * lisp/proced.el (proced-mode-map):
17060         * lisp/vc/vc-dir.el (vc-dir-mode-map):
17061         Bind [?\S-\ ] to previous line command.
17062         (Bug#20790)
17064 2015-11-12  Eli Zaretskii  <eliz@gnu.org>
17066         Fix the MinGW64 and Cygwin-w32 builds
17068         * src/w32fns.c (MYNOTIFYICONDATAW_V1_SIZE)
17069         (MYNOTIFYICONDATAW_V2_SIZE, MYNOTIFYICONDATAW_V3_SIZE): Define and
17070         use instead of the corresponding NOTIFYICONDATAW_Vn_SIZE macros,
17071         which cause trouble with MinGW42 headers.  Ifdef away tray
17072         notifications code for Cygwin.  Reported by Andy Moreton
17073         <andrewjmoreton@gmail.com>.
17075 2015-11-12  Simen Heggestøyl  <simenheg@gmail.com>
17077         Enable sorting of JSON object keys when encoding
17079         * lisp/json.el (json-encoding-object-sort-predicate): New variable
17080         for specifying a sorting predicate for JSON objects during encoding.
17081         (json--plist-to-alist): New utility function.
17082         (json-encode-hash-table): Re-use `json-encode-alist' when object keys
17083         are to be sorted.
17084         (json-encode-alist): Sort output by
17085         `json-encoding-object-sort-predicate, when set.
17086         (json-encode-plist): Re-use `json-encode-alist' when object keys are
17087         to be sorted.
17088         (json-pretty-print-buffer-ordered): New command to pretty print the
17089         buffer with object keys sorted alphabetically.
17090         (json-pretty-print-ordered): New command to pretty print the region
17091         with object keys sorted alphabetically.
17093         * test/automated/json-tests.el (test-json-plist-to-alist)
17094         (test-json-encode-plist, test-json-encode-hash-table)
17095         (test-json-encode-alist-with-sort-predicate)
17096         (test-json-encode-plist-with-sort-predicate): New tests.
17098         * etc/NEWS: Add an entry for the new commands.
17100 2015-11-12  Juanma Barranquero  <lekktu@gmail.com>
17102         * test/automated/keymap-tests.el: New test file.
17104 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
17106         Speed up x_real_pos_and_offsets using XCB
17108         * src/xfns.c (x_real_pos_and_offsets) [USE_XCB]: Add XCB flavors of
17109         all X calls, and pipeline requests when possible, collecting results
17110         later.  Eliminate use of x_catch_errors (and thus XSync) in XCB case.
17112 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
17114         Enable use of XCB for checking window manager state
17116         * src/xterm.c (get_current_wm_state) [USE_XCB]: Use XCB calls instead
17117         of XGetWindowProperty plus error-catching, since we can explicitly
17118         check for errors in the XCB version.  This eliminates 3 XSync calls on
17119         top of the round-trip actually fetching the information.
17121 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
17123         Detect XCB and save a connection handle
17125         * configure.ac: If using X11, check for XCB libraries and header.
17126         * src/Makefile.in (XCB_LIBS): Define.
17127         (LIBX_EXTRA): Include it.
17129         * src/xterm.h [USE_XCB]: Include X11/Xlib-xcb.h.
17130         (struct x_display_info) [USE_XCB]: Add an XCB connection handle field.
17131         * src/xterm.c (x_term_init) [USE_XCB]: Initialize the new field.
17133 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
17135         Reduce some data dependencies between X calls
17137         Gains nothing in the traditional-Xlib code, but more closely aligns
17138         with how the XCB version will work.
17140         * src/xfns.c (x_real_pos_and_offsets): When translating coordinates,
17141         send coordinates (0,0) to the X server and add in the real coordinates
17142         after getting the response.  Move XGetGeometry for outer window inside
17143         error-trapping block.  Use DPY variable more, since it's available.
17145 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
17147         Use color cache for creating bitmap
17149         * src/image.c (x_create_bitmap_from_xpm_data) [ALLOC_XPM_COLORS]:
17150         Set attributes to use the caching color allocator.  Initialize and
17151         free the cache.
17153 2015-11-12  Eli Barzilay  <eli@barzilay.org>
17155         Add "^" to the interactive specs of `dired-next/previous-line'
17157         * lisp/dired.el (dired-next-line, dired-previous-line): It makes sense
17158         to bind these commands to the arrow keys, and that means that they work
17159         better with a "^" in the `interactive' declaration so selection works
17160         as expected.
17162 2015-11-12  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
17164         Sync with soap-client repository, version 3.0.2
17166         * lisp/net/soap-client.el: Bump version to 3.0.2.
17168         * lisp/net/soap-client.el (soap-warning): Use format, not format-message.
17170         * lisp/net/soap-client.el: Add cl-lib to Package-Requires.  Require cl-lib.
17171         (soap-validate-xs-simple-type): Use cl-labels instead of cl-flet.
17173         * lisp/net/soap-client.el: Support Emacs versions that do not have
17174         define-error.
17176         * lisp/net/soap-inspect.el: Remove version header.
17178         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Fix first line header
17179         format.
17181 2015-11-11  Alan Mackenzie  <acm@muc.de>
17183         CC Mode: Respect users' settings of open-paren-in-column-0-is-defun-start.
17185         * lisp/progmodes/cc-engine.el (c-backward-single-comment)
17186         (c-backward-comments, c-invalidate-state-cache-1, c-parse-state-1)
17187         (c-guess-basic-syntax):
17188         Remove bindings of open-paren-in-column-0-is-defun-start to nil.
17189         (c-get-fallback-scan-pos): "New" function (existed several years ago).
17190         (c-parse-state-get-strategy): Reintroduce the 'BOD strategy, using
17191         c-get-fallback-scan-pos.
17192         (c-parse-state-1): Handle 'BOD strategy.
17194         * lisp/progmodes/cc-mode.el (c-before-change, c-after-change)
17195         (c-font-lock-fontify-region): Remove bindings of
17196         open-paren-in-column-0-is-defun-start to nil.
17198         * doc/misc/cc-mode.texi (Performance Issues)
17199         (Limitations and Known Bugs): Fix mix up between @chapter and @appendix.
17201 2015-11-11  Artur Malabarba  <bruce.connor.am@gmail.com>
17203         * lisp/obarray.el: Fix shadowed variables.
17204         (obarray-map, obarray-remove, obarray-put, obarray-get):
17205         Change OBARRAY arg to OB to avoid shadowing ‘obarray’.
17207 2015-11-11  Eli Zaretskii  <eliz@gnu.org>
17209         Avoid error in submitting a form with EWW
17211         * lisp/gnus/mm-url.el (mm-url-form-encode-xwfu): Allow argument
17212         CHUNK to be nil.  (Bug#21881)
17214 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
17216         Rename seq-p and map-p to seqp and mapp
17218         * lisp/emacs-lisp/seq.el (seqp): New name.
17219         * lisp/emacs-lisp/map.el (mapp): New name.
17220         * doc/lispref/sequences.texi: Update the documentation for seqp.
17221         * test/automated/map-tests.el: Update the tests for mapp.
17223 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
17225         Rename obarray-p to obarrayp
17227         * lisp/obarray.el (obarrayp): New name.
17228         * test/automated/obarray-tests.el: Update the tests.
17230 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
17232         Rename obarray-foreach to obarray-map
17234         * lisp/obarray.el (obarray-map): New name.
17235         * test/automated/obarray-tests.el: Update the corresponding tests.
17237 2015-11-11  Przemysław Wojnowski  <esperanto@cumego.com>
17239         New file with obarray functions.
17241         * lisp/obarray.el: Basic obarray functions extracted from abbrev.el.
17242         * test/automated/obarray-tests.el: New file.
17244 2015-11-11  Eli Zaretskii  <eliz@gnu.org>
17246         Implement tray notifications for MS-Windows
17248         * src/w32fns.c (MY_NOTIFYICONDATAW): New typedef.
17249         (NOTIFYICONDATAW_V1_SIZE, NOTIFYICONDATAW_V2_SIZE)
17250         (NOTIFYICONDATAW_V3_SIZE, NIF_INFO, NIIF_NONE, NIIF_INFO)
17251         (NIIF_WARNING, NIIF_ERROR, EMACS_TRAY_NOTIFICATION_ID)
17252         (EMACS_NOTIFICATION_MSG): New macros.
17253         (NI_Severity): New enumeration.
17254         (get_dll_version, utf8_mbslen_lim, add_tray_notification)
17255         (delete_tray_notification, Fw32_notification_notify)
17256         (Fw32_notification_close): New functions.
17257         (syms_of_w32fns): Defsubr functions exposed to Lisp.  DEFSYM
17258         keywords used by w32-notification-notify.
17260         * doc/lispref/os.texi (Desktop Notifications): Describe the native
17261         w32 tray notifications.
17263 2015-11-11  Alan Mackenzie  <acm@muc.de>
17265         First commit to scratch/follow.  Make Isearch work with Follow Mode, etc.
17267         doc/lispref/window.texi (Basic Windows): Add paragraph defining "Group of
17268         Windows" and new @defun selected-window-group.
17269         (Window Start and End): Describe new &optional parameter GROUP and
17270         ...-group-function for window-start, window-end, set-window-start, and
17271         pos-visible-in-window-p.
17272         (Textual Scrolling) Describe the same for recenter.
17273         doc/lispref/positions.texi (Screen Lines): Describe the same for
17274         move-to-window-line.
17276         src/window.c (Fwindow_start, Fwindow_end, Fset_window_start)
17277         (Fpos_visible_in_window_p, Frecenter, Fmove_to_window_line): To each, add ar
17278         new optional parameter "group".  At the beginning of each, check whether the
17279         corresponding ...-group-function is set to a function, and if so execute this
17280         function in place of the normal processing.
17281         (syms_of_window): Define symbols for the six new variables below.
17282         (window-start-group-function, window-end-group-function)
17283         (set-window-start-group-function, recenter-group-function)
17284         (pos-visible-in-window-p-group-function, move-to-window-line-group-function):
17285         New permanent local buffer local variables.
17286         src/keyboard.c (Fposn_at_point): Add extra parameter in call to
17287         Fpos_visible_in_window_p.
17289         lisp/window.el (selected-window-group-function): New permanent local buffer
17290         local variable.
17291         (selected-window-group): New function.
17293         lisp/follow.el (follow-mode): Set the ...-group-function variables at mode
17294         enable, kill them at mode disable.  Add/remove follow-after-change to/from
17295         after-change-functions.
17296         (follow-start-end-invalid): New variable.
17297         (follow-redisplay): Manipulate follow-start-end-invalid.
17298         (follow-after-change, follow-window-start, follow-window-end)
17299         (follow-set-window-start, follow-pos-visible-in-window-p)
17300         (follow-move-to-window-line, follow-sit-for): New functions.
17302         lisp/isearch.el (isearch-call-message): New macro.
17303         (isearch-update, with-isearch-suspended, isearch-del-char)
17304         (isearch-search-and-update, isearch-ring-adjust): Invoke above new macro.
17305         (with-isearch-suspended): Rearrange code such that isearch-call-message is
17306         invoked before point is moved.
17307         (isearch-message): Add comment about where point must be at function call.
17308         (isearch-search): Remove call to isearch-message.
17309         (isearch-lazy-highlight-window-group): New variable.
17310         (isearch-lazy-highlight-new-loop): Unconditionally start idle timer.  Move
17311         the battery of tests to ...
17312         (isearch-lazy-highlight-maybe-new-loop): New function, started by idle timer.
17313         Note: (sit-for 0) is still called.
17314         (isearch-lazy-highlight-update): Check membership of
17315         isearch-lazy-highlight-window-group.  Don't set the `window' overlay
17316         property.
17317         (isearch-update, isearch-done, isearch-string-out-of-window)
17318         (isearch-back-into-window, isearch-lazy-highlight-maybe-new-loop)
17319         (isearch-lazy-highlight-search, isearch-lazy-highlight-update)
17320         (isearch-lazy-highlight-update): Call the six amended primitives (see
17321         src/window.c above) with the new `group' argument set to t, to cooperate
17322         with Follow Mode.
17324 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
17326         Optimize `file-equal-p' and `file-in-directory-p' in Tramp
17328         * lisp/net/tramp.el (tramp-handle-file-equal-p)
17329         (tramp-handle-file-in-directory-p): New defuns.  Suggested by
17330         Harvey Chapman <hchapman@3gfp.com>.
17332         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
17333         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist):
17334         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist):
17335         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist): Use them.
17337 2015-11-10  Karl Fogel  <kfogel@red-bean.com>
17339         * CONTRIBUTE: Encourage adding tests.
17341         Based on this post from John Wiegley:
17343           From: "John Wiegley" <johnw@newartisans.com>
17344           Subject: Re: [Emacs-diffs] master 1f02cbe: Fix bug#21766 and add test
17345           To: Juanma Barranquero <lekktu@gmail.com>
17346           Cc: emacs-diffs@gnu.org, bruce.connor.am@gmail.com,
17347               emacs-devel <emacs-devel@gnu.org>
17348           Date: Wed, 28 Oct 2015 18:45:29 -0700
17349           Message-ID: <m2y4emqwg6.fsf@newartisans.com>
17351           https://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02372.html
17353 2015-11-10  David Reitter  <david.reitter@gmail.com>
17355         Avoid creating notification objects when possible
17357         * src/nsterm.m (windowWillEnterFullScreen, windowWillExitFullScreen:)
17358         (windowDidEnterFullScreen, windowDidExitFullScreen): Provide convenience
17359         functions that do not require a notification object.  When needed,
17360         define NSWindowDidEnterFullScreenNotification to allow for compilation
17361         on OS X 10.6.8.
17363 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
17365         Move INTEGER_TO_CONS body out of .h file
17367         * src/data.c (INTBIG_TO_LISP): New macro, with most
17368         of the contents of the old INTEGER_TO_CONS.
17369         (intbig_to_lisp, uintbig_to_lisp): New functions.
17370         * src/lisp.h (INTEGER_TO_CONS):
17371         Simplify by using EXPR_SIGNED and the new functions.
17372         This shrinks code size a bit, and makes it easier to
17373         put a breakpoint on handling of large integers.
17375 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
17377         Merge from gnulib
17379         This incorporates:
17380         2015-11-10 intprops: new public macro EXPR_SIGNED
17381         2015-11-10 intprops: fix typo in clang port
17382         * lib/intprops.h: Copy from gnulib.
17384 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
17386         Spelling fixes
17388         * lisp/net/soap-inspect.el (soap-inspect-xs-simple-type):
17389         Fix misspelling in output.
17391 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
17393         * doc/lispref/variables.texi (Directory Local Variables):
17394         Document dir-locals wildcards.
17396         * lisp/files.el (dir-locals-file): Point to Info node.
17398         * doc/emacs/custom.texi (Directory Variables):
17399         Document dir-locals wildcards.
17401         * etc/NEWS: Document new functionality.
17403 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
17405         * lisp/files.el: Don't allow customization of dir-locals sorting.
17406         In retrospect, this is not a good idea for the same reason that
17407         `dir-locals-file' is a defconst, because it is important that this
17408         behavior be "uniform across different environments and users".
17409         Sure, the user can still change the sorting with a hack, but we
17410         shouldn't encourage them to change it.
17411         (dir-locals--all-files): Return list in the order returned by
17412         `file-expand-wildcards'.
17413         (file-expand-wildcards): Document the sorting predicate used.
17414         (dir-locals-sort-predicate): Delete variable.
17416 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
17418         * lisp/files.el (dir-locals-read-from-file): Better handle errors.
17420         * lisp/isearch.el (search-default-regexp-mode): Change default value.
17422 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
17424         * lisp/files.el (dir-locals-find-file): Don't stop at unreadable files.
17425         `locate-dominating-file' will now keep looking if the files it finds in
17426         a given directory are unreadable (or not files).
17428 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
17430         * lisp/files.el (dir-locals-file): Allow wildcards.
17431         (dir-locals-find-file, dir-locals-collect-variables)
17432         (dir-locals-read-from-file): Update accordingly.
17433         (hack-dir-local-variables): Rename a local variable.
17435         * lisp/files-x.el (modify-dir-local-variable): Update accordingly.
17437         * lisp/help-fns.el (describe-variable): Update accordingly.
17439         * .gitignore: Add .dir-locals?.el.
17441 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
17443         * lisp/emacs-lisp/map.el (map-merge-with): New function.
17445         * test/automated/map-tests.el (test-map-merge-with): New test.
17447 2015-11-10  Karl Fogel  <kfogel@red-bean.com>
17449         Fix some recently-perturbed bookmark autoloads
17451         * lisp/bookmark.el (bookmark-set-internal): Remove unnecessary autoload.
17452         (bookmark-set): Restore autoload.
17453         (bookmark-set-no-overwrite): Add autoload.
17455         Thanks to Juanma Barranquero for noticing the autoload problems
17456         introduced by my recent commit adding/changing the above functions
17457         (Sun Nov 8 14:16:43 2015 -0500, git commit 3812e17978).
17459 2015-11-09  Noah Friedman  <friedman@splode.com>
17461         * etc/emacs-buffer.gdb (ydump-buffer): Handle case where gap is at
17462         the start of buffer.  I don't recall if older versions of gdb were
17463         less strict but you cannot dump a 0-length range in gdb 7.9.1.
17465 2015-11-10  Dmitry Gutov  <dgutov@yandex.ru>
17467         * lisp/progmodes/project.el: Update Commentary.
17469         Merge branch 'project-next'
17471 2015-11-10  Dmitry Gutov  <dgutov@yandex.ru>
17473         Fold `project-ask-user' into `project-current'
17475         * lisp/progmodes/project.el (project-find-functions): Remove
17476         `project-ask-user'.
17477         (project-ask-user): Remove function and the corresponding
17478         `project-roots' implementation.
17479         (project-current): Add a new argument, MAYBE-PROMPT.  Prompt the
17480         user in case there's no project in the current directory.  Update
17481         all callers.
17483 2015-11-09  Karl Fogel  <kfogel@red-bean.com>
17485         When VC detects a conflict, specify which file
17487         * lisp/vc/vc.el (vc-message-unresolved-conflicts): New function.
17488         * lisp/vc/vc-svn.el (vc-svn-find-file-hook):
17489         * lisp/vc/vc-hg.el (vc-hg-find-file-hook):
17490         * lisp/vc/vc-bzr.el (vc-bzr-find-file-hook):
17491         * lisp/vc/vc-git.el (vc-git-find-file-hook): Use above new function
17492           to display a standard message that specifies the conflicted file.
17494         Before this change, the message VC used for indicating a conflicted
17495         file was just "There are unresolved conflicts in this file" without
17496         naming the file (and this language was duplicated in several places).
17497         After this change, it's "There are unresolved conflicts in file FOO"
17498         (and this language is now centralized in one function in vc.el).
17500         Justification: It's important for the message to name the conflicted
17501         file because the moment when VC realizes a file is conflicted does not
17502         always come interactively.  For example, some people automatically
17503         find a set of Org Mode files on startup, and may keep those .org files
17504         under version control.  If any of the files are conflicted, the user
17505         just sees some messages fly by, and might later check the "*Messages*"
17506         buffer to find out what files were conflicted.  I'm not saying this
17507         happened to me or anything; it's a purely hypothetical example.
17509 2015-11-09  Eli Zaretskii  <eliz@gnu.org>
17511         Fix assertion violation in define-key
17513         * src/keymap.c (store_in_keymap): Don't use XFASTINT on non-character
17514         objects.  Reported by Drew Adams <drew.adams@oracle.com>
17515         and Juanma Barranquero <lekktu@gmail.com>.
17517 2015-11-09  Dima Kogan  <dima@secretsauce.net>
17519         Fix a memory leak in GC of font cache
17521         * src/alloc.c (compact_font_cache_entry): Don't GC unmarked font
17522         entities if some of the fonts it references are marked.  This
17523         plugs a memory leak.  (Bug#21556)
17525 2015-11-09  Paul Eggert  <eggert@cs.ucla.edu>
17527         Use INT_ADD_WRAPV etc. to check integer overflow
17529         * src/alloc.c (xnmalloc, xnrealloc, xpalloc, Fmake_string):
17530         * src/buffer.c (record_overlay_string, overlay_strings):
17531         * src/casefiddle.c (casify_object):
17532         * src/ccl.c (Fccl_execute_on_string):
17533         * src/character.c (char_width, c_string_width, lisp_string_width)
17534         (count_size_as_multibyte, string_escape_byte8):
17535         * src/coding.c (coding_alloc_by_realloc, produce_chars):
17536         * src/data.c (arith_driver):
17537         * src/dispnew.c (realloc_glyph_pool, init_display):
17538         * src/editfns.c (styled_format):
17539         * src/fns.c (Ffillarray):
17540         * src/ftfont.c (ftfont_shape_by_flt):
17541         * src/gnutls.c (gnutls_hex_string):
17542         * src/gtkutil.c (get_utf8_string):
17543         * src/image.c (x_to_xcolors, x_detect_edges, png_load_body):
17544         * src/keymap.c (Fkey_description):
17545         * src/lisp.h (SAFE_ALLOCA_LISP):
17546         * src/term.c (encode_terminal_code):
17547         * src/tparam.c (tparam1):
17548         * src/xselect.c (x_property_data_to_lisp):
17549         * src/xsmfns.c (smc_save_yourself_CB):
17550         * src/xterm.c (x_term_init):
17551         When checking for integer overflow, prefer INT_MULTIPLY_WRAPV to
17552         more-complicated code involving division and/or
17553         INT_MULTIPLY_OVERFLOW, and similarly for INT_ADD_WRAPV and
17554         subtraction and/or INT_ADD_OVERFLOW.
17555         * src/casefiddle.c (casify_object): Simplify multibyte size check.
17556         * src/character.c: Remove some obsolete ‘#ifdef emacs’s.
17557         * src/data.c (arith_driver): Also check for division overflow,
17558         as that’s now possible given that the accumulator can now contain
17559         any Emacs integer.
17560         * src/lisp.h (lisp_word_count): Remove; no longer used.
17562 2015-11-09  Dmitry Gutov  <dgutov@yandex.ru>
17564         Make sure that the ignore file exists
17566         * lisp/vc/vc.el (vc-default-ignore-completion-table):
17567         Make sure that the ignore file exists.
17569 2015-11-09  Michael Sperber  <mike@xemacs.org>
17571         * lisp/gnus/gnus-sum.el (gnus-summary-backend-map): Bind B-backspace to
17572         `gnus-summary-delete-article` in a way that also works on XEmacs.
17574 2015-11-08  Simen Heggestøyl  <simenheg@gmail.com>
17576         Add support for retrieving paths to JSON elements
17578         Add support for retrieving the path to a JSON element. This can for
17579         instance be useful to retrieve paths in deeply nested JSON
17580         structures.
17582         * lisp/json.el (json-pre-element-read-function)
17583         (json-post-element-read-function): New variables to hold pre- and post
17584         read callback functions for `json-read-array' and `json-read-object'.
17585         (json--path): New variable used internally by `json-path-to-position'.
17586         (json--record-path, json--check-position): New functions used
17587         internally by `json-path-to-position'.
17588         (json-path-to-position): New function for retrieving the path to a
17589         JSON element at a given position.
17590         (json-read-object, json-read-array): Call
17591         `json-pre-element-read-function' and `json-post-element-read-function'
17592         when set.
17594         * test/automated/json-tests.el (test-json-path-to-position-with-objects)
17595         (test-json-path-to-position-with-arrays)
17596         (test-json-path-to-position-no-match): New tests for
17597         `json-path-to-position'.
17599 2015-11-08  Karl Fogel  <kfogel@red-bean.com>
17601         * etc/NEWS: Mention new `bookmark-set-no-overwrite'.
17603         This really should been part of my previous commit
17604         (Sun Nov 8 14:16:43 2015 -0500, git commit 3812e17978).
17606 2015-11-08  Karl Fogel  <kfogel@red-bean.com>
17608         Offer non-overwrite bookmark setter (Bug#15746)
17610         * lisp/bookmark.el (bookmark-set-internal): New helper function to do
17611         what `bookmark-set' used to do, but with more choices for overwrite
17612         vs push, and with minor changes to the interactive prompt format.
17613         (bookmark-set): Rewrite as wrapper around above.
17614         If overwriting, inform the user of that in the prompt.
17615         (bookmark-set-no-overwrite): New function, also done as wrapper.
17616         Bind to "M" in `ctl-x-r-map' autoloads.
17617         (bookmark-map): Similarly bind "M" here.
17619 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
17621         * src/unexelf.c (NEW_PROGRAM_H): Remove unused macro (Bug#20614).
17623 2015-11-08  Alan Modra  <amodra@gmail.com>
17625         ELF unexec: Don't insert a new section
17627         Reuse the .bss section instead, making it SHT_PROGBITS.  This way we
17628         don't need to mess with symbol st_shndx, or section sh_link and
17629         sh_info.
17631         This does lead to eu-elflint complaints about symbols defined in .bss
17632         with a needed version, because normally it is undefined symbols that
17633         have needed versions;  Defined symbols have version definitions.
17634         The exception is symbols defined by the linker in .dynbss for
17635         variables copied from a shared library in order to avoid text
17636         relocations, with copy relocs to copy their initial values from the
17637         shared library.  These symbols are both defined and have needed
17638         versions, and eu-elflink only expects to see them in SHT_NOBITS
17639         sections.  Of course there is no real problem with having such symbols
17640         in SHT_PROGBITS sections.  glibc ld.so handles them fine.
17642         * src/unexelf.c: Delete outdated comments.
17643         (PATCH_INDEX): Delete.
17644         (find_section): Delete.
17645         (unexec): Don't add a new section.  Instead reuse the last bss
17646         section, extending it to cover dumped data.  Make bss sections
17647         SHT_PROGBITS.  Remove all patching of sh_link, sh_info and
17648         st_shndx.  Rename bss sections.
17650 2015-11-08  Alan Modra  <amodra@gmail.com>
17652         ELF unexec: Drive from PT_LOAD header rather than sections
17654         This rewrites bss handling in the ELF unexec code.  Finding bss
17655         sections by name results in complicated code that
17656         - does not account for all names of possible bss sections,
17657         - assumes specific ordering of bss sections,
17658         - can wrongly choose a SHT_NOBITS section not in the bss segment,
17659         - incorrectly calculates bss size (no accounting for alignment gaps),
17660         - assumes .data and .bss are in the same segment.
17662         All of these problems and more are solved by finding the bss segment
17663         in PT_LOAD headers, ie. the address range included in p_memsz but not
17664         p_filesz of the last PT_LOAD header, then matching SHT_NOBITS sections
17665         in that address range.
17667         * src/unexelf.c: Delete old ppc comment.
17668         (OLD_PROGRAM_H): Define.
17669         (round_up): Delete.
17670         (unexec): Don't search for bss style sections by name.  Instead,
17671         use the last PT_LOAD header address range covered by p_memsz
17672         but not p_filesz and match any SHT_NOBITS section in that
17673         address range.  Simplify initialization of section header vars.
17674         Don't assume that section headers are above bss segment.  Move
17675         copying of bss area out of section loop.  Align .data2 section
17676         to 1, since it now covers the entire bss area.  For SHT_NOBITS
17677         sections in the bss segment, leave sh_addr and sh_addralign
17678         unchanged, but correct sh_offset.  Clear memory corresponding
17679         to SHT_NOBITS .plt section.  Delete comment and hacks for
17680         sections partly overlapping bss range now that the full range
17681         is properly calculated.  Delete now dead .sbss code.
17682         (Bug#20614)
17684 2015-11-08  Alan Modra  <amodra@gmail.com>
17686         ELF unexec: R_*_NONE relocs
17688         These should be ignored on all targets.
17690         * src/unexelf.c (unexec): Ignore R_*_NONE relocs for any target,
17691         not just Alpha.  Comment on reloc size assumption.
17693 2015-11-08  Alan Modra  <amodra@gmail.com>
17695         ELF unexec: _OBJC_ symbols in bss sections
17697         This code assumed that there was only one bss section.  Rather than
17698         checking for a particular index, check the section type.  Also, handle
17699         the possibility that the section was SHT_NOBITS originally and is
17700         unchanged, in which case no clearing is needed (and sh_offset isn't
17701         necessarily valid, which can lead to a wild memset).
17703         * src/unexelf.c (unexec): Properly handle _OBJC_ symbols in
17704         bss sections.
17706 2015-11-08  Alan Modra  <amodra@gmail.com>
17708         ELF unexec: Symbol table patching
17710         No st_shndx value larger than SHN_LORESERVE should be changed.
17711         * src/unexelf.c (unexec): Don't adjust any st_shndx larger than
17712         SHN_LORESERVE.  Error on SHN_XINDEX.
17714 2015-11-08  Alan Modra  <amodra@gmail.com>
17716         ELF unexec: Merge Alpha and MIPS COFF debug handling
17718         * src/unexelf.c (unexec): Merge Alpha and MIPS COFF debug handling.
17719         Don't find .mdebug section index, find the section in the loop.
17720         Allow for unlikely possibility that .mdebug is located at sh_offset
17721         before bss segment, by calculating move from difference in
17722         sh_offset rather than just assuming new_data2_size.  Simplify
17723         cbLineOffset handling.
17725 2015-11-08  Alan Modra  <amodra@gmail.com>
17727         ELF unexec: Tidy code
17729         Separate out some of the more mechanical changes so following patches
17730         are smaller.
17732         * src/unexelf.c (unexec): Rearrange initialization of program
17733         header vars.  Use pointer vars in loops rather than indexing
17734         section header array via macros.  Simplify _OBJC_ sym code
17735         and reloc handling code.
17737 2015-11-08  Alan Modra  <amodra@gmail.com>
17739         ELF unexec: Correct section header index
17741         First a small fix.  The code incorrectly uses "NEW_SECTION_H (n)" when
17742         it should have been using "NEW_SECTION_H (nn)" to find the name of the
17743         section currently being processed.  Of course, before the bss
17744         sections, n and nn have the same value, so this doesn't matter except
17745         in the case of .sbss.  For .sbss this probably meant .bss (most likely
17746         the next section) was copied from memory.  A later patch removes the
17747         bogus .sbss handling anyway.
17749         * src/unexelf.c (unexec): Use correct index to look up names.
17751 2015-11-08  Michael Albinus  <michael.albinus@gmx.de>
17753         Fix Bug#21841
17755         * lisp/filenotify.el (file-notify--rm-descriptor):
17756         Use `descriptor' instead of computing its value.
17757         (file-notify--descriptor): Additional argument FILE.  Adapt all callees.
17758         (file-notify-rm-watch): Use `descriptor' when calling file name handler.
17759         (Bug#21841)
17761 2015-11-08  Dmitry Gutov  <dgutov@yandex.ru>
17763         Remove dirs in vc project roots from the the vc project library roots
17765         * lisp/progmodes/project.el (project-library-roots):
17766         Remove directories inside the project roots from the result.
17767         (http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg00536.html)
17769 2015-11-08  Dmitry Gutov  <dgutov@yandex.ru>
17771         Move and rename xref-find-regexp to the project package
17773         * lisp/progmodes/project.el (project-find-regexp)
17774         (project--read-regexp)
17775         (project--find-regexp-in): New functions.
17777         * lisp/progmodes/xref.el (xref--find-xrefs): Extract from
17778         xref--show-xrefs.  Use in existing callers in place of that
17779         function.
17780         (xref--show-xrefs): Only do the "show" part.
17781         (xref-find-regexp): Rename, more or less, to
17782         project-or-libraries-find-regexp.
17784 2015-11-06  Dmitry Gutov  <dgutov@yandex.ru>
17786         Abolish temporary buffer management for xref
17788         * lisp/progmodes/xref.el (xref--temporary-buffers)
17789         (xref--current)
17790         (xref--inhibit-mark-current)
17791         (xref--mark-selected): Remove.  Remove all references.
17792         (xref--show-xrefs): Do not construct the
17793         list of the temporary buffers, nor pass it along.
17795 2015-11-06  Dmitry Gutov  <dgutov@yandex.ru>
17797         Rename "search path" to "library roots"
17799         * lisp/emacs-lisp/cl-seq.el (cl-set-difference): Retain the order
17800         of the elements from CL-LIST1.
17802         * test/automated/cl-lib-tests.el (cl-lib-test-set-functions):
17803         Update WRT to the above change.
17805         * lisp/progmodes/project.el (project-search-path-function): Rename
17806         to project-library-roots-function, update the documentation and
17807         references.
17808         (project-search-path): Likewise, to project-library-roots.
17809         (project-roots): Clarify documentation.
17810         (project-vc-search-path): Likewise, to project-vc-library-roots.
17811         (project-library-roots): In addition to the renames, thread the
17812         results through file-name-as-directory.
17813         (project-prune-directories): Accept a variable number of
17814         arguments.  Rename to project-combine-directories.
17815         (project-subtract-directories): New function.
17817         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references):
17818         Append project-roots and project-library-roots together.
17820         * lisp/progmodes/etags.el (etags--xref-find-references): Ditto.
17822 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
17824         Prefer xpalloc to doubling buffers by hand
17826         * src/lread.c (grow_read_buffer): New function, which uses xpalloc.
17827         (read1): Use it for simplicity.
17828         * src/macros.c (store_kbd_macro_char):
17829         * src/minibuf.c (read_minibuf_noninteractive):
17830         * src/term.c (encode_terminal_code):
17831         * src/xrdb.c (magic_db):
17832         Prefer xpalloc to growing buffers by hand.
17833         This doesn’t fix any bugs, but simplifies the code a bit.
17835 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
17837         Merge from gnulib
17839         This incorporates:
17840         2015-11-05 timespec-sub: fix overflow bug; add tests
17841         2015-11-04 intprops: revise _WRAPV macros, revert _OVERFLOW
17842         2015-11-03 intprops: add parentheses
17843         * lib/intprops.h, lib/timespec-add.c, lib/timespec-sub.c:
17844         Copy from gnulib.
17846 2015-11-07  David Reitter  <david.reitter@gmail.com>
17848         Provide NS notification objects where required to eliminate warnings
17850         * src/nsterm.m (windowDidResize:, toggleFullScreen:):
17851         Call notification functions with notification objects
17852         as per delegate APIs.
17854 2015-11-07  Noam Postavsky  <npostavs@users.sourceforge.net>
17856         Add test for bug #21824
17858         * test/automated/buffer-tests.el: New file.
17859         (overlay-modification-hooks-message-other-buf): New test.
17861 2015-11-07  Kelvin White  <kwhite@gnu.org>
17863         * lisp/erc/erc-pcomplete.el (pcomplete-erc-nicks): Fix bug#18771.
17865 2015-11-07  David Reitter  <david.reitter@gmail.com>
17867         Ignore fullscreen exit notifications on NS when frame is dead
17869         * src/nsterm.m (windowDidResize:, windowWillExitFullScreen:)
17870         (windowDidExitFullScreen:): Return if frame is dead.
17871         These functions may be called when a fullscreen frame
17872         is closed; they are called before, not after.
17874         May address Bug#21428.
17876 2015-11-07  Eli Zaretskii  <eliz@gnu.org>
17878         Speed up lookup in redisplay--variables
17880         * lisp/frame.el (redisplay--variables): Make it a hash-table.
17882         * src/xdisp.c (maybe_set_redisplay): Access redisplay--variables
17883         as a hash-table.  This speeds up this function by an order of
17884         magnitude: where previously a setq was slowed down by 100% by
17885         introducing the maybe_set_redisplay test, it is now only 5%
17886         slower.
17887         (syms_of_xdisp) <redisplay--variables>: Doc fix.
17889 2015-11-07  Artur Malabarba  <bruce.connor.am@gmail.com>
17891         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Fix a bug.
17893         The defsubst was being created as:
17894             (cl-defsubst name (args) ("DOC") ...)
17896         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors):
17897         Add test.
17899 2015-11-07  Mihai Olteanu  <mihai_olteanu@fastmail.fm>  (tiny change)
17901         Update doc string of hexl-mode
17903         * lisp/hexl.el (hexl-mode): Doc fix.  (Bug#21800)
17905 2015-11-07  Eli Zaretskii  <eliz@gnu.org>
17907         Fix error in copy-abbrev-table
17909         * lisp/abbrev.el (define-abbrev): Don't erase the :abbrev-table-modiff
17910         property of the abbrev-table.  (Bug#21828)
17912         * test/automated/abbrev-tests.el: New file.
17914 2015-11-07  Michael Albinus  <michael.albinus@gmx.de>
17916         Add test to auto-revert-tests.el for Bug#21841
17918         * test/automated/auto-revert-tests.el
17919         (auto-revert-test01-auto-revert-several-files): New test.
17920         (auto-revert-test02-auto-revert-tail-mode)
17921         (auto-revert-test03-auto-revert-mode-dired): Rename them.
17923 2015-11-07  Martin Rudalics  <rudalics@gmx.at>
17925         * doc/lispref/windows.texi (Coordinates and Windows): Fix typo.
17927 2015-11-07  Martin Rudalics  <rudalics@gmx.at>
17929         In x_consider_frame_title don't set title of tooltip frames
17931         * src/xdisp.c (x_consider_frame_title): Return immediately for
17932         tooltip frames to avoid displaying empty tooltips.
17934 2015-11-06  Anders Lindgren  <andlind@gmail.com>
17936         Fixed NextStep fullscreen problem (bug#21770).
17938         * src/nsterm.m (ns_constrain_all_frames): Don't constrain
17939         fullscreen frames.
17941 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
17943         Ensure redisplay after evaluation
17945         * lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp):
17946         Revert last change.
17947         * lisp/frame.el (redisplay--variables): Populate the
17948         redisplay--variables list.
17949         * src/xdisp.c (maybe_set_redisplay): New function.
17950         (syms_of_xdisp) <redisplay--variables>: New variable.
17951         * src/window.h (maybe_set_redisplay): Declare prototype.
17952         * src/data.c (set_internal): Call maybe_set_redisplay.  (Bug#21835)
17954 2015-11-06  Artur Malabarba  <bruce.connor.am@gmail.com>
17956         * test/automated/subr-tests.el (subr-test-when): Fix again.
17958 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
17960         Don't invoke overlay modification hooks in wrong buffer
17962         * src/buffer.c (report_overlay_modification): When called with
17963         AFTER non-zero, don't invoke overlay modification hooks if the
17964         buffer recorded in last_overlay_modification_hooks is different
17965         from the current buffer.  (Bug#21824)
17967 2015-11-06  Juanma Barranquero  <lekktu@gmail.com>
17969         * admin/notes/repo: Fix a few obsolete references to Bazaar.
17971 2015-11-06  Artur Malabarba  <bruce.connor.am@gmail.com>
17973         * test/automated/subr-tests.el (subr-test-when): Fix test.
17975 2015-11-06  Martin Rudalics  <rudalics@gmx.at>
17977         Avoid division by zero crash observed by Yuan MEI
17979         See http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg00194.html.
17981         * src/dispnew.c (required_matrix_height, required_matrix_width):
17982         Avoid division by zero.
17983         * src/xterm.c (x_term_init): Init dpyinfo->smallest_font_height and
17984         dpyinfo->smallest_char_width to 1.
17986 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
17988         Ensure redisplay after "C-x C-e"
17990         * lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp): Make sure
17991         redisplay happens to account for any side effects of the evaluated
17992         sexp.  (Bug#21835)
17994 2015-11-06  Michael Albinus  <michael.albinus@gmx.de>
17996         Skip some file notification tests for cygwin
17998         * test/automated/file-notify-tests.el (file-notify--test-with-events):
17999         Remove argument TIMEOUT.  Adapt all callees.
18000         (file-notify-test02-events, file-notify-test04-file-validity):
18001         Skip for cygwin.  (Bug#21804)
18003 2015-11-05  Stephen Leake  <stephen_leake@stephe-leake.org>
18005         * lisp/progmodes/xref.el: Require semantic/symref during compilation.
18007 2015-11-05  Daiki Ueno  <ueno@gnu.org>
18009         Suppress redundant Pinentry startup messages
18011         * lisp/net/pinentry.el (pinentry-start): Add optional QUIET argument.
18012         * lisp/epg.el: Declare `pinentry-start'.
18013         (epg--start): Call `pinentry-start' with QUIET argument set.
18015 2015-11-05  Xue Fuqiao  <xfq.free@gmail.com>
18017         * doc/emacs/ack.texi (Acknowledgments): Updates.
18019 2015-11-05  Juanma Barranquero  <lekktu@gmail.com>
18021         * test/automated/elisp-mode-tests.el: Silence some run-time warnings.
18022         (xref-elisp-deftest): Bind `find-file-suppress-same-file-warnings' to t.
18024 2015-11-05  Tassilo Horn  <tsdh@gnu.org>
18026         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
18027         Add prettification support for \times.
18029 2015-11-05  Juanma Barranquero  <lekktu@gmail.com>
18031         * test/automated/process-tests.el: Skip tests when bash is unavailable.
18032         (process-test-sentinel-accept-process-output)
18033         (process-test-sentinel-sit-for): skip-unless bash executable found.
18035 2015-11-05  Eli Zaretskii  <eliz@gnu.org>
18037         Add test for bug #21831
18039         * test/automated/process-tests.el
18040         (start-process-should-not-modify-arguments): New test.  (Bug#21831)
18041         Suggested by Nicolas Richard <youngfrog@members.fsf.org>
18043 2015-11-04  Stefan Monnier  <monnier@iro.umontreal.ca>
18045         * lisp/emacs-lisp/eieio-compat.el: Typo caught by tests.
18047         (eieio--generic-static-object-generalizer): Fix typo.
18048         * test/automated/eieio-tests.el: Byte-compile it again.  It looks
18049         like the underlying cause of bug#17852 was fixed in the mean time.
18051 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
18053         Revert "* lisp/subr.el (when): Use `macroexp-progn'"
18055         This reverts commit 8e843831eaf271801836b7a3e4dd3b4fb0bb72b8.
18056         It breaks bootstrapping (duh).
18058 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
18060         * lisp/files.el (report-errors): Obsolete.
18062         (normal-mode, hack-local-variables, dir-locals-find-file):
18063         Use `with-demoted-errors' instead.
18065 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
18067         * lisp/subr.el (when): Use `macroexp-progn'.
18069         * test/automated/subr-tests.el (subr-test-when): New test.
18071 2015-11-04  Juanma Barranquero  <lekktu@gmail.com>
18073         * lisp/progmodes/xref.el: Doc fixes.
18074         (xref-make-file-location, xref-make-buffer-location, xref-make)
18075         (xref-make-bogus-location, xref-make-match): Add cross-references.
18076         (xref--insert-xrefs): Fix typo in docstring.
18078 2015-11-04  Anders Lindgren  <andlind@gmail.com>
18080         Render fringe bitmaps correctly on NextStep (bug#21301)
18082         The fringe bitmaps were inverted, the background was not transparent,
18083         the image data was horizontally mirrored, and periodic fringe bitmaps
18084         were not supported.
18086         * src/nsimage.m ([EmacsImage initFromXBM:width:height:fg:bg:]):
18087         When both background and foreground colors are 0, set the background
18088         alpha channel to 0 (making the background transparent).  When
18089         copying the image data, do this from the most significant bit
18090         (leftmost) to the least (rightmost), to avoid mirroring.
18091         * src/nsterm.m (ns_draw_fringe_bitmap): Don't invert the image bits.
18092         Add support for periodic images (e.g. the empty line indicator).
18094 2015-11-03  Michael Heerdegen  <michael_heerdegen@web.de>
18096         * lisp/emacs-lisp/pcase.el (pcase): Tweak docstring.
18098 2015-11-03  Nicolas Petton  <nicolas@petton.fr>
18100         * admin/MAINTAINERS: Add seq-tests.el, map-tests.el, and thunk-tests.el.
18102         * admin/MAINTAINERS: Add thunk.el.
18104 2015-11-03  Jay Belanger  <jay.p.belanger@gmail.com>
18106         * lisp/calc/calc.el (calc-bug-address): Change maintainer address.
18108 2015-11-03  Michael Albinus  <michael.albinus@gmx.de>
18110         Fix a stupid error in gfilenotify.c
18112         * src/gfilenotify.c (dir_monitor_callback): Cancel monitor only,
18113         if we've got a `deleted' signal AND the file name is the watched one.
18115 2015-11-03  Stephen Leake  <stephen_leake@stephe-leake.org>
18117         Fix Bug#21816; case insensitive file system in elisp-mode-tests.el
18119         * test/automated/elisp-mode-tests.el (xref-elisp-test-run):
18120         Use case-insensitive string compare for file names.
18121         (emacs-test-dir): Add 'downcase' to cause case differences (at
18122         least on my system).
18124 2015-11-02  Juanma Barranquero  <lekktu@gmail.com>
18126         flymake-tests.el (warning-predicate-rx-gcc): Fix check
18128         * test/automated/flymake-tests.el (warning-predicate-rx-gcc):
18129         Also check that "make" is available, not just "gcc".
18131 2015-11-02  Ken Brown  <kbrown@cornell.edu>
18133         Document behavior of collation on Cygwin
18135         * test/automated/fns-tests.el (fns-tests-collate-sort): Mark as
18136         expected failure on Cygwin.
18137         * doc/lispref/strings.texi (Text Comparison): Document that
18138         punctuation and whitespace are not ignored for sorting on Cygwin.
18140 2015-11-02  Dani Moncayo  <dmoncayo@gmail.com>
18142         * build-aux/msys-to-w32: Prevent double slashes in w32 path list.
18144 2015-11-01  Glenn Morris  <rgm@gnu.org>
18146         * lisp/progmodes/f90.el (f90-no-block-limit): Add associate.
18147         (Bug#21794)
18148         * test/automated/f90.el (f90-test-bug21794): New test.
18150 2015-11-01  Juanma Barranquero  <lekktu@gmail.com>
18152         Fix incompatibility with TCC in test for bug#18745
18154         * test/automated/process-tests.el (process-test-quoted-batfile):
18155         Remove spaces unrelated to the bug being tested.
18157 2015-11-01  Michael Albinus  <michael.albinus@gmx.de>
18159         Improve completion in tramp-gvfs.el
18161         * lisp/net/tramp-gvfs.el (tramp-zeroconf-parse-device-names):
18162         Rename from `tramp-zeroconf-parse-service-device-names'.
18163         (tramp-zeroconf-parse-webdav-device-names): Remove.  Code merged
18164         with `tramp-zeroconf-parse-device-names'.
18165         (tramp-gvfs-parse-device-names): New defun.
18166         (top): Use it when `tramp-zeroconf-parse-device-names' is not
18167         applicable.
18169         * lisp/net/tramp.el (tramp-set-completion-function): The argument
18170         could also be a zeroconf service type.
18172 2015-10-31  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
18174         * lisp/net/ntlm.el: Change version to 2.0.0.
18176 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
18178         Fix bug#21762
18179         * lisp/progmodes/python.el (python-syntax-closing-paren-p): Check with
18180         `eql' instead of `=' to accommodate the case that (syntax-after (point))
18181         returns nil.
18182         * test/automated/python-tests.el (python-indent-inside-paren-7):
18183         New test.
18185 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
18187         * test/automated/python-tests.el: Avoid warnings.
18188         (python-tests-with-temp-buffer, python-tests-with-temp-file):
18189         Bind `python-indent-guess-indent-offset' to nil.
18191 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
18193         * src/alloc.c: Silence compiler warnings.
18194         (pointers_fit_in_lispobj_p, mmap_lisp_allowed_p): #ifdef DOUG_LEA_MALLOC.
18196 2015-10-31  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
18198         * etc/NEWS: Fix js-jsx-mode entry punctuation.
18200 2015-10-31  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
18202         Add JSX indentation via js-jsx-mode  (Bug#21799)
18204         * lisp/progmodes/js.el: Add JSX indentation support.
18205         (js--jsx-end-tag-re)
18206         (js--jsx-after-tag-re): New variables.
18207         (js--jsx-find-before-tag)
18208         (js--jsx-indented-element-p)
18209         (js--as-sgml)
18210         (js--expression-in-sgml-indent-line)
18211         (js-jsx-indent-line)
18212         (js-jsx-mode): New functions.
18213         * test/indent/js-jsx.js: New file.
18214         * etc/NEWS: Add information about js-jsx-mode.
18216 2015-10-31  Michael Albinus  <michael.albinus@gmx.de>
18218         Minor fix in filenotify.el
18220         * lisp/filenotify.el (file-notify--event-file-name)
18221         (file-notify--event-file1-name): Normalize result with
18222         `directory-file-name'.
18224 2015-10-31  Eli Zaretskii  <eliz@gnu.org>
18226         Avoid errors in redisplay--pre-redisplay-functions
18228         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor--detect): Don't
18229         use 'bobp', instead compare window-point with 1.  (Bug#21730)
18231 2015-10-30  Paul Eggert  <eggert@cs.ucla.edu>
18233         Merge from gnulib
18235         This incorporates:
18236         2015-10-30 intprops: add WRAPV and const flavors for GCC 5
18237         2015-10-25 stdalign: port to Sun C 5.9
18238         * doc/misc/texinfo.tex, lib/intprops.h, lib/stdalign.in.h:
18239         Copy from gnulib.
18241 2015-10-30  Eli Zaretskii  <eliz@gnu.org>
18243         * src/w32proc.c (_NLSCMPERROR): Fix a typo in the name of this macro.
18244         (w32_compare_strings): Adjust for the correction.
18246 2015-10-30  Michael Albinus  <michael.albinus@gmx.de>
18248         * test/automated/vc-tests.el (vc-test--state)
18249         (vc-test--working-revision, vc-test--checkout-model):
18250         Add result messages.
18252 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
18254         * test/automated/faces-tests.el: Add another test
18256 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
18258         * lisp/faces.el (faces--attribute-at-point): Fix bug
18259         introduced by previous commit.
18261 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
18263         * test/automated/faces-tests.el: New file.
18265 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
18267         * lisp/faces.el: Refactor common code and fix a bug.
18268         (faces--attribute-at-point): New function.  Fix a bug when the
18269         face at point is a list of faces and the desired attribute is not
18270         on the first one.
18271         (foreground-color-at-point, background-color-at-point): Use it.
18273 2015-10-30  Przemysław Wojnowski  <esperanto@cumego.com>
18275         * etc/tutorials/TUTORIAL.translators: Fix PL names.
18277 2015-10-30  Juanma Barranquero  <lekktu@gmail.com>
18279         * lisp/character-fold.el: Provide `character-fold'.
18281 2015-10-30  Tassilo Horn  <tsdh@gnu.org>
18283         * etc/themes/tsdh-dark-theme.el (tsdh-dark): Add more faces
18284         for Gnus and ivy.
18286 2015-10-30  Michael Albinus  <michael.albinus@gmx.de>
18288         Some minor fixes for tramp-gvfs.el
18290         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
18291         An attribute returned by gvfs-info might be empty.  In case of
18292         undetermined uid or gid, return "UNKNOWN" or -1, respectively.
18293         (tramp-zeroconf-parse-service-device-names): New defun.
18294         Derived from `tramp-zeroconf-parse-workstation-device-names'.
18295         (top): Add completion functions for "afp" and "smb" methods.
18297 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
18299         * test/automated/character-fold-tests.el: New file
18301 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
18303         * test/automated/sort-tests.el: New file.
18304         Tests in this file are randomly generated and then tested with
18305         regular, reverse, and case-fold sorting.
18307 2015-10-30  Eli Zaretskii  <eliz@gnu.org>
18309         Describe known problems with pinning Emacs to taskbar
18311         * etc/PROBLEMS: Describe the problem with pinning Emacs to taskbar
18312         on Windows 10.  For the details, see the discussion starting at
18313         http://lists.gnu.org/archive/html/help-emacs-windows/2015-09/msg00000.html.
18315 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
18317         * lisp/isearch.el: Avoid an error that blocks isearch.
18318         (isearch-update): Don't error if `isearch--current-buffer' has
18319         been killed.
18321         * test/automated/isearch-tests.el (isearch--test-update):
18322         New file.
18324 2015-10-30  Phil Sainty  <psainty@orcon.net.nz>
18326         Fix documentation of 'beginning/end-of-buffer'
18328         * lisp/simple.el (beginning-of-buffer, end-of-buffer): Clarify
18329         conditions under which the mark will be pushed at the previous
18330         position.  (Bug#21748)
18332 2015-10-30  Tassilo Horn  <tsdh@gnu.org>
18334         Add RefTeX feature idea: editing RefTeX TOC buffers
18336         More face defs for ivy, swiper, ace-window, eshell
18338 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
18340         * lisp/gnus/auth-source.el: Silence lexical-binding warnings.
18341         (auth-source-netrc-use-gpg-tokens): Simplify (symbol-value 'VAR) to
18342         just VAR.
18343         (auth-source-backend-parse): Use make-instance.
18344         (auth-source-search): Remove unused key args.
18345         Remove unused vars `accessor-key' and `backend'.  Avoid `eval'.
18346         (auth-source-search-backends): Use slot names rather than their initarg.
18347         (auth-source-netrc-create):
18348         (auth-source-delete):
18349         (auth-source-secrets-create, auth-source-plstore-search)
18350         (auth-source-macos-keychain-create, auth-source-macos-keychain-search)
18351         (auth-source-plstore-create, auth-source-netrc-search)
18352         (auth-source-netrc-parse): Remove unused key args.
18353         (auth-source-forget+): Simplify the arglist.
18354         (auth-source-macos-keychain-search-items)
18355         (auth-source-token-passphrase-callback-function): Mark unused args.
18356         (auth-source-epa-extract-gpg-token): Remove unused var `plain'.
18357         (pp-escape-newlines): Declare.
18358         (auto-source--symbol-keyword): New function.
18359         (auth-source-plstore-create, auth-source-netrc-create)
18360         (auth-source-netrc-normalize): Use it.
18361         (auth-source-netrc-search): Don't pass :delete to
18362         auth-source-netrc-parse since it doesn't use it.
18363         (auth-source-plstore-create, auth-source-netrc-create): Use plist-get
18364         symbol-value to index in keyword args.
18365         (auth-source-macos-keychain-result-append): Avoid setq.
18366         (auth-source-netrc-create): Remove unused vars `file' and `add'.
18367         (auth-source-user-or-password): Remove unused var `cname'.
18369 2015-10-29  Juri Linkov  <juri@linkov.net>
18371         * lisp/dired.el (dired-unmark-all-files-query): Declare.
18372         (dired-unmark-all-files): Let-bind it and use instead of ‘query’.
18373         (Bug#21746)
18375 2015-10-29  Juri Linkov  <juri@linkov.net>
18377         * lisp/ielm.el (ielm-indent-line): Use non-nil arg of comint-bol
18378         to go to the beginning of text line instead of command line.
18379         http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02360.html
18381 2015-10-29  Eli Zaretskii  <eliz@gnu.org>
18383         Fix encoding of saving *Help* buffers
18385         * lisp/help-fns.el (describe-function-1): If we use curved quotes,
18386         set help buffer's buffer-file-coding-system to UTF-8.  (Bug#21780)
18388 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
18390         * lisp/emacs-lisp/cl-generic.el: Add (major-mode MODE) context.
18391         (cl--generic-derived-specializers): New function.
18392         (cl--generic-derived-generalizer): New generalizer.
18393         (cl-generic-generalizers): New specializer (derived-mode MODE).
18394         (cl--generic-split-args): Apply the rewriter, if any.
18395         (cl-generic-define-context-rewriter): New macro.
18396         (major-mode): Use it to define a new context-rewriter, so we can write
18397         `(major-mode MODE)' instead of `(major-mode (derived-mode MODE))'.
18399         * lisp/frame.el (window-system): New context-rewriter so we can write
18400         `(window-system VAL)' instead of (window-system (eql VAL)).
18401         (cl--generic-split-args): Apply the rewriter, if any.
18402         (frame-creation-function): Use the new syntax.
18404         * lisp/term/x-win.el (window-system-initialization)
18405         (handle-args-function, frame-creation-function)
18406         (gui-backend-set-selection, gui-backend-selection-owner-p)
18407         (gui-backend-selection-exists-p, gui-backend-get-selection):
18408         * lisp/term/w32-win.el (window-system-initialization)
18409         (handle-args-function, frame-creation-function)
18410         (gui-backend-set-selection, gui-backend-get-selection)
18411         (gui-backend-selection-owner-p, gui-backend-selection-exists-p):
18412         * lisp/term/pc-win.el (gui-backend-get-selection)
18413         (gui-backend-selection-exists-p, gui-backend-selection-owner-p)
18414         (gui-backend-set-selection, window-system-initialization)
18415         (frame-creation-function, handle-args-function):
18416         * lisp/term/ns-win.el (window-system-initialization)
18417         (handle-args-function, frame-creation-function)
18418         (gui-backend-set-selection, gui-backend-selection-exists-p)
18419         (gui-backend-get-selection):
18420         * lisp/startup.el (handle-args-function):
18421         * lisp/term/xterm.el (gui-backend-get-selection)
18422         (gui-backend-set-selection): Use the new syntax.
18424 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
18426         * test/indent/css-mode.css: Add tests for url(...) syntax.
18428 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
18430         * lisp/emacs-lisp/smie.el: Use `declare' for `pure'.
18431         (smie-precs->prec2, smie-merge-prec2s, smie-bnf->prec2)
18432         (smie-prec2->grammar): Use `declare'.
18434 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
18436         * lisp/emacs-lisp/cl-generic.el: Accommodate future changes.
18437         (cl--generic-generalizer): Add `name' field.
18438         (cl-generic-make-generalizer): Add corresponding `name' argument.
18439         (cl-generic-define-generalizer): New macro.
18440         (cl--generic-head-generalizer, cl--generic-eql-generalizer)
18441         (cl--generic-struct-generalizer, cl--generic-typeof-generalizer)
18442         (cl--generic-t-generalizer): Use it.
18443         (cl-generic-ensure-function): Add `noerror' argument.
18444         (cl-generic-define): Use it so we don't follow aliases.
18445         (cl-generic-define-method): Preserve pre-existing ordering of methods.
18446         (cl--generic-arg-specializer): New function.
18447         (cl--generic-cache-miss): Use it.
18448         (cl-generic-generalizers): Only fset a temporary definition
18449         during bootstrap.
18450         (cl--generic-struct-tag, cl--generic-struct-specializers):
18451         Allow extra arguments.
18453         * lisp/emacs-lisp/eieio-compat.el
18454         (eieio--generic-static-symbol-generalizer)
18455         (eieio--generic-static-object-generalizer):
18456         Use cl-generic-define-generalizer.
18457         (eieio--generic-static-symbol-specializers): Allow extra arguments.
18459         * lisp/emacs-lisp/eieio-core.el (eieio--generic-generalizer)
18460         (eieio--generic-subclass-generalizer):
18461         Use cl-generic-define-generalizer.
18462         (eieio--generic-subclass-specializers): Allow extra arguments.
18464 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
18466         * lisp/emacs-lisp/bytecomp.el (compile-defun): Add defvars in scope.
18468 2015-10-29  Michael Albinus  <michael.albinus@gmx.de>
18470         Add "afp" method to Tramp
18472         * doc/misc/tramp.texi (GVFS based methods): Describe `afp' method.
18474         * lisp/net/tramp-gvfs.el (tramp-gvfs-methods): Add "afp" method.
18475         (tramp-gvfs-handle-expand-file-name)
18476         (tramp-gvfs-handler-mounted-unmounted)
18477         (tramp-gvfs-connection-mounted-p, tramp-gvfs-mount-spec)
18478         (tramp-gvfs-maybe-open-connection): Support also "afp".
18479         (tramp-gvfs-handle-file-attributes): Handle the case of empty
18480         "owner::user" and "owner::group" entries.
18482 2015-10-29  Andy Moreton  <andrewjmoreton@gmail.com>
18484         Handle negative coordinates in ‘x_calc_absolute_position’
18486         * src/w32term.c (x_calc_absolute_position): Find display origin to
18487         allow for negative coordinates.
18489 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
18491         (internal--syntax-propertize): Save match-data here (bug#21766)
18493         * lisp/emacs-lisp/syntax.el (internal--syntax-propertize): Save match-data.
18494         * lisp/simple.el (delete-trailing-whitespace): Undo last change.
18496 2015-10-28  Dmitry Gutov  <dgutov@yandex.ru>
18498         Don't require default-directory to end with a slash
18500         * doc/lispref/files.texi (Magic File Names): Document the change
18501         in unhandled-file-name-directory.
18503         * lisp/url/url-handlers.el
18504         (url-handler-unhandled-file-name-directory): Update accordingly.
18506         * src/buffer.c (default-directory): Update the docsting.
18508         * src/fileio.c (unhandled-file-name-directory): Default to calling
18509         `file-name-as-directory'
18510         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02294.html).
18512 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
18514         * lisp/isearch.el: Delete some outdated comments.
18516 2015-10-28  Vibhav Pant  <vibhavp@gmail.com>
18518         Fix eshell/clear not working if the output has a small line count
18520         * lisp/eshell/esh-mode.el (eshell/clear): Use (window-size) as the
18521         number of newlines to be inserted. This fixes the issue where
18522         eshell/clear wouldn't work if the prompt was not at the bottom of the
18523         window, and the output wasn't too long.
18525 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
18527         * lisp/files.el (write-file): Use vc-refresh-state.
18529         * lisp/autorevert.el (auto-revert-handler): Use vc-refresh-state.
18531         * lisp/vc/pcvs.el (cvs-revert-if-needed): Use vc-refresh-state.
18533 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
18535         * lisp/emacs-lisp/macroexp.el: Tweak macroexp-if optimizations.
18536         (macroexp-unprogn): Make sure we never return an empty list.
18537         (macroexp-if): Remove unused (and unsafe) optimization.
18538         Optimize (if A T (if B T E)) into (if (or A B) T E) instead, which does
18539         occur occasionally.
18541 2015-10-28  Juanma Barranquero  <lekktu@gmail.com>
18543         Fix bug#21766 and add test
18544         * lisp/simple.el (delete-trailing-whitespace): Save match data when
18545         calling `skip-syntax-backward'.
18546         * test/automated/simple-test.el (simple-delete-trailing-whitespace):
18547         New test.
18549 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
18551         * doc/lispref/sequences.texi (Sequence Functions): Fix typo.
18553 2015-10-28  Paul Eggert  <eggert@cs.ucla.edu>
18555         * src/dispnew.c (init_display): Simplify overflow checking.
18557 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
18559         * lisp/character-fold.el (character-fold-to-regexp): Fix case
18560         where string ends in space
18562 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
18564         * lisp/emacs-lisp/seq.el (seq-mapn): New function.
18566         * doc/lispref/sequences.texi (Sequence Functions): Document seq-mapn.
18568 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
18570         * lisp/character-fold.el: Make compatible with lax-whitespace.
18571         (character-fold-to-regexp): Rework internals to play nice with
18572         lax-whitespacing.
18574         When the user types a space, we want to match the table entry for
18575         ?\s, which is generally a regexp like "[ ...]".  However, the
18576         `search-spaces-regexp' variable doesn't "see" spaces inside these
18577         regexp constructs, so we need to use "\\( \\|[ ...]\\)" instead (to
18578         manually expose a space).
18580         Furthermore, the lax search engine acts on a bunch of spaces, not
18581         on individual spaces, so if the string contains sequential spaces
18582         like "  ", we need to keep them grouped together like this:
18583         "\\(  \\|[ ...][ ...]\\)".
18585 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
18587         * lisp/isearch.el: Refactor momentary messages.
18588         (isearch--momentary-message): New function.
18589         (isearch-toggle-lax-whitespace, isearch-toggle-case-fold)
18590         (isearch-toggle-invisible): Use it.
18592 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
18594         * lisp/isearch.el: Define all toggles with `isearch-define-mode-toggle'.
18595         (isearch-define-mode-toggle): New macro.
18596         (isearch-toggle-invisible): Rename to
18597         `isearch-define-mode-toggle'.
18598         (isearch-toggle-case-fold, isearch-toggle-invisible)
18599         (isearch-toggle-regexp, isearch-toggle-lax-whitespace): Define
18600         with `isearch-define-mode-toggle'.
18602 2015-10-28  Michael Albinus  <michael.albinus@gmx.de>
18604         Avoid using `add-to-list' on a let-local var in tramp-smb.el
18606         * lisp/net/tramp-compat.el (tramp-compat-delete-dups): New defun.
18607         * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files): Use it.
18609 2015-10-28  Michael Albinus  <michael.albinus@gmx.de>
18611         * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files):
18612         Revert 692bce5b9eccfae19ae2a5a23a9ccd8d6bf86076, `delete-dups'
18613         does not exist in XEmacs 21.4.
18615 2015-10-28  Anders Lindgren  <andlind@gmail.com>
18617         Fixed OS X startup crash
18619         Input events started to arrive before ns_term_init() was finished.
18620         Solved by blocking input.  This also seems to correct the "You
18621         can't open the application "Emacs" because it may be damaged or
18622         incomplete" error issued when double-clicking on the Emacs
18623         application.
18625         * src/nsterm.m (ns_constrain_all_frames, ns_init_term): Block input.
18626         * src/nsterm.m (ns_send_appdefined, EmacsApp): Trace output.
18628 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
18630         * src/process.c (Fget_buffer_process): Improve docstring.
18631         Document the fact that it doesn't return dead processes.
18633 2015-10-28  Anders Lindgren  <andlind@gmail.com>
18635         Fix incorrect NextStep tool-bar-mode -- wrong number of rows in frame.
18637         * src/nsterm.h (struct ns_output): New flag, in_animation.
18638         * src/nsfns.m (Fx_create_frame): Initialize in_animation flag.
18639         * src/nsmenu.m (free_frame_tool_bar, update_frame_tool_bar): Set
18640         in_animation flag around call to "setVisible". Set new tool bar
18641         height before call to setVisible.
18642         * src/nsterm.m (x_set_window_size): Don't call [view setRow:
18643         andColumns:] as this fools the subsequent call to updateFrameSize
18644         from performing the real resize.
18645         (windowDidResize): Don't update anything when in_animation is
18646         non-zero.
18648         Trace output.
18650         * src/nsmenu.m (free_frame_tool_bar, update_frame_tool_bar)
18651         (EmacsToolbar):
18652         * src/nsterm.m (x_set_window_size, updateFrameSize)
18653         ([EmacsView setRows: andColumns:])
18655 2015-10-28  Nicolas Petton  <nicolas@petton.fr>
18657         * lisp/emacs-lisp/thunk.el (thunk-delay): Fix the macro.
18659 2015-10-28  Tassilo Horn  <tsdh@gnu.org>
18661         Prettify TeX macros not ending in a word char
18663         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
18664         Prettify macros which don't end in a word character.
18666 2015-10-27  Dmitry Gutov  <dgutov@yandex.ru>
18668         Pipe Hg commit descriptions through 'tabindent'
18670         * lisp/vc/vc-hg.el (vc-hg-log-format): Pipe commit description
18671         through 'tabindent'.
18672         (vc-hg-log-view-mode): Set tab-width to 2 locally.
18673         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02259.html)
18675 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
18677         * lisp/net/tramp-smb.el: Avoid using `add-to-list' on a let-local var.
18678         (tramp-smb-handle-directory-files): Use `delete-dups'.
18680         * lisp/net/tramp.el (auto-save-file-name-transforms): Declare.
18682 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
18684         * lisp/international/ccl.el: Use lexical-binding.
18685         (ccl-compile-if): Remove unused var `false-ic'.
18686         (ccl-compile-write-repeat): Remove unused var `i'.
18687         (ccl-compile-map-single): Remove unused var `id'.
18688         (ccl-dump, ccl-dump-binary): Use explicit let-binding to bind the
18689         dynamic var `ccl-code'.
18691 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
18693         * lisp/json.el (json-new-object): Optimize trivial `list' call.
18695 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
18697         * lisp/help.el: Fix bug with incorrect arglist string.
18698         (help-add-fundoc-usage): Don't mistake a mis-formatted string
18699         for a list.
18701 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
18703         * lisp/gnus/gnus-topic.el: Silence some warnings.
18704         (gnus-topic-prepare-topic): Remove unused var `topic'.
18705         (gnus-topic-remove-topic): Mark unused arg `hide'.
18706         (gnus-tmp-header): Declare.
18707         (gnus-topic-goto-missing-group): Remove unused var `entry'.
18708         (gnus-topic-unmark-topic): Mark unused arg `dummy'.
18709         (gnus-topic-copy-matching): Mark unused arg `copyp'.
18710         Move initialization of `topic' into its declaration.
18712 2015-10-27  Stephen Leake  <stephen_leake@stephe-leake.org>
18714         Minor CEDET fixes
18716         * lisp/cedet/cedet-global.el (cedet-gnu-global-gtags-call):
18717         Handle warnings from gtags about invalid options.
18718         (cedet-gnu-global-create/update-database): Do incremental update
18719         properly.
18721         * lisp/cedet/ede/generic.el (ede-enable-generic-projects):
18722         Get monotone root right.
18724 2015-10-27  Michael Albinus  <michael.albinus@gmx.de>
18726         Fall back to polling in autorevert when needed
18728         * lisp/autorevert.el (auto-revert-notify-handler): When a
18729         `stopped' event arrives from file notification, fall back to polling.
18731         * test/automated/file-notify-tests.el
18732         (file-notify-test03-autorevert): Extend test for polling when file
18733         notification ceases to work.
18735 2015-10-27  Dmitry Gutov  <dgutov@yandex.ru>
18737         Show full commit messages in 'hg log' when appropriate
18739         * lisp/vc/vc-hg.el (vc-hg-log-format): New variable.
18740         (vc-hg-print-log, vc-hg-expanded-log-entry): Use it.
18741         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02191.html)
18743 2015-10-27  Nicolas Petton  <nicolas@petton.fr>
18745         Use a plain SVG file for the icon
18747         * etc/images/icons/hicolor/scalable/apps/emacs.svg: Use a plain SVG
18748           format instead of the Inkscape SVG format.
18750 2015-10-27  Michael Albinus  <michael.albinus@gmx.de>
18752         Fix subtle bug in auto-revert-tests.el
18754         * test/automated/auto-revert-tests.el
18755         (auto-revert-test02-auto-revert-mode-dired): Narrow *Messages*
18756         buffer where it belongs to.  (Bug#21668)
18758 2015-10-26  Nicolas Petton  <nicolas@petton.fr>
18760         * lisp/emacs-lisp/map.el: Better docstrings.
18762         * lisp/emacs-lisp/seq.el: Better docstrings.
18764         * lisp/emacs-lisp/seq.el: Rename all seq arguments to sequence.
18766 2015-10-26  Phillip Lord  <phillip.lord@russet.org.uk>
18768         * lisp/emacs-lisp/ert.el: Print results without newline escaping.
18770 2015-10-26  Stephen Leake  <stephen_leake@stephe-leake.org>
18772         Clarify that load-path contents should be directory file names
18774         * doc/lispref/files.texi (Directory Names): Define and use "directory
18775         file name".  Recommend `expand-file-name'.
18777         * src/lread.c (load-path): Fix doc string; elements are directory file
18778         names.
18780 2015-10-26  Eli Zaretskii  <eliz@gnu.org>
18782         Fix simple-test.el test
18784         * test/automated/simple-test.el (simple-test--dummy-buffer):
18785         Make sure indentation doesn't use TABs, otherwise the 6th test
18786         might fail.
18788 2015-10-26  Mark Oteiza  <mvoteiza@udel.edu>
18790         * lisp/net/eww.el (eww-bookmark-prepare): Use truncate-string-to-width.
18791         `substring' does not account for full width characters.
18793 2015-10-26  Michael Albinus  <michael.albinus@gmx.de>
18795         Further work on `stopped' events in filenotify.el
18797         * doc/lispref/os.texi (File Notifications): Rework examples.
18799         * lisp/filenotify.el (file-notify--rm-descriptor): Optional parameter.
18800         (file-notify--rm-descriptor, file-notify-callback): Improve check
18801         for sending `stopped' event.
18802         (file-notify-add-watch): Check for more events for `inotify'.
18804         * test/automated/file-notify-tests.el
18805         (file-notify--test-expected-events): New defvar.
18806         (file-notify--test-with-events): Use it.
18807         (file-notify--test-cleanup): Make it more robust when deleting
18808         directories.
18809         (file-notify--test-event-test): Check also for watched directories.
18810         (file-notify--test-event-handler): Suppress temporary .#files.
18811         (file-notify-test02-events, file-notify-test04-file-validity):
18812         Rework `stopped' events.
18813         (file-notify-test05-dir-validity): Wait for events when appropriate.
18815 2015-10-26  Artur Malabarba  <bruce.connor.am@gmail.com>
18817         * src/keyboard.c (post-command-hook): Shorten docstring.
18819 2015-10-26  Tassilo Horn  <tsdh@gnu.org>
18821         Fix infinite loop in sh-script's SMIE code
18823         * lisp/progmodes/sh-script.el (sh-smie-sh-forward-token): Fix infinite
18824         loop (bug#21747).
18826 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
18828         * lisp/isearch.el (search-default-regexp-mode): Revert to nil.
18829         Character-fold search _still_ doesn't play well with
18830         lax-whitespace.  So disable it by default (again) for now.
18832 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
18834         * lisp/isearch.el: No visual feedback for default search mode.
18835         During an isearch where character-folding is the default, we don't
18836         want to take up minibuffer space just to tell the user that
18837         "Char-fold " is on.  The same goes for other modes, if the user
18838         changes the default.  In contrast, if the user toggles OFF the
18839         default mode, they should see "Literal", to distinguish it from
18840         the default mode.
18841         (isearch--describe-regexp-mode): Return "" if describing the
18842         default mode, and return "literal " if describing a plain search
18843         and it is not default.
18845 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
18847         * test/automated/simple-test.el: New file.
18848         Define tests for `newline' and `open-line'.
18850 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
18852         * lisp/simple.el (open-line): Integrate with electric-indent-mode.
18853         Also run `post-self-insert-hook' when called interactively.
18855 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
18857         * lisp/simple.el (open-line): Fix docstring.
18858         Also explain apparently redundant line.
18860 2015-10-25  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
18861             Alexandru Harsanyi  <AlexHarsanyi@gmail.com>
18863         Sync with soap-client repository, version 3.0.1
18865         * lisp/net/soap-client.el, lisp/net/soap-inspect.el:
18866         Bump version to 3.0.1.
18868         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Update home page.
18870 2015-10-25  Eli Zaretskii  <eliz@gnu.org>
18872         * lisp/progmodes/grep.el (grep): Doc fix.  (Bug#21754)
18874 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
18876         * src/keyboard.c (post-command-hook): Extend the docstring.
18877         Mainly, explain how to use it without hanging Emacs, or giving the
18878         impression that it is hanging.  Also mention `pre-command-hook'.
18879         (pre-command-hook): Mention `post-command-hook'.
18881 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
18883         * lisp/custom.el (custom-declare-variable): Shorten code again.
18884         Without using pcase this time.  We can't use pcase because it is
18885         loaded after custom in loadup.el.  Also add a comment explaining
18886         this to future dummies like me.
18888 2015-10-25  Michael Albinus  <michael.albinus@gmx.de>
18890         * doc/lispref/os.texi (File Notifications): Document `stopped event'.
18892 2015-10-25  Michael Albinus  <michael.albinus@gmx.de>
18894         Introduce `stopped' event in file notification
18896         * lisp/filenotify.el (file-notify--rm-descriptor): New defun.
18897         (file-notify-rm-watch): Use it.
18898         (file-notify-callback): Implement `stopped' event.
18899         (file-notify-add-watch): Mention `stopped' in the docstring.
18900         Check, that upper directory exists.
18902         * test/automated/file-notify-tests.el (file-notify-test01-add-watch):
18903         Add two test cases.
18904         (file-notify-test02-events): Handle also `stopped' event.
18905         (file-notify-test04-file-validity): Add another test case.
18907 2015-10-25  Paul Eggert  <eggert@cs.ucla.edu>
18909         Revert commit that broke 'make bootstrap'
18911         * lisp/custom.el (custom-declare-variable): Revert commit
18912         79fac080d277fed07b3c192890ad59d36d9f83b6.  custom.el needs to work
18913         even when pcase has not been defined yet, when doing bootstrapping.
18915 2015-10-25  Paul Eggert  <eggert@cs.ucla.edu>
18917         Port recent inline functions fix to Standard C
18919         * src/lisp.h (LISP_MACRO_DEFUN, LISP_MACRO_DEFUN_VOID): Remove.
18920         All uses rewritten to define the function directly rather than to
18921         use a macro to define the function.  This conforms to Standard C,
18922         which does not allow stray semicolons at the top level.  I hope it
18923         also avoids the problems with TAGS.  Those macros, though clever,
18924         were pretty confusing anyway, and it wasn’t clear they were worth
18925         the aggravation even without the TAGS problem.
18927 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
18929         * lisp/isearch.el: Make character-fold search the default again.
18931 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
18933         * lisp/character-fold.el: Many improvements.
18934         (character-fold-search-forward, character-fold-search-backward):
18935         New command.
18936         (character-fold-to-regexp): Remove lax-whitespace hack.
18937         (character-fold-search): Remove variable.  Only isearch and
18938         query-replace use char-folding, and they both have their own
18939         variables to configure that.
18941 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
18943         * lisp/isearch.el: Generalize definition of regexp-function toggles.
18944         (isearch-specify-regexp-function): New macro for specifying
18945         possible values of `isearch-regexp-function'.
18946         (isearch-toggle-character-fold, isearch-toggle-symbol)
18947         (isearch-toggle-word): Define with `isearch-specify-regexp-function'.
18949 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
18951         * lisp/isearch.el (search-default-regexp-mode): New variable.
18952         (isearch-mode): Use it.
18954 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
18956         * lisp/isearch.el (search-exit-option, search-slow-window-lines)
18957         (search-slow-speed, search-upper-case)
18958         (search-nonincremental-instead, search-whitespace-regexp)
18959         (search-invisible, isearch-hide-immediately)
18960         (isearch-resume-in-command-history, search-ring-max)
18961         (regexp-search-ring-max, search-ring-update, search-highlight)
18962         (isearch-fail): Delete :group entries.
18964 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
18966         * lisp/custom.el (custom-declare-variable): Shorten code a bit.
18968 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
18970         addpm.c: Silence some warnings.
18972         * nt/addpm.c (DdeCommand): Cast pData argument of DdeClientTransaction
18973         to LPBYTE.
18974         (add_registry): Pass NULL to optional lpClass argument of
18975         RegCreateKeyEx, not an empty string.
18977 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
18979         addpm.c: Do not add obsolete GTK libraries to the path.
18981         * nt/addpm.c (REG_GTK, REG_RUNEMACS_PATH): Delete.
18982         (add_registry): Remove variables `size' and `gtk_key'.
18983         Do not add the GTK DLL directory to the library search path; it is
18984         confusing behavior (in particular, the same Emacs version with and
18985         without invoking addpm will use a different path), and the GTK image
18986         libraries are obsolete anyway.
18988 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
18990         addpm.c: Replace existing registry entries, but do not create new ones
18992         * nt/addpm.c (add_registry): If the Emacs registry key exists, replace
18993         existing values from previous versions, but do not add new ones; the
18994         key could exist for other reasons unrelated to old Emacsen, like X-style
18995         resources, or to set some environment variables like HOME or LANG, and
18996         in that case we don't want to populate it with obsolete values.
18998 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
19000         * nt/addpm.c (add_registry): Do not compute unused return value.
19002 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
19004         addpm.c: Don't pass REG_OPTION_NON_VOLATILE to RegOpenKeyEx
19006         * nt/addpm.c (add_registry): Pass 0 to ulOptions argument of
19007         RegOpenKeyEx, not REG_OPTION_NON_VOLATILE.  This doesn't change
19008         current behavior because REG_OPTION_NON_VOLATILE is defined to
19009         be 0L anyway, but that option is actually documented only for
19010         RegCreateKeyEx.
19012 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
19014         * src/w32notify.c (Fw32notify_add_watch): Fix version check.
19016 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
19018         Update frame title when redisplay scrolls selected window
19020         * src/xdisp.c (redisplay_window): Reconsider the frame's title
19021         when the mode-line of the frame's selected window needs to be
19022         updated.
19024 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
19026         Update frame title when scrolling the selected window
19028         * src/window.c (wset_update_mode_line): New function, sets either
19029         the window's update_mode_line flag or the global update_mode_lines
19030         variable.
19031         (Fset_window_start, set_window_buffer, window_scroll_pixel_based)
19032         (window_scroll_line_based): Call it instead of only setting the
19033         window's update_mode_line flag.
19035 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
19037         An even better fix for bug#21739
19039         * src/window.c (set_window_buffer): If the window is the frame's
19040         selected window, set update_mode_lines, not the window's
19041         update_mode_line flag.
19042         * src/buffer.c (Fkill_buffer): Undo last change.
19043         (set_update_modelines_for_buf): Function deleted.
19045 2015-10-24  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
19046             Alexandru Harsanyi  <AlexHarsanyi@gmail.com>
19048         Sync with soap-client repository, version 3.0.0
19050         * lisp/net/soap-client.el, lisp/net/soap-inspect.el:
19051         Bump version to 3.0.0.
19053         * lisp/net/soap-inspect.el: Merge in changes from Emacs master branch.
19055         * lisp/net/soap-client.el: Merge in changes from Emacs master branch.
19057         * lisp/net/soap-inspect.el: Shorten first line description.
19059         * lisp/net/soap-client.el: Make a small whitespace fix.
19061         * lisp/net/soap-inspect.el: Update copyright years.
19063         * lisp/net/soap-client.el (soap-encoded-namespaces): Move above
19064         first use in soap-encode-xs-element.
19066         * lisp/net/soap-client.el (soap-type-is-array?): new defun
19067         (soap-encode-xs-element): handle array elements in this function
19068         (soap-encode-xs-complex-type): flag error if asked to encode an
19069         array type, this is handled in `soap-encode-xs-element'
19071         * lisp/net/soap-inspect.el (soap-inspect-xs-attribute-group):
19072         Do not print type for attribute group.
19074         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-attribute-group)
19075         New function.
19076         (soap-inspect-xs-attribute-group): Likewise.
19078         * lisp/net/soap-inspect.el
19079         (soap-resolve-references-for-xs-attribute-group): Resolve
19080         references of attributes in an attribute group.
19082         * lisp/net/soap-client.el (soap-decode-xs-attributes): Process attribute
19083         type directly, not through soap-wsdl-get.
19085         * lisp/net/soap-client.el (soap-xs-parse-attribute): Leave reference
19086         nil if reference attribute is nil.
19088         * lisp/net/soap-client.el (soap-resolve-references-for-xs-attribute):
19089         Convert XML schema attributes to xsd:string.
19091         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-attribute):
19092         New function.
19093         (soap-sample-value-for-xs-simple-type): Prepend attributes to result.
19094         (soap-sample-value-for-xs-complex-type): Likewise.
19095         (soap-inspect-xs-attribute): New function.
19096         (soap-inspect-xs-simple-type): Print attributes.
19097         (soap-inspect-xs-complex-type): Likewise.
19099         * lisp/net/soap-inspect.el (soap-resolve-references-for-xs-simple-type):
19100         Resolve references for attributes.
19101         (soap-resolve-references-for-xs-complex-type): Likewise.
19103         * lisp/net/soap-client.el (soap-xml-node-find-matching-child):
19104         Rename from soap-xml-node-first-child.
19105         (soap-xs-parse-attribute): Call soap-xml-node-find-matching-child.
19106         (soap-xs-parse-simple-type): Likewise.
19108         * lisp/net/soap-client.el (soap-invoke-async): Add error checking.
19110         * lisp/net/soap-client.el (soap-invoke-internal): New function.
19111         (soap-invoke-async): Call soap-invoke-internal.
19112         (soap-invoke): Likewise.
19114         * lisp/net/soap-client.el (soap-invoke-async): Ensure buffer passed to
19115         url-retrieve callback is killed.
19117         * lisp/net/soap-client.el (soap-parse-wsdl-phase-validate-node):
19118         Rename function.
19119         (soap-parse-wsdl-phase-fetch-imports): Likewise.
19120         (soap-parse-wsdl-phase-parse-schema): Likewise.
19121         (soap-parse-wsdl-phase-fetch-schema): Likewise.
19122         (soap-parse-wsdl-phase-finish-parsing): Likewise.
19123         (soap-parse-wsdl): Update calls.
19125         * lisp/net/soap-client.el (soap-invoke-async): Fix callback invocation.
19127         * lisp/net/soap-client.el (soap-invoke-async): New function.
19128         (soap-invoke): Reimplement using soap-invoke-async.
19130         * lisp/net/soap-client.el (soap-parse-server-response):
19131         Improve docstring.
19132         (soap-invoke): Inline call to soap-parse-server-response.
19134         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
19135         Prevent incorrect warning.
19137         * lisp/net/soap-client.el (soap-parse-server-response):
19138         Rename soap-process-url-response.  Destroy the mime part.
19139         (soap-invoke): Call soap-parse-server-response.
19141         * lisp/net/soap-client.el: Update copyright date.
19143         * lisp/net/soap-client.el: Fix checkdoc issues.
19145         * lisp/net/soap-client.el: Fix indentation and long lines.
19147         * lisp/net/soap-client.el (soap-time-format): Remove variable.
19148         (soap-encode-xs-basic-type): Simplify date-time format detection.
19149         (soap-decode-xs-basic-type): Remove soap-time-format support.
19151         * lisp/net/soap-client.el (soap-process-url-response): New function.
19152         (soap-fetch-xml-from-url): Call soap-process-url-response.
19153         (soap-parse-wsdl-phase-1): New function.
19154         (soap-parse-wsdl-phase-2): Likewise.
19155         (soap-parse-wsdl-phase-3): Likewise.
19156         (soap-parse-wsdl-phase-4): Likewise.
19157         (soap-parse-wsdl-phase-5): Likewise.
19158         (soap-parse-wsdl): Call phase functions.
19160         * lisp/net/soap-client.el (soap-decode-xs-basic-type):
19161         Remove one-argument and call.
19163         * lisp/net/soap-client.el (soap-decode-date-time): Improve docstring.
19165         * lisp/net/soap-client.el (soap-xmlschema-imports): Remove variable.
19166         (soap-parse-schema): Add wsdl argument.  Look up XML schema
19167         imports from wsdl.
19168         (soap-load-wsdl): Do not set soap-xmlschema-imports.
19169         (soap-parse-wsdl): Get XML schema imports from wsdl.
19171         * lisp/net/soap-client.el (soap-current-file): Remove variable.
19172         (soap-wsdl): Add current-file slot.
19173         (soap-fetch-xml-from-url): Add wsdl argument.  Look up current
19174         file from wsdl.
19175         (soap-fetch-xml-from-file): Likewise.
19176         (soap-fetch-xml): Likewise.
19177         (soap-load-wsdl): Always create wsdl object first.
19178         (soap-parse-wsdl): Pass wsdl to soap-fetch-xml.
19180         * lisp/net/soap-client.el (soap-xs-element): Add is-group slot.
19181         (soap-xs-parse-element): Set is-group slot.
19182         (soap-resolve-references-for-xs-element): Skip is-group elements.
19183         (soap-xs-complex-type): Add is-group slot.
19184         (soap-xs-parse-complex-type): Set is-group slot.
19185         (soap-xs-parse-sequence): Parse xsd:group elements.
19186         (soap-resolve-references-for-xs-complex-type): Inline elements
19187         from referenced xsd:group nodes.
19188         (soap-parse-schema): Parse xsd:group nodes.
19190         * lisp/net/soap-client.el (soap-invoke):
19191         Don't set url-http-version to 1.0.
19193         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
19194         Allow choice nodes to accept multiple values.
19196         * lisp/net/soap-client.el (soap-encode-body): Check parameters argument
19197         for extra header values.
19199         * lisp/net/soap-client.el (soap-well-known-xmlns):
19200         Add wsa and wsaw tags.
19201         (soap-operation): Add input-action and output-action slots.
19202         (soap-parse-operation): Parse wsaw:Action nodes.
19203         (soap-encode-body): Encode service-url for WS-Addressing.
19204         (soap-create-envelope): Likewise.
19205         (soap-invoke): Update soap-create-envelope call to provide
19206         service-url argument.
19208         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
19209         Support xsi:type override attribute.
19210         (soap-decode-array): Likewise.
19212         * lisp/net/soap-client.el (soap-parse-schema):
19213         Handle location attribute.
19215         * lisp/net/soap-client.el (soap-decode-type): Check that multiRef
19216         matched validation regexp.
19218         * lisp/net/soap-client.el (soap-encode-xs-simple-type):
19219         Encode xsd:list nodes.
19220         (soap-decode-xs-simple-type): Decode xsd:list nodes.
19222         * lisp/net/soap-client.el (soap-get-candidate-elements):
19223         Fix reference handling.
19225         * lisp/net/soap-client.el (soap-xs-simple-type): Add is-list slot.
19226         (soap-xs-parse-simple-type): Call soap-xs-add-list for xsd:list nodes.
19227         (soap-xs-add-list): New function.
19229         * lisp/net/soap-client.el (soap-encode-xs-element): When a boolean is
19230         expected, interpret nil as "false".
19232         * lisp/net/soap-client.el (soap-make-xs-basic-types): Add gYearMonth,
19233         gYear, gMonthDay, gDay and gMonth.
19235         * lisp/net/soap-client.el (soap-time-format): New variable.
19236         (soap-encode-xs-basic-type): Handle dateTime, time, date,
19237         gYearMonth, gYear, gMonthDay, gDay and gMonth.
19238         (soap-decode-date-time): New function.
19239         (soap-decode-xs-basic-type): Use soap-decode-date-time.
19241         * lisp/net/soap-client.el (soap-encode-xs-basic-type): Validate value
19242         after encoding.
19243         (soap-decode-xs-basic-type): Validate value before decoding.
19245         * lisp/net/soap-client.el (soap-validate-xs-basic-type): New function.
19246         (soap-validate-xs-simple-type): Call soap-validate-xs-basic-type.
19248         * lisp/net/soap-client.el (soap-xs-add-union): Append result to base
19249         instead of overwriting it.
19250         (soap-validate-xs-simple-type): Add union support.
19252         * lisp/net/soap-client.el (soap-xs-add-restriction): Translate pattern
19253         to Emacs regexp using xsdre-translate.
19254         (soap-validate-xs-simple-type): Validate value against pattern.
19256         * lisp/net/soap-client.el (soap-xs-add-union): Preserve WSDL order of
19257         inline simpleType nodes.
19258         (soap-decode-type): Handle union types.
19260         * lisp/net/soap-client.el (soap-decode-xs-attributes): Decode basic-type
19261         attributes.
19263         * lisp/net/soap-client.el (soap-get-xs-attributes-from-groups): Rename
19264         from soap-xs-attribute-group-consolidate, all callers updated
19265         (soap-get-xs-attributes): Rename from
19266         soap-xs-attributes-consolidate, all callers updated
19268         * lisp/net/soap-client.el (soap-xs-type): Add attribute-group slot.
19269         (soap-xs-attribute-group): New type.
19270         (soap-xs-parse-attribute-group): New function.
19271         (soap-resolve-references-for-xs-attribute-group): Likewise.
19272         (soap-xs-add-extension): Handle attribute groups.
19273         (soap-resolve-references-for-xs-simple-type): Likewise.
19274         (soap-xs-parse-complex-type): Likewise.
19275         (soap-xs-parse-extension-or-restriction): Likewise.
19276         (soap-resolve-references-for-xs-complex-type): Likewise.
19277         (soap-xs-attribute-group-consolidate): New function.
19278         (soap-xs-attributes-consolidate): Handle attribute groups.
19279         (soap-parse-schema): Likewise.
19281         * lisp/net/soap-client.el (soap-encode-xs-basic-type):
19282         Fix boolean encoding.
19284         * lisp/net/soap-client.el (soap-encode-xs-complex-type): Print ref
19285         element names in warnings.
19287         * lisp/net/soap-client.el (soap-decode-xs-complex-type): Fix splicing.
19289         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
19290         Eliminate invalid warnings for choice types.
19292         * lisp/net/soap-client.el (soap-encode-xs-complex-type-attributes):
19293         Also encode base type attributes.
19295         * lisp/net/soap-client.el (soap-encode-xs-complex-type): Fix compilation
19296         warning.  Print e-name in warnings, or element if e-name is nil.
19298         * lisp/net/soap-client.el (soap-xs-element): Add alternatives slot.
19299         (soap-xs-parse-element): Set substitution-group.
19300         (soap-resolve-references-for-xs-element): Populate alternatives slot.
19301         (soap-get-candidate-elements): New function.
19302         (soap-encode-xs-complex-type): Iterate through all candidate elements.
19303         Handle types with nil type indicator.  Fix warning logic.
19305         * lisp/net/soap-client.el (soap-current-wsdl): Move declaration
19306         earlier in the file to prevent compiler warning.
19308         * lisp/net/soap-client.el (soap-node-optional): New function.
19309         (soap-node-multiple): Likewise.
19310         (soap-xs-parse-element): Call soap-node-optional and
19311         soap-node-multiple.
19312         (soap-xs-complex-type): Add optional? and multiple? slots.
19313         (soap-xml-get-children-fq): New function.
19314         (soap-xs-element-get-fq-name): Likewise.
19315         (soap-xs-complex-type-optional-p): Likewise.
19316         (soap-xs-complex-type-multiple-p): Likewise.
19317         (soap-xs-attributes-consolidate): Likewise.
19318         (soap-decode-xs-attributes): Likewise.
19319         (soap-decode-xs-complex-type): Decode types with nil type indicator.
19320         Support children that use local namespaces.  Decode attributes.
19321         Add type considerations to optional? and multiple? warnings.
19323         * lisp/net/soap-client.el (soap-xs-parse-extension-or-restriction):
19324         Store parsed attributes.
19325         (soap-encode-xs-complex-type-attributes): Encode custom attributes.
19327         * lisp/net/soap-client.el (soap-encode-xs-complex-type-attributes):
19328         Don't add the xsi:type attribute (Exchange refuses requests which have
19329         this attribute).
19331         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Convert to lexical binding,
19332         correct compiler warnings about unused function arguments and
19333         local variables.
19335         * lisp/net/soap-client.el (soap-decode-xs-complex-type): Handle nil
19336         type indicator.
19337         (soap-parse-envelope): Handle response headers.
19338         (soap-parse-response): Likewise.  Only return non-nil decoded values.
19340         * lisp/net/soap-client.el (soap-validate-xs-simple-type):
19341         Return validated value.
19343         * lisp/net/soap-client.el (soap-xs-parse-element)
19344         (soap-xs-parse-simple-type)
19345         (soap-xs-parse-complex-type)
19346         (soap-parse-message)
19347         (soap-parse-operation): Add the current namespace to the element
19348         being created.
19349         (soap-resolve-references-for-xs-element)
19350         (soap-resolve-references-for-xs-simple-type)
19351         (soap-resolve-references-for-xs-complex-type)
19352         (soap-resolve-references-for-operation): Resolve the namespace to
19353         the namespace tag.
19354         (soap-make-wsdl): specify a namespace tag when creating the xsd
19355         and soapenc namespaces
19356         (soap-wsdl-resolve-references): don't update namespace tags in
19357         elements here
19358         (soap-parse-port-type): bind the urn: to soap-target-xmlns
19359         (soap-encode-body): don't add nil namespace tags to
19360         soap-encoded-namespaces
19362         * lisp/net/soap-inspect.el: Use `soap-make-wsdl` to construct the object
19363         for registering the soap-inspect method.  Make debbugs tests pass.
19364         * lisp/net/soap-client.el (soap-decode-any-type): Use soap-l2fq on the
19365         type name, also skip string only nodes when decoding a structure.
19366         (soap-xs-parse-complex-type): (BUG) Dispatch parsing for choice
19367         types too.
19368         (soap-encode-body): Grab the header value from the param table.
19370         * lisp/net/soap-client.el (soap-should-encode-value-for-xs-element):
19371         New function.
19372         (soap-encode-xs-element): Don't encode nil value unless needed.
19374         * lisp/net/soap-client.el (soap-bound-operation): New slot `soap-body`.
19375         (soap-parse-binding): Parse the message parts required in the body.
19376         (soap-encode-body): Encode only the parts that are declared to be
19377         part of the body.
19379         * lisp/net/soap-client.el (soap-encode-xs-element): use the fq name
19380         when writing out the tag.
19381         (soap-encode-body): Remove hack that inserts the xmlns in the
19382         element attributes list.
19384         * lisp/net/soap-client.el (soap-xs-attribute): Add "default" slot.
19385         (soap-xs-parse-attribute): Default slot is set from the XML
19386         "fixed" attribute.
19387         (soap-encode-xs-complex-type-attributes): Encode any attributes
19388         that have a default value.  Also, don't put the xsi:nil attribute
19389         when the complex type has no content anyway.
19391         * lisp/net/soap-client.el (soap-well-known-xmlns):
19392         Add the xml namespace.
19393         (soap-local-xmlns): Start with the xml namespace.
19394         (soap-xml-node-first-child): Skip xsd:annotation nodes too.
19395         (soap-make-xs-basic-types): More xsd types added.
19396         (soap-encode-xs-basic-type, soap-decode-xs-basic-type):
19397         Handle "language", "time", "date", "nonNegativeInteger".
19398         (soap-resolve-references-for-xs-element): Don't signal an error if
19399         the element does not have a type.
19400         (soap-xs-parse-simple-type): Subtypes are handled with ecase,
19401         added stum for xsd:list.
19402         (soap-xs-add-union): Call soap-l2fq on all union members.
19403         (soap-xs-add-extension): Call soap-l2fq on the base member.
19404         (soap-resolve-references-for-xs-simple-type): Don't signal an
19405         error if the simple type has no base.
19406         (soap-resolve-references-for-xs-simple-type): Bugfix, call
19407         soap-wsdl-get on each type of the base.
19409         * lisp/net/soap-client.el (soap-resolve-references-for-xs-attribute):
19410         Referenced type can be eiher a simple type or a basic type.
19411         (soap-xs-add-restriction)
19412         (soap-xs-parse-extension-or-restriction): Use `soap-l2fq' on base.
19413         (soap-make-xs-basic-types)
19414         (soap-encode-xs-basic-type, soap-decode-xs-basic-type):
19415         Add support for more XMLSchema basic types.
19416         (soap-current-file, soap-xmlschema-imports): New defvars.
19417         (soap-parse-schema): Add locations from xsd:import tags to
19418         `soap-xmlschema-imports'.
19419         (soap-wsdl): Make destructor private.
19420         (soap-make-wsdl): New defun, SOAP-WSDL object constructor.
19421         (soap-wsdl-add-alias): Check if we try to replace aliases.
19422         (soap-fetch-xml-from-url, soap-fetch-xml-from-file)
19423         (soap-fetch-xml): New defuns.
19424         (soap-load-wsdl): Update to load the WSDL from either a file or
19425         an url.
19426         (soap-load-wsdl-from-url): Now an alias to `soap-load-wsdl'.
19427         (soap-parse-wsdl): Process wsdl:import tags and imports from
19428         `soap-xmlschema-imports'.
19429         * lisp/net/soap-client.el (soap-l2wk): Bugfix: call symbolp instead of
19430         symbol-name.
19431         (soap-l2fq): Make the name part always a string.
19432         (soap-name-p): New defun, used for name tests.
19434         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-complex-type):
19435         Supply sample values for choice types with a special tag.
19436         * lisp/net/soap-client.el (soap-encode-xs-complex-type):
19437         Handle anonymous elements correctly.
19438         (soap-encode-value): Accept nodes that have no namespace tag.
19440         * lisp/net/soap-client.el (soap-invoke): Encode the string for
19441         `url-request-data' as UTF-8.  Fixes issue 16.
19443 2015-10-24  Nicolas Petton  <nicolas@petton.fr>
19445         Update the new icon
19447         Move the E slightly to the right in the circle.
19449         * etc/images/icons/hicolor/128x128/apps/emacs.png:
19450         * etc/images/icons/hicolor/16x16/apps/emacs.png:
19451         * etc/images/icons/hicolor/24x24/apps/emacs.png:
19452         * etc/images/icons/hicolor/32x32/apps/emacs.png:
19453         * etc/images/icons/hicolor/48x48/apps/emacs.png:
19454         * etc/images/icons/hicolor/scalable/apps/emacs.svg:
19455         * nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns:
19456         * nt/icons/emacs.ico: New icom update.
19458 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
19460         Avoid missing inline functions from lisp.h in TAGS
19462         * src/lisp.h (LISP_MACRO_DEFUN): Mention in the commentary the
19463         need to end each invocation with a semi-colon.
19464         Add a semi-colon at the end of each invocation of LISP_MACRO_DEFUN
19465         and LISP_MACRO_DEFUN_VOID.  This is to avoid missing in TAGS
19466         inline functions defined immediately after each invocation, and
19467         also avoid tagging every invocation of these macros.
19469 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
19471         A better fix for bug#21739
19473         * src/buffer.c (set_update_modelines_for_buf): New function.
19474         (Fkill_buffer): Use it to set the global variable
19475         update_mode_lines if the killed buffer was displayed in some
19476         window.  Don't set windows_or_buffers_changed.  This is a better
19477         fix for bug#21739 than the previous fix, since it will cause only
19478         redisplay of mode lines, not of entire windows, but will still
19479         catch attention of x_consider_frame_title in xdisp.c, which
19480         redraws the frame title.
19482 2015-10-24  Tassilo Horn  <tsdh@gnu.org>
19484         * lisp/dired-aux.el (dired-compress-files-alist): Add support for
19485         tar.bz2 and tar.xz archives.
19487 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
19489         Fix infloop in redisplay introduced by a recent change
19491         * src/xdisp.c (redisplay_internal): Avoid inflooping when
19492         redisplaying the selected window sets the selected frame's
19493         redisplay flag.  (Bug#21745)
19495 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
19497         * lisp/emacs-lisp/thunk.el: Better documentation.
19499 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
19501         Replace the old icon for Windows and Mac OSX
19503         * nt/icons/emacs.ico:
19504         * nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns:
19505         Use the new icons.
19507 2015-10-23  Stephen Leake  <stephen_leake@stephe-leake.org>
19509         * lisp/emacs-lisp/package.el (package-autoload-ensure-default-file):
19510         `load-path' should contain only directory names.
19512 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
19514         New library thunk.el
19516         thunk.el is extracted from stream.el in ELPA, with additional tests.
19518         * lisp/emacs-lisp/thunk.el: New file.
19519         * test/automated/thunk-tests.el: New file.
19520         * etc/NEWS: Add information about thunk.el
19522 2015-10-23  Michael Albinus  <michael.albinus@gmx.de>
19524         Fix bug#21669
19526         * lisp/filenotify.el (file-notify-rm-watch): Improve check for
19527         calling low-level functions.
19529         * test/automated/file-notify-tests.el (file-notify--test-timeout):
19530         Decrase to 6 seconds for remote directories.
19531         (file-notify-test02-events): Expect different number of
19532         `attribute-changed' events for the local and remote cases.  Apply
19533         short delays between the operations, in order to receive all
19534         events in the remote case.  Combine `attribute-change' tests.
19535         (Bug#21669)
19537 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
19539         Decode the HTML source when displaying it in EWW
19541         * lisp/net/eww.el (eww-view-source): Decode the HTML source
19542         according to its headers.
19544 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
19546         New default icon
19548         * etc/images/icons/hicolor/128x128/apps/emacs23.png:
19549         * etc/images/icons/hicolor/16x16/apps/emacs23.png:
19550         * etc/images/icons/hicolor/24x24/apps/emacs23.png:
19551         * etc/images/icons/hicolor/32x32/apps/emacs23.png:
19552         * etc/images/icons/hicolor/48x48/apps/emacs23.png:
19553         * etc/images/icons/hicolor/scalable/apps/emacs23.svg:
19554         * etc/images/icons/hicolor/scalable/mimetypes/emacs-document23.svg:
19555         Move the old logo files to emacs23.*.
19556         * etc/images/icons/hicolor/128x128/apps/emacs.png:
19557         * etc/images/icons/hicolor/16x16/apps/emacs.png:
19558         * etc/images/icons/hicolor/24x24/apps/emacs.png:
19559         * etc/images/icons/hicolor/32x32/apps/emacs.png:
19560         * etc/images/icons/hicolor/48x48/apps/emacs.png:
19561         * etc/images/icons/hicolor/scalable/apps/emacs.svg:
19562         * etc/images/icons/hicolor/scalable/mimetypes/emacs-document.svg:
19563         New files.
19564         * etc/images/icons/README: Update the copyright information.
19566 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
19568         Fix redisplay of frame title when current buffer is killed
19570         * src/buffer.c (Fkill_buffer): Set windows_or_buffers_changed to a
19571         non-zero value, to redisplay more than just the affected windows.
19572         (Bug#21739)
19574 2015-10-23  Anders Lindgren  <andlind@gmail.com>
19576         NextStep maximization and NSTRACE rewrite
19578         Full-height, full-width, and maximized windows now cover the
19579         entire screen (except the menu bar), including the part where the
19580         system dock is placed.  The system zoom animation is no longer
19581         used.
19583         Made NonMaximized->FullWidth->FullHeight->NonMaximized restore the
19584         original size.
19586         * src/nsterm.m (ns_menu_bar_height): New function, return height of
19587         the menu bar, or 0 when it's hidden.
19588         (constrain_frame_rect): New function for constraining a frame.
19589         (ns_constrain_all_frames): Set frame size explicitly rather than
19590         relying on the system doing it for us by writing back the current
19591         frame size.
19592         (windowWillUseStandardFrame): Register non-maximized width or
19593         height as new user size.  When entering full width or height,
19594         the other size component is taken from the user size.
19595         (fullscreenState): New method for accessing the fullscreen state.
19596         (constrainFrameRect): Restrict frame to be placed under the menu bar,
19597         if present.  The old version, sometimes, restricted the height of a
19598         frame to the screen, this version never does this.
19599         (zoom): Perform zoom by setting the frame to the full size of the
19600         screen (minus the menu bar).  The default system function, with the
19601         zoom animation, is no longer used, as the final frame size doesn't
19602         cover the entire screen.
19604         Rework how to constrain resizing to the character grid.  The old
19605         system used "resizeIncrements" in NSWindows.  However, once a frame
19606         was resized so that it was not aligned to the text grid, it
19607         remained unaligned even after a resize.  In addition, it conflicted
19608         when resizing a fullheight window.
19610         * src/nsterm.m (windowWillResize): Restrict frame size to text grid,
19611         unless when pixelwise frame resizing is enabled.
19612         (updateFrameSize, initFrameFromEmacs)
19613         (toggleFullScreen, handleFS): Don't set resizeIncrements.
19615         Redesign the NS trace system.  The call structure is represented
19616         using indentations and vertical lines.  The NSTRACE macro accepts
19617         printf-style arguments.  New macros for printing various
19618         information.
19620         * src/nsterm.h (NSTRACE_ENABLED): Macro to enable trace system.
19621         (NSTRACE, NSTRACE_WHEN, NSTRACE_UNLESS): Macros to start a new
19622         block (typically a function), accept printf-style arguments.
19623         (NSTRACE_MSG): Macro for extra information, accepts
19624         printf-style arguments.
19625         (NSTRACE_what): Macros for printing various types.
19626         (NSTRACE_FMT_what): Macro with printf format string snippets.
19627         (NSTRACE_ARG_what): Macros for passing printf-style arguments,
19628         corresponds to NSTRACE_FMT_what.
19629         (NSTRACE_RETURN): Macro to print return value, accept
19630         printf-style arguments.
19631         (NSTRACE_RETURN_what): Macros to print return value for
19632         various types.
19634         * src/nsterm.m: Remove old NSTRACE macro
19635         * src/nsterm.m (nstrace_num): Trace counter.
19636         (nstrace_depth): Current call depth.
19637         (nstrace_leave): NSTRACE support function, called when the
19638         local variable "nstrace_enabled" goes out of scope using the
19639         "cleanup" extension.
19640         (ns_print_fullscreen_type_name): NSTRACE_FSTYPE support function.
19641         (constrain_frame_rect, ns_constrain_all_frames)
19642         (ns_update_auto_hide_menu_bar, ns_update_begin)
19643         (ns_update_window_begin, update_window_end, ns_update_end)
19644         (ns_focus, ns_unfocus, ns_ring_bell, ns_frame_raise_lower)
19645         (ns_frame_rehighlight, x_make_frame_visible)
19646         (x_make_frame_invisible, x_iconify_frame, x_free_frame_resources)
19647         (x_destroy_window, x_set_offset, x_set_window_size)
19648         (ns_fullscreen_hook, ns_lisp_to_color, ns_color_to_lisp)
19649         (ns_defined_color, frame_set_mouse_pixel_position)
19650         (note_mouse_movement, ns_mouse_position, ns_frame_up_to_date)
19651         (ns_define_frame_cursor, x_get_keysym_name, ns_redraw_scroll_bars)
19652         (ns_clear_frame, ns_clear_frame_area, ns_scroll_run)
19653         (ns_after_update_window_line, ns_shift_glyphs_for_insert)
19654         (dumpcursor, ns_draw_vertical_window_border)
19655         (ns_draw_window_divider, ns_draw_relief)
19656         (ns_dumpglyphs_box_or_relief, ns_maybe_dumpglyphs_background)
19657         (ns_dumpglyphs_image, ns_draw_glyph_string, ns_send_appdefined)
19658         (ns_read_socket, ns_select, ns_set_vertical_scroll_bar)
19659         (ns_set_horizontal_scroll_bar, ns_condemn_scroll_bars)
19660         (ns_redeem_scroll_bar, ns_judge_scroll_bars, ns_delete_terminal)
19661         (ns_create_terminal, ns_term_init, sendEvent)
19662         (applicationDidFinishLaunching, applicationDidBecomeActive)
19663         (timeout_handler, fd_handler, EmacsView_dealloc, changeFont)
19664         (acceptsFirstResponder, resetCursorRects, keyDown, mouseDown)
19665         (deltaIsZero, rightMouseDown, otherMouseDown, mouseUp)
19666         (rightMouseUp, otherMouseUp, scrollWheel, mouseMoved)
19667         (mouse_autoselect_window, in_window, mouseDragged)
19668         (rightMouseDragged, otherMouseDragged, windowShouldClose)
19669         (updateFrameSize, windowWillResize, windowDidResize)
19670         (windowDidBecomeKey, windowDidResignKey, windowWillMiniaturize)
19671         (initFrameFromEmacs, windowDidMove, windowDidDeminiaturize)
19672         (windowDidExpose, windowDidMiniaturize, windowWillEnterFullScreen)
19673         (windowDidEnterFullScreen, windowWillExitFullScreen)
19674         (windowDidExitFullScreen, toggleFullScreen, handleFS, setFSValue)
19675         (mouseEntered, mouseExited, menuDown, toolbarClicked, drawRect)
19676         (draggingEntered, performDragOperation, validRequestorForSendType)
19677         (setMiniwindowImage, constrainFrameRect, performZoom, zoom)
19678         (EmacsScroller_initFrame, EmacsScroller_setFrame)
19679         (EmacsScroller_dealloc, condemn, reprieve, judge)
19680         (resetCursorRects, setPosition, EmacsScroller_mouseDown)
19681         (EmacsScroller_mouseDragged, syms_of_nsterm): Use new trace system.
19683         * src/nsfns.m: Remove old NSTRACE macro
19684         * src/nsfns.m (x_set_icon_name, ns_set_name, x_explicitly_set_name)
19685         (x_implicitly_set_name, x_set_title, ns_set_name_as_filename)
19686         (ns_implicitly_set_icon_type, x_set_icon_type): Use new trace system.
19688         * src/nsimage.m: Remove old NSTRACE macro
19689         * src/nsimage.m (ns_image_from_XBM, ns_image_for_XPM)
19690         (ns_image_from_bitmap_file, ns_load_image): Use new trace system.
19692         * src/nsmenu.m: Remove old NSTRACE macro
19693         * src/nsmenu.m (ns_update_menubar, ns_menu_show, ns_popup_dialog):
19694         Use new trace system.
19696 2015-10-22  Katsumi Yamaoka  <yamaoka@jpl.org>
19698         No need to use eval-and-compile
19700         * lisp/gnus/auth-source.el: Do require epg (when compiling) before
19701         autoload epg functions.
19703 2015-10-22  Katsumi Yamaoka  <yamaoka@jpl.org>
19705         Fix auth-source-epa-make-gpg-token compilation (bug#21724)
19707         * lisp/gnus/auth-source.el: Add eval-and-compile to autoloads for
19708         epg-context-set-passphrase-callback, epg-decrypt-string, and
19709         epg-encrypt-string; require epg when compiling for the setf-method
19710         for epg-context-armor. (bug#21724)
19712 2015-10-22  Eli Zaretskii  <eliz@gnu.org>
19714         Include file cleanup for w32 files in src directory
19716         * src/w32xfns.c: Don't include keyboard.h, window.h, charset.h,
19717         fontset.h, blockinput.h.
19718         * src/w32uniscribe.c: Don't include dispextern.h, character.h,
19719         charset.h, fontset.h.
19720         * src/w32term.c: Don't include systty.h, systime.h, charset.h,
19721         character.h, ccl.h, dispextern.h, disptab.h, intervals.h,
19722         process.h, atimer.h, keymap.h, w32heap.h.  Include bitmap/gray.xbm
19723         in an ifdef-ed away block.
19724         Include fcntl.h for CYGWIN.
19725         (set_frame_param): Remove unused function.
19726         * src/w32select.c: Don't include charset.h and composite.h.
19727         (setup_config, Fw32_get_clipboard_data): Avoid compiler warnings
19728         due to pointer signedness mismatches.
19729         * src/w32reg.c (w32_get_string_resource): Avoid compiler warnings
19730         due to pointer signedness mismatches.
19731         * src/w32proc.c: Include unistd.h.  Don't include systime.h,
19732         process.h, dispextern.h.
19733         (sys_spawnve, Fw32_short_file_name, Fw32_long_file_name)
19734         (Fw32_application_type): Avoid compiler warnings due to pointer
19735         signedness mismatches.
19736         * src/w32menu.c: Don't include keymap.h, termhooks.h, window.h,
19737         character.h, charset.h, dispextern.h.
19738         (simple_dialog_show, add_menu_item): Avoid compiler warnings due
19739         to pointer signedness mismatches.
19740         * src/w32inevt.c: Don't include dispextern.h, window.h,
19741         termhooks.h, w32heap.h.
19742         * src/w32font.c: Don't include dispextern.h, character.h,
19743         charset.h, fontset.h, font.h.
19744         (intern_font_name, add_font_entity_to_list)
19745         (registry_to_w32_charset, w32_to_x_charset, fill_in_logfont)
19746         (list_all_matching_fonts): Avoid compiler warnings due to pointer
19747         signedness mismatches.
19748         * src/w32fns.c: Don't include character.h, intervals.h,
19749         dispextern.h, epaths.h, charset.h, ccl.h, fontset.h, systime.h,
19750         termhooks.h, w32heap.h, bitmap/gray.xbm, font.h, w32font.h.
19751         (w32_color_map_lookup, add_system_logical_colors_to_map)
19752         (x_decode_color, x_set_name, FPRINTF_WM_CHARS, Fxw_color_defined_p)
19753         (Fxw_color_values, x_display_info_for_name, Fset_message_beep)
19754         (x_create_tip_frame, Fx_file_dialog, Fsystem_move_file_to_trash)
19755         (w32_parse_hot_key, Ffile_system_info, w32_kbd_patch_key): Avoid
19756         compiler warnings, mainly due to pointer signedness mismatches.
19757         (unwind_create_frame_1): Remove unused function.
19758         * src/w32console.c: Don't include character.h, disptab.h, frame.h,
19759         window.h, termhooks.h, dispextern.h.
19760         (w32con_write_glyphs, w32con_write_glyphs_with_face): Fix pointer
19761         signedness mismatch.
19762         * src/w32.c: Include c-strcase.h and systty.h.  Don't include
19763         w32heap.h.
19765 2015-10-22  Tassilo Horn  <tsdh@gnu.org>
19767         Improve doc-view wrt. auto-revert-mode
19769         * lisp/doc-view.el (doc-view-revert-buffer): Don't revert when file
19770         is corrupted (bug#21729).
19771         (doc-view-mode): Set doc-view-revert-buffer as revert-buffer-function.
19773 2015-10-22  Oleh Krehel  <ohwoeowho@gmail.com>
19775         Describe dired-do-compress-to in the manual
19777         * etc/NEWS: Update.
19779         * lisp/dired-aux.el: Fix typo.
19781         * doc/emacs/dired.texi: Add entry.
19783 2015-10-22  Jürgen Hötzel  <juergen@archlinux.org>
19785         Further fix for proper locale handling in tramp-gvfs.el
19787         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
19788         Just suppress LC_MESSAGES locale category settings.
19790 2015-10-21  Paul Eggert  <eggert@cs.ucla.edu>
19792         New lispref section “Security Considerations”
19794         This attempts to document some of the issues recently discussed
19795         on emacs-devel, and to indicate other such issues.  The section
19796         could be a lot longer.
19797         * doc/lispref/os.texi (Security Considerations):
19798         New node.
19799         * doc/lispref/elisp.texi (Top):
19800         * doc/lispref/processes.texi (Shell Arguments):
19801         * lisp/subr.el (shell-quote-argument):
19802         * src/callproc.c (syms_of_callproc):
19803         Reference it.
19805 2015-10-21  Paul Eggert  <eggert@cs.ucla.edu>
19807         Merge from gnulib
19809         This incorporates:
19810         2015-10-18 stdalign: work around pre-4.9 GCC x86 bug
19811         2015-10-18 time_rz: avoid warning from bleeding-edge gcc's -Wnonnull
19812         * doc/misc/texinfo.tex, lib/stdalign.in.h, lib/time_rz.c:
19813         Copy from gnulib.
19815 2015-10-21  Katsumi Yamaoka  <yamaoka@jpl.org>
19817         * lisp/gnus/mailcap.el (mailcap-mime-data): Remove fboundp checks.
19818         (mailcap-viewer-passes-test): Do it instead.  Thanks to Stefan Monnier.
19820 2015-10-21  Ken Brown  <kbrown@cornell.edu>
19822         Further include-file cleanup
19824         * src/sheap.c: Include stdlib.h.
19825         * src/unexcw.c: Include string.h.
19827 2015-10-21  Eli Zaretskii  <eliz@gnu.org>
19829         Fix logic in 'server-kill-emacs-query-function'
19831         * lisp/server.el (server-kill-emacs-query-function): Correct the
19832         logic that controls whether the user is asked for confirmation.
19833         (Bug#21723)
19835 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
19837         * lisp/isearch.el (isearch-search-fun-default): Simplify logic.
19838         (isearch--lax-regexp-function-p): New function.
19840 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
19842         * lisp/isearch.el: Support lax-whitespace in regexp-function searches.
19843         (isearch-search-fun-default): Let-bind `search-spaces-regexp'
19844         around `isearch-regexp-function'.
19846 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
19848         * lisp/isearch.el: Rename word search to regexp-function search.
19849         `isearch-word' went well beyond its original purpose, and the name
19850         no longer makes sense.  It is now called
19851         `isearch-regexp-function', and its value should always be a function
19852         that converts a string to a regexp (though setting it to t is still
19853         supported for now).
19854         (isearch-word): Make obsolete.
19855         (isearch-regexp-function): New variable.
19856         (isearch-mode, isearch-done, isearch--state, isearch--set-state)
19857         (with-isearch-suspended, isearch-toggle-regexp)
19858         (isearch-toggle-word, isearch-toggle-symbol)
19859         (isearch-toggle-character-fold, isearch-query-replace)
19860         (isearch-occur, isearch-highlight-regexp)
19861         (isearch-search-and-update, isearch-message-prefix)
19862         (isearch-search-fun-default, isearch-search)
19863         (isearch-lazy-highlight-new-loop, isearch-lazy-highlight-search):
19864         Use it.
19865         (isearch-lazy-highlight-regexp-function): New var.
19866         (isearch-lazy-highlight-word): Make obsolete.
19867         (isearch--describe-regexp-mode): New function.
19868         (isearch--describe-word-mode): Make obsolete.
19870         * lisp/info.el (Info-isearch-search):
19871         * lisp/replace.el (replace-search, replace-highlight):
19872         * lisp/obsolete/longlines.el (longlines-search-function):
19873         * lisp/hexl.el (hexl-isearch-search-function):
19874         * lisp/cedet/semantic/senator.el (senator-isearch-search-fun):
19875         Use the new var.
19877 2015-10-21  Oleh Krehel  <ohwoeowho@gmail.com>
19879         Add dired-do-compress-to command bound to "c"
19881         * lisp/dired-aux.el (dired-shell-command): Use the caller's
19882           `default-directory', return the result of `process-file'.
19883         (dired-compress-file-suffixes): Add comment on why "tar -zxf" isn't
19884         used by default.
19885         (dired-compress-files-alist): New defvar.
19886         (dired-do-compress-to): New command.
19888         * lisp/dired.el (dired-mode-map): Bind `dired-do-compress-to' to "c".
19889         (dired-do-compress-to): Add an autoload entry.
19891         * etc/NEWS: Add two entries.
19893 2015-10-21  Tassilo Horn  <tsdh@gnu.org>
19895         Make RefTeX work with LaTeX subfiles package
19897         * lisp/textmodes/reftex.el (reftex-TeX-master-file): Recognize subfiles
19898         document class argument as master file for referencing purposes.
19900 2015-10-21  Katsumi Yamaoka  <yamaoka@jpl.org>
19902         * lisp/gnus/mailcap.el (mailcap-mailcap-entry-passes-test): Doc fix.
19904 2015-10-20  Paul Eggert  <eggert@cs.ucla.edu>
19906         Include-file cleanup for src directory
19908         Omit ‘#include "foo.h"’ unless the file needs foo.h (Bug#21707).
19909         In a few cases, add ‘#include "foo.h"’ if the file needs foo.h
19910         but does not include it directly.  As a general rule, a source
19911         file should include foo.h if it needs the interfaces that foo.h
19912         defines.
19913         * src/alloc.c: Don’t include process.h.  Include dispextern.h,
19914         systime.h.
19915         * src/atimer.c: Don’t include blockinput.h.
19916         * src/buffer.c: Include coding.h, systime.h.  Don’t include
19917         keyboard.h, coding.h.
19918         * src/callint.c: Don’t include commands.h, keymap.h.
19919         * src/callproc.c: Don’t include character.h, ccl.h, composite.h,
19920         systty.h, termhooks.h.
19921         * src/casetab.c: Don’t include character.h.
19922         * src/category.c: Don’t include charset.h, keymap.h.
19923         * src/ccl.h: Don’t include character.h.
19924         * src/character.c: Don’t include charset.h.
19925         * src/charset.c: Don’t include disptab.h.
19926         * src/chartab.c: Don’t include ccl.h.
19927         * src/cm.c: Don’t include frame.h, termhooks.h.
19928         * src/cmds.c: Don’t include window.h, dispextern.h.
19929         * src/coding.c: Don’t include window.h, frame.h.
19930         * src/composite.c: Include composite.h.  Don’t include window.h,
19931         font.h.
19932         * src/data.c: Don’t include syssignal.h, termhooks.h, font.h.
19933         * src/dbusbind.c: Don’t include frame.h.
19934         * src/decompress.c: Don’t include character.h.
19935         * src/dired.c: Don’t include character.h, commands.h, charset.h.
19936         * src/dispnew.c: Don’t include character.h, indent.h, intervals.h,
19937         process.h, timespec.h.  Include systime.h.
19938         * src/doc.c: Include coding.h.  Don’t include keyboard.h.
19939         * src/editfns.c: Include composite.h.  Don’t include frame.h.
19940         * src/emacs.c: Include fcntl.h, coding.h.  Don’t include
19941         commands.h, systty.h..
19942         * src/fileio.c: Don’t include intervals.h, dispextern.h.
19943         Include composite.h.
19944         * src/filelock.c: Don’t include character.h, systime.h.
19945         * src/fns.c: Don’t include time.h, commands.h, keyboard.h,
19946         keymap.h, frame.h, blockinput.h, xterm.h.  Include composite.h.
19947         * src/font.c: Include termhooks.h.
19948         * src/font.h: Don’t include ccl.h, frame.h.  Add forward decls of
19949         struct composition_it, struct face, struct glyph_string.
19950         * src/fontset.c: Don’t include buffer.h, ccl.h, keyboard.h,
19951         intervals.h, window.h, termhooks.h.
19952         * src/frame.c: Don’t include character.h, commands.h, font.h.
19953         * src/frame.h: Don’t include dispextern.h.
19954         * src/fringe.c: Don’t include character.h.
19955         * src/ftcrfont.c: Don’t include dispextern.h, frame.h,
19956         character.h, charset.h, fontset.h.
19957         * src/ftfont.c: Don’t include frame.h, blockinput.h, coding.h,
19958         fontset.h.
19959         * src/ftxfont.c: Don’t include dispextern.h, character.h,
19960         charset.h, fontset.h.
19961         * src/gfilenotify.c: Don’t include frame.h, process.h.
19962         * src/gtkutil.c: Include dispextern.h, frame.h, systime.h.
19963         Don’t include syssignal.h, buffer.h, charset.h, font.h.
19964         * src/gtkutil.h: Don’t include frame.h.
19965         * src/image.c: Include fcntl.h and stdio.h instead of sysstdio.h.
19966         Don’t include character.h.
19967         * src/indent.c: Don’t include keyboard.h, termchar.h.
19968         * src/inotify.c: Don’t include character.h, frame.h.
19969         * src/insdel.c: Include composite.h.  Don’t include blockinput.h.
19970         * src/intervals.c: Don’t include character.h, keyboard.h.
19971         * src/intervals.h: Don’t include dispextern.h, composite.h.
19972         * src/keyboard.c: Don’t include sysstdio.h, disptab.h, puresize.h.
19973         Include coding.h.
19974         * src/keyboard.h: Don’t incldue systime.h.
19975         * src/keymap.c: Don’t include charset.h, frame.h.
19976         * src/lread.c: Include dispextern.h and systime.h.
19977         Don’t include frame.h.  Include systime.h.
19978         * src/macros.c: Don’t include commands.h, character.h, buffer.h.
19979         * src/menu.c: Include character.h, coding.h.  Don’t include
19980         dispextern.h.
19981         * src/menu.h: Don’t include systime.h.
19982         * src/minibuf.c: Don’t include commands.h, dispextern.h, syntax.h,
19983         intervals.h, termhooks.h.
19984         * src/print.c: Include coding.h.  Don’t include keyboard.h,
19985         window.h, dispextern.h, termchar.h, termhooks.h, font.h.
19986         Add forward decl of struct terminal.
19987         * src/process.c: Don’t include termhooks.h, commands.h,
19988         dispextern.h, composite.h.
19989         * src/region-cache.c: Don’t include character.h.
19990         * src/scroll.c: Don’t include keyboard.h, window.h.
19991         * src/search.c: Don’t include category.h, commands.h.
19992         * src/sound.c: Don’t include dispextern.h.
19993         * src/syntax.c: Don’t include command.h, keymap.h.
19994         * src/sysdep.c: Don’t include window.h, dispextern.h.
19995         * src/systime.h: Use ‘#ifdef emacs’, not ‘#ifdef EMACS_LISP_H’,
19996         * src/term.c: Don’t include systty.h, intervals.h, xterm.h.
19997         * src/terminal.c: Include character.h.
19998         Don’t include charset.h, coding.h.
19999         * src/textprop.c: Don’t include character.h.
20000         * src/undo.c: Don’t include character.h, commands.h, window.h.
20001         * src/unexsol.c: Don’t include character.h, charset.h.
20002         * src/widget.c: Include widget.h.  Don’t include keyboard.h,
20003         window.h, dispextern.h, blockinput.h, character.h, font.h.
20004         * src/widgetprv.h: Don’t include widget.h.
20005         * src/window.c: Don’t include character.h, menu.h, intervals.h.
20006         * src/xdisp.c: Include composite.h, systime.h.  Don’t include
20007         macros.h, process.h.
20008         * src/xfaces.c: Don’t include charset.h, keyboard.h, termhooks.h,
20009         intervals.h.
20010         * src/xfns.c: Don’t include menu.h, character.h, intervals.h,
20011         epaths.h, fontset.h, systime.h, atimer.h, termchar.h.
20012         * src/xfont.c: Don’t include dispextern.h, fontset.h, ccl.h.
20013         * src/xftfont.c: Don’t include dispextern.h, character.h, fontset.h.
20014         * src/xgselect.c: Don’t include timespec.h, frame.h.
20015         Include systime.h.
20016         * src/xgselect.h: Don’t include time.h.
20017         Use a forward decl to struct timespec instead.
20018         * src/xmenu.c: Don’t include keymap.h, character.h, charset.h,
20019         dispextern.h.  Include systime.h.
20020         * src/xml.c: Don’t include character.h.
20021         * src/xrdb.c [USE_MOTIF]: Don’t include keyboard.h.
20022         * src/xselect.c: Don’t include dispextern.h, character.h,
20023         buffer.h, process.h.
20024         * src/xsmfns.c: Don’t include systime.h, sysselect.h.
20025         * src/xterm.c: Don’t include syssignal.h, charset.h, disptab.h,
20026         intervals.h process.h, keymap.h, xgselect.h.  Include composite.h.
20028 2015-10-20  Paul Eggert  <eggert@cs.ucla.edu>
20030         (/ N) now returns the reciprocal of N
20032         This is more compatible with Common Lisp and XEmacs (Bug#21690).  See:
20033         http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg01053.html
20034         * lisp/color.el (color-hue-to-rgb, color-hsl-to-rgb)
20035         (color-xyz-to-srgb, color-xyz-to-lab):
20036         * lisp/emacs-lisp/cl-extra.el (cl-float-limits):
20037         * lisp/net/shr-color.el (shr-color-hue-to-rgb)
20038         (shr-color-hsl-to-rgb-fractions):
20039         Exploit the change to simplify the code a bit.
20040         * lisp/emacs-lisp/bytecomp.el (byte-compile-quo):
20041         Don’t complain about single-argument calls to ‘/’.
20042         * src/data.c (arith_driver, float_arith_driver):
20043         Implement the change.
20045 2015-10-20  Dmitry Gutov  <dgutov@yandex.ru>
20047         Call vc-dir-refresh after stash operations
20049         * lisp/vc/vc-git.el (vc-git-stash-apply-at-point)
20050         (vc-git-stash-pop-at-point): Call vc-dir-refresh (bug#13960).
20052         * lisp/vc/vc-dir.el (vc-dir-resynch-file): Expand FNAME as well,
20053         since it can be abbreviated (as returned by vc-find-root).
20055 2015-10-20  Dmitry Gutov  <dgutov@yandex.ru>
20057         * lisp/vc/vc-svn.el:
20058         * lisp/vc/vc-mtn.el:
20059         * lisp/vc/vc-hg.el:
20060         * lisp/vc/vc-cvs.el:
20061         * lisp/vc/vc-git.el:
20062         * lisp/vc/vc-bzr.el: Don't declare vc-exec-after anymore.
20063         Its usages have been replaced with vc-run-delayed.
20065 2015-10-20  Dima Kogan  <dima@secretsauce.net>
20067         Fix memory leak in fontset handling
20069         * src/font.c (copy_font_spec): Make a deep copy of the input
20070         argument FONT.  (Bug#21651)
20072 2015-10-20  Michael Sperber  <mike@xemacs.org>
20074         * lisp/gnus/mailcap.el (mailcap-mime-data):
20075         Conditonalize `doc-view-mode', which does not exist on XEmacs.
20077 2015-10-20  Oleh Krehel  <ohwoeowho@gmail.com>
20079         Update the way directories are compressed
20081         * lisp/dired-aux.el (dired-compress-file-suffixes): Update the recipe
20082         for *.tar.gz decompression to use a pipe.
20083         Add an entry for the default directory compression (to *.tar.g).
20084         (dired-compress-file): Update.
20086         See https://lists.gnu.org/archive/html/emacs-devel/2015-10/msg00949.html.
20088 2015-10-20  Michael Sperber  <mike@xemacs.org>
20090         Unbreak `group' option for `mail-sources'
20092         * lisp/gnus/nnml.el (nnml-retrieve-groups, nnml-request-scan):
20093         * lisp/gnus/nnmail.el (nnmail-get-new-mail-per-group)
20094         (nnmail-get-new-mail-1): Unbreak `group' option for `mail-sources'.
20096 2015-10-19  Nicolas Petton  <nicolas@petton.fr>
20098         New function seq-position
20100         * lisp/emacs-lisp/seq.el (seq-position): New function.
20101         * test/automated/seq-tests.el: New tests for seq-position.
20102         * doc/lispref/sequences.texi: Add documentation for `seq-position'.
20104 2015-10-19  Ken Brown  <kbrown@cornell.edu>
20106         Enable --with-wide-int build on 32-bit Cygwin
20108         * src/sheap.c (STATIC_HEAP_SIZE): Remove distinction between x86
20109         and x86_64 to enable --with-wide-int build on 32-bit Cygwin.
20111 2015-10-19  Glenn Morris  <rgm@gnu.org>
20113         * doc/emacs/ack.texi (Acknowledgments): Small, sad, update.
20115 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
20117         Resurrect image loading under auto-image-file-mode
20119         * src/image.c (x_find_image_fd): Handle the case of -2 returned by
20120         'openp' specially.  This special case was lost in the changes on
20121         2015-08-18.  (Bug#21685)
20123 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
20125         Fix return value of 'set-file-extended-attributes'
20127         * lisp/files.el (set-file-extended-attributes): Return non-nil
20128         when setting either ACLs or SELinux context succeeds.  Document
20129         the return value.  (Bug#21699)
20131         * doc/lispref/files.texi (Changing Files): Document the return
20132         value of set-file-extended-attributes.
20134 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
20136         Improve documentation of functions that change files
20138         * doc/lispref/files.texi (Changing Files): Document that these
20139         functions signal an error on failure.
20141 2015-10-18  Eli Zaretskii  <eliz@gnu.org>
20143         Fix doc string of 'shell-quote-argument'
20145         * lisp/subr.el (shell-quote-argument): Doc fix.  (Bug#21702)
20147 2015-10-18  Michael Albinus  <michael.albinus@gmx.de>
20149         Some minor Tramp changes
20151         * doc/misc/tramp.texi (Obtaining Tramp): Add http git cloning.
20153         * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
20154         Expand `tramp-auto-save-directory'.
20156 2015-10-18  Michael Albinus  <michael.albinus@gmx.de>
20158         Minor edits in Tramp
20160         * lisp/net/tramp-adb.el (directory-listing-before-filename-regexp):
20161         Declare it.
20163         * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
20164         Remove declaration.
20166 2015-10-17  Mark Oteiza  <mvoteiza@udel.edu>
20168         * lisp/emacs-lisp/eldoc.el: Add back-to-indentation to the command list.
20170 2015-10-17  Eli Zaretskii  <eliz@gnu.org>
20172         Avoid crashes when redisplayng a window changes faces or fonts
20174         * src/xdisp.c (redisplay_internal): If redisplaying the selected
20175         window or one of the frames turns on the frame's 'redisplay' flag,
20176         redisplay again.  (Bug#21428)
20178         * src/frame.c (x_set_font): Set the frame's 'fonts_changed' flag.
20180 2015-10-17  Michael Albinus  <michael.albinus@gmx.de>
20182         Solve timimg issues in file-notify-tests.el
20184         * test/automated/file-notify-tests.el (file-notify-test02-events):
20185         Rectify `attribute-change' tests.  There are timing issues with
20186         gfilenotify.  (Bug#21669)
20188 2015-10-16  Paul Eggert  <eggert@cs.ucla.edu>
20190         Fix quoting of data within htmlfontify doc
20192         * doc/misc/htmlfontify.texi (Data Structures, Customization):
20193         Fix quoting of data structures.  A Lisp quote is needed only
20194         when data appears within Lisp code.
20196 2015-10-16  Artur Malabarba  <bruce.connor.am@gmail.com>
20198         * lisp/emacs-lisp/package.el: Reload archive-contents if
20199         priorities change.
20200         (package--old-archive-priorities): New variable.
20201         (package-read-all-archive-contents, package-menu--refresh): Use it
20202         to decide when the `package-archive-contents' needs to be read
20203         again.
20205 2015-10-16  Paul Eggert  <eggert@cs.ucla.edu>
20207         Make src headers idempotent and standalone
20209         Redo src/*.h so that each include file is idempotent (that is, can
20210         be included multiple times with the latter inclusions having no
20211         effect) and standalone (that is, can be included by itself,
20212         with no include file other than config.h needed as a prerequisite).
20213         This is standard practice in GNU programs nowadays.
20214         * lwlib/lwlib-widget.h, src/buffer.h, src/category.h, src/character.h:
20215         * src/charset.h, src/coding.h, src/commands.h, src/disptab.h:
20216         * src/fontset.h, src/gnutls.h, src/indent.h, src/keymap.h, src/macros.h:
20217         * src/regex.h [emacs]:
20218         * src/syntax.h, src/systty.h, src/termhooks.h:
20219         Include lisp.h, for Lisp_Object.
20220         * src/buffer.h, src/category.h, src/cm.h, src/commands.h, src/disptab.h:
20221         * src/indent.h, src/intervals.h, src/keyboard.h, src/macros.h:
20222         * src/process.h, src/puresize.h, src/region-cache.h, src/syntax.h:
20223         * src/syssignal.h, src/sysstdio.h, src/systty.h, src/termchar.h:
20224         * src/termopts.h, src/tparam.h, src/unexec.h:
20225         Protect against multiple inclusion.
20226         * src/buffer.h: Include character.h, for STRING_CHAR.
20227         * src/emacsgtkfixed.h (struct frame):
20228         * src/fontset.h (struct face):
20229         * src/region-cache.h (struct buffer):
20230         * src/termhooks.h (struct glyph):
20231         * src/xsettings.h (struct x_display_info):
20232         Add possibly-forward decl.
20233         * src/syntax.h: Include buffer.h, for BVAR.
20234         * src/sysselect.h: Include lisp.h, for eassume.
20235         * src/termchar.h: Include <stdio.h>, for FILE.
20236         * src/widget.h: Include <X11/IntrinsicP.h>, for Widget.
20237         * src/xsettings.h: Include <X11/Xlib.h>, for XEvent.
20239 2015-10-16  Jürgen Hötzel  <juergen@archlinux.org>
20241         Handle symlink targets containing spaces in tramp-gvfs.el
20243         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
20244         Handle symlink targets containing spaces.
20246 2015-10-16  Artur Malabarba  <bruce.connor.am@gmail.com>
20248         * lisp/custom.el (custom-theme-load-path): Demote to defvar.
20250         `custom-theme-load-path' was a defcustom, but it shouldn't be for the
20251         same reason that `load-path' shouldn't.  Setting it via the customize
20252         interface is a trap for the user.
20254         Installed themes commonly add themselves to this variable, which means
20255         its value is not fit for being saved (it will permanently remember dirs
20256         that don't exist anymore).
20258         This is aggravated by the fact that Emacs always applies the `user'
20259         theme on top of any theme that's loaded, since this will apply the old
20260         variable value and remove any new directories that had been recently
20261         added by themes themselves.
20263         Not to mention, we already have `custom-theme-directory', which is safe
20264         to customize.
20266 2015-10-16  Stefan Monnier  <monnier@iro.umontreal.ca>
20268         * lisp/mpc.el: Rename the new toggling commands.
20269         (mpc-toggle-consume, mpc-toggle-repeat, mpc-toggle-single)
20270         (mpc-toggle-shuffle): Add "-toggle" in the name.
20272 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
20274         Improve the doc string of 'completion-boundaries'
20276         * lisp/minibuffer.el (completion-boundaries): Rename the argument
20277         TABLE to COLLECTION, for consistency with other high-level
20278         completion functions.  Document how COLLECTION is called if it
20279         is a function.  (Bug#21644)
20281 2015-10-16  Oleh Krehel  <ohwoeowho@gmail.com>
20283         * lisp/dired-aux.el (dired-shell-command): Fix compile warning.
20285 2015-10-16  Oleh Krehel  <ohwoeowho@gmail.com>
20287         Make dired-do-compress work for *.zip files
20289         * lisp/dired-aux.el (dired-check-process): Transform the top-level
20290           comment into a docstring.
20291         (dired-shell-command): New command.  This mirrors
20292         `dired-check-process', but is more user-friendly for passing
20293         arguments.
20294         (dired-compress-file-suffixes): Allow to specify the command switches
20295         along with input (%i) and output (%o) inside the PROGRAM part.
20296         Add an entry for *.zip files, and update the entry for *.tar.gz files
20297         to the new style.  Update the docstring.
20298         (dired-compress-file): When PROGRAM matches %i or %o, use the new
20299         logic.
20300         (dired-update-file-line): Avoid an error when at end of buffer.
20302         Fixes bug#21637.
20304 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
20306         Minor improvement in documentation of internals
20308         * doc/lispref/internals.texi (Writing Emacs Primitives): Document QUIT.
20310 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
20312         Improve documentation of COLLECTION in completion functions
20314         * doc/lispref/minibuf.texi (Minibuffer Completion): Add a
20315         cross-reference to "Programmed Completion".
20317         * src/minibuf.c (Fcompleting_read): Improve the doc string.
20318         (Bug#21644)
20320 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
20322         Add more release info to etc/HISTORY
20324         * etc/HISTORY: Add more release information about 19.x and 20.x
20325         versions.
20327 2015-10-15  Paul Eggert  <eggert@cs.ucla.edu>
20329         New file etc/HISTORY
20331         * admin/FOR-RELEASE: Procedure for etc/HISTORY.
20332         * etc/HISTORY: New file.
20333         * etc/NEWS: Mention it.
20335 2015-10-15  Dmitry Gutov  <dgutov@yandex.ru>
20337         js-mode: Don't misindent generator methods
20339         * lisp/progmodes/js.el (js--looking-at-operator-p): Distinguish
20340         generator methods from multiplication operator
20341         (https://github.com/mooz/js2-mode/issues/275).
20343 2015-10-15  Paul Eggert  <eggert@cs.ucla.edu>
20345         Fix animation timeout delay calculation
20347         * lisp/image.el (image-animate-timeout):
20348         Don’t assume speed is floating-point.
20350 2015-10-15  Mark Oteiza  <mvoteiza@udel.edu>
20352         Add commands for controlling MPD modes
20354         * lisp/mpc.el (mpc-cmd-consume, mpc-cmd-random, mpc-cmd-repeat)
20355         (mpc-cmd-single): New functions.
20356         (mpc-consume, mpc-repeat, mpc-single, mpc-shuffle): New commands.
20357         (mpc-mode-menu): Add new commands as menu items.
20359 2015-10-15  Dmitry Gutov  <dgutov@yandex.ru>
20361         Refer to `(elisp)Basic Completion' in completing-read docstring
20363         * src/minibuf.c (Fcompleting_read): Refer to `(elisp)Basic
20364         Completion' in the docstring (bug#21644).
20366 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
20368         * lisp/mpc.el (mpc-format): Always push form to pred
20370 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
20372         Spelling fixes
20374         * configure.ac (bitmapdir): Fix misspelling of bmd_acc.
20375         * test/automated/coding-tests.el (ert-test-coding-bogus-coding-systems):
20376         Fix misspelling of nonexistent file name.
20378 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
20380         * lisp/mpc.el (mpc-mode-menu, mpc-toggle-play): Fix docstrings
20382 2015-10-14  Michael Albinus  <michael.albinus@gmx.de>
20384         Some editing fixes in Tramp
20386         * lisp/net/tramp-gvfs.el:
20387         * doc/misc/tramp.texi: "customer option" -> "custom option".
20389         * lisp/net/tramp.el (tramp-completion-function-alist): Fix docstring.
20391 2015-10-14  Jürgen Hötzel  <juergen@archlinux.org>
20393         Use proper localization in tramp-gvfs.el
20395         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
20396         Suppress localized settings in order to proper parse gfvs output.
20398 2015-10-14  Warren Lynn  <wrn.lynn@gmail.com>  (tiny change)
20400         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band):
20401         Quote argument in proper order.  (Bug#21562)
20403 2015-10-14  Nicolas Petton  <nicolas@petton.fr>
20405         Fix typos in docstrings
20407         * lisp/emacs-lisp/map.el:
20408         * lisp/emacs-lisp/seq.el: Fix typos in the docstrings of the pcase
20409           macros.
20411 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
20413         * lisp/mpc.el (mpc-volume-refresh): Check if buffer is live.
20415 2015-10-14  Oleh Krehel  <ohwoeowho@gmail.com>
20417         Make dired-jump work with tar-subfile-mode
20419         * lisp/dired-x.el (dired-jump): When in `tar-subfile-mode', instead of
20420           emitting an error, switch to `tar-superior-buffer'.
20422 2015-10-14  Juanma Barranquero  <lekktu@gmail.com>
20424         * .gitignore: Add build-aux/ar-lib.
20426 2015-10-14  Nicolas Petton  <nicolas@petton.fr>
20428         Better docstrings in seq.el and map.el
20430         * lisp/emacs-lisp/map.el:
20431         * lisp/emacs-lisp/seq.el: Improve the docstring for the pcase patterns.
20433 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
20435         Merge from gnulib
20437         This incorporates:
20438         2015-10-13 binary-io, u64, unistd: port to strict C
20439         2015-09-26 c-ctype: do not worry about EBCDIC + char signed
20440         2015-09-25 c-ctype: port better to z/OS EBCDIC
20441         2015-09-25 gnulib-common.m4: fix gl_PROG_AR_RANLIB/AM_PROG_AR clash
20442         * doc/misc/texinfo.tex, lib/binary-io.c, lib/c-ctype.h, lib/u64.c:
20443         * lib/unistd.c, m4/gnulib-common.m4, m4/gnulib-comp.m4:
20444         Copy from gnulib.
20446 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
20448         Take XPNTR private
20450         * src/alloc.c (PURE_POINTER_P): Remove.
20451         All uses replaced with PURE_P.
20452         (XPNTR_OR_SYMBOL_OFFSET): New function.
20453         (XPNTR): Move here from lisp.h.
20454         Reimplement in terms of XPNTR_OR_SYMBOL_OFFSET.
20455         (mark_maybe_object, valid_lisp_object_p, survives_gc_p):
20456         Remove unnecessary cast.
20457         (purecopy): Use XPNTR_OR_SYMBOL_OFFSET instead of XPNTR,
20458         to avoid an unnecessary runtime test for symbols.
20459         * src/lisp.h (lisp_h_XPNTR, XPNTR): Remove, moving XPNTR to alloc.c.
20460         Only alloc.c needs XPNTR now.
20462 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
20464         Add MPC play/pause command
20466         * lisp/mpc.el (mpc-toggle-play): New command.
20467         (mpc-mode-map): Bind it to "s".
20468         (mpc-mode-menu): Add corresponding menu item.
20470 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
20472         Add bindings and menu items for prev and next tracks
20474         * lisp/mpc.el (mpc-mode-map): Bind ">" to mpc-next,
20475         "<" to mpc-prev.
20476         (mpc-mode-menu): Add corresponding menu items
20478 2015-10-13  Ken Raeburn  <raeburn@raeburn.org>
20480         Reduce face-related consing during frame creation.
20482         * lisp/faces.el (face--attributes-unspecified): Compute the "unspecified"
20483         attribute list once.
20484         (face-spec-reset-face): Use it instead of building the list.
20486 2015-10-13  Ken Raeburn  <raeburn@permabit.com>
20488         Do process ConfigureNotify events indicating size changes.
20490         * src/xterm.c (handle_one_xevent): If consecutive ConfigureNotify
20491         events don't have the same size, process each one.
20493 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
20495         Derive mpc-mode from special-mode
20497         lisp/mpc.el (mpc-mode-map): Make from sparse keymap.  Unbind g.
20498         (mpc-mode): Derive from special mode.
20499         (mpc-songs-mode-map): Don't set parent keymap.
20501 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
20503         Fix error messages for when covers are not found.
20505         The last change to mpc-format let the binding to file call
20506         mpc-file-local-copy with nil argument.  Instead, employ if-let here
20507         so nil bindings don't result in needless computation and errors.
20508         * lisp/mpc.el: Require 'subr-x at compile time.
20509         * lisp/mpc.el (mpc-format): Use if-let.
20511 2015-10-13  Oleh Krehel  <ohwoeowho@gmail.com>
20513         Make dired-do-compress work for *.tar.gz files
20515         * lisp/dired-aux.el (dired-compress-file-suffixes): Associate
20516           "tar -zxvf" to *.tar.gz; update docstring.
20518         (dired-compress-file): Allow to specify switches after the command in
20519         `dired-compress-file-suffixes'.
20521 2015-10-13  Oleh Krehel  <ohwoeowho@gmail.com>
20523         Make dired-do-compress work for directories
20525         * lisp/dired-aux.el (dired-compress-file): When FILE is a directory,
20526           instead of emitting an error, call "tar -czf FILE.tar.gz FILE".
20527         Also convert the top comment into a docstring.
20529 2015-10-13  Stefan Monnier  <monnier@iro.umontreal.ca>
20531         * lisp/mpc.el (mpc-songs-refresh): Don't side-effect `active'
20533         ... since it might come straight from the memoizing table.
20535 2015-10-13  Juanma Barranquero  <lekktu@gmail.com>
20537         * src/w32fns.c (x_change_tool_bar_height): Remove unused variable frame.
20539 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
20541         Use special-mode in eww list modes
20543         * lisp/net/eww.el (eww-bookmark-mode, eww-history-mode)
20544         (eww-buffers-mode): Derive from special-mode and remove redundant
20545         setting of buffer-read-only.
20546         (eww-mode-map): Remove redundant keymap parent setting.
20547         (eww-bookmark-mode-map, eww-history-mode-map, eww-buffers-mode-map):
20548         Remove redundant keymap suppressions and mappings.
20550 2015-10-13  Martin Rudalics  <rudalics@gmx.at>
20552         Allow setting frame pixel sizes from frame parameters (Bug#21415)
20554         Also fix some misfeatures in frame (re-)sizing code, add more
20555         debugging information and remove some dead code.
20557         * lisp/frame.el (frame-notice-user-settings, make-frame): Change
20558         parameter names when setting `frame-size-history'.
20559         (frame--size-history): New function.
20561         * src/frame.c (frame_inhibit_resize): If frame has not been made
20562         yet, return t if inhibit_horizontal_resize or
20563         inhibit_vertical_resize bit have been set.
20564         (adjust_frame_size): Simplify.
20565         (make_frame): Initialize inhibit_horizontal_resize,
20566         inhibit_vertical_resize, tool_bar_redisplayed, tool_bar_resized.
20567         (Fframe_after_make_frame): Reset inhibit_horizontal_resize and
20568         inhibit_vertical_resize slots.
20569         (x_set_frame_parameters): Handle `text-pixels' specification for
20570         width and height parameters.  Don't consider new_height or
20571         new_width changes.  Call adjust_frame_size instead of
20572         Fset_frame_size.
20573         (x_figure_window_size): Two new arguments x_width and y_width
20574         returning frame's figures width and height.  Calculate tool bar
20575         height before frame sizes so SET_FRAME_HEIGHT can pick it up.
20576         Handle `text-pixels' specification for width and height
20577         parameters.
20578         (Qtext_pixels, Qx_set_frame_parameters, Qset_frame_size)
20579         (Qx_set_window_size_1, Qx_set_window_size_2)
20580         (Qx_set_window_size_3, Qx_set_menu_bar_lines)
20581         (Qupdate_frame_menubar, Qfree_frame_menubar_1)
20582         (Qfree_frame_menubar_2): New symbols.
20583         * src/frame.h (structure frame): New booleans
20584         tool_bar_redisplayed, tool_bar_resized,
20585         inhibit_horizontal_resize, inhibit_vertical_resize.
20586         (x_figure_window_size): Update external declaration.
20587         * src/gtkutil.c (xg_frame_set_char_size): Set size hints before
20588         calling gtk_window_resize.
20589         (update_frame_tool_bar): Make inhibiting of frame resizing more
20590         discriminative.  Set tool_bar_resized bit.
20591         * src/nsfns.m (x_set_tool_bar_lines): Make inhibiting of frame
20592         resizing more discriminative.  Call adjust_frame_size instead of
20593         x_set_window_size.
20594         (Fx_create_frame): Handle x_width and x_height if
20595         set by x_figure_window_size.
20596         * src/nsterm.m (x_set_window_size): For GNUSTEP build don't
20597         subtract 3 from tool bar height.
20598         (x_set_window_size): Add frame_size_history_add call.
20599         (x_new_font): Call adjust_frame_size instead of
20600         x_set_window_size.
20601         * src/w32fns.c (x_change_tool_bar_height): Reset
20602         tool_bar_redisplayed and tool_bar_resized bits when adding tool
20603         bar.  Make inhibiting of frame resizing more discriminative.
20604         (w32_wnd_proc): Remove dead code in WM_WINDOWPOSCHANGING case.
20605         (Fx_create_frame): Handle x_width and x_height if set by
20606         x_figure_window_size.  Set size hints before adjusting frame size.
20607         (x_create_tip_frame): Adjust x_figure_window_size call.
20608         * src/w32term.c (x_set_window_size): Add frame_size_history_add
20609         call.
20610         * src/widget.c (set_frame_size): Remove dead code.  Add
20611         frame_size_history_add call.  When frame_resize_pixelwise is t
20612         use FRAME_PIXEL_WIDTH and FRAME_PIXEL_HEIGHT instead of
20613         pixel_width and pixel_height.
20614         (update_various_frame_slots): Remove dead code.
20615         (EmacsFrameResize): Add more information in
20616         frame_size_history_add call.
20617         (EmacsFrameQueryGeometry): Round only when frame_resize_pixelwise
20618         is not set.
20619         * src/xdisp.c (redisplay_tool_bar): Set tool_bar_redisplayed bits.
20620         * src/xfns.c (x_set_menu_bar_lines): Change argument name.
20621         (x_change_tool_bar_height): Reset tool_bar_redisplayed and
20622         tool_bar_resized bits when adding tool bar.  Make inhibiting of
20623         frame resizing more discriminative.
20624         (Fx_create_frame): Handle x_width and x_height if set by
20625         x_figure_window_size.  Set size hints before adjusting frame size.
20626         (x_create_tip_frame): Adjust x_figure_window_size call.
20627         * src/xmenu.c (update_frame_menubar): Don't handle Lucid specially.
20628         (set_frame_menubar): On Lucid never add core-border-width to
20629         avoid that adding XtNinternalBorderWidth adds it again.
20630         (free_frame_menubar): Handle frame_inhibit_resize true for Motif.
20631         * src/xterm.c (x_new_font): In non-toolkit case handle size
20632         change of menu bar.
20633         (x_set_window_size_1): Fix calls to frame_size_history_add.
20634         (x_wm_set_size_hint): Remove dead code.  Set
20635         size_hints.min_width and size_hints.min_height to base_width and
20636         base_height.
20638 2015-10-13  Michael Albinus  <michael.albinus@gmx.de>
20640         * test/automated/file-notify-tests.el (file-notify--test-timeout):
20641         Add docstring.  Increase to 10 seconds for remote
20642         directories.  (Bug#21669)
20644 2015-10-12  Paul Eggert  <eggert@cs.ucla.edu>
20646         Unmacroize ebrowse.c and etags.c a bit
20648         * lib-src/ebrowse.c (READ_CHUNK_SIZE): Now an enum constant.
20649         (streq, filename_eq, set_flag, has_flag): Now inline functions.
20650         (set_flag): First arg is now an address, not an lvalue.
20651         All callers changed.
20652         (filename_eq, set_flag, has_flag):
20653         Rename from FILENAME_EQ, SET_FLAG, HAS_FLAG.
20654         All callers changed.
20655         * lib-src/etags.c (streq, strcaseeq, strneq, strncaseeq):
20656         Now inline functions.  Remove asserts that are unnecessary these
20657         days (and in some cases were too-generous anyway).
20659 2015-10-12  Mark Oteiza  <mvoteiza@udel.edu>
20661         Use highlight for current items
20663         * lisp/mpc.el (mpc-select-make-overlay, mpc-tagbrowser-all-select):
20664         Apply highlight face instead of region face.
20666 2015-10-12  Mark Oteiza  <mvoteiza@udel.edu>
20668         Search for more cover image names in MPC
20670         * lisp/mpc.el (mpc-format): Also look for .folder.jpg or folder.jpg
20671         case insensitively
20673 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
20675         Remove or comment out unused variables
20677         * src/w32fns.c (x_set_mouse_color): Comment out variables cursor,
20678         nontext_cursor, mode_cursor, hand_cursor and count.
20679         (x_change_tool_bar_height): Remove variable old_text_height.
20680         (deliver_wm_chars): Remove variable strip_Alt.
20681         (Fw32_shell_execute): Remove variable document_a.
20682         (Fw32_frame_geometry): Remove variable fullboth.
20683         * src/w32term.c (w32_setup_relief_color): Comment out variable
20684         w32_display_info.
20685         (w32_horizontal_scroll_bar_handle_click): Remove variables start, end.
20686         (w32_read_socket): Comment out variables rows, columns.
20687         * src/w32uniscribe.c (uniscribe_check_otf_1): Remove variable rest.
20689 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
20691         * src/w32proc.c (sys_select): Fix bitwise test.
20693 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
20695         Minor typo corrections in doc strings
20697         * lisp/menu-bar.el (popup-menu, popup-menu-normalize-position):
20698         Doc fixes.
20700 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
20702         * nt/INSTALL: Recommend MSYS Automake/Autoconf from ezwinports.
20704 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
20706         Attempt to avoid crashes in plist-member
20708         * src/fns.c (Fplist_member): Don't call QUIT between a CONSP test
20709         and a call to XCDR.  (Bug#21655)
20711 2015-10-12  Mike FABIAN  <mfabian@redhat.com>
20713         * lisp/select.el (gui-get-primary-selection): In
20714         gui-get-primary-selection use gui--selection-value-internal (Bug#20906)
20716 2015-10-12  Tassilo Horn  <tsdh@gnu.org>
20718         Support RTF in doc-view
20720         * lisp/doc-view.el (doc-view-set-doc-type): Add entry for RTF extension.
20722 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
20724         * src/w32fns.c (get_wm_chars): Increment counter, not pointer.
20726 2015-10-11  Nicolas Petton  <nicolas@petton.fr>
20728         Replace the usage of an obsolete function in auth-source.el
20730         * lisp/gnus/auth-source.el (auth-source-epa-make-gpg-token):
20731         Replace an usage of `epg-context-set-armor' with `setf'.
20733 2015-10-11  Nicolas Petton  <nicolas@petton.fr>
20735         * lisp/gnus/auth-source.el: Use sharp-quoting with functions.
20737 2015-10-11  Jay Belanger  <jay.p.belanger@gmail.com>
20739         Have calc-yank recognize numbers in different bases.
20741         * lisp/calc/calc-yank.el (math-number-regexp): New function.
20742         (calc-yank): Use `math-number-regexp' to recognize numbers.
20744 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
20746         Handle an opaque-move X11 window manager operation more efficiently
20748         * src/xterm.c (handle_one_xevent): If a ConfigureNotify event is
20749         followed by more ConfigureNotify events for the same window, process
20750         only the last one.
20752 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
20754         Fix cursor setting for tip frame; re-enable cursor generation
20756         * src/xfns.c (x_create_tip_frame): Include the cursor in the window
20757         attributes sent when creating the new X window.  Don't skip setting
20758         the pointerColor parameter.
20760 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
20762         Rewrite x_set_mouse_color to sync less
20764         We can track serial numbers of X requests and correlate error events
20765         with the associated requests.  This way we can identify errors for
20766         specific calls without having to use XSync after every one.
20768         * src/xfns.c (enum mouse_cursor): New type.
20769         (struct mouse_cursor_types, struct mouse_cursor_data): New types.
20770         (mouse_cursor_types): New array listing the Lisp variables and default
20771         cursor appearances for each cursor type.
20772         (x_set_mouse_color_handler): New function; checks error event serial
20773         number against submitted requests.
20774         (x_set_mouse_color): Updated to use the new error handler callback,
20775         and to be more table-driven, to simplify repetitious code.
20777 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
20779         Add x_catch_errors_with_handler
20781         * src/xterm.c (struct x_error_message_stack): Add new fields for a
20782         callback function and associated data pointer.
20783         (x_error_catcher): If the callback function is set, call it after
20784         saving the error message string.
20785         (x_catch_errors_with_handler): Renamed from x_catch_errors but now
20786         accepts a callback function and data pointer.
20787         (x_catch_errors): Now a wrapper function.
20788         * src/xterm.h (x_special_error_handler): New typedef.
20789         (x_catch_errors_with_handler): Declare.
20791 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
20793         Introduce x_uncatch_errors_after_check to reduce XSync calls
20795         Both x_had_errors_p and x_check_errors call XSync, so if they're
20796         immediately followed by x_uncatch_errors, its XSync call will be
20797         redundant, resulting in a wasted round trip to the X server.
20799         * src/xterm.c (x_uncatch_errors_after_check): New routine; a copy of
20800         x_uncatch_errors without the XSync call.
20801         (XTmouse_position, x_wm_supports):
20802         * src/xfns.c (x_set_mouse_color):
20803         * src/xmenu.c (Fx_menu_bar_open_internal):
20804         * src/xselect.c (x_own_selection, x_get_foreign_selection):
20805         (Fx_get_atom_name): Call it instead of x_uncatch_errors.
20806         * src/xterm.h (x_uncatch_errors_after_check): Declare.
20808 2015-10-10  Jay Belanger  <jay.p.belanger@gmail.com>
20810         Document the optional prefix to `calc-yank'
20812         * doc/misc/calc.texi (Yanking into the Stack): Document the optional
20813         prefix to `calc-yank'.
20814         * lisp/calc/calc-yank.el (calc-yank): Ensure that things killed from
20815         the Calc buffer are yanked back unchanged.
20817 2015-10-10  Mark Oteiza  <mvoteiza@udel.edu>
20819         * lisp/calendar/calendar.el: Display buffer before executing body.
20821         In each use of this macro, the modeline is derived from a window width
20822         calculation, which will be wrong if (display-buffer) splits the window
20823         horizontally.
20825 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
20827         Use ‘echo’ safely with ‘\’ or leading ‘-’
20829         POSIX says that ‘echo FOO’ produces implementation-defined output
20830         if FOO contains leading ‘-’, or ‘\’ anywhere, so don’t assume GNU
20831         behavior in that case.
20832         * Makefile.in (removenullpaths): Remove.
20833         (epaths-force): Rewrite to avoid the need for ‘echo’.
20834         (install-etc): Be clearer about escaping the shell metacharacters
20835         ‘\’ and ‘$’.
20836         * Makefile.in (install-arch-indep, install-etcdoc):
20837         * admin/charsets/mapconv, admin/merge-gnulib, admin/merge-pkg-config:
20838         * admin/quick-install-emacs, build-aux/gitlog-to-emacslog:
20839         * configure.ac, lib-src/rcs2log, make-dist:
20840         * src/Makefile.in (lisp.mk):
20841         Don’t assume ‘echo’ outputs ‘\’ and leading ‘-’ unscathed.
20842         For example, use ‘printf '%s\n' "$foo"’ rather than ‘echo "$foo"’
20843         if $foo can contain arbitrary characters.
20844         * lisp/Makefile.in (TAGS): Use ‘ls’, not ‘echo’, to avoid ‘\’ issues.
20845         * doc/lispref/two-volume.make (vol1.pdf):
20846         * test/etags/make-src/Makefile (web ftp publish):
20847         Use ‘printf’ rather than ‘echo -e’.
20849 2015-10-10  Kaushal Modi  <kaushal.modi@gmail.com>
20851         Allow numbers with different radixes to be yanked.
20853         * lisp/calc/calc-yank.el (calc-yank): Allow radixes besides the
20854         default base 10.
20856 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
20858         Improve CHECK_IMPURE and PURE_P speedup
20860         * src/data.c (Faset): Use XVECTOR and XSTRING rather than XPNTR.
20862 2015-10-10  Jay Belanger  <jay.p.belanger@gmail.com>
20864         Use events instead of chars to keep track of steps.
20866         * lisp/calc/calc-prog.el (calc-kbd-loop): Use events instead of chars
20867         to keep track of steps.
20869 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
20871         Fix --enable-gcc-warnings problem with older GCC
20873         * src/puresize.h: Add INLINE_HEADER_BEGIN, INLINE_HEADER_END.
20874         This is for building with --enable-gcc-warnings with
20875         GCC 4.6 through 5.0.
20877 2015-10-10  Eli Zaretskii  <eliz@gnu.org>
20879         Fix vertical-motion in truncated lines that end in a stretch
20881         * src/indent.c (Fvertical_motion): Expect overshoot when point is
20882         beyond window margin and lines are truncated, even if we have a
20883         stretch at point.  (Bug#21468)
20885 2015-10-10  Eli Zaretskii  <eliz@gnu.org>
20887         Avoid link-time errors due to inline functions
20889         * src/emacs.c: Include puresize.h, to avoid link-time errors in
20890         unoptimized builds due to PURE_P and CHECK_IMPURE, which are now
20891         inline functions.
20893 2015-10-10  Andreas Schwab  <schwab@linux-m68k.org>
20895         * src/data.c (Faset): Fix last change.
20897 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
20899         CHECK_IMPURE and PURE_P speedup
20901         * src/intervals.c (create_root_interval):
20902         Do CHECK_IMPURE only for strings; not needed for buffers.
20903         Prefer ! STRINGP to BUFFERP, for a tad more speed.
20904         * src/puresize.h (CHECK_IMPURE, PURE_P):
20905         Now inline functions instead of macros.
20906         (PURE_P): Don’t use XPNTR; that is now the caller’s responsibility.
20907         All callers changed.
20908         (CHECK_IMPURE): New argument PTR, to save us the work of running XPNTR.
20909         All callers changed.
20911 2015-10-09  Noah Friedman  <friedman@splode.com>
20913         (tramp-open-connection-setup-interactive-shell): Send -onlcr as well.
20915 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
20917         * lisp/progmodes/cc-mode.el (c-after-font-lock-init): Only *move*
20919         our after-change-function, rather than re-adding it if it was removed.
20921 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
20923         * lisp/cedet/ede: Silence some compiler warnings
20925         * lisp/cedet/ede.el: Require cl-lib.  Silence some compiler warnings.
20926         (ede-menu-obj-of-class-p): Use cl-some rather than `eval'.
20927         (ede-apply-object-keymap, ede-reset-all-buffers)
20928         (ede-auto-add-to-target): Use dolist.
20929         (ede-new, ede-flush-deleted-projects, ede-global-list-sanity-check):
20930         Use field names rather than initarg names in `oref'.
20931         (ede-load-project-file): Remove unused var `file'.
20932         (ede-map-any-target-p): Use cl-some rather than ede-map-targets.
20933         (ede-set): Remove unused var `a'.
20935         * lisp/cedet/ede/emacs.el: Silence some compiler warnings.
20936         (ede-project-autoload): Avoid the old-style "name" argument.
20937         (ede-emacs-find-matching-target): Use field names rather than initarg
20938         names in `oref'.
20940         * lisp/cedet/ede/linux.el: Silence some compiler warnings.
20941         (ede-linux-load, ede-project-autoload): Avoid the old-style
20942         "name" argument.
20943         (ede-linux-find-matching-target): Use field names rather than initarg
20944         names in `oref'.
20946 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
20948         * lisp/textmodes/reftex.el: Silence byte-compiler warnings.
20950 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
20952         * lisp/progmodes/prolog.el (prolog-smie-rules): Try and avoid
20953         indenting too far after ":-".
20955 2015-10-09  Eli Zaretskii  <eliz@gnu.org>
20957         Update case-table and categories of recently added characters
20959         * lisp/international/characters.el: Update information about Latin
20960         Extended-C, Latin Extended-D, Latin Extended-E, Cyrillic Extended,
20961         Georgian, Glagolitic, Deseret, Old Hungarian, and Warang Citi
20962         blocks.  (Byug#21654)
20964 2015-10-09  Martin Rudalics  <rudalics@gmx.at>
20966         * src/frame.c (adjust_frame_size): In minibuffer-only windows
20967         don't count minibuffer height twice.  (Bug#21643)
20969 2015-10-09  Eli Zaretskii  <eliz@gnu.org>
20971         Avoid inflooping in font-lock
20973         * lisp/font-lock.el (font-lock-extend-region-wholelines): Bind
20974         inhibit-field-text-motion around the call to
20975         line-beginning-position, to avoid inflooping.  (Bug#21615)
20977 2015-10-09  Tassilo Horn  <tsdh@gnu.org>
20979         Refactor duplicated code; ensure default is in completions
20981         * lisp/textmodes/reftex-cite.el (reftex--query-search-regexps):
20982         New function.
20983         (reftex-extract-bib-entries): Use it.
20984         (reftex-extract-bib-entries-from-thebibliography): Use it.
20986 2015-10-09  Vincent Belaïche  <vincentb1@users.sourceforge.net>
20988         * doc/misc/autotype.texi (Skeletons as Abbrevs): "if" -> "ifst"
20989         in the example.
20991 2015-10-08  Stefan Monnier  <monnier@iro.umontreal.ca>
20993         * lisp/calc/calc.el: Silence byte-compiler warnings.
20994         (calc-scan-for-dels): Use ignore-errors.
20995         (calc-dispatch, calc-do-dispatch): Make unused arg optional.
20996         (calc-read-key-sequence): Remove unused var `prompt2'.
20997         (calc-kill-stack-buffer): Remove unused var `buflist'.
20998         (calc): Remove unused var `oldbuf'.
20999         (calc-refresh): Use inhibit-read-only.
21000         (calc-can-abbrev-vectors): Declare.
21001         (calc-record): Remove unused var `mainbuf'.
21002         (math-sub-bignum): Remove unused var `sum'.
21003         (math-svo-c, math-svo-wid, math-svo-off): Declare.
21005 2015-10-08  Daiki Ueno  <ueno@gnu.org>
21007         Use g_clear_error instead of g_error_free
21009         * src/image.c: Define g_clear_error instead of g_error_free.
21010         (init_svg_functions): Resolve symbol g_clear_error instead of
21011         g_error_free.
21012         (svg_load_image): Use g_clear_error instead of g_error_free, to
21013         suppress GLib warnings when ERR is not set.  See bug#21641.
21015 2015-10-08  Paul Eggert  <eggert@cs.ucla.edu>
21017         * src/image.c (image_size_error): Simplify.
21019 2015-10-08  Paul Eggert  <eggert@cs.ucla.edu>
21021         Fix problems caught with --enable-gcc-warnings
21023         * src/image.c (lookup_rgb_color):
21024         * src/xfns.c (x_defined_color):
21025         * src/xterm.c (x_parse_color):
21026         Remove unused locals.
21028 2015-10-08  Jay Belanger  <jay.p.belanger@gmail.com>
21030         * lisp/calc/calc.el (calc-digit-start-entry): Fix typo.
21032 2015-10-08  Jay Belanger  <jay.p.belanger@gmail.com>
21034         Format initial input uniformly
21036         * lisp/calc/calc.el (calc-digit-start-entry): New function.
21037         * lisp/calc/calc.el (calcDigit-start):
21038         * lisp/calc/calc-aent.el (calc-alg-digit-entry):
21039         Use `calc-digit-start-entry' to format input.
21041 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
21043         Disable non-working pointerColor setting for X tooltip frame
21045         It generates a bunch of server traffic, but there's some bug wherein
21046         the new mouse cursor settings don't seem to get used.  In most
21047         situations the cursor isn't likely to be seen anyway, so it's not
21048         urgent to fix.
21050         * src/xfns.c (x_create_tip_frame): Don't set pointerColor.
21052 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
21054         Reduce some unnecessary X calls
21056         * src/xfns.c (x_real_pos_and_offsets): Remove a redundant XGetGeometry
21057         call.  If border width is wanted, get it from the XGetGeometry call
21058         instead of calling XGetWindowAttributes on the same window.  Skip some
21059         X calls if we've already detected an error from the X server.
21060         * src/xterm.c (x_wm_supports): Delete x_sync before x_had_errors_p.
21061         (handle_one_xevent): Delete XSync call before x_uncatch_errors.
21063 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
21065         Reduce color allocation/query traffic in the TrueColor case
21067         When working with an X visual with TrueColor class, pixel values can
21068         be generated from the RGB values according to mask value provided by
21069         the server on connection.  Some of the image-handling code was already
21070         doing this.
21072         * src/xterm.h (x_make_truecolor_pixel): New function; code taken from
21073         lookup_rgb_color.
21074         (x_mutable_colormap): New function.
21075         * src/image.c (lookup_rgb_color): Move pixel composition code to
21076         x_make_truecolor_pixel.
21077         (x_kill_gs_process): Call x_mutable_colormap.
21078         * src/xfaces.c (x_free_colors, x_free_dpy_colors): Call
21079         x_mutable_colormap.
21080         * src/xftfont.c (xftfont_get_colors): Call x_query_colors.
21081         * src/xterm.c (x_query_colors): For a TrueColor display, decompose the
21082         pixel value into RGB values directly, and don't send a request to the
21083         server.
21084         (x_alloc_nearest_color): For a TrueColor display, construct the pixel
21085         value with x_make_truecolor_pixel.
21086         (x_copy_color): For an immutable color map, just return the provided
21087         pixel value.
21089 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
21091         Cache XParseColor results in the X display info structure
21093         With repeated lookups of foreground and background colors for multiple
21094         faces per frame, we issue a lot of redundant color name lookups to the
21095         X server, waiting every time for the response.  On a remote network
21096         with, say, 30ms round-trip time, this can add nearly a full second to
21097         creation of a new frame.
21099         * src/gtkutil.c (xg_check_special_colors): Call x_parse_color.
21100         * src/image.c (get_spec_bg_or_alpha_as_argb):
21101         (xpm_init_color_cache, xpm_lookup_color):
21102         * src/xfns.c (x_defined_color):
21103         * src/xterm.c (x_parse_color): New function; caches color names not
21104         starting with "#" in the display-info structure.
21105         (x_delete_display): Delete the cache content.
21106         * src/xterm.h (struct color_name_cache_entry): New type.
21107         (x_parse_color): Declare.
21108         (struct x_display_info): Add a new field for the cache.
21110 2015-10-07  Stefan Monnier  <monnier@iro.umontreal.ca>
21112         * src/syntax.c (syms_of_syntax): Make syntax-propertize--done local.
21114 2015-10-07  Eli Zaretskii  <eliz@gnu.org>
21116         Fix segfault in image_size_error
21118         * src/image.c (image_size_error): Pass a Lisp string to
21119         image_error, not a C string.  (Bug#21641)
21121 2015-10-07  Simen Heggestøyl  <simenheg@gmail.com>
21123         Highlight CSS variable definitions
21125         * lisp/textmodes/css-mode.el (css-nmstart-re): Tweak regexp to accept
21126         CSS variables.  (Bug#21638)
21128 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
21130         * test/automated/tabulated-list-test.el: New file.
21131         Test bug#21639 and some basic functionality.
21133 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
21135         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-sort):
21136         Check if column can be sorted before trying.  (Bug#21639)
21138 2015-10-07  Nicolas Richard  <youngfrog@members.fsf.org>
21140         Add test for `self-insert-command' (bug#21633)
21142         * test/automated/cmds-tests.el: New file.
21144 2015-10-07  Martin Rudalics  <rudalics@gmx.at>
21146         * src/window.c (resize_frame_windows): Don't set root window's
21147         top position when resizing horizontally.
21149 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
21151         * lisp/progmodes/prog-mode.el (prettify-symbols-alist):
21152         Document more possible values.
21154 2015-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
21156         * lisp/textmodes/tex-mode.el: Use lexical-binding.
21158 2015-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
21160         * lisp/indent.el (indent--default-inside-comment): New function.
21161         (indent-for-tab-command): Use it for `noindent' indentation.
21163 2015-10-06  Paul Eggert  <eggert@cs.ucla.edu>
21165         Fix bug in GC_CHECK_MARKED_OBJECTS check
21167         * src/alloc.c (mark_object): Fix bug in checking code.
21168         When GC_CHECK_MARKED_OBJECTS is defined, the bug caused
21169         CHECK_ALLOCATED_AND_LIVE_SYMBOL to repeatedly do the
21170         CHECK_ALLOCATED and CHECK_LIVE tests for the first symbol in each
21171         bucket.  The bug did not affect behavior either in the normal case
21172         where GC_CHECK_MARKED_OBJECTS is not defined, or where Emacs does
21173         not have an internal error that a properly-written
21174         CHECK_ALLOCATED_AND_LIVE_SYMBOL would detect.
21176 2015-10-06  Tassilo Horn  <tsdh@gnu.org>
21178         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
21179         Add prettified version for \\Bbb{Q}.
21181 2015-10-06  Artur Malabarba  <bruce.connor.am@gmail.com>
21183         * test/automated/package-test.el (package-test-install-single):
21184         Add a test for bug#21625.
21186 2015-10-06  Aaron Ecay  <aaronecay@gmail.com>
21188         * lisp/emacs-lisp/package.el (package-install): Fix error when pkg is
21189           not a package-desc object.  Also clarify documentation.  (Bug#21625)
21191 2015-10-06  Eli Zaretskii  <eliz@gnu.org>
21193         Fix display of characters adjacent to ZWJ and ZWNJ
21195         * src/bidi.c (bidi_resolve_neutral): Treat all Bn (a.k.a. "control")
21196         characters the same as directional formatting controls.
21197         (bidi_level_of_next_char): Include all Bn characters in rule L1,
21198         as mandated by the UBA.
21200 2015-10-06  Andreas Schwab  <schwab@suse.de>
21202         * src/cmds.c (Fself_insert_command): Don't use XFASTINT on a negative
21203         number.  (Bug#21633)
21205 2015-10-05  Xue Fuqiao  <xfq.free@gmail.com>
21207         * doc/lispref/objects.texi (Window Type): Add a cross reference.
21209         * src/buffer.c (syms_of_buffer): Typo fix.  (Bug#21622)
21211 2015-10-05  Eli Zaretskii  <eliz@gnu.org>
21213         * lisp/language/misc-lang.el (composition-function-table):
21214         Fix entries for Arabic and Syriac.
21216 2015-10-05  Damien Cassou  <damien@cassou.me>
21218         Add first unit tests for auth-source.el
21220         * test/automated/auth-source-tests.el: New file.
21222 2015-10-05  Eli Zaretskii  <eliz@gnu.org>
21224         Remove redundant redisplay code
21226         * src/xdisp.c (redisplay_internal, try_cursor_movement)
21227         (try_window_reusing_current_matrix, try_window_id): Remove
21228         redundant restrictions on redisplay optimizations based on the
21229         frame's 'redisplay' flag.  See
21230         http://osdir.com/ml/general/2015-10/msg02110.html for the relevant
21231         discussions.
21233 2015-10-04  Stefan Monnier  <monnier@iro.umontreal.ca>
21235         * src/xdisp.c (windows_or_buffers_changed): Improve docstring.
21237 2015-10-04  Xue Fuqiao  <xfq.free@gmail.com>
21239         Update tutorials/TUTORIAL.cn
21241         * etc/tutorials/TUTORIAL.cn: Improve translation.
21243 2015-10-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
21245         * src/macfont.m (macfont_encode_char, syms_of_macfont):
21246         Remove unused vars.
21248 2015-10-04  Stefan Merten  <stefan@merten-home.de>
21250         Pull in version numbers from rst.el upstream release.
21252         * lisp/textmodes/rst.el (rst-cvs-header, rst-svn-rev)
21253         (rst-svn-timestamp, rst-official-version)
21254         (rst-official-cvs-rev, rst-package-emacs-version-alist):
21255         Update version numbers.
21257 2015-10-04  Eli Zaretskii  <eliz@gnu.org>
21259         * test/automated/coding-tests.el: New file.
21261 2015-10-04  Michael Albinus  <michael.albinus@gmx.de>
21263         Improve XEmacs compatibility of Tramp
21265         * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
21266         Declare if it doesn't exist.
21267         (file-remote-p): Remove defalias, which was necessary for GNU Emacs 21.
21268         (redisplay): Make it an alias if it doesn't exist.
21270         * lisp/net/tramp.el (tramp-get-remote-tmpdir): Don't use
21271         `file-remote-p' (due to XEmacs compatibility).
21273         * lisp/net/trampver.el (locate-dominating-file)
21274         (tramp-compat-replace-regexp-in-string): Autoload.
21275         (tramp-repository-get-version): Do not dupe byte-compiler.
21277 2015-09-02  K. Handa  <handa@gnu.org>
21279         fix for the case that M17N_FLT_USE_NEW_FEATURE is not defined
21281         * src/ftfont.c (ftfont_drive_otf) [not M17N_FLT_USE_NEW_FEATURE]:
21282         Adjusted for the change of type of elements in the array
21283         MFLTGlyphString.glyphs.
21285 2015-10-04  Eli Zaretskii  <eliz@gnu.org>
21286             Michael Heerdegen  <michael_heerdegen@web.de>
21288         shr: fix too long lines in rendered buffers (Bug#21012)
21290         * lisp/net/shr.el (shr-insert-document, shr-fill-text):
21291         Correct calculation of available width.
21292         (shr-find-fill-point): Don't overflow window edge if shr-kinsoku-shorten
21293         is nil.
21295 2015-10-04  Vincent Belaïche  <vincentb1@users.sourceforge.net>
21297         Restore blank line before next section, erroneously erased
21298         in my previous commit
21300         * etc/compilation.txt (symbol ant): Add an additional trailing blank
21301         line to this section, so that there are two of them immediately before
21302         the next section.
21304 2015-10-04  Vincent Belaïche  <vincentb1@users.sourceforge.net>
21306         Support MSW filename style for ant compilation error regexp
21308         * etc/compilation.txt (symbol ant):
21309         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
21310         Support MSW filename style.
21312 2015-10-03  Paul Eggert  <eggert@cs.ucla.edu>
21314         * nt/INSTALL: Minor spelling and quote fixes.
21316         * lisp/ibuffer.el: Fix docstring length (Bug#21541).
21318 2015-10-03  Simen Heggestøyl  <simenheg@gmail.com>
21320         Maintain ordering of JSON object keys by default
21322         * lisp/json.el (json-object-type): Mention order handling in doc-string.
21323         (json--plist-reverse): New utility function.
21324         (json-read-object): Maintain ordering for alists and plists.
21325         (json-pretty-print): Ensure that ordering is maintained.
21327         * test/automated/json-tests.el (test-json-plist-reverse): New test for
21328         `json--plist-reverse'.
21329         (json-read-simple-alist): Update test to accommodate for changes in
21330         `json-read-object'.
21332         * etc/NEWS: Document the new behavior of the pretty printing functions.
21334 2015-10-03  Andreas Schwab  <schwab@linux-m68k.org>
21336         * src/coding.c (complement_process_encoding_system): Revert last change.
21338 2015-10-03  Ulf Jasper  <ulf.jasper@web.de>
21340         * admin/MAINTAINERS: Add entry for Ulf Jasper.
21342 2015-10-03  Xue Fuqiao  <xfq.free@gmail.com>
21344         Doc fix for `defmacro'
21346         * doc/lispref/objects.texi (Macro Type): `defmacro' is a macro now.
21348 2015-10-03  Andreas Schwab  <schwab@linux-m68k.org>
21350         More validatation of coding systems
21352         * src/fileio.c (Finsert_file_contents): Remove redundant
21353         coding-system check.
21354         (choose_write_coding_system): Likewise.
21355         * src/coding.c (complement_process_encoding_system): Check argument
21356         for valid coding system.
21358 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
21360         Avoid crashes in coding_inherit_eol_type
21362         * src/coding.c (coding_inherit_eol_type): Check the validity of
21363         the arguments.  Suggested by Andreas Schwab <schwab@linux-m68k.org>.
21364         (Bug#21602)
21366 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
21368         More validatation of coding system in 'write-region'
21370         * src/coding.c (choose_write_coding_system): More validation of
21371         coding-system from various sources.  Suggested by Andreas Schwab
21372         <schwab@linux-m68k.org>.  (Bug#21602)
21374 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
21376         Avoid crashes due to invalid coding-system
21378         * src/fileio.c (choose_write_coding_system)
21379         (Finsert_file_contents): Check validity of coding-system-for-write
21380         and coding-system-for-read bound by the caller.  (Bug#21602)
21382 2015-10-03  Tassilo Horn  <tsdh@gnu.org>
21384         Adapt to new prettify-symbols-unprettify-at-point default
21386         * etc/NEWS: Mention that unprettication of symbol at point is off
21387         by default.
21389 2015-10-03  Tassilo Horn  <tsdh@gnu.org>
21391         Revert my two recent process.c changes
21393         Revert "Improve last commit to process.c" and "Remove callback-handled
21394         channels from Available set" because they did not fix bug#21313.
21396         This reverts commits bfa1aa8e2bdaf14adbbf1e9e824051d3f740694c and
21397         27f871907cc24f33a7d12ac3a4ab71a88f0bc554.
21399 2015-10-02  Markus Triska  <triska@metalevel.at>
21401         * lisp/progmodes/prolog.el: Update and extend operator table.
21402         (prolog-smie-grammar): Add multifile, public etc.
21404 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
21406         Allow autogen even when Git is not installed
21408         * autogen.sh: Test ‘git status’ before trying to use Git.
21410 2015-10-02  Stefan Monnier  <monnier@iro.umontreal.ca>
21412         * lisp/vc/vc-git.el (vc-git-region-history): Handle local changes.
21413         Adjust lto/lfrom when we have uncommitted changes.
21415 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
21417         Fix problems found by clang 3.5.0
21419         * src/cmds.c (Fdelete_char): Don’t assume XINT returns int.
21420         * src/font.c (font_parse_family_registry):
21421         Use &"str"[X] instead of "str"+X, to pacify clang -Wstring-plus-int.
21423 2015-10-02  Eli Zaretskii  <eliz@gnu.org>
21425         * nt/INSTALL: Update instructions for running autogen.sh.
21427         * nt/INSTALL: Point to ezwinports for libXpm binaries.
21429 2015-10-02  Daniel Colascione  <dancol@dancol.org>
21431         Fix winner in cl-lib not loaded case
21433         * lisp/winner.el (winner-change-fun): Don't use cl-lib functions
21434         without requiring CL
21436 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
21438         Fix a few problems with directed quotes
21440         This is in response to a problem report by Kaushal Modi in:
21441         http://bugs.gnu.org/21588#25
21442         * lisp/cedet/mode-local.el (describe-mode-local-overload):
21443         * lisp/emacs-lisp/bytecomp.el (byte-compile-fix-header):
21444         * lisp/info-xref.el (info-xref-check-all-custom):
21445         * lisp/mail/emacsbug.el (report-emacs-bug-hook):
21446         Prefer directed to undirected single quotes in diagnostics.
21448 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
21450         Revert "Attempt to fix slow redisplay caused by last changes"
21452         * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
21453         (try_cursor_movement): Don't relax requirements for redisplay
21454         optimizations for the selected frame.  (Bug#21597)
21456         This reverts commit c4c1fb97727ff52bcfa83ad5ed94a64a93d12e59.
21458 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
21460         Fix slow redisplay when daemon frame exists
21462         * src/xdisp.c (redisplay_internal): Don't consider daemon frames
21463         when looking for frames that need to be redisplayed.  (Bug#21597)
21465 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
21467         Attempt to fix slow redisplay caused by last changes
21469         * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
21470         (try_cursor_movement): Relax requirements for redisplay
21471         optimizations for the selected frame.  (Bug#21597)
21473 2015-10-01  Stephen Leake  <stephen_leake@stephe-leake.org>
21475         * src/dired.c (Ffile_name_completion, Ffile_name_all_completions):
21476         Improve doc string.
21478 2015-10-01  Stephen Leake  <stephen_leake@stephe-leake.org>
21480         * lisp/minibuffer.el (minibuffer-completion-help):
21481         Set default base-size, in case completion table does not set it.
21483 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
21485         Fix GUD display of GDB output with non-ASCII text
21487         * lisp/progmodes/gdb-mi.el (gdb-mi-decode-strings): New defcustom.
21488         (gdb-mi-decode): New function.
21489         (gud-gdbmi-marker-filter): If gdb-mi-decode-strings is non-nil,
21490         decode octal escapes in GDB output.  (Bug#21572)
21492 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
21494         * nt/INSTALL: Document where to find XPM support files.
21496 2015-10-01  Tassilo Horn  <tsdh@gnu.org>
21498         Un- and re-prettification are not exclusive
21500         * lisp/progmodes/prog-mode.el (prettify-symbols--post-command-hook):
21501         Re-apply prettification to previous symbol also when unprettifying
21502         next one.
21504 2015-10-01  Tassilo Horn  <tsdh@gnu.org>
21506         Don't unprettify symbol at point by default
21508         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
21509         Default to disabled (nil).
21511 2015-09-30  Artur Malabarba  <bruce.connor.am@gmail.com>
21513         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
21514         Support unprettifying when point is after a symbol.
21516         * etc/NEWS: Document `prettify-symbols-unprettify-at-point'.
21518 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
21520         Avoid assertion violations in push_prefix_prop
21522         * src/xdisp.c (push_prefix_prop): Avoid assertion violations when
21523         a line that has a line-prefix defined starts with an image.  (Bug#21428)
21525 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
21527         Disable some display optimizations when frames need redisplay
21529         These optimizations were previously disabled by the
21530         windows_or_buffers_changed flag, which now is not set
21531         when only some frames need to be redrawn.
21532         * src/xdisp.c (redisplay_internal): Redisplay any frame whose
21533         'redisplay' flag is set.
21534         (try_window_reusing_current_matrix, try_window_id)
21535         (try_cursor_movement): Disable these optimizations when the
21536         frame's 'redisplay' flag is set.
21538 2015-09-30  Tassilo Horn  <tsdh@gnu.org>
21540         Don't modify buffer by unprettification
21542         * lisp/progmodes/prog-mode.el (prettify-symbols--compose-symbol):
21543         (prettify-symbols--post-command-hook, prettify-symbols-mode): Don't
21544         modify buffer when setting/removing custom prettify-symbols-start/end
21545         text properties.  Add them to font-lock-extra-managed-props, too.
21547 2015-09-30  Stefan Monnier  <monnier@iro.umontreal.ca>
21549         Try to avoid redisplaying all frames when creating a new one
21551         * src/xfns.c (x_set_menu_bar_lines, x_change_tool_bar_height):
21552         * src/xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
21553         (Finternal_set_lisp_face_attribute, update_face_from_frame_parameter):
21554         * src/frame.c (x_set_screen_gamma): Set the specific frame's
21555         `redisplay' bit rather than windows_or_buffers_changed.
21557         * src/window.c (apply_window_adjustment): Remove redundant setting of
21558         windows_or_buffers_changed.
21560         * src/xdisp.c (redisplay_internal): Set the specific frame's
21561         `redisplay' bit rather than update_mode_lines in response to
21562         cursor_type_changed.
21563         (syms_of_xdisp): Use hash-tables for redisplay_*_cause tables.
21564         (AINC): Adjust accordingly.
21566 2015-09-30  Tassilo Horn  <tsdh@gnu.org>
21568         Implement unprettification of symbol at point
21570         * lisp/progmodes/prog-mode.el: Implement feature for unprettifying the
21571         symbol at point.
21572         (prettify-symbols--current-symbol-bounds): New variable.
21573         (prettify-symbols--post-command-hook): New function.
21574         (prettify-symbols-unprettify-at-point): New defcustom.
21575         (prettify-symbols-mode): Use it.
21576         (prettify-symbols--compose-symbol): Use them.
21578 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
21580         * src/macfont.m (mac_font_descriptor_supports_languages):
21581         Regard "zh" as synonym of "zh-Hans".
21583 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
21585         Work around crash when displaying etc/HELLO on OS X 10.11
21587         * src/macfont.m (mac_font_get_weight)
21588         (mac_font_descriptor_get_adjusted_weight): New functions.
21589         (macfont_store_descriptor_attributes): Adjust weight.
21591 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
21593         * src/macfont.m: Fix compilation with USE_CT_GLYPH_INFO.
21595 2015-09-30  Nicolas Petton  <nicolas@petton.fr>
21597         * lisp/arc-mode.el (archive-rar-summarize): Better alignment
21598         of the columns.
21600 2015-09-30  Nicolas Petton  <nicolas@petton.fr>
21602         Use unar and lsar to handle RAR archives in arc-mode
21604         * lisp/arc-mode.el (archive-rar-extract, archive-extract-by-file): Rely
21605         on unar and lsar instead of unrar-free for RAR archives (bug#17663).
21607 2015-09-30  Wieland Hoffmann  <themineo@gmail.com>  (tiny change)
21609         Clarify :create in auth-source's docs
21611         * lisp/gnus/auth-source.el (auth-source-search):
21612         Clarify :create's meaning.
21614 2015-09-30  Phil Sainty  <psainty@orcon.net.nz>
21616         Avoid empty -path arguments in rgrep
21618         * lisp/progmodes/grep.el (rgrep-default-command): Remove nil from
21619         the list produced according to grep-find-ignored-directories,
21620         before passing it to Find/Grep invocation.  (Bug#21548)
21622 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
21624         Clarify documentation of pos-visible-in-window-p
21626         * src/window.c (Fpos_visible_in_window_p): Clarify the meaning of
21627         t for POS.  See
21628         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg01040.html
21629         for the original report.
21631         * doc/lispref/windows.texi (Window Start and End): Clarify the
21632         meaning of t for the POSITION argument of pos-visible-in-window-p.
21634 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
21636         * lisp/progmodes/prolog.el: Fix various indentation cases.
21637         (prolog-operator-chars): New const (add \\).
21638         (prolog-smie-forward-token, prolog-smie-backward-token): Use it.
21639         (prolog-smie-rules): Add rules according to bug#21526.
21641 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
21643         * lisp/progmodes/sh-script.el: Old "dumb" continued line indent.
21644         (sh-indent-after-continuation): Add new value `always' (bug#17620)
21645         (sh-smie-sh-rules): Remove old handling of continued lines.
21646         (sh-smie--indent-continuation): New function.
21647         (sh-set-shell): Use it.
21649 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
21651         * lisp/progmodes/octave.el: Use grammar more; Handle enumeration fun.
21652         Remove redundant :group keyword args.
21653         (octave-begin-keywords, octave-else-keywords, octave-end-keywords):
21654         Remove variables.
21655         (octave-operator-table, octave-smie-bnf-table): Use let-when-compile to
21656         turn them into compile-time variables.
21657         Auto-generate the "foo ... end" rules from the "foo ... endfoo" rules.
21658         Add rules for break, continue, return, global, and persistent.
21659         Refine the rule for "until".
21660         (octave-smie--funcall-p, octave-smie--end-index-p)
21661         (octave-smie--in-parens-p): New functions.
21662         (octave-smie-backward-token, octave-smie-forward-token): Use them to
21663         distinguish the "enumeration" function and the "end" index from
21664         their corresponding keywords.
21665         (octave--block-offset-keywords): New constant.
21666         (octave-smie-rules): Use it.  Adjust rules for new global/persistent
21667         parsing.
21668         (octave-reserved-words): Redefine using octave-smie-grammar.
21669         (octave-font-lock-keywords): Use octave-smie--funcall-p and
21670         octave-smie--end-index-p.
21672 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
21674         * lisp/emacs-lisp/lisp-mode.el (let-when-compile): Work like let*.
21676 2015-09-29  Eli Zaretskii  <eliz@gnu.org>
21678         * nt/INSTALL: Remove references to GTK site.
21679         That site no longer offers Windows downloads.
21681 2015-09-29  Eli Zaretskii  <eliz@gnu.org>
21683         * nt/INSTALL: Add instructions for installing Git.
21685 2015-09-29  Katsumi Yamaoka  <yamaoka@jpl.org>
21687         * lisp/net/shr.el (shr-colorize-region): Allow 88-color tty to
21688         use colors.  Suggested by Eli Zaretskii.
21690 2015-09-28  Katsumi Yamaoka  <yamaoka@jpl.org>
21692         * lisp/net/shr.el (shr-colorize-region): Don't do it on a system
21693         not supporting 256 above colors (bug#21557).
21695 2015-09-28  Dmitry Gutov  <dgutov@yandex.ru>
21697         Revert "Don't rely on defaults in decoding UTF-8 encoded Lisp files"
21699         This reverts commit db828f62f6f17414fbbc3206dac123dc73dd6055.
21701 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
21703         Add documentation for seq.el
21705         * doc/lispref/sequences.texi: Add documentation regarding extending
21706         seq.el, as well as missing documentation for seq-elt, seq-length, seq-p,
21707         seq-do and seq-map.
21709 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
21711         Better documentation for seq-some
21713         * doc/lispref/sequences.texi:
21714         * lisp/emacs-lisp/seq.el: Update the documentation of seq-some to
21715         guarantee that the returned value is the first non-nil value that
21716         resulted from applying the predicate.
21718 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
21720         * lisp/arc-mode.el: Sharp-quote function arguments.
21722 2015-09-28  Eli Zaretskii  <eliz@gnu.org>
21724         Avoid redisplay error in ediff-regions-wordwise
21726         * lisp/vc/ediff-util.el
21727         (ediff-clone-buffer-for-region-comparison): Make sure the mark is
21728         set before activating it.  (Bug#21567)
21730 2015-09-28  Eli Zaretskii  <eliz@gnu.org>
21732         Another attempt to fix crashes due to prematurely freed faces
21734         * src/xdisp.c (redisplay_internal): Inhibit freeing of realized
21735         faces for as long as we might have desired matrices that reference
21736         those faces.  (Bug#21428)
21738 2015-09-28  Tassilo Horn  <tsdh@gnu.org>
21740         Add auctex development list email address
21742 2015-09-28  Tassilo Horn  <tsdh@gnu.org>
21744         * admin/MAINTAINERS: Add entries for AUCTeX team and myself.
21746 2015-09-28  Arash Esbati  <esbati@gmx.de>  (tiny change)
21748         Improve wrapfig package support and caption parsing
21750         * lisp/textmodes/reftex-vars.el (reftex-label-alist-builtin):
21751         Correct description string and add wraptable environment.
21752         (reftex-default-context-regexps): Improve caption regexp.
21754 2015-09-28  Anders Lindgren  <andlind@gmail.com>
21756         Respect value of frame_resize_pixelwise when handling fullscreen state
21758         * src/nsterm.m (handleFS): Respect frame_resize_pixelwise when
21759         setting size increments.
21761 2015-09-27  Michael Albinus  <michael.albinus@gmx.de>
21763         * src/gfilenotify.c (Fgfile_add_watch): Cleanup temporary variable.
21765 2015-09-27  Simen Heggestøyl  <simenheg@gmail.com>
21767         Add prettify-symbols-alist for js-mode
21769         * lisp/progmodes/js.el (js--prettify-symbols-alist): New defconst.
21770         (js-mode): Use it.
21772 2015-09-27  Eli Zaretskii  <eliz@gnu.org>
21774         * nt/subdirs.el: File deleted (no longer used).
21776 2015-09-26  Alan Mackenzie  <acm@muc.de>
21778         Fix follow-scroll-up/down, making them replacements for scroll-up/down
21780         1. Allow point to move between follow windows in scroll operations.
21781         2. Fix bug where `right-char' just before EOB caused spurious scrolling,
21782         when EOB was isolated in the last follow window.
21784         * lisp/follow.el (follow-fixed-window): New variable.
21785         (follow-get-scrolled-point): New function.
21786         (follow-scrol-up, follow-scroll-down): Add autoload cookies.
21787         Reformulate the code.  Put `scroll-command' properties on the functions.
21788         Correct minor errors in ...-down's doc string and code.
21789         (follow-calc-win-end): Amend incomplete doc string.  Use
21790         `pos-visible-in-window-p' to check whether EOB is in the window.
21791         (follow-estimate-first-window-start): Correct an off-by-1 error.
21792         (follow-adjust-window): Add handling for explicit scrolling operations.
21794 2015-09-26  Paul Eggert  <eggert@cs.ucla.edu>
21796         * admin/MAINTAINERS: Add self, plus list some more files
21797         sans maintaners.
21799 2015-09-26  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
21801         New DWIM commands for changing letter-case
21803         * lisp/simple.el (upcase-dwim, downcase-dwim, capitalize-dwim):
21804         New functions.  (Bug#21501)
21806 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
21808         * etc/PROBLEMS: Document problems with pasting on MS-Windows.
21810 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
21812         Make face realization be more frame-specific
21814         * src/frame.h (struct f): New flag face_change.
21815         * src/xfaces.c (Finternal_make_lisp_face)
21816         (Finternal_copy_lisp_face, Finternal_set_lisp_face_attribute)
21817         (update_face_from_frame_parameter): Set the face_change flag only
21818         for the frame whose faces are affected.
21819         * src/xdisp.c (init_iterator): If a frame's face_change flag is
21820         set, free faces only on that frame.
21821         (redisplay_internal): Disable "display optimization 1" if the
21822         frame's face_change flag is set.
21823         (redisplay_window): Don't allow skipping a window's redisplay if
21824         its frame's face_change flag is set.
21825         * src/frame.c (x_set_screen_gamma): Instead of calling
21826         Fclear_face_cache, call clear_face_cache and set
21827         windows_or_buffers_changed to a non-zero value.  This avoids
21828         setting the global face_change flag that triggers face realization
21829         on all frames and thorough redisplay of all of them.
21831         * lisp/term/tty-colors.el (tty-register-default-colors): Don't
21832         clear face cache if the selected frame is a GUI frame.
21834 2015-09-26  Tassilo Horn  <tsdh@gnu.org>
21836         Remove font-latex specific check
21838         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
21839         Use syntax-ppss data to identify verbatim contents.
21841 2015-09-25  Tassilo Horn  <tsdh@gnu.org>
21843         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
21844         Fix some false negatives.
21846 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
21848         Reorder Windows version in Emacs manifests
21850         * nt/emacs-x64.manifest:
21851         * nt/emacs-x86.manifest: Reorder Windows version from lowest to
21852         highest.
21854 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
21856         Update Emacs manifest files for Windows 10
21858         * nt/emacs-x86.manifest:
21859         * nt/emacs-x64.manifest: Declare compatibility with Windows 10.
21861 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
21863         Avoid non-ASCII decoding errors in C src files
21865         * src/nsterm.m:
21866         * src/lisp.h:
21867         * src/editfns.c:
21868         * src/doprnt.c: Add 'coding' cookies -- these files include
21869         Unicode characters and should be decoded as UTF-8.
21871 2015-09-25  Alan Mackenzie  <acm@muc.de>
21873         Resurrect edebug-set-initial-mode, repurposing it to set the global mode
21875         * lisp/emacs-lisp/edebug.el (edebug-initial-mode-alist): Uncomment, and
21876         amend to match current modes and functions.
21877         (edebug-set-initial-mode): Uncomment and change from setting a defun's
21878         `edebug-initial-mode''s property to setting the variable
21879         `edebug-initial-mode'.
21880         (top level): Create new binding C-x C-a C-m for
21881         `edebug-set-initial-mode'.
21883         * doc/lispref/edebug.texi (Edebug Execution Modes): Document
21884         `edebug-set-initial-mode' and its new key binding.
21885         (Edebug Options): Mention the new command in the pertinent place.
21887         * etc/NEWS: Write entry for this change.
21889 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
21891         Avoid non-ASCII decoding errors in Texinfo files
21893         * doc/misc/tramp.texi:
21894         * doc/lispref/strings.texi:
21895         * doc/lispref/positions.texi:
21896         * doc/lispref/help.texi:
21897         * doc/lispref/functions.texi:
21898         * doc/lispintro/emacs-lisp-intro.texi:
21899         * doc/emacs/text.texi:
21900         * doc/emacs/modes.texi:
21901         * doc/emacs/mini.texi:
21902         * doc/emacs/display.texi:
21903         * doc/emacs/custom.texi:
21904         * doc/emacs/basic.texi: Add 'coding' cookies -- these files use
21905         Unicode characters and should be decoded as UTF-8.
21906         * doc/lispref/frames.texi (Size Parameters): Don't use a non-ASCII
21907         apostrophe unnecessarily.
21909 2015-09-25  Paul Eggert  <eggert@cs.ucla.edu>
21911         Merge from gnulib
21913         This incorporates:
21914         2015-09-25 c-ctype: rewrite to use inline functions
21915         2015-09-24 maint: add coding cookies to non-ASCII sources
21916         2015-09-24 gitlog-to-changelog: trim only trailing whitespaces
21917         * build-aux/gitlog-to-changelog, doc/misc/texinfo.tex:
21918         * lib/acl-internal.c, lib/acl-internal.h, lib/c-ctype.c:
21919         * lib/c-ctype.h, lib/get-permissions.c, lib/qcopy-acl.c:
21920         * lib/set-permissions.c:
21921         Copy from gnulib.
21923 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
21925         Update publicsuffix.txt from upstream
21927         * etc/publicsuffix.txt: Update from
21928         https://publicsuffix.org/list/effective_tld_names.dat
21929         dated 2015-09-24 17:29:21 UTC.
21931 2015-09-24  Eli Zaretskii  <eliz@gnu.org>
21933         Prevent timers from messing up TTY menus
21935         * src/term.c (tty_menu_activate): Inhibit redisplay for as long as
21936         the TTY menu is open.  (Bug#21530)
21938 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
21940         No need to mention K&R C in c-mode intro
21942 2015-09-24  Stefan Monnier  <monnier@iro.umontreal.ca>
21944         Fix recent bootstrap problems
21946         * src/syntax.c (parse_sexp_propertize): Fix last fix.
21947         * lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): Fix paren typo.
21948         * lisp/emacs-lisp/lisp-mode.el: Require cl-lib for cl-progv.
21950 2015-09-24  Michael Albinus  <michael.albinus@gmx.de>
21952         * src/gfilenotify.c (Fgfile_add_watch): Decrease polling rate.
21954 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
21956         Properly quote nested xml comments (Bug#6267) (Bug#20001)
21958         * lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): New function.
21959         (nxml-mode): Set comment-quote-nested-function.
21961 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
21963         Allow major-modes full control over quoting nested comments
21965         * lisp/newcomment.el (comment-quote-nested-function): New variable.
21966         (comment-quote-nested-default): New function.
21967         (comment-quote-nested): Use `comment-quote-nested-function'.
21969 2015-09-23  Paul Eggert  <eggert@cs.ucla.edu>
21971         Prefer CALLN in a few more places
21973         * src/macfont.m (macfont_set_family_cache):
21974         * src/nsterm.m (append2):
21975         * src/xterm.c (x_cr_export_frames):
21976         Prefer CALLN to allocating the arg arrays by hand.
21978 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
21980         Adapt file-notify-test02-events test case
21982         * test/automated/file-notify-tests.el (file-notify-test02-events):
21983         Create a new watch for every test.
21985 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
21987         Continue gfilenotify.c implementation of missing parts
21989         * lisp/filenotify.el (file-notify-add-watch): Append `flags' to
21990         `gfile-add-watch' call.
21991         (file-notify-rm-watch): Modify `file-notify-descriptors' only
21992         after calling the low level functions.
21994         * src/gfilenotify.c (dir_monitor_callback): Check, whether
21995         event_type is expected.
21996         (Fgfile_add_watch): Allow also `change'and `attribute-change' for FLAGS.
21997         (Fgfile_rm_watch): Fix typo.
21998         (syms_of_gfilenotify): Declare Qchange and Qattribute_change.
22000 2015-09-23  Stefan Monnier  <monnier@iro.umontreal.ca>
22002         * src/syntax.c (parse_sexp_propertize): Handle spurious
22003         e_property_truncated flag.
22004         (update_syntax_table_forward): Remove invalid assertion.
22006 2015-09-23  Eli Zaretskii  <eliz@gnu.org>
22008         * src/xdisp.c (produce_stretch_glyph): Support ':relative-width'
22009         space display spec on text-mode terminals, by calling
22010         PRODUCE_GLYPHS instead of x_produce_glyphs.  Remove the
22011         HAVE_WINDOW_SYSTEM guards from the supporting code, as well as the
22012         test for a GUI frame.
22014 2015-09-23  Oleh Krehel  <ohwoeowho@gmail.com>
22016         Move let-when-compile to lisp-mode.el
22018         This fixes the bootstrapping problem of `let-when-compile' using
22019         `cl-progv' while being in subr.el (i.e. before cl stuff was loaded).
22021 2015-09-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
22023         * lisp/url/url-http.el (url-http-parse-headers): Do not
22024         automatically include Authorization header in redirect.
22025         (Bug#21350)
22027 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
22029         Clarify documentation of ':relative-width'
22031         * doc/lispref/display.texi (Specified Space): Document that
22032         ':relative-width' is only supported on GUI frames.
22034 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
22036         Fix 'current-column' in presence of :relative-width
22038         * src/indent.c (check_display_width): Support ':relative-width'
22039         in a display spec that specifies a stretch glyph.  (Bug#21533)
22041 2015-09-22  Ken Manheimer  <ken.manheimer@gmail.com>
22043         Reformat the pdbtrack remote-file fix ChangeLog.2 entry
22045         ... to conform better to CONTRIBUTE guidelines.
22047 2015-09-22  Stefan Monnier  <monnier@iro.umontreal.ca>
22049         * lisp/progmodes/prolog.el: Fix indentation of empty line
22051         * lisp/emacs-lisp/smie.el (smie-rules-function): Document new
22052         `empty-line-token' element.
22053         (smie-indent-empty-line): New function.
22054         (smie-indent-functions): Add it.
22056         * lisp/progmodes/prolog.el (prolog-smie-rules): Fix :list-intro
22057         behavior and use the new `empty-line-token' element (bug#21526).
22058         (prolog-mode-variables): Fix comment-start-skip setting to match
22059         comment-start.
22061         * test/indent/prolog.prolog: Add nested indentation tests.
22063         * lisp/newcomment.el (comment-normalize-vars): Fix default value of
22064         comment-start-skip not to misuse submatch 1.
22066 2015-09-22  Alan Mackenzie  <acm@muc.de>
22068         Make description of `edebug-initial-mode' user friendly
22070         Fixes bug#21365.
22072         * doc/lispref/edebug.texi (Edebug Execution Modes): Change the
22073         description of `edebug-initial-mode' from that of its implementation
22074         to that of its visual effect and use.  Move the paragraph higher up.
22076 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
22078         lisp/progmodes/gud.el (gud-format-command): Fix last commit
22080         * lisp/progmodes/gud.el (gud-format-command): Don't use Tramp internal
22081         functions 'tramp-file-name-localname' and 'tramp-dissect-file-name'.
22083 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
22085         Improve last commit to process.c
22087 2015-09-22  Michael Albinus  <michael.albinus@gmx.de>
22089         Implement gfile-valid-p
22091         * lisp/filenotify.el (file-notify-callback): Fix typo.
22092         (gfile-valid-p): Remove defalias.
22094         * src/gfilenotify.c (dir_monitor_callback): Cancel the monitor if
22095         the file or directory to be watched is deleted.
22096         (Fgfile_add_watch): Make watch_object a triple.
22097         (Fgfile_rm_watch): Check, whether watch is cancelled already.
22098         (Fgfile_valid_p): New defun.
22099         (syms_of_gfilenotify): Declare Sgfile_valid_p.
22101 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
22103         Remove callback-handled channels from Available set
22105         * src/process.c (wait_reading_process_output): Remove channel from
22106         Available set if it is handled by a callback, e.g., dbus or
22107         inotify (bug#21313).
22109 2015-09-21  Mark Oteiza  <mvoteiza@udel.edu>
22111         Use lunate epsilon for TeX \epsilon
22113         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
22114         Add \varepsilon using GREEK SMALL LETTER EPSILON, and change
22115         \epsilon to use GREEK LUNATE EPSILON SYMBOL
22117 2015-09-21  Stefan Monnier  <monnier@iro.umontreal.ca>
22119         * lisp/progmodes/prolog.el: Fix nested electric if-then-else
22121         * lisp/progmodes/prolog.el (prolog-find-unmatched-paren): Use innermost
22122         rather than outermost paren (bug#21526).
22124 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
22126         Improve git diff hunk headers for .el, .texi
22128         Problem reported by Alan Mackenzie in:
22129         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00826.html
22130         * .gitattributes (*.el, *.texi): New patterns.
22131         * autogen.sh: Configure diff.elisp.xfuncname and
22132         diff.texinfo.xfuncname if using Git.
22134 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
22136         Don't rely on defaults in decoding UTF-8 encoded Lisp files
22138         * lisp/replace.el:
22139         * lisp/textmodes/rst.el:
22140         * lisp/whitespace.el: Add an explicit UTF-8 encoding tag.
22142 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
22144         Clarify or replace a few \u escapes
22146         * doc/lispref/nonascii.texi (Character Properties)
22147         More-detailed commentary for \u escapes.
22148         * lisp/progmodes/python.el (python--prettify-symbols-alist):
22149         * lisp/replace.el (query-replace-from-to-separator):
22150         * lisp/textmodes/rst.el (rst-bullets, rst-re-alist-def)
22151         (rst-mode-syntax-table):
22152         * lisp/whitespace.el (whitespace-display-mappings):
22153         Prefer actual character to \u escape when this makes the code
22154         easier to follow in the usual case where Unicode chars can be
22155         displayed.
22157 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
22159         Pacify GCC -Wmaybe-uninitialized in xdisp.c
22161         * src/xdisp.c (face_before_or_after_it_pos): Use do-while rather
22162         than while loop to avoid GCC -Wmaybe-uninitialized diagnostic with
22163         charpos.  The loop should always execute at least once anyway.
22165 2015-09-21  Tassilo Horn  <tsdh@gnu.org>
22167         Signal error on invalid regexp
22169         * lisp/textmodes/reftex-cite.el (reftex-extract-bib-entries):
22170         Signal an error when the user tries searching with a regexp
22171         matching the empty string.
22173 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
22175         Another fix of file-notify-tests for w32notify
22177         * test/automated/file-notify-tests.el (file-notify-test02-events):
22178         Further adaptation for w32notify: reduce the number of expected
22179         'changed' events.  (Bug#21435)
22181 2015-09-21  Michael Albinus  <michael.albinus@gmx.de>
22183         Adapt tests and manual for w32notify
22185         * doc/lispref/os.texi (File Notifications): w32notify does not
22186         send `attribute-changed' events.
22188         * test/automated/file-notify-tests.el (file-notify--test-with-events):
22189         Simplify parameters.  Adapt all callees.
22190         (file-notify-test02-events): w32notify does not send
22191         `attribute-changed' events.
22192         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
22193         Do not skip in case of w32notify.  Simply ignore this part of the test.
22195 2015-09-21  Dima Kogan  <dima@secretsauce.net>
22197         Fix setting breakpoints when remote-debugging
22199         * lisp/progmodes/gud.el (gud-format-command): Send localized file
22200         names to the debugger running on the remote.  (Bug#13304)
22202 2015-09-21  Nicolas Petton  <nicolas@petton.fr>
22204         Better docstring and parameter name for seq-find
22206         * lisp/emacs-lisp/seq.el (seq-find): Improve the docstring and rename
22207         the parameter `sentinel' to `default'.
22209         * doc/lispref/sequences.texi (Sequence Functions): Update the
22210           documentation for `seq-find' accordingly.
22212 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
22214         Avoid infinite recursion while displaying box face
22216         * src/xdisp.c (face_before_or_after_it_pos): Fix calculation of
22217         the previous string/buffer character position under bidi
22218         iteration.  (Bug#21428)
22220 2015-09-21  Anders Lindgren  <andlind@gmail.com>
22222         Keep upper edge unchanged when changing size of NS frame
22224         * src/nsterm.m (x_set_window_size): Keep upper frame edge unchanged
22225         (Bug#21415).
22227 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
22229         * lisp/progmodes/prolog.el: Improve handling of if/then/else.
22230         (prolog-smie-rules): Accommodate standard if/then/else special
22231         indentation.
22232         (prolog-mode): Add . to electric-indent-chars.
22233         (prolog-electric--if-then-else): Re-indent the line before adding space
22234         after the new char (bug#21526).
22236 2015-09-20  Mark Oteiza  <mvoteiza@udel.edu>
22238         Add prettify symbols to python-mode
22240         * lisp/progmodes/python.el (python-prettify-symbols-alist):
22241         New variable.
22242         (python-mode): Use it
22244 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
22246         * lisp/emacs-lisp/syntax.el (syntax-begin-function): Make obsolete.
22248 2015-09-20  Jostein Kjønigsen  <jostein@secure.kjonigsen.net>  (tiny change)
22250         (compilation-error-regexp-alist-alist): Tone down guile-file
22252         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
22253         Make guile-file a bit less enthusiastic (bug#21496).
22255 2015-09-20  Drew Csillag  <drew@thecsillags.com>
22257         * lisp/progmodes/m4-mode.el (m4-font-lock-keywords):
22258         Fix m4_* highlighting.
22260         * lisp/progmodes/m4-mode.el (m4-font-lock-keywords): Fix recognition
22261         of commands when they have a "m4_" prefix.
22263 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
22265         '.' -> `.' in doc string
22267         * lisp/emacs-lisp/timer.el (run-at-time): In doc string, quote
22268         individual chars with grave quotes instead of straight quotes, as
22269         this works better when they are translated to curved quotes.
22271 2015-09-20  Michael Albinus  <michael.albinus@gmx.de>
22273         Improve file notifications, especially for Tramp
22275         * doc/lispref/files.texi (Magic File Names):
22276         Mention `file-notify-valid-p'.
22278         * doc/lispref/os.texi (File Notifications):
22279         Describe `file-notify-valid-p'.
22281         * etc/NEWS: Add `file-notify-valid-p'.
22283         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-notify-add-watch):
22284         Improve implementation.
22285         (tramp-gvfs-monitor-file-process-filter): Rename from
22286         `tramp-gvfs-file-gvfs-monitor-file-process-filter'.  Delete
22287         process if appropriate.
22289         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
22290         Improve implementation.
22291         (tramp-sh-gvfs-monitor-dir-process-filter): Rename from
22292         `tramp-sh-file-gvfs-monitor-dir-process-filter'.  Delete process
22293         if appropriate.
22294         (tramp-sh-inotifywait-process-filter): Rename from
22295         `tramp-sh-file-inotifywait-process-filter'.  Delete process if
22296         appropriate.
22298         * lisp/net/tramp.el (tramp-handle-file-notify-rm-watch):
22299         Use `delete-process'.
22300         (tramp-handle-file-notify-valid-p): Check also, that file or
22301         directory to be watched still exists.
22303         * test/automated/file-notify-tests.el (file-notify--test-timeout):
22304         New defun.  Use it at all places a timeout is needed.
22305         (file-notify--test-cleanup): Delete directories recursively.
22306         Cleanup also Tramp connections.
22307         (file-notify-test02-events): Add tests for `attribute-change'.
22308         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
22309         Add tests for `file-notify-rm-watch'.
22311 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
22313         Use %s to format strings instead of splicing them
22315         If FOO might contain quotes that are part of a file or variable
22316         name, the quotes should not be translated when showing FOO’s name
22317         in a diagnostic.  So, for example, (message (concat (FOO ": bar")))
22318         is not quite right, as it would translate FOO’s quotes.
22319         Change it to (message "%s: bar" FOO) instead.
22320         * lisp/allout.el (allout-process-exposed):
22321         * lisp/calc/calc-ext.el (calc-do-prefix-help):
22322         * lisp/calc/calc-store.el (calc-store-into):
22323         * lisp/calendar/todo-mode.el (todo-category-completions):
22324         * lisp/cedet/semantic/complete.el (semantic-completion-message):
22325         * lisp/org/ob-latex.el (convert-pdf):
22326         * lisp/org/org-crypt.el (org-crypt-check-auto-save):
22327         * lisp/org/ox-latex.el (org-latex-compile):
22328         * lisp/org/ox-man.el (org-man-compile):
22329         * lisp/org/ox-odt.el (org-odt--export-wrap):
22330         * lisp/org/ox-texinfo.el (org-texinfo-compile):
22331         * lisp/progmodes/ruby-mode.el (ruby-in-ppss-context-p):
22332         * lisp/progmodes/verilog-mode.el (verilog-batch-execute-func)
22333         (verilog-signals-combine-bus, verilog-read-defines)
22334         (verilog-getopt-file, verilog-expand-dirnames)
22335         (verilog-modi-lookup, verilog-modi-modport-lookup-one):
22336         * lisp/term/ns-win.el (ns-spi-service-call):
22337         Use %s to avoid translating quotes of file names etc. in diagnostics.
22339 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
22341         * lisp/progmodes/js.el (js--syntax-begin-function): Remove.
22342         (js-mode): Don't set syntax-begin-function.
22344 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
22346         * lisp/font-lock.el (font-lock-compile-keywords): Don't assume
22347         syntax-begin-function is a symbol.
22349 2015-09-20  Eli Zaretskii  <eliz@gnu.org>
22351         Improve documentation of 'run-at-time'
22352         * lisp/emacs-lisp/timer.el (run-at-time): Improve the doc string.
22353         In particular, don't refer to 'diary-entry-time', because it is
22354         unavailable until diary-lib is loaded.  Also, refer to
22355         'timer-duration-words', not 'timer-duration', as the latter's doc
22356         string says nothing about the accepted strings.
22358 2015-09-19  Jay Belanger  <jay.p.belanger@gmail.com>
22360         * lisp/calc/calc-ext.el (calc-do-prefix-help): Tidy up error message.
22362 2015-09-19  Ken Manheimer  <ken.manheimer@gmail.com>
22364         Repair pdbtrack remote file tracking
22365         * lisp/progmodes/python.el (python-pdbtrack-set-tracked-buffer):
22366         Rectify pdbtrack so it follows transitions from one remote source
22367         file to the next.
22369 2015-09-19  Artur Malabarba  <bruce.connor.am@gmail.com>
22371         * lisp/emacs-lisp/timer.el (run-at-time): Docstring formatting.
22373 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
22375         Adapt vc-src to the old-new vc-checkin API
22376         * lisp/vc/vc-src.el (vc-src-checkin): Accept and ignore an
22377         additional optional parameter.
22379 2015-09-19  Simen Heggestøyl  <simenheg@gmail.com>
22381         Add overflow module to CSS property list
22382         * lisp/textmodes/css-mode.el (css-property-ids): Add properties
22383         from CSS Overflow Module Level 3.
22385 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
22387         Fix documentation of "C-u C-x v v"
22388         * doc/emacs/maintaining.texi (Advanced C-x v v): Make the
22389         documentation of "C-u C-x v v" match what the code does.
22391         Resurrect the ability to specify a revision in vc-next-action
22392         * lisp/vc/vc-bzr.el (vc-bzr-checkin):
22393         * lisp/vc/vc-dav.el (vc-dav-checkin):
22394         * lisp/vc/vc-git.el (vc-git-checkin):
22395         * lisp/vc/vc-hg.el (vc-hg-checkin):
22396         * lisp/vc/vc-mtn.el (vc-mtn-checkin): Accept and silently ignore
22397         an additional optional argument, the revision to checkin.
22398         * lisp/vc/vc-sccs.el (vc-sccs-checkin):
22399         * lisp/vc/vc-cvs.el (vc-cvs-checkin):
22400         * lisp/vc/vc-rcs.el (vc-rcs-checkin): Allow to optionally specify
22401         a revision to checkin.
22402         * lisp/vc/vc.el (vc-next-action): Allow to optionally specify the
22403         revision when checking in files.
22404         See http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00688.html
22405         for the details.
22407 2015-09-18  Wilson Snyder  <wsnyder@wsnyder.org>
22409         * lisp/progmodes/verilog-mode.el (verilog-forward-sexp-function)
22410         (verilog-decls-princ, verilog-modport-princ)
22411         (verilog-modi-modport-lookup-one): Fix checkdoc warnings.
22413 2015-09-17  Jay Belanger  <jay.p.belanger@gmail.com>
22415         Fix the routine for help on Calc's prefixes
22416         * lisp/calc/calc-ext.el (calc-prefix-help-retry): New variable.
22417         (calc-do-prefix-help): Use `read-char' to determine the next Calc
22418         command.
22420 2015-09-17  Stefan Monnier  <monnier@iro.umontreal.ca>
22422         * lisp/font-lock.el (font-lock-beginning-of-syntax-function): Remove.
22423         (font-lock-fontify-block): Don't let-bind it.
22424         (font-lock-compile-keywords): Don't use it.
22425         (font-lock-set-defaults): Don't set it.  Allow the variable alist to
22426         start one slot earlier, instead.
22427         * lisp/emacs-lisp/syntax.el (font-lock-beginning-of-syntax-function):
22428         Don't declare.
22429         (syntax-ppss): Don't use it either.
22430         * lisp/font-core.el (font-lock-defaults): Remove SYNTAX-BEGIN
22431         from docstring.
22432         * doc/emacs/display.texi (Font Lock): Don't mention
22433         font-lock-beginning-of-syntax-function.
22434         * doc/lispref/modes.texi (Font Lock Basics): Update description of
22435         font-lock-defaults.
22436         (Syntactic Font Lock): Remove font-lock-beginning-of-syntax-function.
22437         * lisp/loadhist.el (unload-feature-special-hooks):
22438         Remove font-lock-beginning-of-syntax-function.
22439         * lisp/obsolete/lazy-lock.el (lazy-lock-fontify-region):
22440         * lisp/emacs-lisp/lisp.el (beginning-of-defun-raw): Don't let-bind
22441         font-lock-beginning-of-syntax-function.
22443 2015-09-17  Paul Eggert  <eggert@cs.ucla.edu>
22445         Backslash cleanup in Elisp source files
22446         This patch should not change behavior.  It typically omits backslashes
22447         where they are redundant (e.g., in the string literal "^\$").
22448         In a few places, insert backslashes where they make regular
22449         expressions clearer: e.g., replace "^\*" (equivalent to "^*") with
22450         "^\\*", which has the same effect as a regular expression.
22451         Also, use ‘\ %’ instead of ‘\%’ when avoiding confusion with SCCS IDs,
22452         and similarly use ‘\ $’ instead of ‘\$’ when avoiding confusion with
22453         RCS IDs, as that makes it clearer that the backslash is intended.
22455         Some more minor backslash fixes
22456         * test/automated/compile-tests.el (compile-tests--test-regexps-data):
22457         * test/automated/info-xref.el (info-xref-test-write-file):
22458         Double backslashes in strings.
22460         Fix several backslash typos in Elisp strings
22461         * lisp/calendar/todo-mode.el (todo-files, todo-rename-file)
22462         (todo-find-filtered-items-file, todo-reset-nondiary-marker)
22463         (todo-reset-done-string, todo-reset-comment-string)
22464         (todo-reset-highlight-item):
22465         * lisp/erc/erc-networks.el (erc-networks-alist):
22466         * lisp/gnus/gnus-art.el (gnus-button-handle-library):
22467         * lisp/gnus/gnus-group.el (gnus-read-ephemeral-gmane-group-url):
22468         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
22469         (nntp-telnet-shell-prompt):
22470         * lisp/gnus/spam-report.el (spam-report-gmane-regex):
22471         * lisp/image-dired.el (image-dired-rotate-original):
22472         (image-dired-get-exif-file-name):
22473         * lisp/international/latin1-disp.el (latin1-display-ucs-per-lynx):
22474         * lisp/mail/undigest.el (rmail-digest-parse-rfc1153strict):
22475         * lisp/mh-e/mh-letter.el (mh-file-is-vcard-p):
22476         * lisp/mh-e/mh-mime.el (mh-file-mime-type-substitutions):
22477         * lisp/net/shr-color.el (shr-color->hexadecimal):
22478         * lisp/org/org-bibtex.el (org-bibtex-fields):
22479         * lisp/org/org-docview.el (org-docview-export):
22480         * lisp/org/org-entities.el (org-entities):
22481         * lisp/org/ox-icalendar.el (org-icalendar-cleanup-string):
22482         * lisp/progmodes/cperl-mode.el (cperl-indent-exp):
22483         * lisp/progmodes/ebnf2ps.el (ebnf-file-suffix-regexp)
22484         (ebnf-style-database):
22485         * lisp/progmodes/idlw-help.el (idlwave-do-context-help1):
22486         * lisp/progmodes/ruby-mode.el (ruby-imenu-create-index-in-block):
22487         * lisp/progmodes/sql.el (sql-product-alist):
22488         * lisp/progmodes/verilog-mode.el (verilog-error-regexp-emacs-alist)
22489         (verilog-error-font-lock-keywords)
22490         (verilog-assignment-operator-re):
22491         * lisp/progmodes/vhdl-mode.el (vhdl-compiler-alist):
22492         * lisp/textmodes/reftex-parse.el (reftex-parse-from-file):
22493         * lisp/vc/add-log.el (change-log-version-number-regexp-list):
22494         Fix typo by replacing ‘\’ with ‘\\’ in a string literal.
22495         For example, to get the regular expression ‘\.’ use the string
22496         literal "\\.", not "\." (which is equivalent to ".").
22497         * lisp/emulation/viper-util.el (viper-glob-unix-files):
22498         Remove stray ‘\j’ from string.
22499         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
22500         (nntp-telnet-shell-prompt):
22501         Treat > like $ when matching a shell prompt.
22502         * lisp/progmodes/make-mode.el (makefile-browse):
22503         Properly quote a diagnostic.
22505         Fix minor quoting problems in diagnostics
22506         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
22507         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
22508         Follow text-quoting-style in diagnostic, and quote a file name.
22510 2015-09-17  Eli Zaretskii  <eliz@gnu.org>
22512         * doc/lispref/frames.texi (Cursor Parameters):
22513         Document 'x-stretch-cursor'.
22515 2015-09-16  Paul Eggert  <eggert@cs.ucla.edu>
22517         Omit unnecessary \ before paren in C docstrings
22518         Although \( is needed in docstrings in Elisp code, it is not needed in
22519         docstrings in C code, since C function definitiions do not start with
22520         a parenthesis.  The backslashes made the docstrings a bit harder to
22521         read and to format in columns.  Also, some C docstrings had ( in
22522         column 1 and this did not appear to be causing any problems.  So,
22523         simplify C docstrings by replacing \( with ( and \) with ).
22525         A few more minor quoting fixes in a script and a text file
22527         Minor quoting fixes in scripts and doc
22528         Prefer straight quotes in random script files, as they are not
22529         converted.  Prefer grave quotes in a couple of places in the manual
22530         that were missed earlier, as these quotes are converted.
22532         Minor backslash fixes in manuals and scripts
22533         * Makefile.in (install-arch-indep):
22534         * admin/charsets/compact.awk:
22535         * admin/charsets/gb180302.awk (gb_to_index):
22536         * admin/charsets/gb180304.awk (gb_to_index):
22537         Avoid undefined behavior in Awk regular expression backslashes.
22538         * doc/misc/efaq.texi (Matching parentheses):
22539         Omit unnecessary backslashes.
22540         * doc/misc/gnus-faq.texi (FAQ 5-8):
22541         Avoid undefined behavior in suggested sed backslash usage.
22543         Add -Wswitch to --enable-gcc-warnings
22544         Make --enable-gcc-warnings a bit pickier, by also using -Wswitch.
22545         * configure.ac (WERROR_CFLAGS): Don’t add -Wno-switch.
22546         * lib-src/etags.c (main, consider_token, C_entries):
22547         * src/coding.c (encode_invocation_designation):
22548         * src/data.c (Ftype_of):
22549         * src/eval.c (Fdefvaralias, default_toplevel_binding)
22550         (Fbacktrace__locals, mark_specpdl):
22551         * src/lisp.h (record_xmalloc):
22552         * src/syntax.c (scan_lists, scan_sexps_forward):
22553         * src/window.c (window_relative_x_coord):
22554         * src/xdisp.c (push_it, pop_it):
22555         * src/xterm.c (xg_scroll_callback, x_check_fullscreen):
22556         Error out or do nothing (as appropriate) if a switch statement
22557         with an enum value does not cover all of the enum.
22558         * src/dispextern.h (struct iterator_stack_entry.u.comp):
22559         Remove unused member discovered by using -Wswitch.
22560         * src/lisp.h (record_xmalloc): Add a ‘+ 0’ to pacify -Wswitch.
22561         * src/vm-limit.c (check_memory_limits):
22562         Simplify warning-diagnostic computation by using a table.
22564         etags ‘fatal’ function is now printf-like
22565         * lib-src/etags.c (fatal): Now printf-like.  All callers changed.
22566         Also, now static; not clear why it needed to be extern.
22567         (verror): New function, with most of the old contents of ‘error’.
22568         (fatal, error): Use it.
22570 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
22572         More adaptations in file-notify-tests.el
22573         * test/automated/file-notify-tests.el
22574         (file-notify-test05-dir-validity): Skip for w32notify in
22575         batch-mode.  (Bug#21432)
22577 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
22579         Adapt test in file-notify-tests.el
22580         * test/automated/file-notify-tests.el
22581         (file-notify-test04-file-validity): Skip for w32notify in
22582         batch-mode.  Add test lost last commit.
22584 2015-09-16  Dima Kogan  <dima@secretsauce.net>
22586         winner no longer holds on to dead frames
22587         * lisp/winner.el (winner-change-fun): Cull dead frames.
22588         This prevents a potentially massive memory leak.  See:
22589         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00619.html
22591 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
22593         Use common report_file_notify_error function
22594         * src/fileio.c (report_file_notify_error): New function.
22595         * src/inotify.c (report_inotify_error): Remove function.
22596         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
22597         (Finotify_rm_watch): Use report_file_notify_error.
22598         * src/lisp.h (report_file_notify_error): Declare external function.
22599         * src/w32notify.c (report_w32notify_error): Remove function.
22600         (Fw32notify_add_watch, Fw32notify_rm_watch):
22601         Use report_file_notify_error.
22603 2015-09-16  Jay Belanger  <jay.p.belanger@gmail.com>
22605         Fix documentation.
22606         * doc/misc/calc.texi (Single-Variable Statistics): Fix the wording of
22607         the documentation of the root mean square.
22609 2015-09-16  Martin Rudalics  <rudalics@gmx.at>
22611         Remove tool_bar_redisplayed_once and associated code.
22612         * src/frame.h (tool_bar_redisplayed_once): Remove slot.
22613         * src/frame.c (make_frame, x_set_font): Remove initialization of
22614         f->tool_bar_redisplayed_once.
22615         * src/w32fns.c (x_change_tool_bar_height):
22616         * src/xfns.c (x_change_tool_bar_height): Don't check for
22617         f->tool_bar_redisplayed_once.
22618         * src/xdisp.c (redisplay_internal): Remove handling of
22619         f->tool_bar_redisplayed_once.
22621 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
22623         Restore some of the quoting in the manuals
22624         * doc/lispref/windows.texi (Coordinates and Windows)
22625         (Coordinates and Windows):
22626         * doc/lispref/variables.texi (Lexical Binding)
22627         (File Local Variables):
22628         * doc/lispref/text.texi (Format Properties):
22629         * doc/lispref/symbols.texi (Symbol Components):
22630         * doc/lispref/strings.texi (Creating Strings):
22631         * doc/lispref/sequences.texi (Sequence Functions):
22632         * doc/lispref/searching.texi (Regexp Special, Regexp Search)
22633         (Search and Replace):
22634         * doc/lispref/processes.texi (Bindat Spec):
22635         * doc/lispref/os.texi (Idle Timers):
22636         * doc/lispref/objects.texi (Basic Char Syntax):
22637         * doc/lispref/numbers.texi (Float Basics, Random Numbers):
22638         * doc/lispref/nonascii.texi (Character Properties):
22639         * doc/lispref/modes.texi (Major Mode Conventions, Mode Hooks)
22640         (Mode Line Variables):
22641         * doc/lispref/minibuf.texi (Text from Minibuffer):
22642         * doc/lispref/loading.texi (Autoload):
22643         * doc/lispref/keymaps.texi (Controlling Active Maps):
22644         * doc/lispref/frames.texi (Frame Layout, Size and Position)
22645         (Size Parameters, Implied Frame Resizing):
22646         * doc/lispref/files.texi (Changing Files, Magic File Names):
22647         * doc/lispref/eval.texi (Self-Evaluating Forms):
22648         * doc/lispref/display.texi (Progress, Abstract Display)
22649         (Abstract Display Example, Bidirectional Display):
22650         * doc/lispref/commands.texi (Event Mod):
22651         * doc/emacs/windows.texi (Displaying Buffers):
22652         * doc/emacs/trouble.texi (Bug Criteria, Checklist):
22653         * doc/emacs/text.texi (Enriched Text):
22654         * doc/emacs/programs.texi (MixedCase Words):
22655         * doc/emacs/picture-xtra.texi (Insert in Picture)
22656         (Tabs in Picture):
22657         * doc/emacs/misc.texi (Emacs Server, Printing):
22658         * doc/emacs/mini.texi (Minibuffer History):
22659         * doc/emacs/maintaining.texi (Old Revisions, VC Change Log)
22660         (Pulling / Pushing):
22661         * doc/emacs/killing.texi (Yanking, Cut and Paste, Clipboard):
22662         * doc/emacs/help.texi (Help, Help Echo):
22663         * doc/emacs/glossary.texi (Glossary):
22664         * doc/emacs/frames.texi (Mouse Commands, Creating Frames)
22665         (Frame Commands):
22666         * doc/emacs/files.texi (Reverting, Saving, Directories):
22667         * doc/emacs/entering.texi (Exiting):
22668         * doc/emacs/emacs.texi (Top):
22669         * doc/emacs/cmdargs.texi (Window Size X, Icons X):
22670         * doc/emacs/anti.texi (Antinews): Restore quoting of text where
22671         appropriate or replace quoting with @dfn.
22672         * doc/misc/ediff.texi (Window and Frame Configuration):
22673         * doc/lispref/processes.texi (Network Feature Testing):
22674         * doc/lispref/display.texi (Display Margins): Quote the phrase
22675         after "a.k.a." where appropriate.
22677 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
22679         Clarify reftex-extra-bindings docs
22680         * lisp/textmodes/reftex-vars.el (reftex-extra-bindings):
22681         * doc/misc/reftex.texi (Key Bindings): Document that the variable
22682         only has an effect at load-time.
22684 2015-09-16  Daniel McClanahan  <danieldmcclanahan@gmail.com>  (tiny change)
22686         * lisp/emacs-lisp/lisp-mode.el (lisp--el-match-keyword): Fix
22687         search argument.  (Bug#21492) (Bug#21493)
22689 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
22691         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
22692         Add pretty symbols for \qquad and \varrho.
22694 2015-09-15  Jay Belanger  <jay.p.belanger@gmail.com>
22696         Add new functions for the root mean square of a (Calc) vector
22697         * lisp/calc/calc-stat.el (calcFunc-rms, calc-vector-rms):
22698         New functions.
22699         * lisp/calc/calc-ext.el (calc-init-extensions): Add keybinding for
22700         `calc-vector-rms', add autoloads for `calc-vector-rms' and
22701         `calcFunc-rms'.
22702         * lisp/calc/calc-map.el (calc-u-oper-keys): Add entry for
22703         `calcFunc-rms'.
22704         * lisp/calc/calc-menu.el (calc-vectors-menu): Add entry for
22705         `calc-vector-rms'.
22706         * doc/misc/calc.texi (Single-Variable Statistics): Document the rms
22707         command.
22709 2015-09-15  Stephen Leake  <stephen_leake@stephe-leake.org>
22711         Add monotone EDE generic project
22712         * lisp/cedet/ede/generic.el (ede-enable-generic-projects):
22713         Add monotone generic project.
22715         Revert premature commit
22716         * doc/lispref/files.texi: Revert premature commit of change to
22717         file-name-all-completions.
22719         Fix a bug in elisp--xref-find-definitions related to cl-generic defaults
22720         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions): Fix bug
22721         with cl-generic defaults.
22722         (elisp--xref-find-references): Add doc string.
22723         * test/automated/elisp-mode-tests.el (xref-elisp-generic-*): Improve
22724         tests to find bug.
22726         Fix bugs in eieio-oref-default related to class symbols
22727         * lisp/emacs-lisp/eieio-core.el (class-p): Handle symbol properly.
22728         (eieio-oref-default): Handle class properly.
22730 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
22732         Quote “fullboth” when defining it
22733         * doc/lispref/frames.texi (Size Parameters): Use @dfn for “fullboth”
22734         and rewrite the containing paragraph, which was awkward.  (Bug#21472).
22736 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
22738         Minor doc fix in emacs/ack.texi
22739         * doc/emacs/ack.texi (Acknowledgments): Fix an xref missing the
22740         first argument.
22742 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
22744         Adapt tests in auto-revert-tests.el
22745         * test/automated/auto-revert-tests.el (auto-revert--timeout):
22746         Make it a defconst.
22747         (auto-revert--wait-for-revert): New defun.
22748         (auto-revert-test00-auto-revert-mode)
22749         (auto-revert-test01-auto-revert-tail-mode)
22750         (auto-revert-test02-auto-revert-mode-dired): Use it.
22752 2015-09-15  Stefan Monnier  <monnier@iro.umontreal.ca>
22754         * lisp/emacs-lisp/lisp-mode.el (lisp-mode-symbol-regexp): New const.
22755         Use it everywhere "\\(\\sw\\|\\s_\\|\\\\.\\)+" was used.
22756         (cl-lib-fdefs): Add defgeneric.
22757         (cl-kw): Add all elements of eieio-kw and cl-lib-kw.
22758         (eieio-kw, cl-lib-kw, el-kw): Remove.
22760 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
22762         Quote less in manuals
22763         The manuals often used quotes ``...'' when it is better to use @dfn or
22764         @code or capitalized words or no quoting at all.  For example, there is
22765         no need for the `` and '' in “if a variable has one effect for
22766         @code{nil} values and another effect for ``non-@code{nil}'' values”.
22767         Reword the Emacs, Lisp intro, and Lisp reference manuals to eliminate
22768         unnecessary quoting like this, and to use @dfn etc. instead when called
22769         for (Bug#21472).
22771 2015-09-15  Mark Oteiza  <mvoteiza@udel.edu>
22773         * lisp/custom.el (load-theme): Only compute hash when needed.
22775 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
22777         Pacify --enable-gcc-warnings
22778         * src/inotify.c (report_inotify_error): Declare it _Noreturn.
22780 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
22782         Improve error reports in inotify.c
22783         * src/inotify.c (report_inotify_error): New function.  Clone of
22784         report_w32notify_error.
22785         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
22786         (Finotify_rm_watch): Use it.
22788 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
22790         Fix the file-notify tests for watch validation on w32
22791         * test/automated/file-notify-tests.el
22792         (file-notify-test04-file-validity): Move the directory deletion
22793         out of the file-notify--test-with-events macro.
22794         (file-notify-test04-file-validity)
22795         (file-notify-test05-dir-validity): Enlarge the timeout of
22796         read-event to 0.5, as 0.1 is borderline on w32.  (Bug#21432)
22798 2015-09-15  Tassilo Horn  <tsdh@gnu.org>
22800         Use OPEN BOX instead of space for \quad.
22801         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist): Use OPEN BOX
22802         character for \quad instead of a space.
22804 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
22806         Add missing *.pbm images
22807         * etc/images/connect.pbm: New file.
22808         * etc/images/custom/down-pushed.pbm: New file.
22809         * etc/images/custom/down.pbm: New file.
22810         * etc/images/custom/right-pushed.pbm: New file.
22811         * etc/images/custom/right.pbm: New file.
22812         * etc/images/describe.pbm: New file.
22813         * etc/images/disconnect.pbm: New file.
22814         * etc/images/ezimage/bits.pbm: New file.
22815         * etc/images/ezimage/bitsbang.pbm: New file.
22816         * etc/images/ezimage/box-minus.pbm: New file.
22817         * etc/images/ezimage/box-plus.pbm: New file.
22818         * etc/images/ezimage/box.pbm: New file.
22819         * etc/images/ezimage/checkmark.pbm: New file.
22820         * etc/images/ezimage/dir-minus.pbm: New file.
22821         * etc/images/ezimage/dir-plus.pbm: New file.
22822         * etc/images/ezimage/dir.pbm: New file.
22823         * etc/images/ezimage/doc-minus.pbm: New file.
22824         * etc/images/ezimage/doc-plus.pbm: New file.
22825         * etc/images/ezimage/doc.pbm: New file.
22826         * etc/images/ezimage/info.pbm: New file.
22827         * etc/images/ezimage/key.pbm: New file.
22828         * etc/images/ezimage/label.pbm: New file.
22829         * etc/images/ezimage/lock.pbm: New file.
22830         * etc/images/ezimage/mail.pbm: New file.
22831         * etc/images/ezimage/page-minus.pbm: New file.
22832         * etc/images/ezimage/page-plus.pbm: New file.
22833         * etc/images/ezimage/page.pbm: New file.
22834         * etc/images/ezimage/tag-gt.pbm: New file.
22835         * etc/images/ezimage/tag-minus.pbm: New file.
22836         * etc/images/ezimage/tag-plus.pbm: New file.
22837         * etc/images/ezimage/tag-type.pbm: New file.
22838         * etc/images/ezimage/tag-v.pbm: New file.
22839         * etc/images/ezimage/tag.pbm: New file.
22840         * etc/images/ezimage/unlock.pbm: New file.
22841         * etc/images/gnus/important.pbm: New file.
22842         * etc/images/gnus/mail-send.pbm: New file.
22843         * etc/images/gnus/receipt.pbm: New file.
22844         * etc/images/gnus/toggle-subscription.pbm: New file.
22845         * etc/images/gnus/unimportant.pbm: New file.
22846         * etc/images/gud/all.pbm: New file.
22847         * etc/images/gud/rcont.pbm: New file.
22848         * etc/images/gud/recstart.pbm: New file.
22849         * etc/images/gud/recstop.pbm: New file.
22850         * etc/images/gud/rfinish.pbm: New file.
22851         * etc/images/gud/rnext.pbm: New file.
22852         * etc/images/gud/rnexti.pbm: New file.
22853         * etc/images/gud/rstep.pbm: New file.
22854         * etc/images/gud/rstepi.pbm: New file.
22855         * etc/images/gud/thread.pbm: New file.
22856         * etc/images/lock-broken.pbm: New file.
22857         * etc/images/lock-ok.pbm: New file.
22858         * etc/images/lock.pbm: New file.
22859         * etc/images/mail/copy.pbm: New file.
22860         * etc/images/mail/forward.pbm: New file.
22861         * etc/images/mail/not-spam.pbm: New file.
22862         * etc/images/mail/outbox.pbm: New file.
22863         * etc/images/mail/preview.pbm: New file.
22864         * etc/images/mail/save-draft.pbm: New file.
22865         * etc/images/mh-logo.pbm: New file.
22866         * etc/images/mpc/add.pbm: New file.
22867         * etc/images/mpc/ffwd.pbm: New file.
22868         * etc/images/mpc/next.pbm: New file.
22869         * etc/images/mpc/pause.pbm: New file.
22870         * etc/images/mpc/play.pbm: New file.
22871         * etc/images/mpc/prev.pbm: New file.
22872         * etc/images/mpc/rewind.pbm: New file.
22873         * etc/images/mpc/stop.pbm: New file.
22874         * etc/images/redo.pbm: New file.
22875         * etc/images/smilies/braindamaged.pbm: New file.
22876         * etc/images/smilies/cry.pbm: New file.
22877         * etc/images/smilies/dead.pbm: New file.
22878         * etc/images/smilies/evil.pbm: New file.
22879         * etc/images/smilies/forced.pbm: New file.
22880         * etc/images/smilies/grin.pbm: New file.
22881         * etc/images/smilies/indifferent.pbm: New file.
22882         * etc/images/sort-ascending.pbm: New file.
22883         * etc/images/sort-column-ascending.pbm: New file.
22884         * etc/images/sort-criteria.pbm: New file.
22885         * etc/images/sort-descending.pbm: New file.
22886         * etc/images/sort-row-ascending.pbm: New file.
22887         * etc/images/unchecked.pbm: New file.
22888         * etc/images/zoom-in.pbm: New file.
22889         * etc/images/README: Update instructions for PBM files.
22891         Add separator.pbm tool-bar image
22892         * etc/images/separator.pbm: New file.  Having it avoids the side
22893         effect of changing the tool-bar height when the default font's size
22894         changes and XPM image support is not available, due to the SPC
22895         characters that are left in the Lisp string used to display the tool
22896         bar, because there are no images to display instead of those SPC
22897         characters.
22899         Make show-paren-match face visible on mono-color displays
22900         * lisp/faces.el (show-paren-match): Use the underline face for
22901         mono-color displays.  (Bug#21481)
22903 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
22905         Don’t double-encode non-ASCII mail clipboard
22906         * lisp/mail/mailclient.el (mailclient-send-it):
22907         Also fix the case when mailclient-place-body-on-clipboard-flag
22908         is non-nil.  Problem reported by Eli Zaretskii (Bug#21471#37).
22910 2015-09-14  Michael Albinus  <michael.albinus@gmx.de>
22912         Adapt file-notify-tests.el test cases
22913         * lisp/filenotify.el (file-notify-rm-watch): Ignore `file-notify-error'.
22914         * src/inotify.c (Finotify_valid_p): Adapt docstring.
22915         * test/automated/file-notify-tests.el
22916         (file-notify-test03-autorevert)
22917         (file-notify-test04-file-validity)
22918         (file-notify-test04-file-validity-remote)
22919         (file-notify-test05-dir-validity)
22920         (file-notify-test05-dir-validity-remote): Adapt docstring.
22921         (file-notify-test04-file-validity): Let events arrive before
22922         calling final `file-notify-valid-p'.  Do not ignore errors.
22923         (file-notify-test05-dir-validity): Do not manipulate
22924         `temporary-file-directory', it isn't necessary.  Let events arrive
22925         before calling final `file-notify-valid-p'.  Do not ignore errors.
22927 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
22929         Don’t double-encode non-ASCII for mail client
22930         * lisp/mail/mailclient.el (mailclient-encode-string-as-url):
22931         Use RFC 6068’s list of unreserved characters.
22932         (mailclient-send-it): When encoding the body as a URL,
22933         first decode it as per Content-Type: and Content-Transfer-Encoding:,
22934         as URLs must use percent-encoded UTF-8 (Bug#21471).
22935         * doc/misc/url.texi (mailto): Update RFC number.
22937 2015-09-14  Stefan Monnier  <monnier@iro.umontreal.ca>
22939         * lisp/progmodes/cc-langs.el (c-make-init-lang-vars-fun): Use dolist.
22941 2015-09-14  Alan Mackenzie  <acm@muc.de>
22943         Replace `cadar' with `cadr/car', since `cadar' is problematic on Emacs
22944         (c-make-init-lang-vars-fun): Replace two occurrences of `cadar' with
22945         `cadr/car'.
22947 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
22949         Clarify documentation of char-table extra slots
22950         * doc/lispref/sequences.texi (Char-Tables): Clarify that extra
22951         slot numbers are zero-based.  (Bug#21467)
22953 2015-09-14  Alan Mackenzie  <acm@muc.de>
22955         Elisp mode: Make font-lock and imenu handle escaped characters in symbols
22956         Fixes bug#21449.
22957         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression)
22958         (lisp--el-match-keyword, lisp-el-font-lock-keywords-1)
22959         (lisp-cl-font-lock-keywords-1, lisp-el-font-lock-keywords-2)
22960         (lisp-cl-font-lock-keywords-2, lisp-string-in-doc-position-p):
22961         Insert "\\|\\\\." into regexps which match symbols.
22963 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
22965         Improve the doc string of w32notify-valid-p
22966         * src/w32notify.c (Fw32notify_valid_p): Mention in the doc string
22967         that removing a watch makes its object invalid.
22969 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
22971         Fix tests for file-notify-valid-p
22972         * test/automated/file-notify-tests.el (file-notify--test-cleanup):
22973         Use delete-directory to delete file-notify--test-tmpfile if it is
22974         a directory.  Likewise for file-notify--test-tmpfile1.
22975         (file-notify-test04-file-validity)
22976         (file-notify-test05-dir-validity): Delete the parent directory of
22977         the test.  Ignore errors when cleaning up after the test.
22979 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
22981         Report file-notify-error in w32notify.c
22982         * src/w32notify.c (report_w32notify_error): New function.
22983         (Fw32notify_add_watch, Fw32notify_rm_watch): Use it to report
22984         errors, instead of calling report_file_error.  (Bug#21432)
22986         Implement w32notify-valid-p
22987         * src/w32notify.c (Fw32notify_valid_p): New function.  (Bug#21432)
22988         * lisp/filenotify.el (w32notify-valid-p): No longer an alias for
22989         'identity'.
22991 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
22993         Test file-notify-valid-p
22994         * test/automated/file-notify-tests.el
22995         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
22996         New tests.
22998 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
23000         Fix markup in ELisp manual
23001         * doc/lispref/frames.texi (Font and Color Parameters): Fix markup
23002         of the 'alpha' parameter value.  (Bug#21470)
23004 2015-09-13  Michael Albinus  <michael.albinus@gmx.de>
23006         Introduce `file-notify-valid-p'
23007         * lisp/filenotify.el (file-notify-valid-p): New defun.
23008         (gfile-valid-p, w32notify-valid-p): Make them an alias to `identity'.
23009         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist)
23010         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist)
23011         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist)
23012         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist)
23013         <file-notify-valid-p>: Add handler.
23014         * lisp/net/tramp.el (tramp-file-name-for-operation):
23015         Add `file-notify-valid-p'.
23016         (tramp-handle-file-notify-valid-p): New defun.
23017         * src/inotify.c (Finotify_valid_p): New defun.
23018         (syms_of_inotify): Declare Sinotify_valid_p.
23020 2015-09-13  Paul Eggert  <eggert@cs.ucla.edu>
23022         Port Unicode char detection to FreeBSD+svgalib
23023         Problem reported by Ashish SHUKLA in:
23024         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00531.html
23025         * configure.ac: Check for struct unipair.unicode instead of for
23026         <linux/kd.h>, since that’s more specific to what the code
23027         actually needs.
23028         * src/terminal.c: Use HAVE_STRUCT_UNIPAIR_UNICODE, not HAVE_LINUX_KD_H.
23030         * src/indent.c (Fvertical_motion): Simplify bugfix (Bug#21468).
23032 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
23034         Fix vertical cursor motion across overlay strings with newlines
23035         * src/indent.c (Fvertical_motion): Don't leave point in the middle
23036         of an overlay string with newlines, as that will position the
23037         cursor after the string at whatever column is there.  (Bug#21468)
23039 2015-09-12  Michael Albinus  <michael.albinus@gmx.de>
23041         Fix tests in file-notify-tests.el
23042         * test/automated/file-notify-tests.el: Remove Tramp declarations.
23043         (file-notify-test00-availability): Print remote command w/o Tramp
23044         internal functions.
23045         (file-notify-test02-events, file-notify-test02-events-remote):
23046         Adapt docstring.
23047         (file-notify-test03-autorevert): Use `format-message' when
23048         inspecting *Messages* buffer.
23050 2015-09-12  Stefan Monnier  <monnier@iro.umontreal.ca>
23052         Bind inhibit-modification-hooks rather than a/b-c-f
23053         * lisp/wid-edit.el (widget-editable-list-insert-before)
23054         (widget-editable-list-delete-at):
23055         * lisp/progmodes/cperl-mode.el (cperl-find-pods-heres)
23056         (cperl-font-lock-unfontify-region-function):
23057         * lisp/progmodes/antlr-mode.el (save-buffer-state-x):
23058         * lisp/obsolete/longlines.el (longlines-mode):
23059         * lisp/obsolete/fast-lock.el (save-buffer-state):
23060         * lisp/mouse.el (mouse-save-then-kill-delete-region):
23061         * lisp/gnus/message.el (message-hide-headers):
23062         * lisp/eshell/esh-mode.el (eshell-send-input, eshell-output-filter):
23063         * lisp/ibuffer.el (ibuffer-update-title-and-summary)
23064         (ibuffer-redisplay-engine): Bind inhibit-modification-hooks to t rather
23065         than after/before-change-functions to nil.
23067 2015-09-11  Stefan Monnier  <monnier@iro.umontreal.ca>
23069         (jit-lock-deferred-fontify): Pay attention to skipped redisplays
23070         * lisp/jit-lock.el (jit-lock-deferred-fontify): Make sure we refresh
23071         the buffers, even if the forced redisplay is interrupted.
23073         * lisp/emacs-lisp/eieio-core.el (class-p): Accept class objects
23075         Merge syntax-propertize--done and parse-sexp-propertize-done
23076         * lisp/emacs-lisp/syntax.el (syntax-propertize--done): Remove.
23077         (syntax-propertize): Set syntax-propertize--done even if
23078         syntax-propertize-function is nil.  Avoid recursive invocations.
23079         (syntax-propertize-chunks): New var.
23080         (internal--syntax-propertize): Use it.  Rename from syntax--jit-propertize.
23081         Simplify.
23082         (parse-sexp-propertize-function): Don't set any more.
23083         * src/syntax.c (SETUP_SYNTAX_TABLE): Call parse_sexp_propertize as needed.
23084         (parse_sexp_propertize): Don't assume charpos is not yet propertized.
23085         Call Qinternal__syntax_propertize instead of
23086         Vparse_sexp_propertize_function.  Truncate e_property if needed.
23087         (update_syntax_table_forward): Streamline.
23088         (syms_of_syntax): Define Qinternal__syntax_propertize.
23089         (syntax_propertize__done): Rename from parse_sexp_propertize_done.
23091 2015-09-11  Paul Eggert  <eggert@cs.ucla.edu>
23093         Prefer straight quoting in some text files
23094         Mostly this just changes ` to ' in static text.  Some exceptions:
23095         * INSTALL.REPO: Use curved quotes, as the diagnostic in question
23096         typically does that now.
23097         * admin/quick-install-emacs (TRY, top level):
23098         Use straight quoting in diagnostics.
23099         * src/README: Fix working-directory confusion.
23101         * CONTRIBUTE: Move send-email here from git-workflow.
23103 2015-09-11  Michael Albinus  <michael.albinus@gmx.de>
23105         Improve file notifications in Tramp
23106         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
23107         Set proper events to watch for.
23108         (tramp-sh-file-gvfs-monitor-dir-process-filter): Report only
23109         watched events.
23111 2015-09-11  Eli Zaretskii  <eliz@gnu.org>
23113         Fix NS build with --enable-checking='glyphs'
23114         * src/nsfns.m (unwind_create_frame): Make the preprocessor
23115         conditionals for referencing 'dpyinfo' consistent throughout the
23116         function.  (Bug#21426)
23118 2015-09-10  Nicolas Petton  <nicolas@petton.fr>
23120         Add seq-find
23121         This function is similar to `seq-some' but returns the found element.
23122         In the cases where nil can be the found element, a sentinel optional
23123         argument can be provided to avoid ambiguities.
23124         * lisp/emacs-lisp/seq.el (seq-find): New function.
23125         * test/automated/seq-tests.el (test-seq-find): Add tests for `seq-find'.
23126         * doc/lispref/sequences.texi (Sequence Functions): Add documentation for
23127         seq-find.
23129 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
23131         Document file-notify--test-with-events.
23132         * test/automated/file-notify-tests.el (file-notify--test-with-events):
23133         Add docstring.
23135 2015-09-10  Michael Albinus  <michael.albinus@gmx.de>
23137         Report used native library in file-notify-tests.el
23138         * test/automated/file-notify-tests.el
23139         (tramp-get-remote-gvfs-monitor-dir)
23140         (tramp-get-remote-inotifywait): Declare them.
23141         (file-notify-test00-availability): Print used native library.
23143 2015-09-10  Mark Oteiza  <mvoteiza@udel.edu>
23145         * lisp/mpc.el (mpc--proc-connect): Use file-name-absolute-p.
23146         (mpc-file-local-copy): Check for absolute path.  Check more config
23147         locations.
23149 2015-09-10  Eli Zaretskii  <eliz@gnu.org>
23151         Improve documentation of categories
23152         * doc/lispref/syntax.texi (Categories): Clarify the example of
23153         using define-category and modify-category-entry.  (Bug#21448)
23155 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
23157         Revert some stray curved quotes I missed earlier
23158         Problem reported by David Kastrup in:
23159         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00440.html
23160         * lisp/international/mule-cmds.el (leim-list-header):
23161         Use format-message with an ASCII-only format.
23163         Prefer NUMBERP to spelling it out
23164         * src/editfns.c (styled_format):
23165         * src/frame.h (NUMVAL):
23166         * src/image.c (parse_image_spec):
23167         * src/lisp.h (CHECK_NUMBER_OR_FLOAT)
23168         (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER):
23169         * src/process.c (Fsignal_process):
23170         * src/xdisp.c (calc_pixel_width_or_height, on_hot_spot_p):
23171         * src/xfaces.c (check_lface_attrs):
23172         * src/xselect.c (x_fill_property_data, x_send_client_event):
23173         Use NUMBERP rather than INTEGERP || FLOATP.
23175 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
23177         Improve file-notify-tests
23178         * test/automated/file-notify-tests.el: Use lexical-binding.
23179         (file-notify--test-cleanup): New function.
23180         (file-notify-test00-availability, file-notify-test01-add-watch)
23181         (file-notify-test02-events, file-notify-test03-autorevert): Use it.
23182         (file-notify--test-with-events): New macro.
23183         (file-notify-test02-events): Use it.
23185 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
23187         Add patch-sending instructions to git-workflow
23188         From a suggestion by Mitchel Humpherys in:
23189         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00421.html
23190         * admin/notes/git-workflow (Sending patches): New section.
23192         Port to GIFLIB 5.0.6 and later
23193         Problem reported by Mitchel Humpherys in:
23194         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00420.html
23195         * src/image.c (HAVE_GIFERRORSTRING) [HAVE_GIF]: New macro.
23196         (GifErrorString, init_gif_functions) [HAVE_GIF && WINDOWSNT]:
23197         (gif_load) [HAVE_GIF]: Use it.
23199 2015-09-10  Glenn Morris  <rgm@gnu.org>
23201         * lisp/cedet/ede/auto.el (ede-project-autoload): Doc fix.
23203 2015-09-09  Glenn Morris  <rgm@gnu.org>
23205         * test/automated/file-notify-tests.el (file-notify-test02-events):
23206         Fix recent change.
23208 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
23210         Refix movemail GCC pacification
23211         Problem reported by Ken Brown in:
23212         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00406.html
23213         * lib-src/movemail.c (main): Fix previous change.
23215 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
23217         * lisp/calendar/time-date.el (time-to-seconds, time-less-p):
23218         Mark unused vars with underscore.
23220         * src/syntax.c (SETUP_SYNTAX_TABLE): Move truncation...
23221         (parse_sexp_propertize): ...from here.
23223         * lisp/filenotify.el: Use lexical-binding
23224         (file-notify-add-watch): Avoid add-to-list.
23226 2015-09-09  Tassilo Horn  <tsdh@gnu.org>
23228         Start checking event types in file-notify tests
23229         * test/automated/file-notify-tests.el (file-notify--test-events):
23230         New variable.
23231         (file-notify--test-event-handler): Append received event to
23232         file-notify--test-events for later analysis.
23233         (file-notify-test02-events): Assert that the expected notifications have
23234         arrived in the expected order.
23236 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
23238         Merge from gnulib and texinfo
23239         This incorporates:
23240         2015-08-03 Improve port of stdalign to C++11
23241         * lib/stdalign.in.h: Copy from gnulib.
23242         * doc/misc/texinfo.tex: Copy from texinfo.
23244 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
23246         Make syntax.c call syntax-propertize on demand
23247         * lisp/emacs-lisp/syntax.el (syntax--jit-propertize): New function.
23248         (parse-sexp-propertize-function): Use it.
23249         (syntax-propertize): Disable parse-sexp-propertize-function.
23250         * src/syntax.c (parse_sexp_propertize, update_syntax_table_forward):
23251         New functions.
23252         (syms_of_syntax): New vars `parse-sexp-propertize-done' and
23253         `parse-sexp-propertize-function'.
23254         * src/syntax.h (struct gl_state_s): Add `e_property_truncated' field.
23255         (UPDATE_SYNTAX_TABLE_FORWARD): Use update_syntax_table_forward.
23256         (SETUP_BUFFER_SYNTAX_TABLE): Set e_property_truncated.
23257         * lisp/progmodes/elisp-mode.el (elisp-byte-code-syntax-propertize):
23258         Don't assume `point' is set.
23260 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
23262         Fix indentation of an @example in ELisp manual
23263         * doc/lispref/syntax.texi (Categories): Untabify the example.
23264         (Bug#21448)
23266 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
23268         Define internal-char-font even if --without-x
23269         The function is used now even in non-graphical environments.
23270         Problem reported by Glenn Morris in:
23271         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00401.html
23272         * src/font.c (Finternal_char_font): Move here ...
23273         * src/fontset.c (Finternal_char_font): ... from here.
23275 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
23277         * lisp/emacs-lisp/cl-generic.el (cl-generic-generalizers):
23278         Remove warning.
23280 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
23282         Fix display of complex local data types in GDB-MI
23283         * lisp/progmodes/gdb-mi.el (gdb-locals-handler-custom): If a
23284         variable has no value, display "<complex data type>" as a
23285         placeholder, instead of a confusing "nil".  (Bug#21438)
23287 2015-09-09  Oleh Krehel  <ohwoeowho@gmail.com>
23289         Remove redundant redefinition of seq-drop-while from seq.el
23290         * lisp/emacs-lisp/seq.el (seq-drop-while): Define only once.
23292 2015-09-09  Phil Sainty  <psainty@orcon.net.nz>
23294         * lisp/emacs-lisp/package.el (package--ensure-init-file):
23295         More robust check for `package-initialize' calls in init file.
23296         This function accepts an optional argument, but calls passing
23297         an argument would not have been detected.
23299 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
23301         Port movemail to RHEL 6 with --enable-gcc-warnings
23302         * lib-src/movemail.c (main): Declare local only if needed.
23304         Port recent Linux console changes to RHEL 6
23305         * src/terminal.c [HAVE_LINUX_KD_H]: Include <sys/ioctl.h>.
23307         Improvements for curved quotes on Linux consule
23308         This should help Emacs work better out-of-the-box on Linux consoles,
23309         which have only limited support for displaying Unicode characters.
23310         Also, undo the recent change that caused text-quoting-style to
23311         affect quote display on terminals, so that the two features are
23312         independent.  See Alan Mackenzie in:
23313         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00244.html
23314         Finally, add a style parameter to startup--setup-quote-display,
23315         so that this function can also be invoked after startup, with
23316         different styles depending on user preference at the time.
23317         * configure.ac: Check for linux/kd.h header.
23318         * doc/emacs/display.texi (Text Display): Document quote display.
23319         * doc/lispref/display.texi (Active Display Table):
23320         * etc/NEWS:
23321         * lisp/startup.el (startup--setup-quote-display, command-line):
23322         text-quoting-style no longer affects quote display.
23323         * doc/lispref/frames.texi (Terminal Parameters): Fix typo.
23324         * lisp/international/mule-util.el (char-displayable-p):
23325         * lisp/startup.el (startup--setup-quote-display):
23326         On a text terminal supporting glyph codes, use the reported
23327         glyph codes instead of the terminal coding system, as this
23328         is more accurate on the Linux console.
23329         * lisp/startup.el (startup--setup-quote-display):
23330         New optional arg STYLE.
23331         * src/fontset.c (Finternal_char_font):
23332         Report glyph codes for a text terminal, if they are available.
23333         Currently this is supported only for the Linux console.
23334         * src/termhooks.h (struct terminal): New member glyph-code-table.
23335         * src/terminal.c [HAVE_LINUX_KD_H]: Include <errno.h>, <linux/kd.h>.
23336         (calculate_glyph_code_table) [HAVE_LINUX_KD_H]: New function.
23337         (terminal_glyph_code): New function.
23339 2015-09-08  Juri Linkov  <juri@linkov.net>
23341         * lisp/info.el (Info-fontify-node): Don't stop at the non-title
23342         underline.  (Bug#21433)
23344 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
23346         * lisp/calendar/time-date.el (with-decoded-time-value): Fix debug spec.
23348 2015-09-08  Tassilo Horn  <tsdh@gnu.org>
23350         Fix double-reporting of rename events with inotify
23351         * lisp/filenotify.el (file-notify-callback): Fix double-reporting
23352         of rename events with inotify (bug#21435).
23354 2015-09-08  Vasilij Schneidermann  <v.schneidermann@gmail.com>  (tiny change)
23356         * lisp/play/tetris.el (tetris-move-down): New command (bug#21360).
23357         (tetris-mode-map): Use it.
23359 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
23361         Remove a few simple cases of global redisplay
23362         * src/dispnew.c (redraw_frame): Don't redisplay all frames.
23363         * src/xdisp.c (echo_area_display): Set the frame's `redisplay' bit
23364         rather than returning a "resized_p" boolean.
23365         (redisplay_internal): Adjust call accordingly.
23366         * src/xfaces.c (free_realized_faces): Don't redisplay all frames.
23367         (free_all_realized_faces): Set windows_or_buffers_changed so as to ease
23368         tracking of this undesirable situation.
23370         * src/process.c (status_notify): Avoid global redisplay (bug#11822)
23371         * src/process.c (status_notify): Only set the update_mode_line on the
23372         relevant buffers rather than setting it globally.
23374 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
23376         * lisp/electric.el (electric-quote-post-self-insert-function):
23377         Don't use syntax-ppss if comment-use-syntax is nil (e.g. message-mode).
23378         (electric-quote-mode): Activate everywhere in message-mode.
23380 2015-09-07  Paul Eggert  <eggert@cs.ucla.edu>
23382         Go back to grave quoting in source-code docstrings etc.
23383         This reverts almost all my recent changes to use curved quotes
23384         in docstrings and/or strings used for error diagnostics.
23385         There are a few exceptions, e.g., Bahá’í proper names.
23386         * admin/unidata/unidata-gen.el (unidata-gen-table):
23387         * lisp/abbrev.el (expand-region-abbrevs):
23388         * lisp/align.el (align-region):
23389         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet)
23390         (outlineify-sticky):
23391         * lisp/apropos.el (apropos-library):
23392         * lisp/bookmark.el (bookmark-default-annotation-text):
23393         * lisp/button.el (button-category-symbol, button-put)
23394         (make-text-button):
23395         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
23396         * lisp/calc/calc-embed.el (calc-do-embedded):
23397         * lisp/calc/calc-ext.el (calc-user-function-list):
23398         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
23399         * lisp/calc/calc-help.el (calc-describe-key)
23400         (calc-describe-thing, calc-full-help):
23401         * lisp/calc/calc-lang.el (calc-c-language)
23402         (math-parse-fortran-vector-end, math-parse-tex-sum)
23403         (math-parse-eqn-matrix, math-parse-eqn-prime)
23404         (calc-yacas-language, calc-maxima-language, calc-giac-language)
23405         (math-read-giac-subscr, math-read-math-subscr)
23406         (math-read-big-rec, math-read-big-balance):
23407         * lisp/calc/calc-misc.el (calc-help, report-calc-bug):
23408         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
23409         (calc-auto-recompute):
23410         * lisp/calc/calc-prog.el (calc-fix-token-name)
23411         (calc-read-parse-table-part, calc-user-define-invocation)
23412         (math-do-arg-check):
23413         * lisp/calc/calc-store.el (calc-edit-variable):
23414         * lisp/calc/calc-units.el (math-build-units-table-buffer):
23415         * lisp/calc/calc-vec.el (math-read-brackets):
23416         * lisp/calc/calc-yank.el (calc-edit-mode):
23417         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
23418         * lisp/calendar/appt.el (appt-display-message):
23419         * lisp/calendar/diary-lib.el (diary-check-diary-file)
23420         (diary-mail-entries, diary-from-outlook):
23421         * lisp/calendar/icalendar.el (icalendar-export-region)
23422         (icalendar--convert-float-to-ical)
23423         (icalendar--convert-date-to-ical)
23424         (icalendar--convert-ical-to-diary)
23425         (icalendar--convert-recurring-to-diary)
23426         (icalendar--add-diary-entry):
23427         * lisp/calendar/time-date.el (format-seconds):
23428         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
23429         (timeclock-make-hours-explicit, timeclock-log-data):
23430         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
23431         (todo-item-mark, todo-check-format)
23432         (todo-insert-item--next-param, todo-edit-item--next-key)
23433         (todo-mode):
23434         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
23435         * lisp/cedet/mode-local.el (describe-mode-local-overload)
23436         (mode-local-print-binding, mode-local-describe-bindings-2):
23437         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
23438         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
23439         * lisp/cus-start.el (standard):
23440         * lisp/cus-theme.el (describe-theme-1):
23441         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
23442         (custom--sort-vars-1, load-theme):
23443         * lisp/descr-text.el (describe-text-properties-1, describe-char):
23444         * lisp/dired-x.el (dired-do-run-mail):
23445         * lisp/dired.el (dired-log):
23446         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
23447         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
23448         (ad-disable-advice, ad-remove-advice, ad-set-argument)
23449         (ad-set-arguments, ad--defalias-fset, ad-activate)
23450         (ad-deactivate):
23451         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
23452         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
23453         (byte-optimize-while, byte-optimize-apply):
23454         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
23455         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
23456         (byte-compile-log-file, byte-compile-format-warn)
23457         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
23458         (byte-compile-cl-warn)
23459         (byte-compile-warn-about-unresolved-functions)
23460         (byte-compile-file, byte-compile--declare-var)
23461         (byte-compile-file-form-defmumble, byte-compile-form)
23462         (byte-compile-normal-call, byte-compile-check-variable)
23463         (byte-compile-variable-ref, byte-compile-variable-set)
23464         (byte-compile-subr-wrong-args, byte-compile-setq-default)
23465         (byte-compile-negation-optimizer)
23466         (byte-compile-condition-case--old)
23467         (byte-compile-condition-case--new, byte-compile-save-excursion)
23468         (byte-compile-defvar, byte-compile-autoload)
23469         (byte-compile-lambda-form)
23470         (byte-compile-make-variable-buffer-local, display-call-tree)
23471         (batch-byte-compile):
23472         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use):
23473         * lisp/emacs-lisp/chart.el (chart-space-usage):
23474         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
23475         (check-declare-warn, check-declare-file)
23476         (check-declare-directory):
23477         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
23478         (checkdoc-message-text-engine):
23479         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer)
23480         (cl--describe-class):
23481         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
23482         (cl--generic-describe, cl-generic-generalizers):
23483         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
23484         (cl-symbol-macrolet):
23485         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
23486         * lisp/emacs-lisp/copyright.el (copyright)
23487         (copyright-update-directory):
23488         * lisp/emacs-lisp/edebug.el (edebug-read-list):
23489         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
23490         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
23491         (eieio-oref):
23492         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
23493         * lisp/emacs-lisp/eieio-speedbar.el:
23494         (eieio-speedbar-child-make-tag-lines)
23495         (eieio-speedbar-child-description):
23496         * lisp/emacs-lisp/eieio.el (defclass, change-class):
23497         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
23498         (elint-init-form, elint-check-defalias-form)
23499         (elint-check-let-form):
23500         * lisp/emacs-lisp/ert.el (ert-get-test, ert-results-mode-menu)
23501         (ert-results-pop-to-backtrace-for-test-at-point)
23502         (ert-results-pop-to-messages-for-test-at-point)
23503         (ert-results-pop-to-should-forms-for-test-at-point)
23504         (ert-describe-test):
23505         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
23506         (find-function-library):
23507         * lisp/emacs-lisp/generator.el (iter-yield):
23508         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
23509         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
23510         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
23511         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
23512         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
23513         (advice--make, define-advice):
23514         * lisp/emacs-lisp/package-x.el (package-upload-file):
23515         * lisp/emacs-lisp/package.el (package-version-join)
23516         (package-disabled-p, package-activate-1, package-activate)
23517         (package--download-one-archive)
23518         (package--download-and-read-archives)
23519         (package-compute-transaction, package-install-from-archive)
23520         (package-install, package-install-selected-packages)
23521         (package-delete, package-autoremove, describe-package-1)
23522         (package-install-button-action, package-delete-button-action)
23523         (package-menu-hide-package, package-menu--list-to-prompt)
23524         (package-menu--perform-transaction)
23525         (package-menu--find-and-notify-upgrades):
23526         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
23527         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
23528         * lisp/emacs-lisp/ring.el (ring-previous, ring-next):
23529         * lisp/emacs-lisp/rx.el (rx-check, rx-anything)
23530         (rx-check-any-string, rx-check-any, rx-check-not, rx-=)
23531         (rx-repeat, rx-check-backref, rx-syntax, rx-check-category)
23532         (rx-form):
23533         * lisp/emacs-lisp/smie.el (smie-config-save):
23534         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
23535         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
23536         * lisp/emacs-lisp/testcover.el (testcover-1value):
23537         * lisp/emacs-lisp/timer.el (timer-event-handler):
23538         * lisp/emulation/viper-cmd.el (viper-toggle-parse-sexp-ignore-comments)
23539         (viper-toggle-search-style, viper-kill-buffer)
23540         (viper-brac-function):
23541         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
23542         * lisp/env.el (setenv):
23543         * lisp/erc/erc-button.el (erc-nick-popup):
23544         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login, english):
23545         * lisp/eshell/em-dirs.el (eshell/cd):
23546         * lisp/eshell/em-glob.el (eshell-glob-regexp)
23547         (eshell-glob-entries):
23548         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
23549         * lisp/eshell/esh-opt.el (eshell-show-usage):
23550         * lisp/facemenu.el (facemenu-add-new-face)
23551         (facemenu-add-new-color):
23552         * lisp/faces.el (read-face-name, read-face-font, describe-face)
23553         (x-resolve-font-name):
23554         * lisp/files-x.el (modify-file-local-variable):
23555         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
23556         (set-auto-mode, hack-one-local-variable--obsolete)
23557         (dir-locals-set-directory-class, write-file, basic-save-buffer)
23558         (delete-directory, copy-directory, recover-session)
23559         (recover-session-finish, insert-directory)
23560         (file-modes-char-to-who, file-modes-symbolic-to-number)
23561         (move-file-to-trash):
23562         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer):
23563         * lisp/find-cmd.el (find-generic, find-to-string):
23564         * lisp/finder.el (finder-commentary):
23565         * lisp/font-lock.el (font-lock-fontify-buffer):
23566         * lisp/format.el (format-write-file, format-find-file)
23567         (format-insert-file):
23568         * lisp/frame.el (get-device-terminal, select-frame-by-name):
23569         * lisp/fringe.el (fringe--check-style):
23570         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
23571         * lisp/help-fns.el (help-fns--key-bindings)
23572         (help-fns--compiler-macro, help-fns--parent-mode)
23573         (help-fns--obsolete, help-fns--interactive-only)
23574         (describe-function-1, describe-variable):
23575         * lisp/help.el (describe-mode)
23576         (describe-minor-mode-from-indicator):
23577         * lisp/image.el (image-type):
23578         * lisp/international/ccl.el (ccl-dump):
23579         * lisp/international/fontset.el (x-must-resolve-font-name):
23580         * lisp/international/mule-cmds.el (prefer-coding-system)
23581         (select-safe-coding-system-interactively)
23582         (select-safe-coding-system, activate-input-method)
23583         (toggle-input-method, describe-current-input-method)
23584         (describe-language-environment):
23585         * lisp/international/mule-conf.el (code-offset):
23586         * lisp/international/mule-diag.el (describe-character-set)
23587         (list-input-methods-1):
23588         * lisp/mail/feedmail.el (feedmail-run-the-queue):
23589         * lisp/mouse.el (minor-mode-menu-from-indicator):
23590         * lisp/mpc.el (mpc-playlist-rename):
23591         * lisp/msb.el (msb--choose-menu):
23592         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
23593         * lisp/net/imap.el (imap-interactive-login):
23594         * lisp/net/mairix.el (mairix-widget-create-query):
23595         * lisp/net/newst-backend.el (newsticker--sentinel-work):
23596         * lisp/net/newst-treeview.el (newsticker--treeview-load):
23597         * lisp/net/rlogin.el (rlogin):
23598         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
23599         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
23600         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
23601         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
23602         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
23603         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
23604         (org-babel-goto-named-result):
23605         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
23606         * lisp/org/ob-ref.el (org-babel-ref-resolve):
23607         * lisp/org/org-agenda.el (org-agenda-prepare):
23608         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
23609         (org-clock-resolve):
23610         * lisp/org/org-ctags.el (org-ctags-ask-rebuild-tags-file-then-find-tag):
23611         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
23612         * lisp/org/org-habit.el (org-habit-parse-todo):
23613         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
23614         (org-mouse-context-menu):
23615         * lisp/org/org-table.el (org-table-edit-formulas):
23616         * lisp/org/ox.el (org-export-async-start):
23617         * lisp/proced.el (proced-log):
23618         * lisp/progmodes/ada-mode.el (ada-get-indent-case)
23619         (ada-check-matching-start, ada-goto-matching-start):
23620         * lisp/progmodes/ada-prj.el (ada-prj-display-page):
23621         * lisp/progmodes/ada-xref.el (ada-find-executable):
23622         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
23623         * lisp/progmodes/etags.el (etags-tags-apropos-additional):
23624         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
23625         (flymake-start-syntax-check-process):
23626         * lisp/progmodes/python.el (python-shell-get-process-or-error)
23627         (python-define-auxiliary-skeleton):
23628         * lisp/progmodes/sql.el (sql-comint):
23629         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
23630         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate):
23631         * lisp/recentf.el (recentf-open-files):
23632         * lisp/replace.el (query-replace-read-from)
23633         (occur-after-change-function, occur-1):
23634         * lisp/scroll-bar.el (scroll-bar-columns):
23635         * lisp/server.el (server-get-auth-key):
23636         * lisp/simple.el (execute-extended-command)
23637         (undo-outer-limit-truncate, list-processes--refresh)
23638         (compose-mail, set-variable, choose-completion-string)
23639         (define-alternatives):
23640         * lisp/startup.el (site-run-file, tty-handle-args, command-line)
23641         (command-line-1):
23642         * lisp/subr.el (noreturn, define-error, add-to-list)
23643         (read-char-choice, version-to-list):
23644         * lisp/term/common-win.el (x-handle-xrm-switch)
23645         (x-handle-name-switch, x-handle-args):
23646         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
23647         * lisp/textmodes/reftex-ref.el (reftex-label):
23648         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
23649         * lisp/textmodes/two-column.el (2C-split):
23650         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
23651         (tutorial--find-changed-keys):
23652         * lisp/type-break.el (type-break-noninteractive-query):
23653         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
23654         (wdired-do-perm-changes):
23655         * lisp/whitespace.el (whitespace-report-region):
23656         Prefer grave quoting in source-code strings used to generate help
23657         and diagnostics.
23658         * lisp/faces.el (face-documentation):
23659         No need to convert quotes, since the result is a docstring.
23660         * lisp/info.el (Info-virtual-index-find-node)
23661         (Info-virtual-index, info-apropos):
23662         Simplify by generating only curved quotes, since info files are
23663         typically that ways nowadays anyway.
23664         * lisp/international/mule-diag.el (list-input-methods):
23665         Don’t assume text quoting style is curved.
23666         * lisp/org/org-bibtex.el (org-bibtex-fields):
23667         Revert my recent changes, going back to the old quoting style.
23669 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
23671         * lisp/emacs-lisp/package.el: Reduce autoloading before compiling.
23672         (package--autoloads-file-name)
23673         (package--activate-autoloads-and-load-path): New function.
23674         (package-activate-1): Delegate autoloading and load-path
23675         configuration to `package--activate-autoloads-and-load-path'.
23676         (package--compile): Before compilation, call
23677         `package--activate-autoloads-and-load-path' instead of
23678         `package-activate-1'.
23680 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
23682         * src/keyboard.c (read_key_sequence): Complete last fix (bug#21403).
23684 2015-09-07  Eli Zaretskii  <eliz@gnu.org>
23686         Fix deletion of symlinks to directories on MS-Windows
23687         * src/w32.c (sys_unlink): If 'unlink' fails, and the argument is a
23688         symlink to a directory, try again with 'rmdir'.
23689         (is_symlink): If the argument is a symlink to a directory, set a
23690         bit in the return value to indicate that fact.
23692 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
23694         * lisp/emacs-lisp/package.el (package-initialize): Set enable-at-startup
23695         When `package-initialize' is called as part of loading the init file,
23696         the user probably doesn't want it to be called again afterwards.
23697         In this situation, `package-initialize' now sets
23698         `package-enable-at-startup' to nil to prevent that.  The user can have
23699         the old behavior by setting this variable to t after the call to
23700         `package-initialize'.  (Bug#21423)
23701         * doc/emacs/package.texi (Package Installation): Document it.
23702         * doc/lispref/package.texi (Packaging Basics): Document it.
23703         * etc/NEWS: Document it.
23705 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
23707         Bump version of ntlm.el to 2.00
23708         * lisp/net/ntlm.el: Bump version to 2.00.  New maintainer.
23709         Add comm keyword.
23711 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
23713         * doc/misc/gnus.texi (Mail Source Specifiers):
23714         Allow :mailbox to be a list.
23716 2015-09-06  Dmitry Gutov  <dgutov@yandex.ru>
23718         * lisp/progmodes/etags.el (etags-tags-completion-table):
23719         Allow even one non-regular character before the implicit tag name.
23720         Reported at http://emacs.stackexchange.com/questions/15269/.
23722 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
23724         Add support for NTLMv2 authentication
23725         * lisp/net/ntlm.el (ntlm): New customization group.
23726         (ntlm-compatibility-level): New defcustom.
23727         (ntlm-compute-timestamp): New function.
23728         (ntlm-generate-nonce): Likewise.
23729         (ntlm-build-auth-response): Add support for NTLMv2 authentication.
23731 2015-09-06  Artur Malabarba  <bruce.connor.am@gmail.com>
23733         * lisp/emacs-lisp/package.el: Rename custom faces.
23734         All of the recently introduced faces, like `package-name-face', have
23735         been renamed to no end in `-face' to comply with the convention
23736         described in (info "(elisp) Defining Faces").
23737         (package-name, package-description)
23738         (package-status-built-in, package-status-external)
23739         (package-status-available, package-status-new)
23740         (package-status-held, package-status-disabled)
23741         (package-status-installed, package-status-dependency)
23742         (package-status-unsigned, package-status-incompat)
23743         (package-status-avail-obso): New faces.
23744         (package-menu--print-info-simple): Use them.
23746 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
23748         mail-source.el: Make the imap mail-source's :mailbox handle a list
23749         * lisp/gnus/mail-source.el (mail-source-fetch-imap):
23750         Allow :mailbox to be  a list.
23752 2015-09-06  Eric Abrahamsen  <eric@ericabrahamsen.net>
23754         nnimap.el: Handle nil arg to nnimap-request-group
23755         * lisp/gnus/nnimap.el (nnimap-request-group): Handle nil "info" arg.
23756         This arg isn't always passed in, check it's not nil before making it
23757         into a list.  The active arg will also be nil if the group is new,
23758         check for that.
23760 2015-09-06  Michael Albinus  <michael.albinus@gmx.de>
23762         File notifications: Support renaming over directory boundaries
23763         * lisp/filenotify.el (file-notify-handle-event):
23764         (file-notify--pending-event): Adapt docstring.
23765         (file-notify--descriptor, file-notify-callback): Reimplement in
23766         order to support renaming over directory boundaries.
23767         (file-notify-add-watch): Adapt `file-notify--descriptor' call.
23768         * doc/lispref/os.texi (File Notifications): Remove limitation of
23769         file renaming to the same directory.
23771 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
23773         Spelling fix (Bug#21420)
23775 2015-09-05  Nicolas Petton  <nicolas@petton.fr>
23777         Improve the semantic of map-some
23778         Update map-some to return the returned by the predicate, similar to
23779         seq-some.
23780         * lisp/emacs-lisp/map.el (map-some): Update the function to return the
23781           return value of the predicate.
23782         * test/automated/map-tests.el (test-map-some): Update the test to check
23783           for non-nil values only.
23785         Rename map-contains-key-p and map-some-p
23786         Remove the "-p" suffix from both function names.
23787         * lisp/emacs-lisp/map.el (map-contains-key, map-some):
23788           Rename the functions.
23789         * test/automated/map-tests.el (test-map-contains-key, test-map-some):
23790           Update both test functions.
23792         Improve the semantic of seq-some
23793         Update seq-some to return non-nil if the predicate returns non-nil for
23794         any element of the seq, in which case the returned value is the one
23795         returned by the predicate.
23796         * lisp/emacs-lisp/seq.el (seq-some): Update the function and its
23797           docstring.
23798         * test/automated/seq-tests.el (test-seq-some): Add a regression test.
23799         * doc/lispref/sequences.texi (Sequence Functions): Update the
23800           documentation for seq-some.
23802         Rename seq-some-p to seq-some and seq-contains-p to seq-contains
23803         * lisp/emacs-lisp/seq.el (seq-some, seq-contains): Rename the functions
23804           without the "-p" prefix.
23805         * test/automated/seq-tests.el (test-seq-some, test-seq-contains): Update
23806           the tests accordingly.
23807         * doc/lispref/sequences.texi (Sequence Functions): Update the
23808           documentation for seq.el.
23810 2015-09-05  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
23812         text-quoting-style for usage of fn names with ‘’
23813         * lisp/help.el (help--docstring-quote): Don’t assume
23814         text-quoting-style is ‘curve’ when generating usage strings for
23815         functions whose names contain curved quotes.
23817 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
23819         Fix fix for describe-function keybinding confusion
23820         This fixes a bug introduced by the previous patch.
23821         * lisp/help-fns.el (help-fns--signature):
23822         Last arg of help-fns--signature is now a buffer, or nil if a
23823         raw signature is wanted.  All callers changed.
23824         (describe-function-1): Use this to do the right thing with signatures.
23826 2015-09-05  Johan Bockgård  <bojohan@gnu.org>
23828         * doc/lispref/frames.texi (Mouse Tracking): Fix typo.
23830         Use PAT rather than UPAT in pcase macros
23831         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
23832         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>: Use PAT rather
23833           than UPAT.
23835 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
23837         Fix describe-function keybinding confusion
23838         * lisp/help-fns.el (describe-function-1): Compute signature
23839         in the original buffer, not in standard-output, so that
23840         substitute-command-keys uses the proper keybindings.
23841         This fixes Bug#21412, introduced in commit
23842         2015-06-11T10:23:46-0700!eggert@cs.ucla.edu.
23844 2015-09-05  Xue Fuqiao  <xfq.free@gmail.com>
23846         * doc/emacs/programs.texi (Program Modes): Remove an index entry.
23848 2015-09-05  Robert Pluim  <rpluim@gmail.com>  (tiny change)
23850         Avoid read error messages from 'inotify'
23851         * src/process.c (wait_reading_process_output): Add a
23852         'tls_available' set and manipulate it instead of 'Available' when
23853         checking TLS inputs.  Assign the value to 'Available' only if we
23854         find any TLS data waiting to be read.  This avoids error messages
23855         from 'inotify' that tries to read data it shouldn't.  (Bug#21337)
23857 2015-09-05  Eli Zaretskii  <eliz@gnu.org>
23859         Avoid errors in thing-at-point with 2nd argument non-nil
23860         * lisp/thingatpt.el (thing-at-point): Only call 'length' on
23861         sequences.  (Bug#21391)
23863 2015-09-05  Pip Cet  <pipcet@gmail.com>  (tiny change)
23865         Fix segfaults due to using a stale face ID
23866         * src/xdisp.c (forget_escape_and_glyphless_faces): New function.
23867         (display_echo_area_1, redisplay_internal): Call it to avoid
23868         reusing stale face IDs for 'escape-glyph' and 'glyphless-char'
23869         faces, which could case a segfault if the frame's face cache was
23870         freed since the last redisplay.  (Bug#21394)
23871         * src/xfaces.c (free_realized_faces):
23872         Call forget_escape_and_glyphless_faces.
23873         * src/dispextern.h (forget_escape_and_glyphless_faces): Add prototype.
23875 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
23877         Fix minor problems with " in manual
23879 2015-09-04  Michael Albinus  <michael.albinus@gmx.de>
23881         * doc/misc/tramp.texi (Frequently Asked Questions): New item for ad-hoc
23882         multi-hop files.
23884 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
23886         Support automated ‘make check’ in non-C locale
23887         This lets the builder optionally test Emacs behavior in other locales.
23888         The C locale is still the default for tests.
23889         * test/automated/Makefile.in (TEST_LOCALE): New macro.
23890         (emacs): Use it.
23891         * test/automated/flymake-tests.el (flymake-tests--current-face):
23892         Use C locale for subprocesses so that tests behave as expected.
23893         * test/automated/python-tests.el:
23894         (python-shell-prompt-validate-regexps-1)
23895         (python-shell-prompt-validate-regexps-2)
23896         (python-shell-prompt-validate-regexps-3)
23897         (python-shell-prompt-validate-regexps-4)
23898         (python-shell-prompt-validate-regexps-5)
23899         (python-shell-prompt-validate-regexps-6)
23900         (python-shell-prompt-set-calculated-regexps-1):
23901         Adjust expected output to match locale.
23902         * test/automated/tildify-tests.el (tildify-test--test)
23903         (tildify-space-test--test, tildify-space-undo-test--test):
23904         This test assumes UTF-8 encoding.
23906 2015-09-03  Paul Eggert  <eggert@cs.ucla.edu>
23908         Fix some more docstring etc. quoting problems
23909         Mostly these fixes prevent the transliteration of apostrophes
23910         that should stay apostrophes.  Also, prefer curved quotes in
23911         Bahá’í proper names, as that’s the preferred Bahá’í style and
23912         these names are chock-full of non-ASCII characters anyway.
23913         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-autoload)
23914         (eieio-defclass-internal):
23915         * lisp/emacs-lisp/eieio.el (defclass):
23916         * lisp/hi-lock.el (hi-lock-mode):
23917         Don’t transliterate Lisp apostrophes when generating a
23918         doc string or diagnostic.
23919         * lisp/international/mule-diag.el (list-coding-systems-1):
23920         * lisp/international/ogonek.el (ogonek-jak, ogonek-how):
23921         * lisp/mail/sendmail.el (sendmail-query-user-about-smtp):
23922         * lisp/vc/ediff-mult.el (ediff-redraw-registry-buffer):
23923         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
23924         Substitute quotes before putting them in the help buffer.
23926 2015-09-03  Stefan Monnier  <monnier@iro.umontreal.ca>
23928         Re-add the notion of echo_prompt lost in the translation
23929         * src/keyboard.h (struct kboard): Replace echo_after_prompt with new
23930         echo_prompt which contains the actual string.  Update all uses.
23931         * src/keyboard.c (kset_echo_prompt): New function.
23932         (echo_update): Add echo_prompt at the very beginning.
23933         (read_char): Remove workaround for bug#19875, not needed any more.
23934         (read_key_sequence): Set echo_prompt rather than echo_string
23935         (bug#21403).
23936         (mark_kboards): Mark echo_prompt.
23938         Fix disassembly of non-compiled lexical functions (bug#21377)
23939         * lisp/emacs-lisp/bytecomp.el (byte-compile): Handle `closure' arg.
23940         * lisp/emacs-lisp/disass.el: Use lexical-binding.
23941         (disassemble): Recognize `closure's as well.
23942         (disassemble-internal): Use indirect-function and
23943         help-function-arglist, and accept `closure's.
23944         (disassemble-internal): Use interactive-form.
23945         (disassemble-1): Use functionp.
23947         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
23948         Don't compose inside verbatim blocks!
23950 2015-09-03  Mark Oteiza  <mvoteiza@udel.edu>
23952         * lisp/thingatpt.el (thing-at-point-uri-schemes): Add "man:"
23953         (bug#19441).
23955         * lisp/mpc.el (mpc--proc-connect): Handle unix sockets (bug#19394).
23957 2015-09-03  Dmitry Gutov  <dgutov@yandex.ru>
23959         vc-git-mode-line-string: Explicitly re-apply the face
23960         * lisp/vc/vc-git.el (vc-git-mode-line-string): Explicitly re-apply
23961         the face (bug#21404).
23963 2015-09-02  Paul Eggert  <eggert@cs.ucla.edu>
23965         Treat initial-scratch-message as a doc string
23966         * doc/emacs/building.texi (Lisp Interaction):
23967         * doc/lispref/os.texi (Startup Summary):
23968         * etc/NEWS: Document this.
23969         * lisp/startup.el (initial-scratch-message):
23970         Look up find-file’s key rather than hardcoding it.
23971         (command-line-1): Substitute the doc string.
23972         This also substitutes the quotes, which will help test display
23973         quoting at startup.
23975         Fix describe-char bug with glyphs on terminals
23976         * lisp/descr-text.el (describe-char): Terminals can have glyphs in
23977         buffers too, so don’t treat them differently from graphic displays.
23978         Without this fix, describe-char would throw an error on a terminal
23979         if given a glyph with a non-default face.
23981         Follow text-quoting-style in display table init
23982         This attempts to fix a problem reported by Alan Mackenzie in:
23983         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00112.html
23984         * doc/lispref/display.texi (Active Display Table):
23985         Mention how text-quoting-style affects it.
23986         * doc/lispref/help.texi (Keys in Documentation):
23987         Say how to set text-quoting-style in ~/.emacs.
23988         * etc/NEWS: Document the change.
23989         * lisp/startup.el (startup--setup-quote-display):
23990         Follow user preference if text-quoting-style is set.
23991         (command-line): Setup quote display again if user expresses
23992         a preference in .emacs.
23994 2015-09-02  K. Handa  <handa@gnu.org>
23996         Fix typo
23997         * src/ftfont.c (ftfont_drive_otf): otf_positioning_type_components_mask
23998         -> OTF_positioning_type_components_mask.
24000         Fix previous change
24001         * src/ftfont.c (ftfont_drive_otf): Remember some bits of
24002         OTF_Glyph->positioning_type in MFLTGlyphFT->libotf_positioning_type.
24004 2015-09-01  David Caldwell  <david@porkrind.org>  (tiny change)
24006         * lisp/vc/vc-hooks.el (vc-refresh-state): New command.
24007         Rename from vc-find-file-hook and make interactive.
24008         (vc-find-file-hook): Redefine as obsolete alias.
24010 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
24012         Escape ` and ' in doc
24013         Escape apostrophes and grave accents in docstrings if they are
24014         are supposed to stand for themselves and are not quotes.  Remove
24015         apostrophes from docstring examples like ‘'(calendar-nth-named-day
24016         -1 0 10 year)’ that confuse source code with data.  Do some other
24017         minor docstring fixups as well, e.g., insert a missing close quote.
24019 2015-09-01  Stefan Monnier  <monnier@iro.umontreal.ca>
24021         Generalize the prefix-command machinery of C-u
24022         * lisp/simple.el (prefix-command-echo-keystrokes-functions)
24023         (prefix-command-preserve-state-hook): New hooks.
24024         (internal-echo-keystrokes-prefix): New function.
24025         (prefix-command--needs-update, prefix-command--last-echo): New vars.
24026         (prefix-command-update, prefix-command-preserve): New functions.
24027         (reset-this-command-lengths): New compatibility definition.
24028         (universal-argument--mode): Call prefix-command-update.
24029         (universal-argument, universal-argument-more, negative-argument)
24030         (digit-argument): Call prefix-command-preserve-state.
24031         * src/keyboard.c: Call internal-echo-keystrokes-prefix to build
24032         the "prefix argument" to echo.
24033         (this_command_key_count_reset, before_command_key_count)
24034         (before_command_echo_length): Delete variables.
24035         (echo_add_key): Always add a space.
24036         (echo_char): Remove.
24037         (echo_dash): Don't give up when this_command_key_count is 0, since that
24038         is now the case after a prefix command.
24039         (echo_update): New function, extracted from echo_now.
24040         (echo_now): Use it.
24041         (add_command_key, read_char, record_menu_key): Remove old disabled code.
24042         (command_loop_1): Don't refrain from pushing an undo boundary when
24043         prefix-arg is set.  Remove other prefix-arg special case, now handled
24044         directly in the prefix commands instead.  But call echo_now if there's
24045         a prefix state to echo.
24046         (read_char, record_menu_key): Use echo_update instead of echo_char.
24047         (read_key_sequence): Use echo_now rather than echo_dash/echo_char.
24048         (Freset_this_command_lengths): Delete function.
24049         (syms_of_keyboard): Define Qinternal_echo_keystrokes_prefix.
24050         (syms_of_keyboard): Don't defsubr Sreset_this_command_lengths.
24051         * lisp/simple.el: Use those new hooks for C-u.
24052         (universal-argument--description): New function.
24053         (prefix-command-echo-keystrokes-functions): Use it.
24054         (universal-argument--preserve): New function.
24055         (prefix-command-preserve-state-hook): Use it.
24056         (command-execute): Call prefix-command-update if needed.
24057         * lisp/kmacro.el (kmacro-step-edit-prefix-commands)
24058         (kmacro-step-edit-prefix-index): Delete variables.
24059         (kmacro-step-edit-query, kmacro-step-edit-insert): Remove ad-hoc
24060         support for prefix arg commands.
24061         (kmacro-step-edit-macro): Don't bind kmacro-step-edit-prefix-index.
24062         * lisp/emulation/cua-base.el (cua--prefix-override-replay)
24063         (cua--shift-control-prefix): Use prefix-command-preserve-state.
24064         Remove now unused arg `arg'.
24065         (cua--prefix-override-handler, cua--prefix-repeat-handler)
24066         (cua--shift-control-c-prefix, cua--shift-control-x-prefix):
24067         Update accordingly.
24068         (cua--prefix-override-timeout): Don't call reset-this-command-lengths
24069         any more.
24070         (cua--keep-active, cua-exchange-point-and-mark): Don't set mark-active
24071         if the mark is not set.
24073 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
24075         Rework quoting in Emacs Lisp Introduction
24076         * doc/lispintro/emacs-lisp-intro.texi (Sample let Expression)
24077         (if in more detail, type-of-animal in detail, else): Rework the
24078         early example to use " rather than ' so that we don’t burden
24079         complete novices with the low-priority detail of text quoting style.
24080         (Complete zap-to-char, kill-region, Complete copy-region-as-kill)
24081         (kill-new function, kill-ring-yank-pointer)
24082         (Complete forward-sentence, Loading Files)
24083         (Code for current-kill, Code for current-kill, yank):
24084         Resurrect the Emacs 22 versions of the code, which uses grave
24085         quoting style in doc strings.
24086         (Complete zap-to-char): Mention how quoting works in doc strings.
24088         Setup quote display only if interactive
24089         * lisp/startup.el (command-line):
24090         Skip call to startup--setup-quote-display if noninteractive.
24091         Without this change, python-shell-prompt-validate-regexps-1
24092         fails in test/automated/python-tests.el when run in an
24093         en_US.utf8 locale on Fedora.
24095 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
24097         Use defalias at the top level
24098         * lisp/gnus/gnus-util.el (gnus-format-message):
24099         * lisp/net/tls.el (tls-format-message): Use defalias at the top level
24100         so as to make eval-and-compile unnecessary.  Thanks to Stefan Monnier.
24102 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
24104         terminal-init-w32console mimics command-line
24105         Problem reported by Eli Zaretskii.
24106         * lisp/startup.el (startup--setup-quote-display):
24107         New function, refactored from a part of ‘command-line’.
24108         (command-line): Use it.
24109         * lisp/term/w32console.el (terminal-init-w32console):
24110         Use it, so that this function stays consistent with ‘command-line’.
24112         Display replacement quotes with shadow glyphs
24113         * lisp/startup.el (command-line): When displaying ASCII
24114         replacements for curved quotes, use a shadow glyph instead of a
24115         regular one, to avoid ambiguity.
24117 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
24119         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Mask "Password:".
24121 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
24123         Docstring fixes re quotes in C code
24124         Fix some docstring quoting problems, mostly by escaping apostrophe.
24126 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
24128         Some Tramp password fixes
24129         * lisp/net/tramp.el (tramp-clear-passwd): Clear also the passwords
24130         of the hops.
24131         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Move "-p" "Password:"
24132         at the beginning of the command.  Otherwise, it could be
24133         interpreted as password prompt if the remote host echoes the
24134         command.
24135         (tramp-remote-coding-commands): Add "openssl enc -base64".
24137 2015-09-01  Dmitry Gutov  <dgutov@yandex.ru>
24139         Make vc-git-working-revision always return the commit hash
24140         * lisp/vc/vc-git.el (vc-git-working-revision):
24141         Return the commit hash (bug#21383).
24142         (vc-git--symbolic-ref): New function, extracted from above.
24143         (vc-git-mode-line-string): Use it.
24145 2015-09-01  K. Handa  <handa@gnu.org>
24147         Use the new type MFLTGlyphFT for MFLTGlyphString.glyphs
24148         * src/ftfont.c (MFLTGlyphFT): New type.
24149         (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_drive_otf)
24150         (ftfont_shape_by_flt): Make MFLTGlyphFT the actual type of
24151         elements in the array MFLTGlyphString.glyphs.
24153 2015-09-01  Stephen Leake  <stephen_leake@stephe-leake.org>
24155         Improve comments in elisp-mode.el, elisp-mode-tests.el
24156         * lisp/progmodes/elisp-mode.el: Clean up FIXMEs, comments.
24158         Delete Emacs 25 test in mode-local.el
24159         * lisp/cedet/mode-local.el (describe-mode-local-overload):
24160         Fix missed an edit in previous commit.
24162         Show all known mode-local overrides in *Help*
24163         * lisp/cedet/mode-local.el (describe-mode-local-overload):
24164         Assume Emacs 25. Add all known mode-local overrides.
24166 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
24168         * lisp/gnus/gnus-sum.el (gnus-summary-search-article):
24169         Ensure that the article where the search word is found is displayed
24170         and pointed to in the summary buffer.
24172 2015-08-31  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
24174         * lisp/newcomment.el (comment-dwim): Use `use-region-p'.
24175         When the region is active, but is empty (length 0), act as though
24176         the region was not active; that is, put a comment at the end of
24177         the line.  (Bug#21119)
24179 2015-08-31  Katsumi Yamaoka  <yamaoka@jpl.org>
24181         Port tls.el to older Emacs
24182         * lisp/net/tls.el (tls-format-message):
24183         Alias to format-message, or format if not available.
24184         (open-tls-stream): Use it.
24186 2015-08-31  Rüdiger Sonderfeld  <ruediger@c-plusplus.net>
24188         hideif.el: Recognize .h++ as C++ header
24189         * lisp/progmodes/hideif.el (hide-ifdef-header-regexp): Add .h++.
24191         isearch: Document character folding mode
24192         * lisp/isearch.el (isearch-forward):
24193         Mention `isearch-toggle-character-fold' in doc string.
24195 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
24197         Quoting fixes in ERC and Eshell
24198         * lisp/erc/erc-autoaway.el (erc-autoaway-set-away):
24199         * lisp/erc/erc-backend.el (define-erc-response-handler):
24200         * lisp/erc/erc-fill.el (erc-fill-static-center):
24201         * lisp/eshell/em-dirs.el (eshell-save-some-last-dir):
24202         * lisp/eshell/em-glob.el (eshell-glob-entries):
24203         * lisp/eshell/em-hist.el (eshell-save-some-history):
24204         * lisp/eshell/em-unix.el (eshell-remove-entries, eshell/rm)
24205         (eshell-shuffle-files):
24206         * lisp/eshell/esh-cmd.el (eshell-do-eval):
24207         * lisp/eshell/esh-proc.el (eshell-process-interact)
24208         (eshell-query-kill-processes):
24209         Respect ‘text-quoting-style’ in diagnostics and doc strings.
24211         Quoting fixes in Gnus
24212         * lisp/gnus/gnus-agent.el:
24213         (gnus-agent-possibly-synchronize-flags-server):
24214         * lisp/gnus/gnus-art.el (gnus-article-browse-delete-temp-files):
24215         * lisp/gnus/gnus-eform.el (gnus-edit-form):
24216         * lisp/gnus/gnus-group.el (gnus-group-edit-group)
24217         (gnus-group-nnimap-edit-acl):
24218         * lisp/gnus/gnus-topic.el (gnus-topic-edit-parameters):
24219         * lisp/gnus/mail-source.el (mail-source-delete-old-incoming):
24220         * lisp/gnus/message.el (message-strip-subject-encoded-words)
24221         (message-check-recipients, message-send-form-letter):
24222         * lisp/gnus/mm-decode.el (mm-display-part):
24223         * lisp/gnus/mm-uu.el (mm-uu-pgp-signed-extract-1):
24224         * lisp/gnus/mml-smime.el (mml-smime-get-dns-cert)
24225         (mml-smime-get-ldap-cert):
24226         * lisp/gnus/spam-report.el (spam-report-process-queue):
24227         Respect ‘text-quoting-style’ in diagnostics.
24228         * lisp/gnus/gnus-art.el (article-display-face)
24229         * lisp/gnus/gnus-fun.el (gnus-display-x-face-in-from):
24230         Use straight quoting in email.
24231         * lisp/gnus/rfc2231.el (rfc2231-decode-encoded-string):
24232         Escape apostrophes in doc strings.
24234         Quoting fixes in lisp mail, mh-e, net, url
24235         * lisp/mail/emacsbug.el (report-emacs-bug)
24236         (report-emacs-bug-hook): Use straight quotes in outgoing email,
24237         * lisp/mail/feedmail.el (feedmail-message-action-help-blat):
24238         * lisp/mail/rmail.el (rmail-unknown-mail-followup-to):
24239         * lisp/mail/rmailout.el (rmail-output-read-file-name):
24240         * lisp/net/imap.el (imap-interactive-login):
24241         * lisp/net/tls.el (open-tls-stream):
24242         * lisp/url/url-auth.el (url-register-auth-scheme):
24243         Respect ‘text-quoting-style’ in diagnostics.
24244         * lisp/mh-e/mh-e.el (mh-sortm-args):
24245         Quote docstring example using text quotes, not as a Lisp quote.
24247 2015-08-31  Stephen Leake  <stephen_leake@stephe-leake.org>
24249         Fix some byte-compiler warnings in EDE
24250         This fixes a bug that caused ede-generic-new-autoloader to overwrite the
24251         existing autoloader list, rather than add to it.
24252         * lisp/cedet/ede/auto.el (ede-project-class-files): Delete obsolete name
24253         argument to eieio class constructor.
24254         (ede-show-supported-projects): New.
24255         (ede-add-project-autoload): Replace obsolete `eieio-object-name-string'
24256         with (oref ... name).
24257         (ede-auto-load-project): Use slot name, not initarg key.
24258         * lisp/cedet/ede/generic.el (ede-generic-load)
24259         (ede-generic-find-matching-target): Use slot name, not initarg key.
24260         (ede-find-target): Use oref-default on class name.
24261         (ede-generic-new-autoloader): Delete obsolete name argument to eieio
24262         class constructor.
24263         (ede-enable-generic-projects): Make project type names unique.
24265 2015-08-31  Eli Zaretskii  <eliz@gnu.org>
24267         Fix directory accessibility tests for w32 network volumes
24268         * src/w32.c (faccessat): Don't fail with network volumes without a
24269         share.
24270         (w32_accessible_directory_p): Handle network volumes without a
24271         share.
24273         Fix handling long file names in readdir on MS-Windows
24274         * src/w32.c (sys_readdir): Append "\*" to the directory after
24275         converting it to UTF-16/ANSI, not before, to avoid overflowing the
24276         260-character limit on file names in filename_to_utf16/ansi.
24278         Make file-accessible-directory-p reliable on MS-Windows
24279         * src/w32.c (w32_accessible_directory_p): New function.
24280         * src/w32.h (w32_accessible_directory_p): Add prototype.
24281         * src/fileio.c (file_accessible_directory_p) [WINDOWSNT]: Call
24282         w32_accessible_directory_p to test a directory for accessibility
24283         by the current user.  (Bug#21346)
24284         (Ffile_accessible_directory_p): Remove the w32 specific caveat
24285         from the doc string.
24287 2015-08-31  Martin Rudalics  <rudalics@gmx.at>
24289         Don't call do_pending_window_change in signal handlers (Bug#21380)
24290         * src/gtkutil.c (xg_frame_resized):
24291         * src/xterm.c (x_set_window_size):
24292         * src/w32term.c (x_set_window_size): Don't call
24293         do_pending_window_change.
24295 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
24297         Quoting fixes in lisp/org
24298         * lisp/org/org-agenda.el (org-search-view, org-todo-list)
24299         (org-tags-view):
24300         * lisp/org/org-capture.el (org-capture-mode)
24301         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
24302         (org-ctags-ask-append-topic):
24303         * lisp/org/org.el (org-time-string-to-time)
24304         (org-time-string-to-absolute):
24305         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
24306         (org-ctags-ask-append-topic):
24307         * lisp/org/org.el (org-time-string-to-time)
24308         (org-time-string-to-absolute):
24309         Respect ‘text-quoting-style’ in diagnostics.
24310         * lisp/org/org-agenda.el (org-agenda-custom-commands)
24311         (org-agenda-dim-blocked-tasks): Plural of TODO is TODOs, not TODO’s.
24312         * lisp/org/org-capture.el (org-capture-fill-template):
24313         Avoid contraction in output file that might be ASCII.
24314         * lisp/org/org-compat.el (format-message):
24315         Define if not already defined, for backward compatibility.
24316         * lisp/org/org-src.el (org-edit-src-save):
24317         * lisp/org/org.el (org-cycle, org-ctrl-c-ctrl-c):
24318         Escape apostrophes in diagnostics.
24320         Treat “instead” strings as docstrings
24321         * lisp/emacs-lisp/bytecomp.el (byte-compile-form):
24322         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
24323         Substitute quotes in instead strings.
24325 2015-08-31  Nicolas Petton  <nicolas@petton.fr>
24327         Better documentation of seq-let
24328         * doc/lispref/sequences.texi (Sequence Functions): Rephrase the
24329         documentation of seq-let.
24331 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
24333         * lisp/international/ccl.el: Fix quoting.
24335         Quoting fixes in lisp/international and lisp/leim
24336         * lisp/international/ccl.el (ccl-dump, ccl-dump-call):
24337         * lisp/international/ja-dic-utl.el (skkdic-lookup-key):
24338         * lisp/international/mule-cmds.el:
24339         (select-safe-coding-system-interactively, leim-list-file-name):
24340         * lisp/international/quail.el (quail-use-package, quail-help):
24341         * lisp/international/titdic-cnv.el (tit-process-header)
24342         (miscdic-convert):
24343         Respect text quoting style in doc strings and diagnostics.
24344         * lisp/international/quail.el (lisp/international/quail.el):
24345         * lisp/leim/quail/ethiopic.el ("ethiopic"):
24346         Escape apostrophes in doc strings.
24348         Make ‘text-quoting-style’ a plain defvar
24349         It doesn’t need customization, as it’s likely useful only by experts.
24350         Suggested by Stefan Monnier in:
24351         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg01020.html
24352         * lisp/cus-start.el: Remove doc.c section for builtin customized vars.
24354         Quoting fixes in lisp/textmodes
24355         * lisp/textmodes/bibtex.el (bibtex-validate)
24356         (bibtex-validate-globally, bibtex-search-entries):
24357         * lisp/textmodes/ispell.el (ispell-command-loop):
24358         * lisp/textmodes/page-ext.el (search-pages, pages-directory):
24359         * lisp/textmodes/texinfmt.el (texinfmt-version)
24360         (texinfo-format-region, texinfo-format-buffer-1):
24361         * lisp/textmodes/two-column.el (2C-split):
24362         Respect text quoting style in doc strings and diagnostics.
24363         * lisp/textmodes/conf-mode.el (conf-mode-map, conf-quote-normal):
24364         * lisp/textmodes/sgml-mode.el (sgml-specials, sgml-mode):
24365         Escape apostrophes in doc strings.
24367         Documentation fixes re quotes
24368         Prefer curved quotes in examples if users will typically see
24369         curved quotes when the examples run.
24370         Mention format-message when appropriate.
24371         Don’t use @code in examples.
24372         Quote an apostrophe with @kbd.
24374         Quoting fixes in lisp/progmodes
24375         * lisp/progmodes/cc-engine.el (c-bos-report-error):
24376         * lisp/progmodes/cpp.el (cpp-edit-reset):
24377         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
24378         * lisp/progmodes/etags.el (etags-tags-apropos-additional)
24379         (etags-tags-apropos, list-tags, tags-apropos):
24380         * lisp/progmodes/executable.el (executable-set-magic):
24381         * lisp/progmodes/octave.el (octave-sync-function-file-names)
24382         (octave-help, octave-find-definition-default-filename)
24383         (octave-find-definition):
24384         Respect text quoting style in doc strings and diagnostics.
24385         * lisp/progmodes/cc-langs.el (c-populate-syntax-table):
24386         * lisp/progmodes/verilog-mode.el (verilog-auto-reset-widths):
24387         * lisp/progmodes/vhdl-mode.el (vhdl-electric-quote):
24388         Escape apostrophes in doc strings.
24389         * lisp/progmodes/cmacexp.el (c-macro-expansion):
24390         Use straight quoting in ASCII comment.
24391         * lisp/progmodes/idlwave.el (idlwave-auto-fill-split-string)
24392         (idlwave-pad-keyword):
24393         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate)
24394         (vhdl-electric-open-bracket, vhdl-electric-close-bracket):
24395         (vhdl-electric-semicolon, vhdl-electric-comma)
24396         (vhdl-electric-period, vhdl-electric-equal):
24397         Use directed quotes in diagnostics and doc strings.
24399 2015-08-30  Xue Fuqiao  <xfq.free@gmail.com>
24401         Minor documentation and NEWS tweak
24402         * doc/lispintro/emacs-lisp-intro.texi (fwd-para let):
24403         Add an index entry.
24404         * etc/NEWS: Fix a typo in character-fold-to-regexp.
24406 2015-08-30  Michael Albinus  <michael.albinus@gmx.de>
24408         * lisp/net/tramp-sh.el (tramp-convert-file-attributes):
24409         Revert patch from 2015-08-24.  Tramp shall behave like for local files.
24410         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
24411         Adapt test.
24413 2015-08-30  Paul Eggert  <eggert@cs.ucla.edu>
24415         Text quoting fixes in cedet, emulation, emacs-lisp
24416         * lisp/cedet/ede.el (ede-check-project-directory):
24417         * lisp/cedet/semantic/analyze/debug.el
24418         (semantic-analyzer-debug-insert-include-summary):
24419         * lisp/cedet/semantic/bovine/c.el (semantic-c-describe-environment):
24420         * lisp/cedet/semantic/decorate/include.el
24421         (semantic-decoration-unknown-include-describe)
24422         (semantic-decoration-all-include-summary):
24423         * lisp/cedet/semantic/ia.el (semantic-ia-fast-jump):
24424         * lisp/emulation/edt.el (edt-load-keys):
24425         * lisp/emulation/viper-cmd.el
24426         (viper-display-current-destructive-command)
24427         (viper-query-replace, viper-brac-function):
24428         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-compile):
24429         * lisp/emulation/viper-macs.el (viper-unrecord-kbd-macro):
24430         Respect text quoting style in doc string or diagnostic.
24431         * lisp/cedet/mode-local.el (describe-mode-local-overload):
24432         Use format-message to avoid overtranslating quotes.
24433         * lisp/emacs-lisp/checkdoc.el (checkdoc-in-sample-code-p):
24434         Escape an apostrophe in a docstring.
24435         * lisp/emacs-lisp/warnings.el (lwarn): Fix doc string.
24437 2015-08-29  Daniel Colascione  <dancol@dancol.org>
24439         Fix which-func for curly quotes: look for symbol, not message
24440         * lisp/progmodes/which-func.el (which-func-ff-hook): Look for new
24441         imenu-unavailable error symbol instead of trying to match message
24442         exactly.
24443         * lisp/imenu.el (imenu-unavailable): New error.
24444         (imenu-unavailable-error): New function.
24446 2015-08-29  Eli Zaretskii  <eliz@gnu.org>
24448         Fix Python tests on MS-Windows
24449         * test/automated/python-tests.el
24450         (python-shell-calculate-command-1): Run python-shell-interpreter
24451         through shell-quote-argument before comparing with what
24452         python-shell-calculate-command returns.
24453         (python-shell-calculate-pythonpath-1)
24454         (python-shell-calculate-pythonpath-2)
24455         (python-shell-calculate-process-environment-2): Use path-separator
24456         instead of a literal ':'.
24457         (python-shell-calculate-exec-path-2)
24458         (python-shell-calculate-exec-path-3)
24459         (python-shell-calculate-exec-path-4)
24460         (python-shell-with-environment-1)
24461         (python-shell-with-environment-2): Run "/env/bin" through
24462         expand-file-name before comparing with exec-path.  (Bug#21375)
24464 2015-08-29  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
24466         Use Core Text types/functions/variables/enumerators directly
24467         * src/macfont.h (FontDescriptorRef, FontRef, FontSymbolicTraits)
24468         (CharacterCollection): Remove typedefs.  All uses replaced with
24469         definitions.
24470         (MAC_FONT_NAME_ATTRIBUTE, MAC_FONT_FAMILY_NAME_ATTRIBUTE)
24471         (MAC_FONT_TRAITS_ATTRIBUTE, MAC_FONT_SIZE_ATTRIBUTE)
24472         (MAC_FONT_CASCADE_LIST_ATTRIBUTE)
24473         (MAC_FONT_CHARACTER_SET_ATTRIBUTE, MAC_FONT_LANGUAGES_ATTRIBUTE)
24474         (MAC_FONT_FORMAT_ATTRIBUTE, MAC_FONT_SYMBOLIC_TRAIT)
24475         (MAC_FONT_WEIGHT_TRAIT, MAC_FONT_WIDTH_TRAIT)
24476         (MAC_FONT_SLANT_TRAIT): Remove macros.  All uses replaced with
24477         definitions.
24478         (MAC_FONT_TRAIT_ITALIC, MAC_FONT_TRAIT_BOLD)
24479         (MAC_FONT_TRAIT_MONO_SPACE, MAC_FONT_TRAIT_COLOR_GLYPHS)
24480         (MAC_FONT_FORMAT_BITMAP)
24481         (MAC_CHARACTER_COLLECTION_IDENTITY_MAPPING)
24482         (MAC_CHARACTER_COLLECTION_ADOBE_JAPAN1): Remove enumerators.
24483         All uses replaced with definitions.
24484         (kCTFontTraitItalic, kCTFontTraitBold, kCTFontTraitMonoSpace)
24485         (kCTFontTraitColorGlyphs, kCTCharacterCollectionIdentityMapping)
24486         (kCTCharacterCollectionAdobeJapan1 kCTFontOrientationDefault):
24487         Add compatibility enumerators for older versions.
24488         (mac_font_descriptor_create_with_attributes)
24489         (mac_font_descriptor_create_matching_font_descriptors)
24490         (mac_font_descriptor_create_matching_font_descriptor)
24491         (mac_font_descriptor_copy_attribute)
24492         (mac_font_descriptor_supports_languages)
24493         (mac_font_create_with_name, mac_font_get_size)
24494         (mac_font_copy_family_name, mac_font_copy_character_set)
24495         (mac_font_get_glyphs_for_characters, mac_font_get_ascent)
24496         (mac_font_get_descent, mac_font_get_leading)
24497         (mac_font_get_underline_position)
24498         (mac_font_get_underline_thickness, mac_font_copy_graphics_font)
24499         (mac_font_copy_non_synthetic_table): Remove macros.  All uses
24500         replaced with definitions.
24501         (mac_font_create_preferred_family_for_attributes)
24502         (mac_font_get_advance_width_for_glyph)
24503         (mac_font_get_bounding_rect_for_glyph)
24504         (mac_font_create_available_families, mac_font_shape):
24505         Remove macros for renamed functions.
24506         (mac_nsctfont_copy_font_descriptor): Remove unused macro.
24507         * src/macfont.m (mac_font_descriptor_supports_languages):
24508         Rename from mac_ctfont_descriptor_supports_languages.
24509         (mac_font_create_preferred_family_for_attributes): Rename from
24510         mac_ctfont_create_preferred_family_for_attributes.
24511         (mac_font_get_advance_width_for_glyph): Rename from
24512         mac_ctfont_get_advance_width_for_glyph.
24513         Use kCTFontOrientationDefault also for older versions.
24514         (mac_font_get_bounding_rect_for_glyph): Rename from
24515         mac_ctfont_get_bounding_rect_for_glyph.
24516         Use kCTFontOrientationDefault also for older versions.
24517         (mac_font_create_available_families): Rename from
24518         mac_ctfont_create_available_families.
24519         (mac_font_equal_in_postscript_name): Rename from
24520         mac_ctfont_equal_in_postscript_name.  All uses changed.
24521         (mac_font_create_line_with_string_and_font): Rename from
24522         mac_ctfont_create_line_with_string_and_font.  All uses changed.
24523         (mac_font_shape): Rename from mac_ctfont_shape.
24524         (mac_font_family_compare): Remove unused declaration.
24526 2015-08-29  Paul Eggert  <eggert@cs.ucla.edu>
24528         Fix minor text quoting in calc, calendar, vc
24529         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
24530         * lisp/calc/calc-help.el (calc-j-prefix-help):
24531         * lisp/calc/calc-misc.el (calc-help):
24532         * lisp/calc/calc.el (calc-algebraic-mode, calc-mode):
24533         Escape an apostrophe in a docstring.
24534         * lisp/calc/calc-forms.el (calc-hms-notation):
24535         * lisp/calc/calc-mode.el (calc-display-raw, calc-algebraic-mode):
24536         Escape an apostrophe in a diagnostic.
24537         * lisp/calc/calc-misc.el (calc-help):
24538         * lisp/calendar/diary-lib.el (diary-include-files):
24539         * lisp/calendar/todo-mode.el (todo-prefix, todo-item-mark):
24540         * lisp/vc/diff-mode.el (diff-delete-trailing-whitespace):
24541         * lisp/vc/ediff-diff.el (ediff-same-contents):
24542         * lisp/vc/ediff-merg.el (ediff-re-merge):
24543         * lisp/vc/ediff-ptch.el (ediff-patch-file-internal):
24544         * lisp/vc/ediff-util.el (ediff-test-save-region)
24545         (ediff-status-info):
24546         * lisp/vc/ediff.el (ediff-merge-revisions)
24547         (ediff-merge-revisions-with-ancestor):
24548         * lisp/vc/pcvs.el (cvs-mode-checkout, cvs-vc-command-advice):
24549         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
24550         Respect text quoting style in doc string or diagnostic.
24551         * lisp/calc/calc-prog.el (calc-kbd-push, calc-kbd-pop):
24552         * lisp/vc/add-log.el (change-log-goto-source):
24553         Avoid double-formatting.
24554         * lisp/vc/ediff-init.el (format-message):
24555         New backward-compatibility alias.
24557 2015-08-28  Paul Eggert  <eggert@cs.ucla.edu>
24559         Fix minor text quoting problems in lisp top level
24560         * lisp/apropos.el (apropos-describe-plist):
24561         * lisp/cus-theme.el (customize-themes):
24562         * lisp/dired.el (dired-log):
24563         * lisp/help-fns.el (describe-variable):
24564         * lisp/hexl.el (hexl-insert-multibyte-char):
24565         * lisp/info.el (Info-finder-find-node):
24566         * lisp/json.el (json-read-string):
24567         * lisp/novice.el (disabled-command-function)
24568         (disabled-command-function):
24569         * lisp/startup.el (normal-mouse-startup-screen):
24570         * lisp/woman.el (WoMan-log, WoMan-warn):
24571         Respect text quoting style in doc string or diagnostic.
24572         * lisp/replace.el (replace-character-fold):
24573         * src/syntax.c (Fmodify_syntax_entry):
24574         Escape an apostrophe in a docstring.
24575         * lisp/tempo.el (tempo-define-template):
24576         Remove confusing apostrophe from docstring.
24577         * lisp/whitespace.el (whitespace-mark-x):
24578         Use directed quotes in docstring.
24580 2015-08-28  Simen Heggestøyl  <simenheg@gmail.com>
24582         Fix indentation rule in css-mode
24583         * lisp/textmodes/css-mode.el (css-smie-rules): Fix indentation of
24584         brackets in presence of pseudo-selectors.  (Bug#21328)
24586 2015-08-28  Eli Zaretskii  <eliz@gnu.org>
24588         Fix a bug in recording a macro while flyspell-mode is active
24589         * lisp/subr.el (sit-for): Don't call read-event when recording a
24590         macro.  (Bug#21329)
24592 2015-08-27  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
24594         Tweak startup screen quoting
24595         * lisp/startup.el (normal-splash-screen): Use standard
24596         "M-" abbrevation rather than a confusingly-different one.
24597         (normal-no-mouse-startup-screen): Follow ‘text-quoting-style’.
24599 2015-08-27  Paul Eggert  <eggert@cs.ucla.edu>
24601         Add test case for ‘format’ bug and refactor
24602         * src/editfns.c (styled_format): Refactor internally, mostly by
24603         moving declarations closer to uses.  This should not affect behavior.
24604         * test/automated/textprop-tests.el (textprop-tests-format): New test.
24606         Fix ‘format’ bug with property offsets
24607         * src/editfns.c (styled_format): Fix recently-introduced ‘format’
24608         bug in calculating string property offsets (Bug#21351).
24610         Use straight quotes in lib-src diagnostics
24611         These auxiliary programs can’t use Emacs’s text-quoting-style,
24612         and it’s too much trouble to redo that mechanism by hand.
24613         So just use straight quotes for now.
24614         * lib-src/ebrowse.c (main):
24615         * lib-src/emacsclient.c (decode_options, main):
24616         * lib-src/etags.c (Ada_help, default_C_help, Cplusplus_help)
24617         (Forth_help, HTML_help, Lisp_help, Makefile_help, Objc_help)
24618         (Perl_help, PHP_help, Python_help, Scheme_help, TeX_help, auto_help)
24619         (none_help, print_language_names, print_help, add_regex)
24620         (suggest_asking_for_help):
24621         * lib-src/make-docfile.c (write_c_args, scan_c_stream):
24622         Use straight quotes in diagnostics.
24624         ‘text-quoting-style’ fixes for admin
24625         * admin/admin.el (cusver-scan, cusver-check):
24626         * admin/authors.el (authors-canonical-file-name):
24627         * admin/bzrmerge.el (bzrmerge-missing):
24628         Respect ‘text-quoting-style’ in diagnostics.
24630 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
24632         Assume GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS
24633         This removes the need for GCPRO1 etc.  Suggested by Stefan Monnier in:
24634         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00918.html
24635         * doc/lispref/internals.texi (Writing Emacs Primitives):
24636         * etc/NEWS:
24637         Document the change.
24638         * src/alloc.c (gcprolist, dump_zombies, MAX_ZOMBIES, zombies)
24639         (nzombies, ngcs, avg_zombies, max_live, max_zombies, avg_live)
24640         (Fgc_status, check_gcpros, relocatable_string_data_p, gc-precise):
24641         * src/bytecode.c (mark_byte_stack) [BYTE_MARK_STACK]:
24642         * src/eval.c (gcpro_level) [DEBUG_GCPRO]:
24643         * src/lisp.h (struct handler.gcpro, struct gcpro, GC_MARK_STACK)
24644         (GC_USE_GCPROS_AS_BEFORE, GC_MAKE_GCPROS_NOOPS)
24645         (GC_MARK_STACK_CHECK_GCPROS, GC_USE_GCPROS_CHECK_ZOMBIES)
24646         (BYTE_MARK_STACK, GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5, GCPRO6)
24647         (GCPRO7, UNGCPRO, RETURN_UNGCPRO):
24648         Remove.  All uses removed.  The code now assumes
24649         GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS.
24650         * src/bytecode.c (relocate_byte_stack):
24651         Rename from unmark_byte_stack, since it now only relocates.
24652         All callers changed.
24653         * src/frame.c (make_frame): Add an IF_LINT to pacify GCC 5.2
24654         with GCPROs removed.
24655         * src/systime.h: Use EMACS_LISP_H as the canary instead of GCPRO1.
24656         * test/automated/finalizer-tests.el (finalizer-basic)
24657         (finalizer-circular-reference, finalizer-cross-reference)
24658         (finalizer-error):
24659         * test/automated/generator-tests.el (cps-test-iter-close-finalizer):
24660         Remove tests, as they depend on gc-precise.
24662 2015-08-26  Nicolas Petton  <nicolas@petton.fr>
24664         Improve seq-concatenate for new sequence types
24665         Use the new `seq-into-sequence' in seqs passed to `seq-concatenate' to
24666         ensure that concatenation happens on sequences only.  This makes it
24667         possible to use `seq-concatenate' for new types of seqs.
24668         * lisp/emacs-lisp/seq.el (seq-into-sequence, seq-concatenate):
24669         New function used in `seq-concatenate'.
24670         * test/automated/seq-tests.el (test-seq-into-sequence): New unit test
24671         for seq-into-sequence.
24673 2015-08-26  Stephen Leake  <stephen_leake@stephe-leake.org>
24675         Add mode local overrides to xref-find-definitions
24676         * lisp/cedet/mode-local.el (xref-mode-local--override-present)
24677         (xref-mode-local-overload): New; add mode local overrides to
24678         xref-find-definitions.
24679         * test/automated/elisp-mode-tests.el: Add mode local override tests.
24680         (xref-elisp-test-run): Handle indented defuns.
24681         (xref-elisp-generic-*): Improve doc strings.
24682         * lisp/progmodes/elisp-mode.el (elisp-xref-find-def-functions): New.
24683         (elisp--xref-find-definitions): Use it.
24685         Add mode local overrides to describe-function
24686         * lisp/cedet/mode-local.el (describe-mode-local-overload):
24687         New; add mode local overrides to describe-function.
24688         * etc/NEWS: Document change.
24690 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
24692         Prefer straight quoting in some etc text files
24693         These files are plain text and might be used by non-Emacs apps.
24694         They’re mostly ASCII, so just use straight quotes.
24696         Fix quoting in ‘message_with_string’
24697         * src/nsfont.m (nsfont_open): Use directed quotes in format; they
24698         should work now.
24699         * src/xdisp.c (message_to_stderr): New function, refactored from
24700         part of ‘message3_nolog’.
24701         (message3_nolog): Use it.
24702         (message_with_string): Use it.  Don’t mishandle NUL bytes when
24703         noninteractive.  Prefer AUTO_STRING when it’s most likely faster.
24704         Use ‘format-message’, not ‘format’, so that quotes are translated.
24706 2015-08-26  Eli Zaretskii  <eliz@gnu.org>
24708         Mention false positives of file-accessible-directory on w32
24709         * src/fileio.c (Ffile_accessible_directory_p): Doc fix.
24710         (Bug#21346)
24712 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
24714         Treat error strings as help
24715         * src/print.c (print_error_message): Translate quotes and command
24716         keys in errmsg so that users see, e.g., "Symbol’s value as
24717         variable is void: foo" when text-quoting-style is curved.
24719 2015-08-26  Michael Albinus  <michael.albinus@gmx.de>
24721         * lisp/net/tramp-cache.el (top): Use `message', not `format-message'.
24723 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
24725         Top-level elisp files respect ‘text-quoting-style’
24726         In top-level elisp files, use format-message in diagnostic formats,
24727         so that they follow user preference as per ‘text-quoting-style’
24728         rather than being hard-coded to quote `like this'.
24729         * lisp/allout.el (allout-get-configvar-values):
24730         * lisp/apropos.el (apropos-symbols-internal):
24731         * lisp/dired-aux.el (dired-do-shell-command, dired-create-files)
24732         (dired-do-create-files-regexp, dired-create-files-non-directory):
24733         * lisp/dired-x.el (dired-do-run-mail):
24734         * lisp/dired.el (dired-log, dired-dnd-handle-local-file):
24735         * lisp/disp-table.el (standard-display-european):
24736         * lisp/find-dired.el (find-dired):
24737         * lisp/forms.el (forms-mode):
24738         * lisp/ido.el (ido-buffer-internal):
24739         * lisp/info.el (Info-index-next):
24740         * lisp/outline.el (outline-invent-heading):
24741         * lisp/printing.el (pr-ps-outfile-preprint, pr-i-ps-send):
24742         * lisp/proced.el (proced-log):
24743         * lisp/ps-print.el (ps-print-preprint, ps-get-size):
24744         * lisp/recentf.el (recentf-open-files, recentf-save-list):
24745         * lisp/savehist.el (savehist-save):
24746         * lisp/server.el (server-ensure-safe-dir):
24747         * lisp/ses.el (ses-rename-cell):
24748         * lisp/simple.el (list-processes--refresh):
24749         * lisp/startup.el (command-line):
24750         * lisp/strokes.el (strokes-unset-last-stroke)
24751         (strokes-execute-stroke):
24752         Use format-message so that quotes are restyled.
24753         * lisp/cus-edit.el (custom-raised-buttons, customize-browse):
24754         Don’t quote ‘raised’.
24755         * lisp/descr-text.el (describe-char):
24756         * lisp/dirtrack.el (dirtrack-debug-message):
24757         * lisp/hexl.el (hexl-insert-multibyte-char):
24758         Apply substitute-command-keys to help string.
24759         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
24760         (wdired-do-perm-changes):
24761         Let dired-log do the formatting.
24763 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
24765         Go back to grave quoting in Tramp
24766         * lisp/net/tramp-adb.el:
24767         * lisp/net/tramp-cache.el:
24768         * lisp/net/tramp-compat.el:
24769         * lisp/net/tramp-gvfs.el:
24770         * lisp/net/tramp-gw.el:
24771         * lisp/net/tramp-sh.el:
24772         * lisp/net/tramp-smb.el:
24773         * lisp/net/tramp.el:
24774         Stick with grave quoting in diagnostics strings.  This is more
24775         portable to older Emacs, desirable for Tramp.
24776         * lisp/net/tramp-cache.el: Use ‘format-message’, not ‘format’,
24777         for diagnostic that needs requoting.
24778         * lisp/net/tramp-compat.el (format-message):
24779         Fall back on simple ‘format’, since that’s good enough now.
24781         Go back to grave quoting in Gnus
24782         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
24783         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
24784         (gnus-agent-fetch-headers):
24785         * lisp/gnus/gnus-int.el (gnus-start-news-server):
24786         * lisp/gnus/gnus-registry.el:
24787         (gnus-registry--split-fancy-with-parent-internal)
24788         (gnus-registry-post-process-groups):
24789         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
24790         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
24791         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
24792         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
24793         * lisp/gnus/spam.el (spam-check-blackholes):
24794         Stick with grave quoting in diagnostics strings.  This is more
24795         portable to older Emacs, desirable for Gnus.
24797         Fix customization of text-quoting-style
24798         * lisp/cus-edit.el (custom-guess-type, custom-variable-documentation):
24799         * lisp/wid-edit.el (widget-docstring):
24800         Get raw docstring here since it’s cooked later and should not be
24801         cooked twice.
24802         * lisp/cus-edit.el (custom-group-value-create):
24803         Cook the docstring before inserting it.
24804         * lisp/cus-start.el (text-quoting-style): Quote the customization
24805         docstrings according to the new rules.  Give curved examples.
24807         format-message now curves ` and '
24808         That way, the caller doesn’t have to use curved quotes to
24809         get diagnostics that match the text-quoting-style preferences.
24810         Suggested by Dmitry Gutov in:
24811         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00893.html
24812         This means we no longer need %qs, so remove that format.
24813         While we’re at it, fix an unlikely bug and lessen the pressure
24814         on the garbage collector by processing the string once rather
24815         than twice in the usual case.
24816         * doc/lispref/strings.texi (Formatting Strings):
24817         * etc/NEWS: Document this.
24818         * lisp/subr.el (format-message): Remove; now done in C.
24819         * src/callint.c (Fcall_interactively):
24820         * src/editfns.c (Fmessage, Fmessage_box):
24821         Use Fformat_message instead of Finternal__text_restyle
24822         followed by Fformat.
24823         * src/doc.c (LSQM, RSQM): Remove; all uses changed to use
24824         uLSQM and uRSQM.
24825         (Fsubstitute_command_keys): Prefer AUTO_STRING to build_string
24826         when pure ASCII now suffices.  Fix unlikely bug when parsing
24827         unibyte string containing non-ASCII bytes.  Use inline code
24828         rather than memcpy, as it’s a tiny number of bytes.
24829         (Finternal__text_restyle): Remove; no longer used.
24830         (syms_of_doc): Don’t declare it.
24831         * src/editfns.c (Fformat): Rewrite in terms of new function
24832         ‘styled_format’.
24833         (Fformat_message): New function, moved here from subr.el.
24834         (styled_format): New function, with the old guts of Fformat,
24835         except it now optionally transliterates quotes, and it transliterates
24836         traditional grave accent and apostrophe quoting as well.
24837         Remove recently-added q flag; no longer needed or used.
24838         (syms_of_editfns): Define format-message.
24839         * src/lisp.h (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
24840         Remove; no longer need to be global symbols.
24841         * src/xdisp.c (vadd_to_log): Use Fformat_message, not Fformat,
24842         so that callers can use `%s'.
24843         * src/image.c (image_size_error, xbm_load_image, xbm_load)
24844         (xpm_load, pbm_load, png_load_body, jpeg_load_body, tiff_load)
24845         (gif_load, imagemagick_load_image, imagemagick_load, svg_load)
24846         (svg_load_image, gs_load, x_kill_gs_process):
24847         * src/lread.c (load_warn_old_style_backquotes):
24848         * src/xfaces.c (load_pixmap):
24849         * src/xselect.c (x_clipboard_manager_error_1):
24850         Use `%s' instead of %qs in formats.
24852 2015-08-25  Eli Zaretskii  <eliz@gnu.org>
24854         Minor fixes in doc/emacs/search.texi
24855         * doc/emacs/search.texi (Basic Isearch): Fix a typo.
24856         (Special Isearch): Use @w{} to generate several consecutive spaces
24857         with Texinfo 6.  (Bug#21345)
24859 2015-08-25  Michael Albinus  <michael.albinus@gmx.de>
24861         * lisp/net/tramp-sh.el (tramp-awk-encode, tramp-awk-decode)
24862         (tramp-awk-coding-test): New defconsts.
24863         (tramp-remote-coding-commands): Use them.
24864         (tramp-find-inline-encoding): Check for Perl only if necessary.
24866 2015-08-25  Xue Fuqiao  <xfq.free@gmail.com>
24868         * doc/lispintro/emacs-lisp-intro.texi (Run a Program): Add some
24869         index entries for the special form `quote'.
24871 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
24873         Spelling fixes
24875         Gnus format-message typo fix
24876         * lisp/gnus/gnus-util.el (gnus-format-message):
24877         Fix typo when running in older Emacs.
24879         Prefer directed to neutral quotes in docstings and diagnostics.
24880         In docstrings, escape apostrophes that would otherwise be translated
24881         to curved quotes using the newer, simpler rules.
24882         * admin/unidata/unidata-gen.el (unidata-gen-table):
24883         * lisp/align.el (align-region):
24884         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet):
24885         * lisp/bookmark.el (bookmark-default-annotation-text):
24886         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
24887         * lisp/calc/calc-lang.el (math-read-giac-subscr)
24888         (math-read-math-subscr):
24889         * lisp/calc/calc-misc.el (report-calc-bug):
24890         * lisp/calc/calc-prog.el (calc-fix-token-name)
24891         (calc-read-parse-table-part):
24892         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
24893         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
24894         * lisp/dabbrev.el (dabbrev-expand):
24895         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
24896         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
24897         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
24898         * lisp/emulation/viper-cmd.el (viper-toggle-search-style):
24899         * lisp/erc/erc-button.el (erc-nick-popup):
24900         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login):
24901         * lisp/eshell/em-dirs.el (eshell/cd):
24902         * lisp/eshell/em-glob.el (eshell-glob-regexp):
24903         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
24904         * lisp/eshell/esh-arg.el (eshell-parse-arguments):
24905         * lisp/eshell/esh-opt.el (eshell-show-usage):
24906         * lisp/files-x.el (modify-file-local-variable):
24907         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer)
24908         (filesets-update-pre010505):
24909         * lisp/find-cmd.el (find-generic, find-to-string):
24910         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
24911         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
24912         (gnus-agent-fetch-headers):
24913         * lisp/gnus/gnus-int.el (gnus-start-news-server):
24914         * lisp/gnus/gnus-registry.el:
24915         (gnus-registry--split-fancy-with-parent-internal):
24916         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
24917         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
24918         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
24919         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
24920         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
24921         * lisp/gnus/spam.el (spam-check-blackholes):
24922         * lisp/mail/feedmail.el (feedmail-run-the-queue):
24923         * lisp/mpc.el (mpc-playlist-rename):
24924         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
24925         * lisp/net/mairix.el (mairix-widget-create-query):
24926         * lisp/net/tramp-cache.el:
24927         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
24928         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
24929         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
24930         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
24931         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
24932         (org-babel-goto-named-result):
24933         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
24934         * lisp/org/ob-ref.el (org-babel-ref-resolve):
24935         * lisp/org/org-agenda.el (org-agenda-prepare):
24936         * lisp/org/org-bibtex.el (org-bibtex-fields):
24937         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
24938         (org-clock-resolve):
24939         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
24940         * lisp/org/org-habit.el (org-habit-parse-todo):
24941         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
24942         (org-mouse-context-menu):
24943         * lisp/org/org-table.el (org-table-edit-formulas):
24944         * lisp/org/ox.el (org-export-async-start):
24945         * lisp/play/dunnet.el (dun-score, dun-help, dun-endgame-question)
24946         (dun-rooms, dun-endgame-questions):
24947         * lisp/progmodes/ada-mode.el (ada-goto-matching-start):
24948         * lisp/progmodes/ada-xref.el (ada-find-executable):
24949         * lisp/progmodes/antlr-mode.el (antlr-options-alists):
24950         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
24951         (flymake-start-syntax-check-process):
24952         * lisp/progmodes/python.el (python-define-auxiliary-skeleton):
24953         * lisp/progmodes/sql.el (sql-comint):
24954         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
24955         * lisp/server.el (server-get-auth-key):
24956         * lisp/subr.el (version-to-list):
24957         * lisp/textmodes/reftex-ref.el (reftex-label):
24958         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
24959         * lisp/vc/ediff-diff.el (ediff-same-contents):
24960         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
24961         * test/automated/tramp-tests.el (tramp-test33-asynchronous-requests):
24962         Use directed rather than neutral quotes in diagnostics.
24964         Treat ' like ’ even when not matching `
24965         This is simpler and easier to explain, and should encourage better
24966         typography.  Do this in Electric Quote mode and when translating
24967         quotes in docstrings.  Inspired by a suggestion by Dmitry Gutov in:
24968         https://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00806.html
24969         * doc/emacs/text.texi (Quotation Marks):
24970         * doc/lispref/help.texi (Keys in Documentation):
24971         * etc/NEWS:
24972         Document this.
24973         * lisp/electric.el (electric-quote-post-self-insert-function):
24974         * src/doc.c (Fsubstitute_command_keys):
24975         Always treat ' like ’ even when not matched by an open quote.
24977 2015-08-25  Glenn Morris  <rgm@gnu.org>
24979         * doc/emacs/cal-xtra.texi (Holiday Customizing): Fix typo in example.
24980         * lisp/calendar/holidays.el (calendar-holidays): Fix doc typo.
24982 2015-08-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
24984         * src/macfont.m (macfont_create_family_with_symbol):
24985         Accept localized names.
24987 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
24989         Tramp diagnostics as per ‘text-quoting-style’
24990         * lisp/net/tramp-adb.el (tramp-adb-handle-file-truename)
24991         (tramp-adb-get-ls-command, tramp-adb-handle-make-directory)
24992         (tramp-adb-handle-delete-directory)
24993         (tramp-adb-handle-delete-file)
24994         (tramp-adb-handle-file-local-copy)
24995         (tramp-adb-handle-write-region, tramp-adb-handle-copy-file)
24996         (tramp-adb-send-command-and-check, tramp-adb-wait-for-output)
24997         (tramp-adb-maybe-open-connection):
24998         * lisp/net/tramp-cache.el:
24999         * lisp/net/tramp-compat.el (tramp-compat-temporary-file-directory)
25000         (tramp-compat-octal-to-decimal)
25001         (tramp-compat-coding-system-change-eol-conversion):
25002         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler)
25003         (tramp-gvfs-do-copy-or-rename-file)
25004         (tramp-gvfs-handle-delete-directory)
25005         (tramp-gvfs-handle-delete-file)
25006         (tramp-gvfs-handle-expand-file-name)
25007         (tramp-gvfs-handle-file-local-copy)
25008         (tramp-gvfs-handle-file-notify-add-watch)
25009         (tramp-gvfs-handle-make-directory)
25010         (tramp-gvfs-handle-write-region, tramp-gvfs-url-file-name):
25011         * lisp/net/tramp-gw.el (tramp-gw-gw-proc-sentinel)
25012         (tramp-gw-aux-proc-sentinel, tramp-gw-open-connection):
25013         * lisp/net/tramp-sh.el (tramp-sh-handle-file-truename)
25014         (tramp-sh-handle-set-visited-file-modtime)
25015         (tramp-sh-handle-set-file-modes)
25016         (tramp-sh-handle-file-name-all-completions)
25017         (tramp-sh-handle-add-name-to-file, tramp-do-copy-or-rename-file)
25018         (tramp-do-copy-or-rename-file-directly)
25019         (tramp-do-copy-or-rename-file-out-of-band)
25020         (tramp-sh-handle-make-directory)
25021         (tramp-sh-handle-delete-directory, tramp-sh-handle-delete-file)
25022         (tramp-sh-handle-insert-directory, tramp-process-sentinel)
25023         (tramp-sh-handle-start-file-process)
25024         (tramp-sh-handle-file-local-copy)
25025         (tramp-sh-handle-write-region, tramp-sh-handle-vc-registered)
25026         (tramp-sh-handle-file-notify-add-watch, tramp-maybe-send-script)
25027         (tramp-find-file-exists-command, tramp-open-shell)
25028         (tramp-find-shell)
25029         (tramp-open-connection-setup-interactive-shell)
25030         (tramp-find-inline-encoding, tramp-find-inline-compress)
25031         (tramp-compute-multi-hops, tramp-maybe-open-connection)
25032         (tramp-wait-for-output, tramp-send-command-and-check)
25033         (tramp-send-command-and-read, tramp-get-remote-path)
25034         (tramp-get-ls-command, tramp-get-ls-command-with-dired)
25035         (tramp-get-ls-command-with-quoting-style)
25036         (tramp-get-test-command, tramp-get-remote-ln)
25037         (tramp-get-remote-perl, tramp-get-remote-stat)
25038         (tramp-get-remote-readlink, tramp-get-remote-trash)
25039         (tramp-get-remote-touch, tramp-get-remote-gvfs-monitor-dir)
25040         (tramp-get-remote-inotifywait, tramp-get-remote-id)
25041         (tramp-get-remote-python):
25042         * lisp/net/tramp-smb.el (tramp-smb-errors)
25043         (tramp-smb-handle-add-name-to-file, tramp-smb-handle-copy-file)
25044         (tramp-smb-handle-delete-directory)
25045         (tramp-smb-handle-delete-file)
25046         (tramp-smb-handle-file-local-copy)
25047         (tramp-smb-handle-make-directory)
25048         (tramp-smb-handle-make-directory-internal)
25049         (tramp-smb-handle-make-symbolic-link)
25050         (tramp-smb-handle-rename-file, tramp-smb-handle-set-file-acl)
25051         (tramp-smb-handle-set-file-modes)
25052         (tramp-smb-handle-write-region, tramp-smb-get-file-entries):
25053         * lisp/net/tramp.el (tramp-debug-message, tramp-error)
25054         (tramp-process-actions):
25055         Generate diagnostics according to ‘text-quoting-style’, by
25056         using curved quotes in format strings and ‘format-message’
25057         when appropriate.
25058         * lisp/net/tramp-compat.el (format-message):
25059         Define a replacement, if it’s an older version of Emacs
25060         that doesn’t have it already.
25062         * etc/NEWS: Clarify text-quoting-style and electric-quote-mode.
25064 2015-08-24  Xue Fuqiao  <xfq.free@gmail.com>
25066         Fix documentation for `save-excursion'
25067         * doc/lispref/positions.texi (Excursions):
25068         * doc/lispintro/emacs-lisp-intro.texi (save-excursion)
25069         (Template for save-excursion, Point and mark): `save-excursion'
25070         does not save&restore the mark any more.
25072 2015-08-24  Michael Albinus  <michael.albinus@gmx.de>
25074         * lisp/net/tramp-sh.el (tramp-stat-marker, tramp-stat-quoted-marker):
25075         New defconsts.
25076         (tramp-do-file-attributes-with-stat)
25077         (tramp-do-directory-files-and-attributes-with-stat): Use them.
25078         (tramp-convert-file-attributes): Remove double slashes in symlinks.
25079         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
25080         Handle symlinks with "//" in the file name.
25082         Revert fbb5531fa11d13854b274d28ccd329c9b6652cfc for tramp.el.
25084 2015-08-24  Nicolas Petton  <nicolas@petton.fr>
25086         Fix cl-subseq and cl-concatenate
25087         * lisp/emacs-lisp/cl-extra.el (cl-subseq, cl-concatenate): Do not use
25088         seq functions.
25089         * lisp/emacs-lisp/seq.el (seq-concatenate): Call cl-concatenate in
25090         seq-concatenate.
25092 2015-08-24  Pip Cet  <pipcet@gmail.com>  (tiny change)
25094         Fix full-screen code when there is no window manager (Bug#21317)
25095         * src/xterm.h (x_wm_supports): Declare external.
25096         * src/xterm.c (wm_suppports): Rename to `x_wm_supports', export.
25097         (do_ewmh_fullscreen, x_ewmh_activate_frame): Adjust for rename.
25098         (x_check_fullscreen): Call `x_wm_set_size_hint', restore
25099         `fullscreen' frame parameter.
25100         * src/gtkutil.c (x_wm_set_size_hint): Set size hints when running
25101         without a window manager.
25103 2015-08-24  Glenn Morris  <rgm@gnu.org>
25105         * lisp/version.el (emacs-version): No longer include build host.
25106         * doc/lispref/intro.texi (Version Info): Update example.
25108 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
25110         * doc/lispref/elisp.texi: Fix typo in previous change.
25112         More-conservative ‘format’ quote restyling
25113         Instead of restyling curved quotes for every call to ‘format’,
25114         create a new function ‘format-message’ that does the restyling,
25115         and using the new function instead of ‘format’ only in contexts
25116         where this seems appropriate.
25117         Problem reported by Dmitry Gutov and Andreas Schwab in:
25118         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00826.html
25119         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00827.html
25120         * doc/lispref/commands.texi (Using Interactive):
25121         * doc/lispref/control.texi (Signaling Errors, Signaling Errors):
25122         * doc/lispref/display.texi (Displaying Messages, Progress):
25123         * doc/lispref/elisp.texi:
25124         * doc/lispref/help.texi (Keys in Documentation):
25125         * doc/lispref/minibuf.texi (Minibuffer Misc):
25126         * doc/lispref/strings.texi (Formatting Strings):
25127         * etc/NEWS:
25128         Document the changes.
25129         * lisp/abbrev.el (expand-region-abbrevs):
25130         * lisp/apropos.el (apropos-library):
25131         * lisp/calc/calc-ext.el (calc-record-message)
25132         (calc-user-function-list):
25133         * lisp/calc/calc-help.el (calc-describe-key, calc-full-help):
25134         * lisp/calc/calc-lang.el (math-read-big-balance):
25135         * lisp/calc/calc-store.el (calc-edit-variable):
25136         * lisp/calc/calc-units.el (math-build-units-table-buffer):
25137         * lisp/calc/calc-yank.el (calc-edit-mode):
25138         * lisp/calendar/icalendar.el (icalendar-export-region)
25139         (icalendar--add-diary-entry):
25140         * lisp/cedet/mode-local.el (mode-local-print-binding)
25141         (mode-local-describe-bindings-2):
25142         * lisp/cedet/semantic/complete.el (semantic-completion-message):
25143         * lisp/cedet/semantic/edit.el (semantic-parse-changes-failed):
25144         * lisp/cedet/semantic/wisent/comp.el (wisent-log):
25145         * lisp/cedet/srecode/insert.el (srecode-insert-show-error-report):
25146         * lisp/descr-text.el (describe-text-properties-1, describe-char):
25147         * lisp/dframe.el (dframe-message):
25148         * lisp/dired-aux.el (dired-query):
25149         * lisp/emacs-lisp/byte-opt.el (byte-compile-log-lap-1):
25150         * lisp/emacs-lisp/bytecomp.el (byte-compile-log)
25151         (byte-compile-log-file, byte-compile-warn, byte-compile-form):
25152         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
25153         (cconv-analyze-form):
25154         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
25155         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
25156         * lisp/emacs-lisp/cl-macs.el (cl-symbol-macrolet):
25157         * lisp/emacs-lisp/edebug.el (edebug-format):
25158         * lisp/emacs-lisp/eieio-core.el (eieio-oref):
25159         * lisp/emacs-lisp/eldoc.el (eldoc-minibuffer-message)
25160         (eldoc-message):
25161         * lisp/emacs-lisp/elint.el (elint-file, elint-log):
25162         * lisp/emacs-lisp/find-func.el (find-function-library):
25163         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
25164         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
25165         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
25166         * lisp/emacs-lisp/package.el (package-compute-transaction)
25167         (package-install-button-action, package-delete-button-action)
25168         (package-menu--list-to-prompt):
25169         * lisp/emacs-lisp/timer.el (timer-event-handler):
25170         * lisp/emacs-lisp/warnings.el (lwarn, warn):
25171         * lisp/emulation/viper-cmd.el:
25172         (viper-toggle-parse-sexp-ignore-comments)
25173         (viper-kill-buffer, viper-brac-function):
25174         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
25175         * lisp/facemenu.el (facemenu-add-new-face):
25176         * lisp/faces.el (face-documentation, read-face-name)
25177         (face-read-string, read-face-font, describe-face):
25178         * lisp/files.el (find-alternate-file, hack-local-variables)
25179         (hack-one-local-variable--obsolete, write-file)
25180         (basic-save-buffer, delete-directory):
25181         * lisp/format.el (format-write-file, format-find-file)
25182         (format-insert-file):
25183         * lisp/help-fns.el (help-fns--key-bindings)
25184         (help-fns--compiler-macro, help-fns--obsolete)
25185         (help-fns--interactive-only, describe-function-1)
25186         (describe-variable):
25187         * lisp/help.el (describe-mode):
25188         * lisp/info-xref.el (info-xref-output):
25189         * lisp/info.el (Info-virtual-index-find-node)
25190         (Info-virtual-index, info-apropos):
25191         * lisp/international/kkc.el (kkc-error):
25192         * lisp/international/mule-cmds.el:
25193         (select-safe-coding-system-interactively)
25194         (select-safe-coding-system, describe-input-method):
25195         * lisp/international/mule-conf.el (code-offset):
25196         * lisp/international/mule-diag.el (describe-character-set)
25197         (list-input-methods-1):
25198         * lisp/international/quail.el (quail-error):
25199         * lisp/minibuffer.el (minibuffer-message):
25200         * lisp/mpc.el (mpc--debug):
25201         * lisp/msb.el (msb--choose-menu):
25202         * lisp/net/ange-ftp.el (ange-ftp-message):
25203         * lisp/net/gnutls.el (gnutls-message-maybe):
25204         * lisp/net/newst-backend.el (newsticker--sentinel-work):
25205         * lisp/net/newst-treeview.el (newsticker--treeview-load):
25206         * lisp/net/nsm.el (nsm-query-user):
25207         * lisp/net/rlogin.el (rlogin):
25208         * lisp/net/soap-client.el (soap-warning):
25209         * lisp/net/tramp.el (tramp-debug-message):
25210         * lisp/nxml/nxml-outln.el (nxml-report-outline-error):
25211         * lisp/nxml/nxml-parse.el (nxml-parse-error):
25212         * lisp/nxml/rng-cmpct.el (rng-c-error):
25213         * lisp/nxml/rng-match.el (rng-compile-error):
25214         * lisp/nxml/rng-uri.el (rng-uri-error):
25215         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
25216         * lisp/org/org-ctags.el:
25217         (org-ctags-ask-rebuild-tags-file-then-find-tag):
25218         * lisp/proced.el (proced-log):
25219         * lisp/progmodes/ebnf2ps.el (ebnf-log):
25220         * lisp/progmodes/flymake.el (flymake-log):
25221         * lisp/progmodes/vhdl-mode.el (vhdl-warning-when-idle):
25222         * lisp/replace.el (occur-1):
25223         * lisp/simple.el (execute-extended-command)
25224         (undo-outer-limit-truncate, define-alternatives):
25225         * lisp/startup.el (command-line):
25226         * lisp/subr.el (error, user-error, add-to-list):
25227         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
25228         (tutorial--find-changed-keys):
25229         * src/callint.c (Fcall_interactively):
25230         * src/editfns.c (Fmessage, Fmessage_box):
25231         Restyle the quotes of format strings intended for use as a
25232         diagnostic, when restyling seems appropriate.
25233         * lisp/subr.el (format-message): New function.
25234         * src/doc.c (Finternal__text_restyle): New function.
25235         (syms_of_doc): Define it.
25237 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
25239         * etc/NEWS: The new ‘q’ flag is not an incompatible change.
25241 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
25243         python.el: Fix python-shell-buffer-substring on indented code
25244         (Bug#21086)
25245         * lisp/progmodes/python.el (python-shell-buffer-substring):
25246         Respect current line indentation when calculating string.
25247         * test/automated/python-tests.el
25248         (python-shell-buffer-substring-10)
25249         (python-shell-buffer-substring-11)
25250         (python-shell-buffer-substring-12): New tests.
25252 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
25254         Fix minor glitches from ‘format’ reversion
25255         * doc/lispref/strings.texi (Formatting Strings):
25256         After reversion, ‘text-quoting-style’ is documented in ‘Keys in
25257         Documentation’, not below.
25258         * src/syntax.c (Finternal_describe_syntax_value):
25259         Prefer AUTO_STRING to build_string where either will do, as
25260         AUTO_STRING is a bit faster.
25262 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
25264         python.el: Defer shell setup code until first interactive prompt
25265         * lisp/progmodes/python.el
25266         (python-shell-comint-watch-for-first-prompt-output-filter):
25267         New function.
25268         (inferior-python-mode): Use it.
25269         (python-shell-first-prompt-hook): New hook.
25270         (python-shell-send-setup-code)
25271         (python-shell-completion-native-turn-on-maybe-with-msg): Attach to
25272         this hook instead of inferior-python-hook.
25274 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
25276         Remove the calls to `seq-into` from `seq-concatenate`
25277         Since most new types of seq would have to be defined as sequences (cons
25278         cells or CL structs, mostly), there is no need to convert the seqs to
25279         sequences (which can be a fairly expensive operation).
25280         * lisp/emacs-lisp/seq.el (seq-concatenate): Do not ensure that seqs are
25281         sequences.
25283 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
25285         python.el: Fix completion for pdb interactions
25286         * lisp/progmodes/python.el (python-shell-completion-setup-code):
25287         Simplify.  Toggle print_mode for native wrapped completer.
25288         (python-shell-completion-native-setup): Ensure process buffer.
25289         Add print_mode attribute to completer wrapper to toggle returning
25290         or printing candidates.
25291         (python-shell-completion-native-get-completions): Cleanup.
25292         (python-shell-completion-get-completions): Cleanup.
25293         (python-shell-completion-at-point): Perform prompt checks.
25294         Force fallback completion in pdb interactions.
25296 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
25298         Make seq.el more extensible by using cl-defmethod
25299         * lisp/emacs-lisp/seq.el: Define seq.el functions using cl-defmethod to
25300         make it easier to extend seq.el with new "seq types".
25301         * test/automated/seq-tests.el (test-setf-seq-elt): New test.
25302         * lisp/emacs-lisp/cl-extra.el (cl-subseq): Move back the definition of
25303         subseq in cl-extra.el, and use it in seq.el.
25305 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
25307         python.el: Fix prompt detection with user overridden interpreter
25308         * lisp/progmodes/python.el (python-shell-prompt-detect):
25309         Honor buffer local python-shell-interpreter and
25310         python-shell-interpreter-interactive-arg.
25312 2015-08-23  Eli Zaretskii  <eliz@gnu.org>
25314         Support exec-directory with non-ASCII characters on Windows
25315         * src/w32proc.c (sys_spawnve): Make sure exec-directory is encoded
25316         in the system's ANSI codepage, when it is used for invoking
25317         cmdproxy.
25319 2015-08-23  Andreas Schwab  <schwab@linux-m68k.org>
25321         Revert "Extend ‘format’ to translate curved quotes"
25322         This reverts commit 244c801689d2f7a80480d83cd7d092d4762ebe08.
25324         Revert "Prefer ‘format’ to ‘substitute-command-keys’"
25325         This reverts commit 6af5aad26411ffe21c3fe4bc5438347110910111.
25327 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
25329         * doc/lispintro/emacs-lisp-intro.texi (Switching Buffers):
25330         Clarify "invisible window".
25332 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
25334         * doc/emacs/modes.texi (Choosing Modes): Minor doc fix for
25335         magic-fallback-mode-alist.
25337 2015-08-22  Fabián Ezequiel Gallina  <fgallina@gnu.org>
25339         python.el: fallback completion, ffap and eldoc setup enhancements
25340         Setup codes are now sent continuously so that the current frame is
25341         always taken into account.  This allows working within debuggers
25342         and always keeping a fresh version of setup codes that will return
25343         proper results.
25344         * lisp/progmodes/python.el (python-shell-setup-codes): Cleanup.
25345         (python-shell-send-setup-code): Send code only when
25346         python-shell-setup-codes is non-nil.
25347         (python-shell-completion-string-code): Cleanup trailing newline.
25348         (python-shell-completion-get-completions): Always use
25349         python-shell-completion-setup-code.
25350         (python-ffap-setup-code): Work with any object, not only modules.
25351         (python-ffap-string-code): Cleanup trailing newline.
25352         (python-ffap-module-path): Always use python-ffap-setup-code.
25353         (python-eldoc-string-code): Cleanup trailing newline.
25354         (python-eldoc--get-doc-at-point): Always use
25355         python-eldoc-setup-code.  Return non-nil only if docstring is
25356         found.
25358         python.el: Increase native completion robustness
25359         * lisp/progmodes/python.el (python-shell-completion-native-setup):
25360         Make completer print real candidates and just return dummy ones to
25361         avoid input modification.
25362         (python-shell-completion-native-get-completions): Set
25363         comint-redirect-insert-matching-regexp to non-nil and make
25364         comint-redirect-finished-regexp match the last dummy candidate.
25365         Use python-shell-accept-process-output to wait for the full list
25366         of candidates.
25368 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
25370         Fix invocation of programs via cmdproxy.exe
25371         * src/w32proc.c (sys_spawnve): Use exec-directory, not
25372         invocation-directory, for finding cmdproxy.exe.  When Emacs is
25373         run from the source tree, look for cmdproxy.exe in the same source
25374         tree.  (Bug#21323)
25376 2015-08-22  Simen Heggestøyl  <simenheg@gmail.com>
25378         Handle comments inside unquoted URIs in css-mode
25379         * lisp/textmodes/css-mode.el (css--uri-re): New defconst.
25380         (css-syntax-propertize-function): New defconst.
25381         (css--font-lock-keywords): Handle parens around unquoted URIs.
25382         (css-mode): Set `syntax-propertize-function'.
25384 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
25386         Support invocation of Hunspell with multiple dictionaries
25387         * lisp/textmodes/ispell.el (ispell-parse-hunspell-affix-file):
25388         Support lists of dictionaries of the form "DICT1,DICT2,...".
25389         (ispell-hunspell-add-multi-dic): New command.  (Bug#20495)
25391         Minor formatting changes in ispell.el
25392         * lisp/textmodes/ispell.el (ispell-create-debug-buffer)
25393         (ispell-print-if-debug, ispell-aspell-find-dictionary)
25394         (ispell-aspell-add-aliases, ispell-hunspell-dict-paths-alist)
25395         (ispell-hunspell-dictionary-alist)
25396         (ispell-hunspell-fill-dictionary-entry)
25397         (ispell-find-hunspell-dictionaries, ispell-send-replacement)
25398         (ispell-buffer-with-debug, ispell-complete-word)
25399         (ispell-current-dictionary, ispell-current-personal-dictionary)
25400         (ispell-accept-output, ispell-minor-mode)
25401         (ispell-personal-dictionary, ispell-dictionary-alist)
25402         (ispell-really-aspell, ispell-really-hunspell)
25403         (ispell-encoding8-command, ispell-aspell-supports-utf8)
25404         (ispell-aspell-dictionary-alist, ispell-set-spellchecker-params):
25405         Fix whitespace, inconsistent capitalization, and arguments in doc
25406         strings.
25408 2015-08-22  Martin Rudalics  <rudalics@gmx.at>
25410         * lisp/window.el (adjust-window-trailing-edge): Fix bug where this
25411         function refused to resize a size-preserved window.
25413 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
25415         * doc/lispref/windows.texi (Selecting Windows): Improve
25416         documentation and indexing of 'window-use-time'.
25418 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
25420         * lisp/progmodes/cc-vars.el, lisp/progmodes/cc-styles.el:
25421         * lisp/progmodes/cc-mode.el, lisp/progmodes/cc-menus.el:
25422         * lisp/progmodes/cc-langs.el, lisp/progmodes/cc-guess.el:
25423         * lisp/progmodes/cc-fonts.el, lisp/progmodes/cc-engine.el:
25424         * lisp/progmodes/cc-defs.el, lisp/progmodes/cc-cmds.el:
25425         * lisp/progmodes/cc-bytecomp.el, lisp/progmodes/cc-awk.el:
25426         * lisp/progmodes/cc-align.el, lisp/net/soap-client.el:
25427         Fix up commenting style.
25429 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
25431         text-quoting-style in emacs-lisp diagnostics
25432         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
25433         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
25434         (ad-disable-advice, ad-remove-advice, ad-set-argument)
25435         (ad-set-arguments):
25436         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
25437         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
25438         (byte-optimize-while, byte-optimize-apply):
25439         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
25440         (byte-compile-log-file, byte-compile-format-warn)
25441         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
25442         (byte-compile-cl-warn)
25443         (byte-compile-warn-about-unresolved-functions)
25444         (byte-compile-file, byte-compile-fix-header)
25445         (byte-compile--declare-var, byte-compile-file-form-defmumble)
25446         (byte-compile-form, byte-compile-normal-call)
25447         (byte-compile-variable-ref, byte-compile-variable-set)
25448         (byte-compile-subr-wrong-args, byte-compile-setq-default)
25449         (byte-compile-negation-optimizer)
25450         (byte-compile-condition-case--old)
25451         (byte-compile-condition-case--new, byte-compile-save-excursion)
25452         (byte-compile-defvar, byte-compile-autoload)
25453         (byte-compile-lambda-form)
25454         (byte-compile-make-variable-buffer-local, display-call-tree)
25455         (batch-byte-compile):
25456         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
25457         (cconv-analyze-form):
25458         * lisp/emacs-lisp/chart.el (chart-space-usage):
25459         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
25460         (check-declare-warn, check-declare-file)
25461         (check-declare-directory):
25462         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
25463         (checkdoc-message-text-engine):
25464         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer):
25465         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
25466         (cl-symbol-macrolet):
25467         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
25468         * lisp/emacs-lisp/copyright.el (copyright)
25469         (copyright-update-directory):
25470         * lisp/emacs-lisp/edebug.el (edebug-read-list):
25471         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
25472         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
25473         (eieio-oref, eieio-oset-default):
25474         * lisp/emacs-lisp/eieio-speedbar.el:
25475         (eieio-speedbar-child-make-tag-lines)
25476         (eieio-speedbar-child-description):
25477         * lisp/emacs-lisp/eieio.el (defclass, change-class):
25478         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
25479         (elint-init-form, elint-check-defalias-form)
25480         (elint-check-let-form):
25481         * lisp/emacs-lisp/ert.el (ert-get-test):
25482         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
25483         (find-function-library):
25484         * lisp/emacs-lisp/generator.el (iter-yield):
25485         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
25486         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
25487         * lisp/emacs-lisp/package-x.el (package-upload-file):
25488         * lisp/emacs-lisp/package.el (package-version-join)
25489         (package-disabled-p, package-activate-1, package-activate)
25490         (package--download-one-archive)
25491         (package--download-and-read-archives)
25492         (package-compute-transaction, package-install-from-archive)
25493         (package-install, package-install-selected-packages)
25494         (package-delete, package-autoremove)
25495         (package-install-button-action, package-delete-button-action)
25496         (package-menu-hide-package, package-menu--list-to-prompt)
25497         (package-menu--perform-transaction)
25498         (package-menu--find-and-notify-upgrades):
25499         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
25500         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
25501         * lisp/emacs-lisp/ring.el (ring-next, ring-previous):
25502         * lisp/emacs-lisp/rx.el (rx-check, rx-anything):
25503         * lisp/emacs-lisp/smie.el (smie-config-save):
25504         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
25505         * lisp/emacs-lisp/testcover.el (testcover-1value):
25506         Use curved quotes in diagnostic format strings.
25508 2015-08-21  Fabián Ezequiel Gallina  <fgallina@gnu.org>
25510         python.el: Ensure remote process-environment on non-interactive processes
25511         * lisp/progmodes/python.el
25512         (python-shell-tramp-refresh-process-environment): New function.
25513         (python-shell-with-environment): Use it.
25514         * test/automated/python-tests.el (python-shell-with-environment-2):
25515         Update.
25517         python.el: Enhancements to process environment setup.
25518         * lisp/progmodes/python.el (python-shell-process-environment)
25519         (python-shell-extra-pythonpaths, python-shell-exec-path)
25520         (python-shell-virtualenv-root): Update docstring.  Remove :safe.
25521         (python-shell-setup-codes): Remove :safe.
25522         (python-shell-remote-exec-path): New defcustom.
25523         (python-shell--add-to-path-with-priority): New macro.
25524         (python-shell-calculate-pythonpath): Give priority to
25525         python-shell-extra-pythonpaths.  Update docstring.
25526         (python-shell-calculate-process-environment): Give priority to
25527         python-shell-process-environment.  Update docstring.
25528         (python-shell-calculate-exec-path): Give priority to
25529         python-shell-exec-path and calculated virtualenv bin directory.
25530         Update docstring.
25531         (python-shell-tramp-refresh-remote-path): New function.
25532         (python-shell-with-environment): Use it when working remotely and
25533         do not modify tramp-remote-path.  Allow nesting.
25534         (python-shell-calculate-command): Remove useless
25535         python-shell-with-environment call.
25536         * test/automated/python-tests.el (python-shell-calculate-pythonpath-1)
25537         (python-shell-calculate-pythonpath-2)
25538         (python-shell-calculate-process-environment-6)
25539         (python-shell-calculate-process-environment-7)
25540         (python-shell-calculate-process-environment-8)
25541         (python-shell-calculate-exec-path-3)
25542         (python-shell-calculate-exec-path-4)
25543         (python-shell-calculate-exec-path-5)
25544         (python-shell-calculate-exec-path-6)
25545         (python-shell-with-environment-3): New tests.
25546         (python-shell-calculate-process-environment-2)
25547         (python-shell-calculate-process-environment-3)
25548         (python-shell-calculate-process-environment-4)
25549         (python-shell-calculate-process-environment-5)
25550         (python-shell-calculate-exec-path-1)
25551         (python-shell-calculate-exec-path-2)
25552         (python-shell-with-environment-1)
25553         (python-shell-with-environment-2): Update and simplify.
25555 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
25557         Avoid hard-coding "M-x command" in docstrings
25558         * lisp/calendar/todo-mode.el (todo-mode):
25559         * lisp/desktop.el (desktop-save-mode):
25560         * lisp/edmacro.el (edit-kbd-macro):
25561         * lisp/emacs-lisp/package.el (package-menu-execute):
25562         * lisp/emulation/viper-cmd.el (viper-ask-level):
25563         * lisp/emulation/viper-init.el (viper-expert-level):
25564         * lisp/filesets.el (filesets-add-buffer):
25565         * lisp/follow.el (follow-mode):
25566         * lisp/gnus/auth-source.el (auth-sources):
25567         * lisp/international/ogonek.el (ogonek-informacja)
25568         (ogonek-information):
25569         * lisp/net/tramp.el (tramp-process-actions):
25570         * lisp/org/org-gnus.el (org-gnus-no-new-news):
25571         * lisp/org/org.el (org-ellipsis):
25572         * lisp/progmodes/python.el (python-shell-get-process-or-error):
25573         * lisp/progmodes/vhdl-mode.el (vhdl-mode):
25574         * lisp/server.el (server-start):
25575         * lisp/type-break.el (type-break-noninteractive-query):
25576         * lisp/userlock.el (ask-user-about-supersession-help):
25577         * lisp/whitespace.el (whitespace-report-region):
25578         Prefer (substitute-command-keys "`\\[foo-command]'")
25579         to "`M-x foo-command'" in docstrings and the like.
25581 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
25583         Use add-function for prettify-symbols-compose-predicate
25584         * lisp/textmodes/tex-mode.el (tex-common-initialization): Set
25585         prettify-symbols-compose-predicate in terms of add-function.
25586         * etc/NEWS: Mention prettify-symbols-compose-predicate and
25587         prettify-symbols-mode support in tex-mode.
25589 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
25591         * lisp/emacs-lisp/smie.el (smie-indent-current-column): New fun.
25592         (smie-indent-exps, smie-indent-keyword): Use it.
25593         * test/indent/css-mode.css: Test alignment with leading comment.
25595 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
25597         Respect text-quoting-style in (*Finder*) menus
25598         * lisp/info.el (info--prettify-description):
25599         Treat description as a docstring, so that it's requoted as
25600         per text-quoting-style.
25602 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
25604         Document `window-use-time' in Elisp manual
25605         * doc/lispref/windows.texi (Selecting Windows): Document
25606         `window-use-time'.
25608 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
25610         * src/w32uniscribe.c (_WIN32_WINNT): Define to 0x0600.
25611         This is a cleaner fix for Bug#21260 than the previous change.
25613 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
25615         Respect text-quoting-style in calc
25616         In calc, tespect text-quoting-style preference in diagnostic
25617         formats and fix a few similar problems in docstrings.
25618         * lisp/calc/calc-aent.el (math-read-factor):
25619         * lisp/calc/calc-embed.el (calc-do-embedded):
25620         * lisp/calc/calc-ext.el (calc-user-function-list)
25621         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
25622         * lisp/calc/calc-help.el (calc-describe-key)
25623         (calc-describe-thing):
25624         * lisp/calc/calc-lang.el (calc-c-language)
25625         (math-parse-fortran-vector-end, math-parse-tex-sum)
25626         (math-parse-eqn-matrix, math-parse-eqn-prime)
25627         (calc-yacas-language, calc-maxima-language, calc-giac-language)
25628         (math-read-big-rec, math-read-big-balance):
25629         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
25630         (calc-auto-recompute):
25631         * lisp/calc/calc-prog.el (calc-user-define-invocation)
25632         (math-do-arg-check):
25633         * lisp/calc/calc-store.el (calc-edit-variable):
25634         * lisp/calc/calc-units.el (math-build-units-table-buffer):
25635         * lisp/calc/calc-vec.el (math-read-brackets):
25636         * lisp/calc/calc-yank.el (calc-edit-mode):
25637         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
25638         Use curved quotes in diagnostic format strings.
25639         * lisp/calc/calc-help.el (calc-describe-thing):
25640         Format docstrings with substitute-command-keys.
25641         * lisp/calc/calc-help.el (calc-j-prefix-help):
25642         * lisp/calc/calc-misc.el (calc-help):
25643         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
25644         Escape a docstring "`".
25646 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
25648         Fix documentation of 'menu-set-font' and 'set-frame-font'
25649         * lisp/menu-bar.el (menu-set-font): Doc fix.  (Bug#21303)
25650         * doc/lispref/frames.texi (Frame Font): Document that
25651         set-frame-font with the last argument 't' will also make the font
25652         the default for the future GUI frames.
25654         Document '--create-frame' option to emacsclient
25655         * doc/emacs/misc.texi (emacsclient Options): Document the
25656         '--create-frame' option.  (Bug#21308)
25658 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
25660         * lisp/progmodes/js.el (js-mode): Don't eagerly syntax propertize.
25662 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
25664         Document 'get-mru-window' in the ELisp manual
25665         * doc/lispref/windows.texi (Cyclic Window Ordering): Document
25666         'get-mru-window'.  (Bug#21306)
25668         Clarify documentation of 'get-buffer-window-list'
25669         * doc/lispref/windows.texi (Buffers and Windows): Mention that the
25670         current window, if relevant, will be the first in the list
25671         returned by 'get-buffer-window-list'.
25672         * lisp/window.el (get-buffer-window-list): Doc fix.  (Bug#21305)
25674 2015-08-21  Vasilij Schneidermann  <v.schneidermann@gmail.com>
25676         In `ielm' use `pop-to-buffer-same-window' (Bug#20848)
25677         * lisp/ielm.el (ielm): Use `pop-to-buffer-same-window' instead of
25678         `switch-to-buffer'.
25680 2015-08-21  Kaushal Modi  <kaushal.modi@gmail.com>  (tiny change)
25682         In woman.el use `display-buffer' instead of `switch-to-buffer' (Bug#21047)
25683         * lisp/woman.el (woman-really-find-file, WoMan-find-buffer): Use
25684         `display-buffer' instead of `switch-to-buffer'.
25686 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
25688         Follow user preference in calendar diagnostics
25689         Respect text-quoting-style preference in diagnostic formats by
25690         using curved quotes (which are translated as per text-quoting-style)
25691         instead of grave accent and apostrophe (which are not).
25692         * lisp/calendar/appt.el (appt-display-message):
25693         * lisp/calendar/diary-lib.el (diary-check-diary-file)
25694         (diary-mail-entries, diary-from-outlook):
25695         * lisp/calendar/icalendar.el (icalendar-export-region)
25696         (icalendar--convert-float-to-ical)
25697         (icalendar--convert-date-to-ical)
25698         (icalendar--convert-ical-to-diary)
25699         (icalendar--convert-recurring-to-diary)
25700         (icalendar--add-diary-entry):
25701         * lisp/calendar/time-date.el (format-seconds):
25702         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
25703         (timeclock-make-hours-explicit):
25704         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
25705         (todo-item-mark, todo-check-format)
25706         (todo-insert-item--next-param, todo-edit-item--next-key)
25707         (todo-mode):
25708         Use curved quotes in diagnostic format strings.
25709         * lisp/calendar/icalendar.el (icalendar-import-format-sample):
25710         * test/automated/icalendar-tests.el (icalendar--import-format-sample):
25711         Just use straight quoting for simple test case.
25713 2015-08-21  Michael Albinus  <michael.albinus@gmx.de>
25715         * src/gfilenotify.c (Fgfile_add_watch):
25716         Handle errors from g_file_monitor.
25718 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
25720         In frames.texi use "minibuffer-less frame" instead of "non-minibuffer frame"
25721         * doc/lispref/frames.texi (Frame Layout): Use "minibuffer-less
25722         frame" instead of "non-minibuffer frame".
25724         Fix frame geometry related text
25725         * doc/lispref/frames.texi (Frame Layout):
25726         Rename `x-frame-geometry' to `frame-geometry'.
25727         * doc/lispref/frames.texi (Mouse Position):
25728         * doc/lispref/windows.texi (Coordinates and Windows):
25729         Use `set-mouse-absolute-pixel-position' instead of
25730         `x-set-mouse-absolute-pixel-position'.
25732         Sanitize frame geometry related functions
25733         * src/nsfns.m (Fx_frame_geometry): Rename to Fns_frame_geometry.
25734         (Fx_frame_edges): Rename to Fns_frame_edges.
25735         * src/w32fns.c (Fx_frame_geometry): Rename to Fw32_frame_geometry.
25736         (Fx_frame_edges): Rename to Fw32_frame_edges.
25737         (Fx_mouse_absolute_pixel_position): Rename to
25738         Fw32_mouse_absolute_pixel_position.
25739         (Fx_set_mouse_absolute_pixel_position): Rename to
25740         Fw32_set_mouse_absolute_pixel_position.
25741         * lisp/frame.el (x-frame-geometry, w32-frame-geometry)
25742         (ns-frame-geometry, x-frame-edges, w32-frame-edges)
25743         (ns-frame-edges, w32-mouse-absolute-pixel-position)
25744         (x-mouse-absolute-pixel-position)
25745         (w32-set-mouse-absolute-pixel-position)
25746         (x-set-mouse-absolute-pixel-position): Declare.
25747         (frame-geometry, mouse-absolute-pixel-position)
25748         (set-mouse-absolute-pixel-position): New functions.
25749         (frame-edges): Rewrite in terms of x-/w32-/ns-frame-edges.
25751 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
25753         Fix MinGW64 build broken by latest w32uniscribe.c changes
25754         * src/w32uniscribe.c (UNISCRIBE_OPENTYPE): Define to 0x0100, for
25755         MinGW64.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
25756         (Bug#21260)
25758 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
25760         Add TeX defaults for prettify-symbol-mode
25761         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
25762         Rename from tex-prettify-symbols-alist.
25763         (tex--prettify-symbols-compose-p): New function.
25764         (tex-common-initialization): Use them as prettify-symbols-alist
25765         and prettify-symbols-compose-predicate.
25767         Generalize prettify-symbols to arbitrary modes
25768         * lisp/progmodes/prog-mode.el
25769         (prettify-symbols-default-compose-p): New function.
25770         (prettify-symbols-compose-predicate): New variable.
25771         (prettify-symbols--compose-symbol): Use it.
25773 2015-08-20  Paul Eggert  <eggert@cs.ucla.edu>
25775         Don't quote symbols 'like-this' in docstrings etc.
25776         * admin/unidata/uvs.el (uvs-insert-fields-as-bytes):
25777         * lisp/allout-widgets.el (allout-widgets-count-buttons-in-region):
25778         * lisp/allout.el (allout-add-resumptions, allout-mode):
25779         * lisp/calculator.el (calculator-operators):
25780         * lisp/cedet/data-debug.el (dd-propertize):
25781         * lisp/cedet/ede/proj-prog.el (ede-proj-target-makefile-program):
25782         * lisp/cedet/semantic/analyze/debug.el:
25783         (semantic-analyzer-debug-global-miss-text):
25784         * lisp/cedet/semantic/lex-spp.el:
25785         (semantic-lex-spp-replace-or-symbol-or-keyword):
25786         * lisp/cedet/semantic/symref.el:
25787         (semantic-symref-cleanup-recent-buffers-fcn):
25788         * lisp/cedet/semantic/tag.el (semantic-tag-class):
25789         * lisp/cedet/srecode/el.el (srecode-semantic-handle-:el-custom):
25790         * lisp/gnus/nnmairix.el (nnmairix-propagate-marks-upon-close):
25791         * lisp/gnus/pop3.el (pop3-authentication-scheme):
25792         * lisp/help-fns.el (describe-function-orig-buffer):
25793         * lisp/imenu.el (imenu--history-list):
25794         * lisp/mail/feedmail.el (feedmail-confirm-outgoing)
25795         (feedmail-display-full-frame, feedmail-deduce-bcc-where)
25796         (feedmail-queue-default-file-slug)
25797         (feedmail-queue-buffer-file-name):
25798         * lisp/net/mairix.el (mairix-searches-mode-map):
25799         * lisp/net/newst-backend.el (newsticker-retrieval-method)
25800         (newsticker-auto-mark-filter-list):
25801         * lisp/obsolete/vi.el (vi-mode):
25802         * lisp/progmodes/cc-engine.el (c-literal-type):
25803         * lisp/progmodes/cpp.el (cpp-face):
25804         * lisp/progmodes/ebrowse.el (ebrowse-electric-list-looper):
25805         * lisp/progmodes/elisp-mode.el (elisp--xref-make-xref):
25806         * lisp/progmodes/pascal.el (pascal-auto-lineup):
25807         * lisp/progmodes/prog-mode.el (prog-widen):
25808         * lisp/progmodes/verilog-mode.el (verilog-regexp-words)
25809         (verilog-auto-lineup, verilog-auto-reset-widths)
25810         (verilog-auto-arg-format, verilog-auto-inst-template-numbers):
25811         * lisp/textmodes/flyspell.el (flyspell-maybe-correct-transposition)
25812         (flyspell-maybe-correct-doubling):
25813         * lisp/textmodes/table.el (table-justify, table-justify-cell)
25814         (table-justify-row, table-justify-column, table-insert-sequence)
25815         (table--justify-cell-contents):
25816         * lisp/url/url-auth.el (url-get-authentication):
25817         * lisp/window.el (display-buffer-record-window):
25818         * lisp/xml.el (xml-parse-file, xml-parse-region):
25819         * src/gfilenotify.c (Fgfile_add_watch):
25820         Don't quote symbols with apostrophes in doc strings.
25821         Use asymmetric quotes instead.
25822         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
25823         Likewise for symbol in diagnostic.
25824         * lisp/image.el (image-extension-data):
25825         * lisp/register.el (frame-configuration-to-register):
25826         * src/buffer.c (syms_of_buffer):
25827         Remove bogus apostrophes after symbols.
25828         * lisp/thumbs.el (thumbs-conversion-program):
25829         Quote Lisp string values using double-quotes, not apostrophes.
25831 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
25833         Describe frame geometry and related functions in Elisp manual
25834         * doc/lispref/display.texi (Size of Displayed Text, Line Height)
25835         (Showing Images): Update references.
25836         * doc/lispref/elisp.texi (Top): Update node listing.
25837         * doc/lispref/frames.texi (Frame Geometry): New node.
25838         Move `Size and Position' section here.
25839         (Size Parameters): Update references.
25840         (Mouse Position): Update references and nomenclature.
25841         Describe new functions `x-mouse-absolute-pixel-position' and
25842         `x-set-mouse-absolute-pixel-position'.
25843         * doc/lispref/windows.texi (Window Sizes): Update references.
25844         (Resizing Windows): Update references.  Move description of
25845         `fit-frame-to-buffer' here.
25846         (Coordinates and Windows): Update nomenclature and references.
25847         Describe new arguments of `window-edges'.  Comment out
25848         descriptions of `window-left-column', `window-top-line',
25849         `window-pixel-left' and `window-pixel-top'.  Describe
25850         `window-absolute-pixel-position'.
25852 2015-08-20  Alan Mackenzie  <acm@muc.de>
25854         Handling of `c-parse-state'.  Fix low level bug.
25855         * lisp/progmodes/cc-engine.el (c-remove-stale-state-cache-backwards):
25856         Add "CASE 3.5" to handle `cache-pos' being only slightly before `here'.
25858 2015-08-20  Andreas Politz  <politza@hochschule-trier.de>
25860         * lisp/wid-edit.el (widget-color--choose-action): Quit *Color*
25861         window instead of deleting it.
25863 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
25865         In w32fns.c's Fx_frame_geometry rewrite check whether frame has a titlebar
25866         * src/w32fns.c (Fx_frame_geometry): Use title_bar.rgstate[0] to
25867         determine whether frame has a titlebar.
25868         Suggested by Eli Zaretskii <eliz@gnu.org>
25870 2015-08-20  Tassilo Horn  <tsdh@gnu.org>
25872         Add a prettify-symbols-alist for (La)TeX
25873         * lisp/textmodes/tex-mode.el (tex-prettify-symbols-alist):
25874         New variable holding an alist suitable as prettify-symbols-alist in
25875         (La)TeX modes.
25877 2015-08-19  Alan Mackenzie  <acm@muc.de>
25879         Make electric-pair-mode, delete-selection-mode and CC Mode cooperate.
25880         Fixes debbugs#21275.
25881         In Emacs >= 25, let electric-pair-mode take precedence over
25882         delete-selection-mode.
25883         * lisp/delsel.el (delete-selection-uses-region-p): New function,
25884         previously a lambda expression in a property value for
25885         `self-insert-command'.
25886         (top-level): Set the `delete-selection' property of
25887         `self-insert-command' to `delete-selection-uses-region-p'.
25888         * lisp/progmodes/cc-cmds.el (top-level): Give the `delete-selection'
25889         property for c-electric-\(brace\|paren\) the value
25890         `delete-selection-uses-region-p' when the latter function exists.
25892 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
25894         Fix key binding quoting in tutorial *Help*
25895         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
25896         When generating help for custom key bindings, use the user-preferred
25897         quoting style rather than hardcoding the grave style.
25899 2015-08-19  Eli Zaretskii  <eliz@gnu.org>
25901         Improve and future-proof OTF fonts support in w32uniscribe.c
25902         * src/w32uniscribe.c (uniscribe_otf_capability): Add commentary
25903         about the expected results and why the new Uniscribe APIs are not
25904         used in this function.
25905         (ScriptGetFontScriptTags_Proc, ScriptGetFontLanguageTags_Proc)
25906         (ScriptGetFontFeatureTags_Proc): New function typedefs.
25907         (uniscribe_new_apis): New static variable.
25908         (uniscribe_check_features): New function, implements OTF features
25909         verification while correctly accounting for features in the list
25910         after the nil member, if any.
25911         (uniscribe_check_otf_1): New function, retrieves the features
25912         supported by the font for the requested script and language using
25913         the Uniscribe APIs available from Windows Vista onwards.
25914         (uniscribe_check_otf): If the new Uniscribe APIs are available,
25915         use them in preference to reading the font data directly.  Call
25916         uniscribe_check_features to verify that the requested features are
25917         supported, replacing the original incomplete code.
25918         (syms_of_w32uniscribe): Initialize function pointers for the new
25919         Uniscribe APIs.  (Bug#21260)
25920         (otf_features): Scan the script, langsys, and feature arrays back
25921         to front, so that the result we return has them in alphabetical
25922         order, like ftfont.c does.
25923         * src/w32fns.c (syms_of_w32fns) <w32-disable-new-uniscribe-apis>:
25924         New variable for debugging w32uniscribe.c code.
25926 2015-08-19  Artur Malabarba  <bruce.connor.am@gmail.com>
25928         * lisp/isearch.el (isearch-search-fun-default): Revert a5bdb87
25929         Remove usage of `isearch-lax-whitespace' inside the `iearch-word'
25930         clause of `isearch-search-fun-default'.  That lax variable does not
25931         refer to lax-whitespacing.  Related to (bug#21777).
25932         This reverts commit a5bdb872edb9f031fe041faf9a8c0be432e5f64c.
25933         * lisp/character-fold.el (character-fold-search): Set to nil.
25934         Default to nil for now, until someone implements proper
25935         lax-whitespacing with char-fold searching.
25937 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
25939         Fix doc-string of `help-mode-finish'.
25940         * lisp/help-mode.el (help-mode-finish): Fix doc-string.
25942         In nsimage.m include coding.h (Bug#21292)
25943         * src/nsimage.m (top-level): Include coding.h (Bug#21292).
25945         Move window edge functions to Elisp.
25946         * src/window.c (Fwindow_edges, Fwindow_pixel_edges)
25947         (Fwindow_absolute_pixel_edges, Fwindow_inside_edges)
25948         (Fwindow_inside_pixel_edges, Fwindow_inside_absolute_pixel_edges):
25949         Move to window.el.
25950         (calc_absolute_offset): Remove.
25951         * lisp/frame.el (frame-edges): New function.
25952         * lisp/window.el (window-edges, window-pixel-edges)
25953         (window-absolute-pixel-edges): Move here from window.c.
25954         (window-body-edges, window-body-pixel-edges)
25955         (window-absolute-body-pixel-edges): Move here from window.c and
25956         rename "inside" to "body".  Keep old names as aliases.
25957         (window-absolute-pixel-position): New function.
25959 2015-08-19  Katsumi Yamaoka  <yamaoka@jpl.org>
25961         [Gnus]: Use overlay functions directly
25962         * lisp/gnus/gnus-art.el (gnus-mime-inline-part, gnus-mm-display-part)
25963         (gnus-insert-mime-button, gnus-mime-buttonize-attachments-in-header)
25964         (gnus-article-highlight-signature, gnus-article-extend-url-button)
25965         (gnus-article-add-button, gnus-insert-prev-page-button)
25966         (gnus-insert-next-page-button, gnus-insert-mime-security-button):
25967         * lisp/gnus/gnus-cite.el (gnus-cite-delete-overlays)
25968         (gnus-cite-add-face):
25969         * lisp/gnus/gnus-html.el (gnus-html-wash-tags):
25970         * lisp/gnus/gnus-salt.el (gnus-tree-read-summary-keys)
25971         (gnus-tree-recenter, gnus-highlight-selected-tree):
25972         * lisp/gnus/gnus-sum.el (gnus-summary-show-all-threads)
25973         (gnus-summary-show-thread, gnus-summary-hide-thread)
25974         (gnus-highlight-selected-summary):
25975         * lisp/gnus/gnus-util.el (gnus-put-overlay-excluding-newlines):
25976         * lisp/gnus/message.el (message-fix-before-sending)
25977         (message-toggle-image-thumbnails):
25978         * lisp/gnus/mm-decode.el (mm-convert-shr-links):
25979         * lisp/gnus/sieve.el (sieve-highlight, sieve-insert-scripts):
25980         Use overlay functions directly instead of using gnus-overlay-*,
25981         message-overlay-*, and sieve-overlay-*.
25982         * lisp/gnus/gnus-sum.el (gnus-remove-overlays):
25983         * lisp/gnus/gnus.el (gnus-make-overlay, gnus-copy-overlay)
25984         (gnus-delete-overlay, gnus-overlay-get, gnus-overlay-put)
25985         (gnus-move-overlay, gnus-overlay-buffer, gnus-overlay-start)
25986         (gnus-overlay-end, gnus-overlays-at, gnus-overlays-in):
25987         * lisp/gnus/message.el (message-delete-overlay, message-make-overlay)
25988         (message-overlay-get, message-overlay-put, message-overlays-in):
25989         * lisp/gnus/sieve.el (sieve-make-overlay, sieve-overlay-put)
25990         (sieve-overlays-at): Remove.
25992 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
25994         In w32fns.c condition TITLEBAR_INFO declaration on WINDOWS version
25995         * src/w32fns.c (TITLEBAR_INFO): Make it a typedef so MinGW64
25996         builds can use the declaration from the system headers.
25997         (GetTitleBarInfo_Proc, Fx_frame_geometry): Adapt to new
25998         definition of TITLEBAR_INFO.
25999         Suggested by Eli Zaretskii  <eliz@gnu.org>
26001 2015-08-19  Glenn Morris  <rgm@gnu.org>
26003         * lisp/gnus/nnmaildir.el (nnmaildir-flag-mark-mapping): Add "P".
26005 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
26007         Use new q ‘format’ flag when fixing quotes in C
26008         * src/image.c (image_size_error): New function.  All uses of
26009         image_error with "Invalid image size ..."  changed to use it.
26010         * src/image.c (image_size_error, xbm_load_image, xbm_load)
26011         (xpm_load, xpm_load_image, xpm_load, pbm_load, png_load_body)
26012         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
26013         (imagemagick_load, svg_load, svg_load_image, gs_load)
26014         (x_kill_gs_process):
26015         * src/lread.c (load_warn_old_style_backquotes):
26016         * src/xfaces.c (load_pixmap):
26017         * src/xselect.c (x_clipboard_manager_error_1):
26018         Use %qs, not uLSQM and uRSQM.
26019         * src/syntax.c (Finternal_describe_syntax_value):
26020         Prefer Fsubstitute_command_keys to Fformat, as this lets
26021         us use AUTO_STRING.
26022         * src/xdisp.c (vadd_to_log): Use AUTO_STRING on the format argument,
26023         as it's now guaranteed to be ASCII.
26024         * src/xselect.c (x_clipboard_manager_error_2):
26025         Avoid grave accent in low-level stderr diagnostic.
26027 2015-08-19  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
26029         New q flag for ‘format’
26030         * doc/lispref/processes.texi (Sentinels):
26031         Don't hardwire grave quoting style in example.
26032         * doc/lispref/strings.texi (Formatting Strings):
26033         * etc/NEWS:
26034         Document new q flag.
26035         * src/editfns.c (Fformat): Implement it.
26037 2015-08-18  Daiki Ueno  <ueno@gnu.org>
26039         pinentry.el: Add debugging support
26040         * lisp/net/pinentry.el (pinentry-debug): New variable.
26041         (pinentry-debug-buffer): New variable.
26042         (pinentry--process-filter): Send input to the debug buffer, if
26043         `pinentry-debug' is set.
26045         pinentry.el: Improve multiline prompt
26046         * lisp/net/pinentry.el (pinentry--prompt): Simplify the interface.
26047         (pinentry--process-filter): Use `pinentry--prompt' for CONFIRM
26048         command.
26050 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
26052         Fix multibyte confusion in diagnostics
26053         * src/print.c (print_error_message):
26054         Don't assume that the caller's name is unibyte.
26055         * src/xdisp.c (vadd_to_log):
26056         Don't assume that the formatted diagnostic is unibyte.
26058         Fix file name encodings in diagnostics
26059         Also, close some minor races when opening image files, by opening
26060         them once instead of multiple times.
26061         * src/gtkutil.c (xg_get_image_for_pixmap):
26062         * src/image.c (xpm_load, tiff_load, gif_load, imagemagick_load)
26063         (svg_load):
26064         * src/nsimage.m (allocInitFromFile:):
26065         * src/xfns.c (xg_set_icon):
26066         Encode file name, since x_find_image_file no longer does that.
26067         * src/image.c (x_find_image_fd): New function.
26068         (x_find_image_file): Use it.  Do not encode resulting file name,
26069         since callers sometimes need it decoded.
26070         (slurp_file): File arg is now a fd, not a file name.
26071         All callers changed.  This saves us having to open the file twice.
26072         (xbm_load, xpm_load, pbm_load, png_load_body, jpeg_load_body)
26073         (svg_load):
26074         Use x_find_image_fd and fdopen to save a file-open.
26075         Report file name that failed.
26076         * src/lread.c (openp): If PREDICATE is t, open the file in binary mode.
26078 2015-08-18  Dmitry Gutov  <dgutov@yandex.ru>
26080         Allow blink-matching-paren to jump off screen
26081         * doc/emacs/programs.texi (Matching): Mention the
26082         `blink-matching-paren' value `jump-offscreen'.
26083         * lisp/simple.el (blink-matching-paren): New possible value.
26084         (blink-matching-paren-on-screen): Clarify the docstring.
26085         (blink-matching-open): Handle `jump-offscreen' (bug#21286).
26087         Refine the previous change
26088         * lisp/simple.el (blink-matching-open): Use minibuffer-message
26089         outside of save-excursion (bug#21286).
26091 2015-08-18  Martin Rudalics  <rudalics@gmx.at>
26093         Rewrite and add frame geometry related functions.
26094         * src/frame.c (Fframe_position): New function.
26095         (Fset_frame_position): Rename parameters and rewrite doc-string.
26096         (syms_of_frame): Remove Qframe_position, Qframe_outer_size,
26097         Qtitle_height and Qframe_inner_size.  Add Qouter_edges,
26098         Qouter_position, Qouter_size, Qnative_edges, Qinner_edges,
26099         Qtitle_bar_size.
26100         * src/nsfns.m (frame_geometry): New function.
26101         (Fx_frame_geometry): Call frame_geometry.
26102         (Fx_frame_edges): New function.
26103         * src/w32fns.c (C_CHILDREN_TITLEBAR, TITLEBAR_INFO)
26104         (GetTitleBarInfo_Proc): Define these so we can use the
26105         GetTitleBarInfo API.
26106         (Fw32_frame_menu_bar_size, Fw32_frame_rect): Remove.
26107         (Fx_frame_geometry): Rewrite.
26108         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
26109         (Fx_set_mouse_absolute_pixel_position): New functions.
26110         * src/xfns.c (frame_geometry): New function.
26111         (Fx_frame_geometry): Call frame_geometry.
26112         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
26113         (Fx_set_mouse_absolute_pixel_position): New functions.
26115 2015-08-18  Michael Albinus  <michael.albinus@gmx.de>
26117         Improve Tramp's compatibility
26118         * lisp/net/tramp.el (tramp-get-method-parameter):
26119         * lisp/net/tramp-adb.el (tramp-adb-parse-device-names)
26120         (tramp-adb-get-device):
26121         * lisp/net/trampver.el (tramp-repository-get-version):
26122         Use `tramp-compat-replace-regexp-in-string'.
26124 2015-08-18  Pierre Téchoueyres  <pierre.techoueyres@free.fr>  (tiny change)
26126         * lisp/net/tramp-cmds.el (tramp-reporter-dump-variable):
26127         Encode/decode string.
26129 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
26131         Clarify what happens to match data on failure
26132         Problem reported by Ernesto Alfonso (Bug#21279).
26133         * doc/lispref/searching.texi (Regexp Search, Simple Match Data):
26134         Document more carefully what happens to match data after a failed
26135         search.
26136         * src/search.c (Fmatch_beginning, Fmatch_end): Document that
26137         the return value is undefined if the last search failed.
26138         (Fmatch_data): Simplify doc string line 1.
26140 2015-08-18  Daiki Ueno  <ueno@gnu.org>
26142         Revert "pinentry.el: Support external passphrase cache"
26143         This reverts commit e086e55a664ec27fbca7b3231c4b32cb78a89337.
26144         pinentry.el shouldn't directly interact with the secrets service,
26145         but ask the caller to cache the passphrase.
26147 2015-08-17  Xue Fuqiao  <xfq.free@gmail.com>
26149         * doc/emacs/sending.texi (Mail Misc): Fix two index entries for
26150         Message mode hooks.
26152 2015-08-17  Daiki Ueno  <ueno@gnu.org>
26154         epg.el: Make gpgconf output parsing future proof
26155         * lisp/epg.el (epg--start): Count the number of fields in "gpgconf
26156         --list-options" output.
26158         pinentry.el: Support external passphrase cache
26159         * lisp/net/pinentry.el (pinentry-use-secrets): New user option.
26160         (pinentry--allow-external-password-cache): New local variable.
26161         (pinentry--key-info): New local variable.
26162         (secrets-enabled, secrets-search-items, secrets-get-secret):
26163         Declare.
26164         (pinentry--send-passphrase): New function, split from
26165         `pinentry--process-filter'.
26166         (pinentry--process-filter): Use secrets.el to retrieve passphrase
26167         from login keyring.
26169         pinentry.el: Popup window for multiline prompt
26170         * lisp/net/pinentry.el (pinentry): New custom group.
26171         (pinentry-popup-prompt-window): New user option.
26172         (pinentry-prompt-window-height): New user option.
26173         (pinentry--prompt-buffer): New variable.
26174         (pinentry-prompt-mode-map): New variable.
26175         (pinentry-prompt-mode): New function.
26176         (pinentry--prompt): New function.
26177         (pinentry--process-filter): Use `pinentry--prompt' instead of
26178         `read-passwd' and `y-or-n-p'.
26180 2015-08-17  Katsumi Yamaoka  <yamaoka@jpl.org>
26182         message.el: Silent the byte compiler
26183         * lisp/gnus/message.el (message-overlay-put, message-make-overlay)
26184         (message-kill-all-overlays, message-overlays-in, message-overlay-get)
26185         (message-delete-overlay, message-window-inside-pixel-edges):
26186         Declare before using.
26188         * lisp/gnus/message.el (message-overlay-get, message-overlays-in)
26189         (message-window-inside-pixel-edges): XEmacs compatible functions.
26191 2015-08-17  Lars Magne Ingebrigtsen  <larsi@gnus.org>
26193         * lisp/gnus/message.el (message-toggle-image-thumbnails): New command.
26195 2015-08-17  Noah Friedman  <friedman@splode.com>
26197         * lisp/simple.el (blink-matching-open): Restore point before
26198         calling minibuffer-message.
26200 2015-08-17  Ronnie Schnell  <ronnie@driver-aces.com>
26202         * lisp/play/dunnet.el: Update version number in header (now
26203         matches help).
26205 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
26207         Curved quotes in --batch diagnostics in non-UTF-8
26208         When run with --batch, check that curved quotes are compatible with
26209         the system locale before outputting them in diagnostics.
26210         Problem reported by Eli Zaretskii in:
26211         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00594.html
26212         * lisp/startup.el (command-line): Set internal--text-quoting-flag
26213         after the standard display table is initialized.
26214         * src/doc.c (default_to_grave_quoting_style): New function.
26215         (text_quoting_style): Use it.
26216         (text_quoting_flag): New static var, visible to Lisp as
26217         internal--text-quoting-flag.
26218         * src/emacs.c: Include <wchar.h> if available.
26219         (using_utf8): New function.
26220         (main): Use it to initialize text_quoting_flag.
26221         * src/regex.h (btowc) [WIDE_CHAR_SUPPORT && emacs]:
26222         Don't define, as it's not needed and it clashes with wchar.h.
26224 2015-08-17  Glenn Morris  <rgm@gnu.org>
26226         * doc/misc/tramp.texi (Configuration): Reword to avoid warning
26227         from makeinfo about spurious "Note:" cross-reference, and for grammar.
26229 2015-08-17  Ilya Zakharevich  <ilya@math.berkeley.edu>
26231         Minor change in variable initialization on MS-Windows
26232         * src/w32fns.c <after_dead_key>: Initialize to -1.
26233         (deliver_wm_chars): If after_deadkey is zero, don't set after_dead
26234         non-zero.
26236         Fix a bug with LWindow key remapping on MS-Windows
26237         * src/w32fns.c (deliver_wm_chars): Fix a typo.  (Bug#21276)
26239 2015-08-17  Eli Zaretskii  <eliz@gnu.org>
26241         Improve fontset support for latest OTF script tags
26242         * lisp/international/fontset.el (otf-script-alist): Add some
26243         missing script tags.
26244         (setup-default-fontset): Include settings for v2 versions of the
26245         script tags used by some modern OTF/TTF fonts.
26247 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
26249         Spelling fixes
26251 2015-08-16  Paul Eggert  <eggert@cs.ucla.edu>
26253         Use curved quotes in core elisp diagnostics
26254         In the core elisp files, use curved quotes in diagnostic formats,
26255         so that they follow user preference as per ‘text-quoting-style’
26256         rather than being hard-coded to quote `like this'.
26257         * lisp/abbrev.el (expand-region-abbrevs):
26258         * lisp/button.el (button-category-symbol, button-put)
26259         (make-text-button):
26260         * lisp/cus-start.el:
26261         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
26262         (custom--sort-vars-1, load-theme):
26263         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
26264         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
26265         (cl-generic-generalizers):
26266         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
26267         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
26268         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
26269         (advice--make, define-advice):
26270         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
26271         * lisp/emacs-lisp/timer.el (timer-event-handler):
26272         * lisp/env.el (setenv):
26273         * lisp/facemenu.el (facemenu-add-new-face)
26274         (facemenu-add-new-color):
26275         * lisp/faces.el (face-documentation, read-face-name)
26276         (face-read-string, read-face-font, face-spec-set-match-display)
26277         (read-color, x-resolve-font-name):
26278         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
26279         (set-auto-mode, hack-local-variables)
26280         (hack-one-local-variable--obsolete)
26281         (dir-locals-set-directory-class, write-file)
26282         (basic-save-buffer, delete-directory, copy-directory)
26283         (recover-session, recover-session-finish, insert-directory)
26284         (file-modes-char-to-who, file-modes-symbolic-to-number)
26285         (move-file-to-trash):
26286         * lisp/font-lock.el (font-lock-fontify-buffer):
26287         * lisp/format.el (format-write-file, format-find-file)
26288         (format-insert-file):
26289         * lisp/frame.el (get-device-terminal, select-frame-by-name):
26290         * lisp/fringe.el (fringe--check-style):
26291         * lisp/help.el (describe-minor-mode-from-indicator):
26292         * lisp/image.el (image-type):
26293         * lisp/international/fontset.el (x-must-resolve-font-name):
26294         * lisp/international/mule-cmds.el (prefer-coding-system)
26295         (select-safe-coding-system-interactively)
26296         (select-safe-coding-system, activate-input-method)
26297         (toggle-input-method, describe-current-input-method):
26298         * lisp/international/mule-conf.el (code-offset):
26299         * lisp/mouse.el (minor-mode-menu-from-indicator):
26300         * lisp/replace.el (query-replace-read-from)
26301         (occur-after-change-function, occur-1):
26302         * lisp/scroll-bar.el (scroll-bar-columns):
26303         * lisp/simple.el (execute-extended-command)
26304         (undo-outer-limit-truncate, compose-mail, set-variable)
26305         (choose-completion-string, define-alternatives):
26306         * lisp/startup.el (site-run-file, tty-handle-args)
26307         (command-line, command-line-1):
26308         * lisp/subr.el (noreturn, define-error, add-to-list)
26309         (read-char-choice):
26310         * lisp/term/common-win.el (x-handle-xrm-switch)
26311         (x-handle-name-switch, x-handle-args):
26312         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
26313         Use curved quotes in diagnostics.
26314         * lisp/international/mule.el (find-auto-coding):
26315         Use " to quote in a diagnostic, to be consistent with the rest of
26316         this file.
26318         Convert lisp/term/x-win.el to UTF-8
26319         * lisp/term/x-win.el: Convert to UTF-8.  This doesn't affect
26320         runtime behavior, and the file is multilingual so compile-time
26321         appearance shouldn't be an issue.
26322         * admin/notes/unicode: Document this.
26324 2015-08-16  Wilson Snyder  <wsnyder@wsnyder.org>
26326         Update verilog-mode.el to 2015-05-14-6232468-vpo-GNU.
26327         * lisp/progmodes/verilog-mode.el: Fix some non-automated indent
26328         issues and comments, bug#943.
26329         (verilog-type-font-keywords): Cycle delay operators like ##1 and
26330         ##[0:$] are now highlighted in their entirety similarly to the #
26331         delay-control operator.  Likewise, the followed-by operators #-#
26332         and #=# are no longer partially highlighed.
26333         (verilog-backward-syntactic-ws-quick)
26334         (verilog-skip-backward-comments): Minor performance improvements
26335         to buffer traversal functions for reduced latency.
26336         (verilog-calc-1, verilog-in-deferred-immediate-final-p): When the
26337         keyword 'final' follows 'assert/assume/cover', then it is part of
26338         a deferred immediate assertion item and should not be treated as a
26339         final construct for indentation.  Reported by Yuri Sugihara.
26340         (verilog-do-indent): Virtual task/function/class definition lines
26341         should not be considered as declarations.  Reported by Enzo Chi.
26342         (verilog-do-indent): Do not falsely indent to '=' of
26343         property/sequence operators on subsequent lines of a multi-line
26344         statement.
26345         (verilog-assignment-operator-re): Fix '!==' operator and add
26346         support for '<->', ':/', '#-#', and '#=#' operators.
26347         (verilog-calculate-indent, verilog-label-be): Enable
26348         case-sensitive regular expression parsing when looking for
26349         keywords.
26350         (verilog-calc-1): Detect 'pure virtual method' declarations which
26351         exist in abstract classes.  Reported by Enzo Chi and Kaushal Modi.
26352         (verilog-backward-ws&directives): When moving back to the start of
26353         a line and the preceeding line ended with an escaped-newline, then
26354         jump up one line.  This properly consumes a multi-line
26355         pre-processor directive.  Reported by Kaushal Modi.
26356         (verilog-dpi-import-export-re, verilog-extended-complete-re)
26357         (verilog-calc-1): Teach verilog-mode to properly indent after a
26358         DPI import/export statement that resides outside of a module.
26359         Reported by Kaushal Modi.
26360         (verilog-extended-complete-re): Update regexp to match both
26361         "DPI-C" and "DPI".  Reported by Kaushal Modi.
26363 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
26365         substitute-command-keys a few more doc strings
26366         * lisp/allout.el (outlineify-sticky):
26367         * lisp/files.el (hack-one-local-variable--obsolete):
26368         * lisp/help-fns.el (help-fns--obsolete, describe-variable):
26369         Use substitute-command-keys on some doc strings so that
26370         they don't use hard-coded key bindings or quoting styles.
26372         Fix quoting in Fformat calls
26373         * src/image.c (xbm_read_bitmap_data, xbm_load_image, xbm_load)
26374         (xpm_load, xpm_load_image, pbm_load, png_load_body)
26375         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
26376         (imagemagick_load, svg_load, svg_load_image, gs_load)
26377         (x_kill_gs_process):
26378         * src/lread.c (load_warn_old_style_backquotes):
26379         * src/xfaces.c (load_pixmap):
26380         * src/xselect.c (x_clipboard_manager_error_1):
26381         Quote diagnostics according to user preference when calling
26382         Fformat or its derivatives.
26384 2015-08-15  Glenn Morris  <rgm@gnu.org>
26386         * admin/admin.el (set-version, set-copyright): Remove deleted files.
26388 2015-08-15  Stephen Leake  <stephen_leake@stephe-leake.org>
26390         Allow describe-function helpers to access buffer-local values
26391         This will be used by cedet/mode-local.el `describe-mode-local-override'
26392         on `help-fns-describe-function-functions' in upstream CEDET.
26393         * lisp/help-fns.el (describe-function-orig-buffer): New, let-bound in
26394         `describe-function'.
26395         (describe-function): Bind it, save it on the help xref stack.
26397         Handle pulse-background being nil
26398         * lisp/cedet/pulse.el (pulse-lighten-highlight): Inherit
26399         pulse-background, handle it being nil.
26401 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
26403         Fix "\`" confusion in Lisp strings
26404         * admin/authors.el (authors-canonical-author-name):
26405         Fix typo by using "\\`" not "\`" in string RE.
26406         * lisp/obsolete/complete.el (PC-complete-as-file-name):
26407         * lisp/obsolete/vi.el (vi-backward-blank-delimited-word):
26408         * lisp/progmodes/verilog-mode.el (verilog-mode-map):
26409         Use plain "`", not the equivalent-but-confusing "\`", in strings.
26410         * lisp/textmodes/texinfmt.el: Fix comment likewise.
26412 2015-08-15  Dani Moncayo  <dmoncayo@gmail.com>
26414         * nt/zipdist.bat: Remove -- no longer used.
26416 2015-08-15  Jürgen Hötzel  <juergen@archlinux.org>
26418         * lisp/net/tramp-sh.el (tramp-remote-selinux-p): Use "selinuxenabled"
26419         rather than "getenforce".
26420         (tramp-sh-handle-set-file-selinux-context): Do not
26421         cache SELinux context if not all context components are given.
26423 2015-08-15  Eli Zaretskii  <eliz@gnu.org>
26425         Add doc strings to 2 help-mode.el functions
26426         * lisp/help-mode.el (help-mode-setup, help-mode-finish): Add doc
26427         strings.  (Bug#21263)
26429         Remove files used by the old MS-Windows specific build procedure
26430         * admin/unidata/makefile.w32-in:
26431         * doc/emacs/makefile.w32-in:
26432         * doc/lispintro/makefile.w32-in:
26433         * doc/lispref/makefile.w32-in:
26434         * doc/misc/makefile.w32-in:
26435         * leim/makefile.w32-in:
26436         * lib-src/makefile.w32-in:
26437         * lib/makefile.w32-in:
26438         * lisp/makefile.w32-in:
26439         * nt/INSTALL.OLD:
26440         * nt/config.nt:
26441         * nt/emacs-src.tags:
26442         * nt/envadd.bat:
26443         * nt/gmake.defs:
26444         * nt/makefile.w32-in:
26445         * nt/multi-install-info.bat:
26446         * nt/nmake.defs:
26447         * nt/paths.h:
26448         * src/makefile.w32-in: Files deleted.
26449         * nt/configure.bat: Remove everything except the blurb about the
26450         new build procedure.
26451         * make-dist: Remove references to makefile.w32-in in various
26452         directories, and to files in nt/ that were deleted.
26453         * etc/NEWS: Mention the fact that the files were dropped.
26455 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
26457         * doc/emacs/mule.texi (Charsets): Give fuller title for ISO-IR.
26458         (Bug#21248)
26460 2015-08-14  Paul Eggert  <eggert@cs.ucla.edu>
26462         Default to inotify instead of gfile
26463         * configure.ac (with_file_notification): Fix typo that
26464         prevented suppression of file notification if HAVE_NS.
26465         (NOTIFY_OBJ): Prefer inotify to gfile if both exist and
26466         with_file_notification is 'yes' (Bug#21241).
26467         * etc/NEWS: Mention this.
26469         Fix broken URLs for ISO-IR
26470         * doc/emacs/mule.texi (Charsets):
26471         * lisp/international/mule-conf.el:
26472         Fix broken URL (Bug#21248).
26474         Low-level diagnostics now use ‘text-quoting-style’
26475         * src/doprnt.c (doprnt):
26476         Format ` and ' as per ‘text-quoting-style’.
26477         * src/xdisp.c (vmessage, message): Mention that the format should
26478         not contain ` or '.
26480         Prefer ‘format’ to ‘substitute-command-keys’
26481         * src/character.h (uLSQM, uRSQM): Move here ...
26482         * src/doc.c (uLSQM, uRSQM): ... from here.
26483         * src/doc.c (Fsubstitute_command_keys):
26484         * src/syntax.c (Finternal_describe_syntax_value):
26485         * lisp/cedet/mode-local.el (mode-local-print-binding)
26486         (mode-local-describe-bindings-2):
26487         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
26488         * lisp/cus-theme.el (describe-theme-1):
26489         * lisp/descr-text.el (describe-text-properties-1, describe-char):
26490         * lisp/emacs-lisp/cl-extra.el (cl--describe-class):
26491         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
26492         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
26493         * lisp/emacs-lisp/package.el (describe-package-1):
26494         * lisp/faces.el (describe-face):
26495         * lisp/help-fns.el (help-fns--key-bindings)
26496         (help-fns--compiler-macro, help-fns--parent-mode)
26497         (help-fns--obsolete, help-fns--interactive-only)
26498         (describe-function-1, describe-variable):
26499         * lisp/help.el (describe-mode):
26500         Prefer ‘format’ to ‘substitute-command-keys’ when either will do
26501         to implement quoting style.  This generally makes the code simpler.
26503         Extend ‘format’ to translate curved quotes
26504         This is a followup to the recent doc string change, and deals with
26505         diagnostics and the like.  This patch is more conservative than
26506         the doc string change, in that the behavior of ‘format’ changes
26507         only if its first arg contains curved quotes and the user prefers
26508         straight or grave quotes.  (Come to think of it, perhaps we should
26509         be similarly conservative with doc strings too, but that can wait.)
26510         The upside of this conservatism is that existing usage is almost
26511         surely unaffected.  The downside is that we'll eventually have to
26512         change Emacs's format strings to use curved quotes in places where
26513         the user might want curved quotes, but that's a simple and
26514         mechanical translation that I'm willing to do later.  (Bug#21222)
26515         * doc/lispref/help.texi (Keys in Documentation):
26516         Move description of text-quoting-style from here ...
26517         * doc/lispref/strings.texi (Formatting Strings):
26518         ... to here, and describe new behavior of ‘format’.
26519         * etc/NEWS: Describe new behavior.
26520         * lisp/calc/calc-help.el (calc-describe-thing):
26521         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
26522         * lisp/info.el (Info-find-index-name):
26523         Use ‘concat’ rather than ‘format’ to avoid misinterpretation
26524         of recently-added curved quotes.
26525         * src/doc.c (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
26526         Move from here ...
26527         * src/lisp.h: ... to here.
26528         * src/doc.c (text_quoting_style): New function.
26529         (Fsubstitute_command_keys): Use it.
26530         * src/editfns.c (Fformat): Implement new behavior.
26531         * src/lisp.h (enum text_quoting_style): New enum.
26533 2015-08-14  Stefan Monnier  <monnier@iro.umontreal.ca>
26535         * src/keyboard.c: Use false/true instead of 0/1 for booleans.
26536         * src/keyboard.h (struct kboard): Mark kbd_queue_has_data as boolean.
26538 2015-08-14  Michael Albinus  <michael.albinus@gmx.de>
26540         * lisp/net/tramp-sh.el (tramp-sh-handle-file-acl): Do not redirect
26541         stderr to /dev/null, this is done in `tramp-send-command-and-check'.
26543 2015-08-14  Jürgen Hötzel  <juergen@archlinux.org>
26545         Flush file properties in Tramp
26546         * lisp/net/tramp-sh.el (tramp-sh-handle-set-file-modes)
26547         (tramp-sh-handle-set-file-times):
26548         * lisp/net/tramp-adb.el (tramp-adb-handle-set-file-modes)
26549         (tramp-adb-handle-set-file-times): Flush the file properties of
26550         the directory.
26552 2015-08-14  Ronnie Schnell  <ronnie@driver-aces.com>
26554         * doc/emacs/misc.texi (Amusements): Fixed typo.
26556 2015-08-14  Eli Zaretskii  <eliz@gnu.org>
26558         Don't miss warnings about removing string text properties while dumping
26559         * src/alloc.c (purecopy): Warn about removing a string's text
26560         properties even when the same string was already pure-copied
26561         earlier.
26562         * lisp/progmodes/elisp-mode.el (elisp--xref-format)
26563         (elisp--xref-format-extra): Fix the commentary.
26565 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
26567         * lisp/progmodes/sh-script.el (sh-mode): Handle .cshrc (bug#21049).
26569 2015-08-13  Magnus Henoch  <magnus.henoch@gmail.com>
26571         * lisp/progmodes/compile.el: Use lexical-binding.
26572         (compilation-move-to-column): Assume 8-wide TABs (bug#21038).
26574 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
26576         (uniquify-ask-about-buffer-names-p): Remove, unused (bug#21037)
26577         * lisp/uniquify.el: Remove redundant `:group's.
26579 2015-08-13  Jürgen Hötzel  <juergen@archlinux.org>
26581         * lisp/net/tramp-adb.el
26582         (tramp-adb-handle-directory-files-and-attributes): Make a copy of
26583         result to prevent modification of the tramp-cache by side effects.
26584         Use the correct cache key.
26586 2015-08-13  Paul Eggert  <eggert@cs.ucla.edu>
26588         Make add_to_log varargs
26589         * src/alloc.c (run_finalizer_handler):
26590         * src/charset.c (load_charset_map_from_vector):
26591         * src/nsimage.m (ns_load_image):
26592         * src/xfaces.c (load_pixmap, load_color2):
26593         Simplify, now that add_to_log has a variable number of args.
26594         * src/image.c (image_error): Take a variable number of args.
26595         Callers simplified.
26596         * src/lisp.h (add_to_log, vadd_to_log): Adjust to new APIs.
26597         * src/xdisp.c (format_nargs, vadd_to_log): New functions.
26598         (add_to_log): Make varargs, and reimplement in terms of vadd_to_log.
26599         * src/xfaces.c (merge_face_ref): Fix typo that omitted color name.
26601         Optional args for holiday-greek-orthodox-easter
26602         * etc/NEWS: Document this.
26603         * lisp/calendar/holidays.el (holiday-greek-orthodox-easter):
26604         Add optional args N and STRING, mimicking the API and code of
26605         ‘holiday-easter-etc’.  From suggestion by Foivos S. Zakkak (Bug#21256).
26607 2015-08-13  Stephen Leake  <stephen_leake@stephe-leake.org>
26609         xref-find-definitions: Exclude more generic function items.
26610         * lisp/emacs-lisp/cl-generic.el (cl--generic-search-method):
26611         Add doc string.
26612         (cl--generic-find-defgeneric-regexp): New.
26613         (find-function-regexp-alist): Add it.
26614         * lisp/emacs-lisp/find-func.el (find-feature-regexp): Move here from
26615         elisp-mode.el, change to search for ";;; Code:"
26616         (find-alias-regexp): Move here from elisp-mode.el, cleaned up.
26617         (find-function-regexp-alist): Add them.
26618         * lisp/progmodes/elisp-mode.el:
26619         (elisp--xref-format, elisp--xref-format-extra): Change back to
26620         defvar due to bug#21237.
26621         (elisp--xref-find-definitions): Exclude co-located default methods for
26622         generic functions.  Also exclude implicitly declared defgeneric.
26623         (elisp--xref-find-definitions): Handle C source properly.  Exclude minor
26624         mode variables defined by 'define-minor-mode'.
26625         * test/automated/elisp-mode-tests.el: Declare generic functions, add
26626         tests for them.
26627         (xref-elisp-test-run): Fix bug.
26628         (emacs-test-dir): Improve initial value.
26629         (find-defs-defun-defvar-el): Don't expect defvar.
26630         (find-defs-feature-el): Match change to find-feature-regexp.
26632 2015-08-13  Eli Zaretskii  <eliz@gnu.org>
26634         Improve warning about purecopy of strings with properties
26635         * src/alloc.c (purecopy): Show the offending string with the
26636         warning about removing its text properties.
26638 2015-08-12  Alan Mackenzie  <acm@muc.de>
26640         Introduce new macros to cover Emacs's new names in cl-lib.el
26641         This also eliminates `mapcan' warnings in XEmacs.
26642         * lisp/progmodes/cc-defs.el (c--mapcan-status): New variable to
26643         characterise [X]Emacs versions.
26644         (top-level): Require either 'cl or 'cl-lib, depending on
26645         c--mapcan-status.
26646         Change this back to cc-external-require from an eval-when-compile
26647         require.
26648         (c--mapcan, c--set-difference, c--intersection, c--macroexpand-all)
26649         (c--delete-duplicates): New macros which expand into either old or new
26650         names.
26651         (c-make-keywords-re, c-lang-defconst, c-lang-const): Use the new macros
26652         rather than the old names.
26653         * lisp/progmodes/cc-engine.el (c-declare-lang-variables): Use c--mapcan
26654         rather than mapcan.
26655         * lisp/progmodes/cc-fonts.el (c-compose-keywords-list): Use c--mapcan.
26656         * lisp/progmodes/cc-langs.el (top-level): Require either 'cl or 'cl-lib,
26657         depending on c--mapcan-status.
26658         (c-filter-ops, c-all-op-syntax-tokens, c-assignment-op-regexp)
26659         (c-type-start-kwds, c-prefix-spec-kwds, c-specifier-key)
26660         (c-not-decl-init-keywords, c-not-primitive-type-keywords)
26661         (c-paren-any-kwds, c-<>-sexp-kwds, c-block-stmt-kwds, c-expr-kwds)
26662         (c-decl-block-key, c-keywords, c-keywords-obarray)
26663         (c-regular-keywords-regexp, c-primary-expr-regexp)
26664         (c-primary-expr-regexp, c-block-prefix-disallowed-chars)
26665         (c-known-type-key, c-nonlabel-token-key)
26666         (c-make-init-lang-vars-fun): Use the new macros rather than the old
26667         names.
26669 2015-08-12  Oleh Krehel  <ohwoeowho@gmail.com>
26671         loadhist.el (read-feature): Conform to completing-read
26672         * lisp/loadhist.el (read-feature): According to `completing-read'
26673         documentation, if collection is a list, then it must be a list of
26674         strings, not a list of symbols like before.
26676 2015-08-12  David Kastrup  <dak@gnu.org>
26678         Deal gracefully with up-events (Bug#19746)
26679         * src/keyboard.c (apply_modifiers_uncached, parse_solitary_modifier)
26680         (parse_modifiers_uncached): React gracefully to "up-" modifiers:
26681         those may easily be injected by user-level Lisp code.
26682         (read_key_sequence): Discard unbound up-events like unbound
26683         down-events: they are even more likely only relevant for special
26684         purposes.
26685         While Emacs will not produce up-events on its own currently (those are
26686         converted to drag or click events before being converted to
26687         Lisp-readable structures), the input queue can be made to contain them
26688         by synthesizing events to `unread-command-events'.  Emacs should deal
26689         consistently with such events.
26691 2015-08-12  Eli Zaretskii  <eliz@gnu.org>
26693         Fix display of thin lines whose newline has line-height property of t
26694         * src/xdisp.c (append_space_for_newline): Don't try to fix ascent
26695         and descent values of non-empty glyph rows, since they could have
26696         forced low values deliberately.  (Bug#21243)
26698 2015-08-12  Richard Stallman  <rms@gnu.org>
26700         Offer to combine multiple To or CC fields.
26701         * lisp/mail/sendmail.el (mail-combine-fields): New function.
26702         (mail-send): Call 'mail-combine-fields'.
26704         Don't decrypt encrypted files.
26705         * lisp/mail/mail-utils.el (mail-file-babyl-p): Bind epa-inhibit to t.
26707         Handle encrypted mbox files.
26708         * lisp/mail/rmailout.el (rmail-output-as-mbox): Decrypt and reencrypt
26709         the mbox file if necessary.
26711         Re-enable mime processing after decryption.  Add 'decrypt' keyword.
26712         * lisp/mail/rmail.el (rmail-epa-decrypt-1): New subroutine.
26713         (rmail-epa-decrypt): rmail-epa-decrypt-1 broken out.
26714         In a mime message, reenable Mime and show the parts that
26715         were shown before.
26716         Add keyword "decrypt" if anything decrypted.
26718         epa-inhibit inhibits auto-recognition of .gpg files
26719         * lisp/epa-file.el (epa-inhibit): New variable.
26720         (epa-file-handler): Check epa-inhibit.
26722 2015-08-12  Artur Malabarba  <bruce.connor.am@gmail.com>
26724         * lisp/emacs-lisp/lisp-mnt.el (lm-header): Add save-excursion.
26726 2015-08-11  Fabián Ezequiel Gallina  <fgallina@gnu.org>
26728         Respect python.el imenu when semantic-mode is off
26729         Fixes bug#21220
26730         * lisp/cedet/semantic/wisent/python.el: Do not force
26731         wisent-python-default-setup on python-mode-hook.
26733 2015-08-11  Paul Eggert  <eggert@cs.ucla.edu>
26735         Give names to Unicode code points in C code
26736         * src/character.h (NO_BREAK_SPACE, SOFT_HYPHEN)
26737         (ZERO_WIDTH_NON_JOINER, ZERO_WIDTH_JOINER, HYPHEN)
26738         (NON_BREAKING_HYPHEN, LEFT_SINGLE_QUOTATION_MARK)
26739         (RIGHT_SINGLE_QUOTATION_MARK, PARAGRAPH_SEPARATOR)
26740         (LEFT_POINTING_ANGLE_BRACKET, RIGHT_POINTING_ANGLE_BRACKET)
26741         (LEFT_ANGLE_BRACKET, RIGHT_ANGLE_BRACKET)
26742         (OBJECT_REPLACEMENT_CHARACTER):
26743         New named constants for Unicode code points.
26744         * src/bidi.c (bidi_fetch_char, CANONICAL_EQU):
26745         * src/composite.c (char_composable_p):
26746         * src/lread.c (readevalloop, read1):
26747         * src/xdisp.c (get_next_display_element):
26748         Use them.
26749         * src/doc.c (LEFT_SINGLE_QUOTATION_POINT):
26750         Remove; now in character.h.
26752 2015-08-11  Stephen Leake  <stephen_leake@stephe-leake.org>
26754         elisp--xref-find-definitions handle cl-defstuct default constructor
26755         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Add FIXME.
26756         (elisp--xref-format-extra): Rename from elisp--xref-format-cl-defmethod.
26757         (elisp--xref-find-definitions): Handle cl-defstuct default constructor.
26758         * test/automated/elisp-mode-tests.el (xref-elisp-test-run): Split out
26759         from xref-elisp-test for ease of debugging.
26760         (xref-elisp-deftest): Rename from xref-elisp-test.
26761         (find-defs-constructor): New test.
26762         (find-defs-defgeneric-el): Match batch test config.
26763         (compile): Required for find-defs compilation-minor-mode test.
26764         (find-defs-defvar-el): Match code change.
26765         (find-defs-face-el): Match code change.
26766         * lisp/progmodes/xref.el (xref-find-function, xref-find-definitions):
26767         Improve doc string.
26769 2015-08-11  Stefan Monnier  <monnier@iro.umontreal.ca>
26771         * lisp/replace.el (perform-replace): Document `replacements'.
26772         (perform-replace): Move the description of the format of `replacements'
26773         from the body's comment to the doc string.
26775 2015-08-11  Jürgen Hötzel  <juergen@archlinux.org>
26777         * lisp/net/tramp-adb.el (tramp-adb-prompt): Match leading escape
26778         sequence.  Recent adb version send initial escape sequences, even
26779         when terminal type is set to TERM=dumb.
26781 2015-08-10  Stephen Leake  <stephen_leake@stephe-leake.org>
26783         Rewrite elisp--xref-find-definitions to handle many more cases; add tests
26784         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
26785         Function deleted.
26786         (elisp--xref-format-cl-defmethod): New defconst.
26787         (find-feature-regexp, find-alias-regexp): New defcustoms.
26788         (elisp--xref-make-xref): New function.
26789         (elisp--xref-find-definitions): Rewrite using the above, handle many
26790         more cases.  Always output all available definitions.
26791         (xref-location-marker): No need for special cases.
26792         * test/automated/elisp-mode-tests.el: Add more tests of
26793         elisp--xref-find-definitions, improve current tests.
26795 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
26797         Fix recording of events pushed onto unread-command-events
26798         * src/keyboard.c (read_char): Make sure events read from
26799         unread-command-events and unread-post-input-method-events are
26800         always recorded by record_char.  Reported by David Kastrup
26801         <dak@gnu.org>, see
26802         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00193.html.
26804 2015-08-10  Samer Masterson  <samer@samertm.com>
26806         Set file buffer as current for "--file"
26807         * lisp/startup.el (command-line-1): Set file buffer as current before
26808         it is displayed so it can be used with options like "--eval".
26809         (Bug#21095)
26811 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
26813         Avoid setting LC_NUMERIC on MS-Windows to anything but "C"
26814         * src/emacs.c (synchronize_locale) [WINDOWSNT]: Call fixup_locale
26815         after setting LC_ALL to the desired locale, to avoid affecting how
26816         numbers are read and printed.  (Bug#21223)
26818 2015-08-10  Alan Mackenzie  <acm@muc.de>
26820         Fix "Invalid search bound (wrong side of point)" in fontification
26821         * lisp/progmodes/cc-fonts.el (c-font-lock-declarators): After skipping
26822         an initialization expression, check point is not beyond the
26823         fontification limit.
26825 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
26827         Fix DPI calculation when Xft/DPI is default
26828         * src/xsettings.c (parse_settings): Don't use Xft/DPI default
26829         value of -1, which evaluates to 2**32 - 1 (Bug#21152).
26830         Remove unnecessary cast while we're in the neighborhood.
26832 2015-08-09  Dmitry Gutov  <dgutov@yandex.ru>
26834         Add project-vc-search-path and project-vc-ignores
26835         * lisp/progmodes/project.el (project-vc): New group.
26836         (project-vc-search-path, project-vc-ignores): New variables.
26837         (project--value-in-dir): Utility function.
26838         (project-search-path, project-ignores): Use them.
26839         * lisp/progmodes/xref.el (xref--rgrep-command): Only replace `./'
26840         at bos.  Don't add extra `/'.  Don't prepend with `*' if replaced.
26842 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
26844         Fix some minor quoting issues with grave accent
26845         * src/dispnew.c (add_window_display_history) [GLYPH_DEBUG]:
26846         Remove redundant quotes.
26847         * src/doc.c (uLSQM, uRSQM): New macros.
26848         * src/doc.c (Fsubstitute_command_keys):
26849         * src/syntax.c (Finternal_describe_syntax_value): Follow the user
26850         preference for quotes rather than hardcoding the ‘grave’ style.
26851         * src/regex.c (PUSH_FAILURE_POINT, POP_FAILURE_POINT)
26852         (re_match_2_internal) [DEBUG]: In debugging output, quote C
26853         strings with "...", not `...'.
26855         ChangeLog.2 ignores remote-tracking merges
26856         * build-aux/gitlog-to-emacslog: Ignore commit logs matching
26857         "Merge remote-tracking branch '.*'" too.  See Eli Zaretskii in:
26858         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00384.html
26860 2015-08-09  Nicolas Richard  <youngfrog@members.fsf.org>
26862         Use kpsewhich in ffap-latex-mode, if available
26863         * lisp/ffap.el (ffap-latex-guess-rules): New variable.
26864         (ffap-latex-mode): Use kpsewhich if available.
26866         ffap: disallow braces in filenames for tex modes
26867         * lisp/ffap.el (ffap-string-at-point-mode-alist): Don't allow
26868         braces in tex-related modes.
26870         Remove useless backslashes from ffap-string-at-point-mode-alist
26871         * lisp/ffap.el (ffap-string-at-point-mode-alist): Remove useless and
26872         misleading backslashes from default value.
26874         Augment docstring of ffap-string-at-point-mode-alist
26875         * lisp/ffap.el (ffap-string-at-point-mode-alist): Describe how BEG
26876         and END are handled.
26878 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
26880         * lisp/org/org-src.el (org-edit-src-code)
26881         (org-edit-fixed-width-region):
26882         * lisp/simple.el (completion-setup-function):
26883         Remove calls to substitute-command-keys that always just return
26884         their argument.
26886 2015-08-09  Daiki Ueno  <ueno@gnu.org>
26888         * lisp/epa.el (epa-exit-buffer-function): Set to `quit-window'.
26889         (Bug#21210)
26891 2015-08-09  Ivan Kanis  <ivan@kanis.fr>
26893         Fix link to source code in help window
26894         * lisp/help-fns.el (find-lisp-object-file-name): Remove code that
26895         will never work due to Glenn Morris change a6d63d9 on Apr 20 2013
26896         'No longer include timestamp in header of .elc files'.  Add code
26897         that will return .el source file in load-path.
26899 2015-08-09  Artur Malabarba  <bruce.connor.am@gmail.com>
26901         * lisp/isearch.el (isearch-search-fun-default): (Bug#21164)
26902         Respect `isearch-lax-whitespace' when searching through
26903         `isearch-word'.
26905 2015-08-08  Stefan Monnier  <monnier@iro.umontreal.ca>
26907         * test/automated/ert-tests.el (ert-test-deftest): Add FIXME.
26909         * lisp/org/org.el: Fix up some lexical scoping warnings, and use dolist
26910         * lisp/org/org.el (org-set-regexps-and-options-for-tags, org-goto-map)
26911         (org-set-regexps-and-options, org-assign-fast-keys)
26912         (org-contextualize-keys, org-contextualize-validate-key)
26913         (org-notes-order-reversed-p, org-local-logging, org-map-entries)
26914         (org-find-olp, org-find-exact-heading-in-directory)
26915         (org-cycle-agenda-files, org-release-buffers, org-fill-template)
26916         (org-agenda-prepare-buffers, org-occur-in-agenda-files)
26917         (org-replace-escapes): Use dolist.
26918         (org-mode): Optimize away XEmacs-only code.
26919         (org-refile-get-targets): Remove unused var `f'.
26920         (org-fast-todo-selection): Remove unused var `e'.
26921         (org-make-tags-matcher): Use dolist.  Remove unused var `term'.
26922         (org-fast-tag-selection): Use dolist.  Remove unused var `e'.
26923         (org-format-latex): Use dolist.  Remove unused var `e'.
26924         (org-toggle-heading): Access vars lexically rather than dynamically.
26925         (org-backward-sentence, org-forward-sentence, org-meta-return)
26926         (org-kill-line): Mark arg as unused.
26927         (org-submit-bug-report): Silence compiler warning.
26928         (org-occur-in-agenda-files): Don't use add-to-list on local vars.
26929         (org-get-cursor-date): Remove unused var `tm'.
26930         (org-comment-or-uncomment-region): Use standard name `_'.
26931         (reftex-docstruct-symbol, reftex-cite-format): Declare to
26932         silence byte-compiler.
26933         (org-reftex-citation): Add `org--' prefix to dynamically scoped
26934         `rds' var.
26936 2015-08-08  Paul Eggert  <eggert@cs.ucla.edu>
26938         Electric quote if coding is undecided or no conv
26939         * lisp/electric.el (electric--insertable-p): Also say that a
26940         string is insertable if the buffer file coding system is undecided
26941         or uses no conversion, as curved quotes will work in either case.
26943         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Simplify configuration.
26945 2015-08-08  Eli Zaretskii  <eliz@gnu.org>
26947         Fix overlay string display regressions introduced in Emacs 24.5
26948         * src/xdisp.c (pop_it): Reset the flag to ignore overlays at this
26949         buffer position, if we move the iterator to a new position as
26950         result of jumping over text covered by a "replacing" display
26951         property.
26952         * test/redisplay-testsuite.el (test-redisplay-4): Add 2 new tests.
26954         Support recovery from C stack overflow on MS-Windows
26955         * src/w32fns.c (w32_reset_stack_overflow_guard)
26956         (stack_overflow_handler): New functions for handling C stack
26957         overflow exceptions.
26958         (my_exception_handler): Handle EXCEPTION_STACK_OVERFLOW exceptions
26959         specially, and zero out except_addr if we do.
26960         (globals_of_w32fns): Initialize dwMainThreadId in non-interactive
26961         mode.
26962         * src/sysdep.c [HAVE_STACK_OVERFLOW_HANDLING]: Add !WINDOWSNT to
26963         the condition, as HAVE_STACK_OVERFLOW_HANDLING is now defined for
26964         the MinGW build, but the code guarded by that is for Posix hosts.
26965         * src/keyboard.c (command_loop) [WINDOWSNT]:
26966         Call w32_reset_stack_overflow_guard.
26967         * nt/inc/ms-w32.h (sigjmp_buf): New typedef.
26968         (sigsetjmp): New macro.
26969         (w32_reset_stack_overflow_guard): Declare the prototype.
26970         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Set to 1 for MinGW.
26972 2015-08-07  Phillip Lord  <phillip.lord@newcastle.ac.uk>
26974         Improve error signaling for seq-subseq
26975         * lisp/emacs-lisp/seq.el (seq-subseq): The existing behavior is to error
26976         when indexes are too large, but to silently ignore numbers which
26977         are too negative for lists.  String and vector handling errors in
26978         both cases.  This has been regularized.  Error signaling behavior
26979         has been explicitly added to the doc string.
26981         * lisp/emacs-lisp/cl-extra.el (cl-subseq): Defers to (seq-subseq) and is
26982         therefore also impacted by this change.  Update the doc string
26983         to reflect this.
26985         * test/automated/seq-tests.el (test-seq-subseq): Tests have been
26986         added for these exceptional cases, as well as one non exceptional
26987         base case.
26989 2015-08-07  Jürgen Hötzel  <juergen@archlinux.org>
26991         Improve error checking in tramp-adb.el
26992         * lisp/net/tramp-adb.el (tramp-adb-ls-output-name-less-p):
26993         Improve error checking.  "ls -l" on Android in Enforcing mode can
26994         print "lstat './FILENAME failed: Permission denied".
26996 2015-08-07  Stefan Monnier  <monnier@iro.umontreal.ca>
26998         * lisp/emacs-lisp/cl-generic.el (cl--generic-struct-tag): Don't burp on
26999         non-struct vectors.
27001 2015-08-07  Stephen Leake  <stephen_leake@stephe-leake.org>
27003         Fix typo in lisp/window.el, more `display-buffer-use-some-frame'
27004         * lisp/window.el: Fix typo that broke build.
27005         (display-buffer--action-function-custom-type):
27006         Add `display-buffer-use-some-frame'.
27007         (display-buffer): Add `display-buffer-use-some-frame' to doc string.
27009         Add support for 'inhibit-same-window in 'display-buffer-use-some-frame'
27010         * lisp/window.el (display-buffer-use-some-frame): Add support for
27011         'inhibit-same-window in alist.
27012         * doc/lispref/windows.texi (display-buffer-use-some-frame):
27013         Doc support for 'inhibit-same-window in alist.
27015 2015-08-07  Eli Zaretskii  <eliz@gnu.org>
27017         Avoid infinite loop in display of invisible text in strings
27018         * src/xdisp.c (handle_invisible_prop): If the next change of
27019         invisibility spec does not mean the beginning of a visible text,
27020         update the string position from which to start the search for the
27021         next invisibility change.  This avoids an infinite loop when we
27022         have more than one invisibility spec that are made inactive by
27023         buffer-invisibility-spec.  Simplify code.  (Bug#21200)
27024         * test/redisplay-testsuite.el (test-redisplay-4): Add a test case
27025         for the situation that caused bug #21200.
27027 2015-08-06  Artur Malabarba  <bruce.connor.am@gmail.com>
27029         * lisp/emacs-lisp/package.el: Simplify describe-package-1
27030         (package-help-section-name-face): New face.
27031         (package--print-help-section): New function.
27032         (describe-package-1): Refactor section printing.
27033         (package-make-button): Use face instead of font-lock-face, which
27034         doesn't work on buttons.
27036         * lisp/emacs-lisp/package.el: Define custom faces
27037         (package-name-face, package-description-face)
27038         (package-status-built-in-face, package-status-external-face)
27039         (package-status-available-face, package-status-new-face)
27040         (package-status-held-face, package-status-disabled-face)
27041         (package-status-installed-face, package-status-dependency-face)
27042         (package-status-unsigned-face, package-status-incompat-face)
27043         (package-status-avail-obso-face): New faces.
27044         (package-menu--print-info-simple): Use them.
27046 2015-08-05  Paul Eggert  <eggert@cs.ucla.edu>
27048         Fix some confusion with ‘format’
27049         * lisp/allout-widgets.el (allout-widgets-before-change-handler)
27050         (allout-graphics-modification-handler):
27051         Protect arbitrary string in a format context with "%s" format.
27052         * lisp/avoid.el:
27053         * lisp/cedet/semantic/bovine/scm.el: Fix comment.
27054         * lisp/calendar/icalendar.el (icalendar--convert-sexp-to-ical):
27055         * lisp/erc/erc-button.el (erc-button-beats-to-time):
27056         * lisp/gnus/message.el (message-send-form-letter):
27057         * lisp/org/ob-core.el (org-babel-check-evaluate)
27058         (org-babel-confirm-evaluate):
27059         * lisp/org/ob-fortran.el (org-babel-fortran-var-to-fortran):
27060         * lisp/org/ox-latex.el (org-latex-compile):
27061         * lisp/org/ox-man.el (org-man-compile):
27062         * lisp/org/ox-odt.el (org-odt-template):
27063         * lisp/org/ox-texinfo.el (org-texinfo-compile):
27064         * lisp/progmodes/prolog.el (prolog-help-info)
27065         (prolog-view-predspec):
27066         * lisp/progmodes/ruby-mode.el (ruby-parse-partial):
27067         * lisp/progmodes/verilog-mode.el (verilog-showscopes):
27068         * lisp/textmodes/rst.el (rst-replace-lines):
27069         Change (message (format ...)) to (message ...), and likewise
27070         for ‘error’.  This lessens the probability of confusion when the
27071         output of ‘format’ contains ‘%’.
27073 2015-08-05  Artur Malabarba  <bruce.connor.am@gmail.com>
27075         * lisp/replace.el (replace-character-fold): Default to nil.
27077         * lisp/character-fold.el: Fix lax whitespace.
27078         (character-fold-table): Don't make space match other whitespace chars.
27079         (character-fold-to-regexp): Simplify lax behavior.
27081 2015-08-05  Dmitry Gutov  <dgutov@yandex.ru>
27083         Preserve window point in xref-find-definitions-other-window
27084         Fix the problem reported by Ingo Logmar in
27085         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00152.html
27086         * lisp/progmodes/xref.el (xref--goto-char): Extract from
27087         xref--goto-location.
27088         (xref--pop-to-location): Use it.  Replace xref--goto-location with
27089         a direct xref-location-marker call.
27090         (xref--show-location): Likewise.
27091         (xref--display-position): Use xref--goto-char.
27093         * lisp/progmodes/project.el: Add a paragraph to the front matter.
27095 2015-08-04  David Kastrup  <dak@gnu.org>
27097         * lisp/vc/emerge.el (emerge-show-file-name):
27098         * lisp/progmodes/vhdl-mode.el (vhdl-electric-dash)
27099         (vhdl-comment-insert, vhdl-hooked-abbrev):
27100         * lisp/progmodes/octave.el (inferior-octave-dynamic-list-input-ring):
27101         * lisp/progmodes/fortran.el (fortran-window-create-momentarily):
27102         * lisp/progmodes/ebrowse.el (ebrowse-hack-electric-buffer-menu):
27103         * lisp/progmodes/cperl-mode.el (cperl-putback-char):
27104         * lisp/obsolete/vip.el (vip-escape-to-emacs)
27105         (vip-prefix-arg-value, vip-prefix-arg-com):
27106         * lisp/obsolete/terminal.el (te-escape-extended-command-unread):
27107         * lisp/leim/quail/tibetan.el (quail-tibetan-update-translation)
27108         (quail-tibkey-update-translation):
27109         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
27110         * lisp/leim/quail/lao.el (quail-lao-update-translation):
27111         * lisp/leim/quail/japanese.el (quail-japanese-update-translation)
27112         (quail-japanese-self-insert-and-switch-to-alpha):
27113         * lisp/leim/quail/hangul.el (hangul2-input-method)
27114         (hangul3-input-method, hangul390-input-method):
27115         * lisp/language/hanja-util.el (hangul-to-hanja-char):
27116         * lisp/international/robin.el (robin-input-method):
27117         * lisp/international/quail.el (quail-start-translation)
27118         (quail-start-conversion):
27119         * lisp/gnus/gnus-art.el (gnus-article-describe-key)
27120         (gnus-article-describe-key-briefly):
27121         * lisp/eshell/em-hist.el (eshell-list-history):
27122         * lisp/term.el (term-dynamic-list-input-ring)
27123         (term-dynamic-list-completions):
27124         * lisp/subr.el (momentary-string-display):
27125         * lisp/simple.el (read-quoted-char):
27126         * lisp/pcomplete.el (pcomplete-show-completions):
27127         * lisp/kmacro.el (kmacro-repeat-on-last-key):
27128         * lisp/info.el (Info-summary):
27129         * lisp/ehelp.el (electric-help-command-loop):
27130         * lisp/ebuff-menu.el (electric-buffer-list)
27131         (Electric-buffer-menu-exit):
27132         * lisp/double.el (double-translate-key):
27133         * lisp/comint.el (comint-dynamic-list-input-ring)
27134         (comint-dynamic-list-completions): Do not overwrite preexisting
27135         contents of `unread-command-events' when putting new events into it.
27137 2015-08-04  Daniel Colascione  <dancol@dancol.org>
27139         Improve ansi-color filtering of unrecognized escape sequences
27140         * lisp/ansi-color.el (ansi-color-drop-regexp): Recognize mode-setting
27141         escape sequences.
27142         (ansi-color-filter-apply, ansi-color-apply): Filter out
27143         unrecognized escape sequences.
27145 2015-08-04  Artur Malabarba  <bruce.connor.am@gmail.com>
27147         * lisp/emacs-lisp/package.el (package-menu-mode-map): Convert menu
27148         definitions to `easy-menu-define', improve a couple to account for
27149         async, and add a couple of new commands.
27151 2015-08-03  Jürgen Hötzel  <juergen@archlinux.org>
27153         * lisp/net/tramp-cache.el (tramp-set-file-property): Fix code typo.
27155 2015-08-03  Ingo Lohmar  <i.lohmar@gmail.com>
27157         Add new 'calendar-weekend-days' option
27158         Make the days receiving the 'calendar-weekend-header' face freely
27159         customizable, as they differ by region/culture.
27160         * doc/emacs/calendar.texi (Move to Beginning or End): Document the
27161         new variable.
27162         * lisp/calendar/calendar.el (calendar-generate-month): New variable
27163         calendar-weekend-days to customize day header fontification.
27165 2015-08-03  Paul Eggert  <eggert@cs.ucla.edu>
27167         Redo text-quoting-style variable
27168         Rename help-quote-translation to text-quoting-style,
27169         and use symbols rather than characters as values.
27170         This follows suggestions along these lines by Alan Mackenzie in:
27171         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00343.html
27172         and by Drew Adams in:
27173         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00048.html
27174         * doc/lispref/help.texi (Keys in Documentation)
27175         * etc/NEWS:
27176         * lisp/cus-start.el (standard):
27177         * src/doc.c (Fsubstitute_command_keys, syms_of_doc):
27178         Document and/or implement the new behavior instead of the old.
27179         (syms_of_doc): New symbols 'grave' and 'straight'.
27181 2015-08-03  Nikolaus Rath  <Nikolaus@rath.org>
27183         nnimap.el: Use IMAP MOVE extension if available
27184         * lisp/gnus/nnimap.el (nnimap-request-move-article)
27185         (nnimap-process-expiry-targets, nnimap-split-incoming-mail):
27186         Use MOVE extension if available.
27188         nnimap.el: Explicitly ask for server capabilities
27189         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Don't assume full
27190         capabilities will be returned in the login-result.
27192 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
27194         Treat help strings like other doc strings
27195         * doc/lispref/text.texi (Special Properties), etc/NEWS: Document this.
27196         * lisp/epa.el (epa--select-keys): Remove no-longer-needed calls to
27197         substitute-command-keys.
27198         * src/keyboard.c (show_help_echo, parse_menu_item): Call
27199         substitute-command-keys on the help string before displaying it.
27201         Also mention "curly quotes"
27202         See Drew Adams's email in:
27203         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00040.html
27204         * doc/lispref/help.texi (Keys in Documentation):
27205         Add index entry "curly quotes".
27206         * etc/NEWS: Use the phrase "curly quotes" too.
27208         ede-proj-target-makefile docstring tweaks
27209         * lisp/cedet/ede/proj.el (ede-proj-target-makefile):
27210         Consistently use "all:" to describe the all: target,
27211         replacing three different and confusingly-quoted usages.
27213 2015-08-02  Evgeny Fraimovitch  <johnlen7@gmail.com>  (tiny change)
27215         Don't abort emacsclientw when -a was specified
27216         * lib-src/emacsclient.c (set_tcp_socket) [WINDOWSNT]: Don't error
27217         out if we are in emacsclientw and -a was specified.
27219 2015-08-02  Eli Zaretskii  <eliz@gnu.org>
27221         Fix handling of 1st keystroke on MS-Windows
27222         * src/w32fns.c (globals_of_w32fns): Initialize after_deadkey to -1.
27223         This is needed to correctly handle the session's first keystroke,
27224         if it has any modifiers.  (Bug#19994)
27226 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
27228         Substitute some customization etc. doc strings
27229         These changes apply substitute-command-keys to some
27230         doc strings that were going through untranslated
27231         when creating customization or other widgets.
27232         * lisp/cus-edit.el (custom-group-value-create):
27233         * lisp/wid-edit.el (widget-default-create):
27234         (widget-push-button-value-create):
27235         Treat the widget tag as a doc string.
27236         * lisp/emacs-lisp/cl-extra.el (cl--describe-class-slot):
27237         Treat the :documentation value as a doc string.
27238         * lisp/wid-edit.el (widget-choose):
27239         Treat the choice names as doc strings.
27240         (widget-default-create): Treat the :doc value as a doc string.
27241         (widget-toggle-value-create): Treat the :on and :off values
27242         as doc strings.
27243         (widget-documentation-string-value-create):
27244         Substitute the doc string.
27246 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
27248         Add a second argument to project-ignores
27249         * lisp/progmodes/project.el (project-ignores): Add a second
27250         argument DIR.
27251         * lisp/progmodes/project.el (project-ignores): Only include the VC
27252         ignores if DIR is the VC root.
27253         * lisp/progmodes/xref.el (xref-find-regexp): Update accordingly.
27255 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
27257         Prevent incorrect display when 'line-spacing' variable is set
27258         * src/xdisp.c (try_window_id): Give up this optimization if the
27259         buffer has its 'line-spacing' variable set non-nil.
27261 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
27263         Don't pass NOVISIT to find-file
27264         * lisp/progmodes/etags.el (next-file):
27265         Don't pass NOVISIT to find-file (bug#21175).
27267         Ignore buffer restriction for tags-loop-eval
27268         * lisp/progmodes/etags.el (tags-loop-continue): Ignore buffer
27269         restriction (bug#21167).
27271 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
27273         Fix a thinko in 'ffap-gopher-at-point'
27274         * lisp/ffap.el (ffap-gopher-at-point): Fix last change.  (Bug#21168)
27276         Honor 'line-spacing' for empty lines
27277         * src/xdisp.c (append_space_for_newline): Honor 'line-height'
27278         property and 'line-spacing' frame parameter or variable or
27279         property for empty lines, by doing the same processing as in
27280         x_produce_glyph for newline characters.  (Bug#21165)
27282 2015-08-01  Paul Eggert  <eggert@cs.ucla.edu>
27284         Simplify by assuming C99 integer division
27285         * src/floatfns.c (ceiling2, floor2, truncate2):
27286         Assume C99 (i.e., Fortran) semantics for integer division.
27287         This simplifies the code.
27289 2015-07-31  Paul Eggert  <eggert@cs.ucla.edu>
27291         Don't overflow if computing approximate percentage
27292         * lisp/align.el (align-region):
27293         * lisp/cedet/semantic.el (semantic-repeat-parse-whole-stream):
27294         * lisp/cedet/semantic/wisent.el (wisent-parse-region):
27295         * lisp/cus-edit.el (custom-buffer-create-internal):
27296         * lisp/emacs-lisp/checkdoc.el (checkdoc-interactive-ispell-loop)
27297         (checkdoc-message-interactive-ispell-loop, checkdoc-next-error)
27298         (checkdoc-next-message-error):
27299         * lisp/emacs-lisp/eieio-opt.el (eieio-display-method-list):
27300         * lisp/epa.el (epa-progress-callback-function):
27301         * lisp/erc/erc-dcc.el (erc-dcc-do-LIST-command):
27302         * lisp/ffap.el (ffap-menu-rescan):
27303         * lisp/gnus/nnbabyl.el (nnbabyl-retrieve-headers):
27304         * lisp/gnus/nndiary.el (nndiary-retrieve-headers):
27305         * lisp/gnus/nneething.el (nneething-retrieve-headers):
27306         * lisp/gnus/nnmbox.el (nnmbox-retrieve-headers):
27307         * lisp/gnus/nnmh.el (nnmh-retrieve-headers):
27308         * lisp/gnus/nnml.el (nnml-retrieve-headers):
27309         * lisp/gnus/nnspool.el (nnspool-retrieve-headers):
27310         * lisp/gnus/nntp.el (nntp-retrieve-headers)
27311         (nntp-retrieve-articles):
27312         * lisp/imenu.el (imenu--relative-position):
27313         * lisp/international/ja-dic-cnv.el (skkdic-collect-okuri-nasi)
27314         (skkdic-convert-okuri-nasi):
27315         * lisp/net/ange-ftp.el (ange-ftp-process-handle-hash):
27316         * lisp/nxml/rng-valid.el (rng-compute-mode-line-string):
27317         * lisp/org/org-list.el (org-update-checkbox-count):
27318         * lisp/org/org.el (org-table-map-tables)
27319         (org-update-parent-todo-statistics):
27320         * lisp/play/decipher.el (decipher-insert-frequency-counts)
27321         (decipher-analyze-buffer):
27322         * lisp/profiler.el (profiler-format-percent):
27323         * lisp/progmodes/cc-cmds.el (c-progress-update):
27324         * lisp/progmodes/cpp.el (cpp-highlight-buffer):
27325         * lisp/progmodes/idlwave.el (idlwave-convert-xml-system-routine-info)
27326         (idlwave-list-load-path-shadows):
27327         * lisp/progmodes/opascal.el (opascal-step-progress):
27328         * lisp/progmodes/vhdl-mode.el (vhdl-update-progress-info)
27329         (vhdl-scan-directory-contents):
27330         * lisp/textmodes/bibtex.el (bibtex-progress-message):
27331         * lisp/textmodes/flyspell.el (flyspell-small-region)
27332         (flyspell-external-point-words):
27333         * lisp/textmodes/table.el (table-recognize):
27334         Prefer (floor (* 100.0 NUMERATOR) DENOMINATOR) when calculating
27335         progress-report percentages and the like.  This avoids problems
27336         if (* 100 NUMERATOR) would overflow.
27337         * lisp/gnus/gnus-registry.el (gnus-registry-import-eld):
27338         * lisp/gnus/registry.el (registry-reindex):
27339         Use (* 100.0 ...) rather than (* 100 ...) to avoid int overflow issues.
27340         * lisp/descr-text.el (describe-char):
27341         * lisp/org/org-colview.el (org-nofm-to-completion):
27342         * lisp/ps-print.el (ps-plot):
27343         * lisp/simple.el (what-cursor-position):
27344         Prefer (round (* 100.0 NUMERATOR) DENOMINATOR) to a
27345         more-complicated and less-accurate approximation.
27347         Fix some int overflows in profiler.c
27348         * src/profiler.c (make_log): Make args EMACS_INT, not int,
27349         to avoid unwanted behavior on 'int' overflow.
27350         (make_log, evict_lower_half, record_backtrace):
27351         Use ptrdiff_t, not int, for object indexes.
27353         Port to pedantic memcpy
27354         * src/keyboard.c (menu_bar_items, tool_bar_items):
27355         * src/xrdb.c (magic_db):
27356         Port to pedantic memcpy implementations that reject memcpy (0, 0, 0).
27358         Merge from gnulib
27359         This incorporates:
27360         2015-07-29 time_rz: port to pedantic memcpy
27361         * lib/time_rz.c: Copy from gnulib.
27363 2015-07-31  Artur Malabarba  <bruce.connor.am@gmail.com>
27365         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
27366         When updating the very last entry, tabulated-list-print would
27367         erase it and then try to look at the next one (which obviously
27368         isn't there).
27370 2015-07-31  Eli Zaretskii  <eliz@gnu.org>
27372         Allow to use the old key processing code on MS-Windows
27373         * src/w32fns.c (syms_of_w32fns) <w32-use-fallback-wm-chars-method>:
27374         New variable.
27375         (w32_wnd_proc): Use it to invoke the old code that processed
27376         character keys, as fallback, when this variable is non-nil.
27377         Fix typos in comments.  (Bug#19994)
27379 2015-07-31  Ilya Zakharevich  <ilya@math.berkeley.edu>
27381         Improve handling of Unicode keyboard input on MS-Windows
27382         * src/w32fns.c (get_wm_chars, deliver_wm_chars): New functions.
27383         (FPRINTF_WM_CHARS) [DEBUG_WM_CHARS]: New macro for debugging.
27384         (w32_wnd_proc): Call deliver_wm_chars to process non-special keys
27385         upon receiving WM_KEYDOWN or WM_SYSKEYDOWN messages.  If that is
27386         successful, don't call TranslateMessage.  (Bug#19994)
27388 2015-07-30  Dmitry Gutov  <dgutov@yandex.ru>
27390         Fix default-directory in changeset diffs after vc-print-log
27391         * lisp/vc/log-view.el (log-view-diff-common): Move the
27392         revision-granularity check back into log-view-diff-changeset.
27393         (log-view-diff-changeset): Bind default-directory to the current
27394         VC root.
27396         Rename project-directories to project-roots
27397         * lisp/progmodes/project.el (project-search-path-function)
27398         (project-search-path): Update the docstring.
27399         (project-directories): Rename to `project-roots', update all
27400         callers and implementations accordingly.
27401         (project-root): Remove.
27402         * lisp/progmodes/xref.el (xref-find-regexp): Use * instead of *.*
27403         as the default file mask.
27405 2015-07-30  Eli Zaretskii  <eliz@gnu.org>
27407         Support long URLs in w32-shell-execute
27408         * src/w32fns.c (Fw32_shell_execute): Don't use filename_to_utf16
27409         and filename_to_ansi to convert the DOCUMENT argument, as it could
27410         be a URL that is not limited to MAX_PATH characters.  Instead, use
27411         MultiByteToWideChar directly, and allocate heap storage as
27412         required to accommodate the converted string.  Likewise with
27413         non-Unicode operation.  Ensure OPERATION is null-terminated, even
27414         if it is longer than 32K bytes.  (Bug#21158)
27416 2015-07-30  Stephen Leake  <stephen_leake@stephe-leake.org>
27418         * lisp/vc/vc-mtn.el (vc-mtn-find-revision): Handle null rev.
27420 2015-07-29  Stephen Leake  <stephen_leake@stephe-leake.org>
27422         Add docs for display-buffer action display-buffer-use-some-frame
27423         * lisp/window.el (display-buffer-use-some-frame): Improve doc string.
27424         * doc/lispref/windows.texi (Display Action Functions):
27425         Add display-buffer-use-some-frame.
27426         * etc/NEWS: Mention display-buffer-use-some-frame.
27428         Add display-buffer action display-buffer-use-some-frame
27429         * lisp/window.el (display-buffer-use-some-frame): New.
27431         Handle vc-mtn error more gently
27432         * lisp/vc/vc-mtn.el (vc-mtn-mode-line-string): Return "" when
27433         branch is nil.
27435 2015-07-29  Michael Albinus  <michael.albinus@gmx.de>
27437         Fix Tramp problems with multihops, and nc
27438         * lisp/net/tramp-cache.el (tramp-get-file-property)
27439         (tramp-set-file-property, tramp-flush-file-property)
27440         (tramp-get-connection-property, tramp-set-connection-property)
27441         (tramp-flush-connection-property): Remove hop from vector.
27442         * lisp/net/tramp-gw.el (tramp-gw-process-filter): Ignore errors.
27443         * lisp/net/tramp-sh.el (tramp-methods) <nc>: Separate STDERR.
27444         (tramp-do-copy-or-rename-file-out-of-band): Increase timeout of
27445         netstat to 60".
27446         (tramp-sh-handle-start-file-process): Do not show hops in prompt.
27447         * lisp/net/tramp.el (tramp-handle-file-name-as-directory)
27448         (tramp-handle-file-name-directory, tramp-handle-file-remote-p):
27449         Keep hop in result.
27450         * test/automated/tramp-tests.el (tramp-test02-file-name-dissect):
27451         Add hop tests.
27453 2015-07-29  Eli Zaretskii  <eliz@gnu.org>
27455         Resurrect highlighting of repeated words by Flyspell Mode
27456         * lisp/textmodes/flyspell.el (flyspell-word): Leave some non-word
27457         characters between point and the doublon candidate, so that
27458         flyspell-word-search-backward finds it.  (Bug#21157)
27460         Fix redisplay of large images on expose events
27461         * src/xdisp.c (expose_window, expose_area): Avoid comparisons
27462         between signed negative values and unsigned values.  This
27463         prevented redisplay on expose events when the window showed a very
27464         large image.
27466 2015-07-29  Paul Eggert  <eggert@cs.ucla.edu>
27468         Remove unnecessary stack overflow dependency
27469         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING):
27470         Don't worry about $ac_cv_header_sys_resource_h and
27471         $ac_cv_func_getrlimit, as they're no longer needed for this.
27472         Problem reported by Eli Zaretskii in:
27473         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00443.html
27475 2015-07-28  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
27477         Pacify compilation -Wincompatible-pointer-types warnings
27478         * src/w32proc.c (Fw32_get_codepage_charset): Avoid compilation
27479         warning.
27480         (CompareStringW_Proc): New typedef.
27481         (w32_compare_strings): Use it, to pacify compiler warnings under
27482         "-Wincompatible-pointer-types".
27483         * src/w32fns.c (GetDiskFreeSpaceExW_Proc)
27484         (GetDiskFreeSpaceExA_Proc): New typedefs.
27485         (Ffile_system_info): Use them, to pacify compiler warnings under
27486         "-Wincompatible-pointer-types".
27488 2015-07-28  Paul Eggert  <eggert@cs.ucla.edu>
27490         Fix subscript error in calculate_direct_scrolling
27491         Use slightly-longer cost vectors.  Without this change,
27492         calculate_direct_scrolling can have a subscript violation when
27493         FRAME_LINES (frame) <= delta.
27494         * src/scroll.c (calculate_scrolling, calculate_direct_scrolling)
27495         (line_ins_del, do_line_insertion_deletion_costs):
27496         Allocate and use slightly-larger cost vectors, ones based on
27497         FRAME_TOTAL_LINES instead of FRAME_LINES.
27499         Fix uninitalized value in encode_coding_object
27500         * src/coding.c (encode_coding_object): Also initialize
27501         coding->src_pos and coding->src_pos_byte when NILP (src_object).
27502         This avoids later use of uninitialized storage.
27504 2015-07-27  Xue Fuqiao  <xfq.free@gmail.com>
27506         * doc/lispref/variables.texi (Variable Aliases): Typo fix.
27507         (Bug#21141)
27509 2015-07-27  Paul Eggert  <eggert@cs.ucla.edu>
27511         Merge from gnulib
27512         This incorporates:
27513         2015-07-27 time_rz: port better to MinGW
27514         2015-07-27 time: port __need_time_t to MinGW
27515         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
27516         * lib/strftime.c, lib/time.in.h, lib/time_rz.c: Copy from gnulib.
27517         * lib/time-internal.h: New file, from gnulib.
27519 2015-07-27  Eli Zaretskii  <eliz@gnu.org>
27521         Handle NULL pointers in w32heap.c allocation routines
27522         * src/w32heap.c (FREEABLE_P): Consider a NULL pointer "not
27523         freeable".
27524         (realloc_after_dump, realloc_before_dump, free_before_dump):
27525         Handle NULL pointers gracefully, as Emacs now seems to expect that.
27527         Fix Cairo build without PNG
27528         * src/image.c: Define PNG function when USE_CAIRO is defined, even
27529         if HAVE_PNG is not.  (Bug#21133)
27531         MS-Windows follow-up for recent TZ-related changes
27532         * nt/mingw-cfg.site (ac_cv_header_pthread_h)
27533         (gl_cv_sys_struct_timespec_in_pthread_h): Force to "no", to avoid
27534         picking up 'struct timespec' from pthread.h, if it is installed on
27535         the user's system.  We want either the definitions from MinGW
27536         system headers, if available, or the Gnulib replacements if not.
27537         * nt/inc/ms-w32.h <struct timespec>: Don't define, as we now use
27538         lib/time.h.
27539         * lib/time.in.h: Don't let __need_* symbols affect what happens on
27540         MinGW.  These symbols are defined by MinGW system headers, but we
27541         don't want that to affect whether Gnulib portions of the header
27542         are or aren't used.
27544 2015-07-26  Paul Eggert  <eggert@cs.ucla.edu>
27546         * src/ftfont.c (ftfont_close): Add comment re Bug#20890.
27548         New optional ZONE arg for format-time-string etc.
27549         This simplifies time conversions in other time zones.
27550         It also prevents display-time-world tampering with TZ (Bug#21020).
27551         * admin/admin.el (add-release-logs):
27552         Use improved add-log-time-format API.
27553         * admin/merge-gnulib (GNULIB_MODULES): Add time_rz, timegm.
27554         (GNULIB_TOOL_FLAGS): Avoid flexmember, setenv, unsetenv.
27555         * configure.ac (tzalloc): Remove test for this, since
27556         Emacs no longer uses HAVE_TZALLOC directly.
27557         * doc/lispref/os.texi (Time of Day, Time Conversion)
27558         (Time Parsing):
27559         * etc/NEWS: Document the new behavior.
27560         Merge from gnulib, incorporating:
27561         2015-07-25 strftime: fix newly-introduced bug on Solaris
27562         2015-07-23 fprintftime, strftime: use timezone_t args
27563         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
27564         * lib/strftime.c, lib/strftime.h, lib/time.in.h, m4/sys_time_h.m4:
27565         * m4/time_h.m4:
27566         Update from gnulib.
27567         * lib/time_rz.c, lib/timegm.c, m4/time_rz.m4, m4/timegm.m4:
27568         New files from gnulib.
27569         * lisp/time-stamp.el (time-stamp-string):
27570         * lisp/time.el (display-time-world-list)
27571         (display-time-world-display):
27572         Use new API, with time zone arg.
27573         * lisp/time.el (display-time-world-display):
27574         Fix race when current-time advances while we're running.
27575         * lisp/vc/add-log.el (add-log-iso8601-time-zone)
27576         (add-log-iso8601-time-string): Accept optional time zone arg.
27577         * lisp/vc/add-log.el (add-change-log-entry):
27578         * lisp/vc/log-edit.el (log-edit-changelog-ours-p): Use new arg.
27579         * nt/gnulib.mk: Propagate lib/gnulib.mk changes here.
27580         Add rules for the time module, since they're now needed
27581         for tzalloc etc.
27582         * src/conf_post.h (getenv_TZ, setenv_TZ): New macros.
27583         (emacs_getenv_TZ, emacs_setenv_TZ): New decls.
27584         * src/editfns.c: Include errno.h.
27585         (set_time_zone_rule): Omit unnecessary forward decl.
27586         (initial_tz): Remove, replacing with ...
27587         (local_tz, wall_clock_tz, utc_tz): New static vars and constants.
27588         (tzeqlen): New constant; prefer it to (sizeof "TZ=" - 1).
27589         (emacs_localtime_rz, emacs_mktime_z, xtzalloc, xtzfree)
27590         (tzlookup): New static functions.
27591         (init_editfns): New arg DUMPING.  All uses changed.
27592         (init_editfns): Omit most initialization if dumping, not if
27593         !initialized.  Initialize wall_clock_tz and local_tz.
27594         (emacs_nmemftime, format_time_string): Time zone argument can now
27595         be any time zone, not just a boolean for UTC or local time.  All
27596         callers changed.
27597         (Fformat_time_string, Fencode_time, Fcurrent_time_string)
27598         (Fcurrent_time_zone): New optional arg ZONE.
27599         (Fdecode_time, Fset_time_zone_rule): ZONE arg can now also take
27600         the same form as with the other new additions.
27601         (decode_time_zone): Remove; no longer needed.
27602         (tzvalbuf): Now file-scope.
27603         (emacs_getenv_TZ, emacs_setenv_TZ): New functions.
27604         (syms_of_editfns): Define Qwall.
27605         * src/editfns.c (mktime_z) [!HAVE_TZALLOC]:
27606         * src/systime.h (mktime_z, timezone_t, tzalloc, tzfree)
27607         [!HAVE_TZALLOC]:
27608         Remove; now supplied by gnulib.
27609         * src/emacs.c (main):
27610         * src/lisp.h (init_editfns): Adjust to init_editfns API change.
27612 2015-07-26  Shigeru Fukaya  <shigeru.fukaya@gmail.com>
27614         Fix infinite loop in delete-consecutive-dups
27615         * lisp/subr.el (delete-consecutive-dups): Work even if the last
27616         element is nil (Bug#20588).  Avoid rescan of a circular list in
27617         deletion of last element.
27619 2015-07-26  Martin Rudalics  <rudalics@gmx.at>
27621         Have `x-frame-geometry' return nil for terminal and initial
27622         frames (Bug#21132)
27623         * src/nsfns.m (Fx_frame_geometry):
27624         * src/xfns.c (Fx_frame_geometry): Return nil for initial and
27625         terminal frames.
27626         * src/w32fns.c (Fw32_frame_menu_bar_size, Fw32_frame_rect)
27627         (Fx_frame_geometry): Return nil for terminal frames
27629 2015-07-26  HOSOYA Kei  <hosoyakei.free@gmail.com>  (tiny change)
27631         * etc/tutorials/TUTORIAL.ja: Improve translation.
27633 2015-07-25  Eli Zaretskii  <eliz@gnu.org>
27635         Avoid crashes when w32 GUI functions are called in -batch
27636         * src/w32fns.c (Fx_frame_geometry, Fw32_frame_rect)
27637         (Fw32_frame_menu_bar_size, Fw32_send_sys_command): Don't call
27638         FRAME_W32_WINDOW for initial frame.  (Bug#21132)
27640         Fix flyspell-check-previous-highlighted-word
27641         * lisp/textmodes/flyspell.el
27642         (flyspell-check-previous-highlighted-word): Really accept a
27643         numeric argument, as the doc string describes.  Fix an off-by-one
27644         error in looking up overlays, so invocation with point immediately
27645         after a word would check that word.  Clarify the doc string as
27646         Suggested by N. Jackson <nljlistbox2@gmail.com>.  (Bug#21129)
27648 2015-07-24  Michael Albinus  <michael.albinus@gmx.de>
27650         Minor cleanup in tramp-tests.el
27651         * test/automated/tramp-tests.el (tramp-test31-*, tramp-test32-*):
27652         Implement using the documented interface
27653         `tramp-connection-properties', rather than with internal functions.
27655 2015-07-24  Harald Hanche-Olsen  <hanche@math.ntnu.no>  (tiny change)
27657         Pass lambdas to `skeleton-read'
27658         * lisp/skeleton.el (skeleton-read): Allow PROMPT to be a function.
27659         * lisp/textmodes/sgml-mode.el (sgml-attributes, sgml-value): Pass
27660         lambdas to `skeleton-read' (bug#20386).
27662 2015-07-24  Eli Zaretskii  <eliz@gnu.org>
27664         * INSTALL (DETAILED BUILDING AND INSTALLATION):
27665         Mention --without-imagemagick.
27667         Don't require GUI frames and mouse for Flyspell menus
27668         * lisp/textmodes/flyspell.el (flyspell-correct-word-before-point)
27669         (flyspell-emacs-popup): Require neither a GUI frame nor mouse
27670         support, since pop-up menus work with text terminals and can be
27671         controlled via the keyboard.
27673         Improve documentation of Flyspell commands
27674         * doc/emacs/fixit.texi (Spelling): Mention Flyspell commands that
27675         can be invoked via the keyboard.  Mention those commands by name
27676         and add them to the fn index.  (Bug#21125)
27678 2015-07-23  Michael Albinus  <michael.albinus@gmx.de>
27680         Fix some Tramp problems with HP-UX
27681         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
27682         Add "tab0" to stty call.
27683         * test/automated/tramp-tests.el (tramp-persistency-file-name):
27684         Set to nil.
27685         (tramp--test-hpux-p): New defun.
27686         (tramp--test-utf8): Use it.
27688 2015-07-22  Glenn Morris  <rgm@gnu.org>
27690         * build-aux/update-subdirs: Put "no-update-autoloads: t" in output.
27692 2015-07-22  Eli Zaretskii  <eliz@gnu.org>
27694         Fix point positioning in ffap-next-guess
27695         * lisp/ffap.el (ffap-url-at-point): Set ffap-string-at-point-region,
27696         as our callers expect.  This was clobbered as part of fixing
27697         bug#5673.  (Bug#21107)
27698         (ffap-gopher-at-point): Set ffap-string-at-point-region.
27700 2015-07-22  Martin Rudalics  <rudalics@gmx.at>
27702         * lisp/window.el (even-window-sizes): Fix customization type.
27704         Optionally even widths of `display-buffer' windows.  (Bug#21100)
27705         * lisp/window.el (quit-restore-window): Restore width if
27706         requested.
27707         (display-buffer-record-window): Record width when window is
27708         reused and horizontally combined.
27709         (even-window-sizes): New option to allow evening window widths.
27710         (even-window-heights): Defalias to `even-window-sizes'.
27711         (window--even-window-heights): Rename to
27712         `window--even-window-sizes'.  Handle side-by-side windows.
27713         (display-buffer-use-some-window): Call `window--even-window-sizes'
27714         instead of `window--even-window-heights'.
27715         * lisp/help.el (resize-temp-buffer-window): Fix indentation.
27716         * doc/lispref/windows.texi (Choosing Window Options): Describe
27717         `even-window-sizes'.
27718         (Coordinates and Windows): Fix typo.
27720 2015-07-22  Stephen Leake  <stephen_leake@stephe-leake.org>
27722         Add file name to autoload error messages
27723         * lisp/emacs-lisp/autoload.el (autoload-save-buffers):
27724         Add condition-case to add file name to error message.
27726 2015-07-22  Michael Albinus  <michael.albinus@gmx.de>
27728         * lisp/net/tramp-sh.el (tramp-ssh-controlmaster-options):
27729         Use 0.0.0.1 as test host.
27731 2015-07-21  Stefan Monnier  <monnier@iro.umontreal.ca>
27733         (advice--called-interactively-skip): Fix inf-loop (bug#21083)
27734         * lisp/emacs-lisp/nadvice.el (advice--called-interactively-skip):
27735         Fix inf-loop (bug#21083).
27737 2015-07-21  Glenn Morris  <rgm@gnu.org>
27739         * test/automated/package-test.el (package-test-signed):
27740         Update for recent changes.
27742         * test/automated/elisp-mode-tests.el
27743         (elisp-xref-finds-both-function-and-variable)
27744         (elisp-xref-finds-only-function-for-minor-mode):
27745         Update for recent xref name changes.
27747 2015-07-21  Dmitry Gutov  <dgutov@yandex.ru>
27749         Make eldoc timer non-repeatable
27750         * lisp/emacs-lisp/eldoc.el (eldoc-schedule-timer): Make the timer
27751         non-repeatable.  Since it's on post-command hook, that just wasted
27752         CPU cycles.
27754 2015-07-21  Michael Albinus  <michael.albinus@gmx.de>
27756         Mention `tramp-connection-properties' in NEWS
27758         Sync with Tramp repository
27759         * doc/misc/tramp.texi (Configuration): Note, that Tramp must be
27760         required prior changing its configuration.
27761         (Connection caching, Predefined connection information)
27762         (Remote shell setup): Fix typos.
27763         (Predefined connection information): Describe, how to overwrite
27764         parameters of `tramp-methods'.
27765         (Remote programs, Remote processes, Traces and Profiles):
27766         Simplify example.
27767         (Remote programs): Remove superfluous comment.
27768         * doc/misc/trampver.texi: Update release number.
27769         * lisp/net/tramp-cache.el (tramp-connection-properties):
27770         Adapt docstring.
27771         * lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file): New defun.
27772         (tramp-gvfs-handle-copy-file, tramp-gvfs-handle-rename-file): Use it.
27773         (tramp-gvfs-handle-make-directory): Reimplement PARENTS handling,
27774         "gvfs-mkdir -p ..." does not work robust.
27775         (tramp-gvfs-maybe-open-connection):
27776         Adapt `tramp-get-method-parameter' call.
27777         * lisp/net/tramp-sh.el (tramp-methods):
27778         Add `tramp-remote-shell-login' parameter where it fits.
27779         (tramp-get-remote-path): Use it.
27780         (tramp-make-copy-program-file-name): Fix quoting for "psftp" method.
27781         (all): Adapt `tramp-get-method-parameter' calls.
27782         * lisp/net/tramp.el (tramp-methods): Adapt docstring.
27783         (tramp-get-method-parameter): Replace argument METHOD by VEC.
27784         Check also for hits in `tramp-connection-properties'.  Adapt docstring.
27785         (tramp-get-remote-tmpdir): Cache only the local name of tmpdir.
27786         (all): Adapt `tramp-get-method-parameter' calls.
27787         * lisp/net/trampver.el: Update release number.
27788         * test/automated/tramp-tests.el (tramp--instrument-test-case):
27789         Add "^make-symbolic-link not supported$" to `debug-ignored-errors'.
27790         (tramp-test13-make-directory, tramp--test-adb-p)
27791         (tramp--test-smb-or-windows-nt-p): Simplify.
27792         (tramp--test-ftp-p, tramp--test-gvfs-p): New defuns.
27793         (tramp--test-special-characters): Fix docstring.  Add gvfs and
27794         ftp tests.
27795         (tramp--test-utf8): Fix docstring.
27797 2015-07-20  Dmitry Gutov  <dgutov@yandex.ru>
27799         Add new xref-query-replace command
27800         * lisp/progmodes/xref.el (xref--match-buffer-bounds):
27801         New function, extracted from xref-pulse-momentarily.
27802         (xref-query-replace): New command.
27803         (xref--query-replace-1): New helper function.
27804         (xref--xref-buffer-mode-map): Add `r' binding.
27806 2015-07-20  Paul Eggert  <eggert@cs.ucla.edu>
27808         Simplify icalendar decoding of Z dates
27809         * lisp/calendar/icalendar.el (icalendar--decode-isodatetime):
27810         Simplify calculation of time strings with trailing "Z".
27812 2015-07-19  Dmitry Gutov  <dgutov@yandex.ru>
27814         Do not corrupt grep-find-ignored-files
27815         * lisp/progmodes/project.el (project-ignores): Change the order of
27816         the arguments to nconc, in order not to corrupt grep-find-ignored-files.
27818         Add xref-match-item, and use it
27819         * lisp/progmodes/xref.el (xref-match-bounds): New generic function.
27820         (xref-file-location): Add reader for the column slot.
27821         (xref-match-item): New class.
27822         (xref-match-bounds): A method implementation for it.
27823         (xref-make-match): New constructor function.
27824         (xref--current-item): New private variable.
27825         (xref-pulse-momentarily): Use it.
27826         (xref--pop-to-location): Change the first argument to an xref
27827         item, instead of location, bind xref--current-item.
27828         Update all callers.
27829         (xref-next-line, xref-prev-line, xref--next-error-function)
27830         (xref--mouse-2): Look for the property `xref-item',
27831         instead of `xref-location'.
27832         (xref--item-at-point): Likewise.  This function replaces
27833         `xref-location-at-point'.  Update all callers.
27834         (xref--insert-xrefs): Add the `xref-item' text property, instead
27835         of `xref-location'.
27836         (xref--collect-match): Use xref-make-match.
27838         * lisp/progmodes/xref.el (xref-item): Rename from `xref--xref'.
27839         Update all references.
27841         * lisp/progmodes/xref.el (xref--xref): Rename the `description'
27842         slot to `summary'.
27844         vc-hg: Perform the print-log call asynchronously
27845         * lisp/vc/vc-hg.el (vc-hg-print-log): Perform the call
27846         asynchronously (bug#21067).
27848         Add xref-after-jump-hook and xref-after-return-hook
27849         * lisp/progmodes/xref.el (xref-after-jump-hook)
27850         (xref-after-return-hook): New hooks.
27851         (xref-pulse-on-jump): Remove, in favor of the above.
27852         (xref-pulse-momentarily): Rename from xref--maybe-pulse.
27853         (xref--pop-to-location, xref--display-position)
27854         (xref-pop-marker-stack): Use the new hooks, as requested in
27855         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00213.html
27857 2015-07-19  Bozhidar Batsov  <bozhidar@batsov.com>
27859         * lisp/progmodes/js.el (js-mode): Correct the lighter.
27861 2015-07-19  Leo Liu  <sdl.web@gmail.com>
27863         Fix a bug in cfengine3-mode
27864         * lisp/progmodes/cfengine.el (cfengine3-mode): Handle nil
27865         eldoc-documentation-function.
27867 2015-07-18  Julien Danjou  <julien@danjou.info>
27869         sieve-mode: support "body" test command
27870         * lisp/gnus/sieve-mode.el (sieve-font-lock-keywords):
27871         Add missing "body" test command.
27873 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
27875         Fix info-apropos when the default encoding is Latin-N
27876         * lisp/info.el (Info-find-node-2): Reset the buffer's encoding to
27877         'undecided', so that it is set to the encoding of the Info file we
27878         are about to insert.  Otherwise, 'info-apropos' will fail to find
27879         some index nodes in some UTF-8 encoded files, if the buffer's
27880         previous encoding is Latin-N or some such.
27882 2015-07-18  Ivan Andrus  <darthandrus@gmail.com>
27884         * lisp/epg.el (epg--start): Check that gpgconf can be found
27885         before calling it.
27887         Expose more file types to OS X that Emacs understands
27888         * nextstep/Cocoa/Emacs.base/Contents/Info.plist: Add editor role for
27889         sty, dtx, json, and org files.  Export UTIs for el, elc, and org files.
27891 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
27893         Fix visual-order cursor movement when lines are truncated
27894         * src/xdisp.c (Fmove_point_visually): When lines are truncated,
27895         simulate display in a window of infinite width, to allow move_it_*
27896         functions reach positions outside of normal window dimensions.
27897         Remove code that tried to handle a subset of these situations by
27898         manual iteration of buffer text.  (Bug#17777)
27900         Fix following Info cross-references to anchors
27901         * lisp/info.el (Info-read-subfile): Add to the returned value the
27902         length of subfile preamble, after converting it to file's byte
27903         offset, as expected by the caller.  Use bufferpos-to-filepos.
27904         (Info-find-node-2): If searching for a node with a
27905         1000-character slop fails, try again with a 10000-character slop,
27906         to account for known bugs in Texinfo 5.0 and 5.1.  (Bug#21055)
27907         * lisp/international/mule-util.el (bufferpos-to-filepos): New
27908         function.
27909         * etc/NEWS: Mention bufferpos-to-filepos.
27911         Fix scrolling backwards on TTY frames under scroll-conservatively
27912         * src/xdisp.c (move_it_vertically_backward): Fix off-by-one error
27913         in moving backwards on TTY frames.  (Bug#21080)
27915 2015-07-17  Dmitry Gutov  <dgutov@yandex.ru>
27917         Consider a jsdoc tag to be a beginning of a paragraph as well
27918         * lisp/progmodes/js.el (js-mode): Change c-paragraph-start to
27919         consider a jsdoc tag to be a beginning of a paragraph as well.
27921 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
27923         * lisp/emacs-lisp/package.el: Fix warnings.
27925         * lisp/emacs-lisp/package.el (package-buffer-info):
27926         Add author and maintainers to `package-buffer-info'.
27928         * lisp/emacs-lisp/package.el: Many small changes.
27929         Replace all instances of 'face with 'font-lock-face.
27930         (describe-package-1): Improve some strings and move the summary
27931         up the list.
27932         (package-install-file): Update docstring.
27933         (package-menu-hide-package): Bind to `H'.
27935         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
27936         Fix error handling.
27938 2015-07-17  Paul Eggert  <eggert@cs.ucla.edu>
27940         Fix hang with large yanks This should fix the bug fixed by Mike
27941         Crowe's patch in:
27942         https://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00106.html
27943         A problem in this area has been reported by several users; see
27944         Bug#16737, Bug#17101, Bug#17026, Bug#17172, Bug#19320, Bug#20283.
27945         This fix differs from Mike Crowe's patch in that it should avoid a
27946         race condition that could lose SIGIO signals.  ignore_sigio dates
27947         back to the 1980s when some platforms couldn't block signals, and
27948         could only ignore them, which led to races when signals arrived
27949         while being ignored.  We shouldn't have to worry about those old
27950         platforms now.
27951         * src/dispextern.h, src/sysdep.c (ignore_sigio): Remove.
27952         * src/emacs.c (shut_down_emacs):
27953         Don't call ignore_sigio; unrequest_sigio should suffice.
27954         * src/keyboard.c (kbd_buffer_store_buffered_event):
27955         Use unrequest_sigio, not ignore_sigio.
27956         (kbd_buffer_get_event):
27957         Call request_sigio when getting the ball rolling again.
27959 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
27961         * lisp/obsolete/longlines.el (longlines-search-function):
27962         Fallback on `isearch-search-fun-default'.
27964 2015-07-17  Tassilo Horn  <tsdh@gnu.org>
27966         Support @-mentions
27967         * lisp/net/rcirc.el (rcirc-completion-at-point): Support completion
27968         of mentions/messages with @nick instead of just nick.
27970 2015-07-16  Michael Albinus  <michael.albinus@gmx.de>
27972         Fix bug#20943
27973         * lisp/autorevert.el (auto-revert-handler): Do not check for
27974         `buffer-modified-p'.
27975         * lisp/files.el (buffer-stale--default-function): Check for
27976         `buffer-modified-p'.
27977         * test/automated/auto-revert-tests.el
27978         (auto-revert-test02-auto-revert-mode-dired): Adapt test.
27980 2015-07-16  Ari Roponen  <ari.roponen@gmail.com>
27982         Fix delete-dups bug on long lists
27983         * lisp/subr.el (delete-dups):
27984         Don't mistakenly keep some dups when applied to long lists.
27986 2015-07-16  Paul Eggert  <eggert@cs.ucla.edu>
27988         Better heuristic for C stack overflow
27989         Improve the heuristic for distinguishing stack overflows from
27990         other SIGSEGV causes (Bug#21004).  Corinna Vinschen explained that
27991         the getrlimit method wasn't portable to Cygwin; see:
27992         https://www.cygwin.com/ml/cygwin/2015-07/msg00092.html
27993         Corinna suggested pthread_getattr_np but this also has problems.
27994         Instead, replace the low-level system stuff with a simple
27995         heuristic based on known good stack addresses.
27996         * src/eval.c, src/lisp.h (near_C_stack_top): New function.
27997         * src/sysdep.c: Don't include <sys/resource.h>.
27998         (stack_direction): Remove.  All uses removed.
27999         (stack_overflow): New function.
28000         (handle_sigsegv): Use it instead of incorrect getrlimit heuristic.
28001         Make SEGV fatal in non-main threads.
28003 2015-07-16  Daiki Ueno  <ueno@gnu.org>
28005         epg: Automatically start pinentry server
28006         * lisp/epg-config.el (epg-gpgconf-program): New variable.
28007         * lisp/epg.el (epg--start): Call `pinentry-start' if
28008         allow-emacs-pinentry is set in ~/.gnupg/gpg-agent.conf.
28010 2015-07-15  Katsumi Yamaoka  <yamaoka@jpl.org>
28012         * lisp/gnus/nnimap.el: Fix my last bogus change.
28013         Reinstall Stefan Monnier's change that was made in
28014         <83d824bc4041332f338ad7e5e830f443535aa300>.
28016 2015-07-15  Paul Eggert  <eggert@cs.ucla.edu>
28018         Merge from gnulib
28019         This incorporates:
28020         2015-07-05 acl-permissions: Document FreeBSD ACL_TYPE_NFS4 acls
28021         2015-07-05 acl-permissions: Fix on FreeBSD
28022         2015-07-05 file-has-acl, acl-permissions: fix some more HP-UX typos
28023         * lib/acl-internal.c, lib/acl-internal.h, lib/get-permissions.c:
28024         * lib/set-permissions.c: Copy from gnulib.
28026         Port to stricter C99
28027         * src/keyboard.h (kbd_buffer_store_event_hold):
28028         Don't return a void expression.
28030 2015-07-15  Xue Fuqiao  <xfq.free@gmail.com>
28032         * doc/emacs/frames.texi (Creating Frames):
28033         Fix the command `C-x 5 m' runs.
28035 2015-07-14  Michael Albinus  <michael.albinus@gmx.de>
28037         New autorevert tests
28038         * test/automated/auto-revert-tests.el: New file.
28040 2015-07-14  Paul Eggert  <eggert@cs.ucla.edu>
28042         Clear gcprolist etc. after stack overflow
28043         After stack overflow, command_loop calls init_eval, and this needs to
28044         clear gcprolist and byte_stack_list (Bug#20996).
28045         * src/alloc.c (init_alloc):
28046         Move gcprolist and byte_stack_list initialization from here ...
28047         * src/eval.c (init_eval): ... to here.
28049 2015-07-13  Xue Fuqiao  <xfq.free@gmail.com>
28051         * doc/emacs/windows.texi (Pop Up Window): Fix the description
28052         of `C-x 4 m'.
28054 2015-07-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
28056         Avoid deprecated enums in mac-ct font backend driver
28057         * src/macfont.m (mac_font_copy_default_descriptors_for_language)
28058         (mac_ctfont_get_advance_width_for_glyph)
28059         (mac_ctfont_get_bounding_rect_for_glyph): Avoid deprecated enums.
28061         Cache font family in mac-ct font backend driver
28062         * src/macfont.m (macfont_family_cache): New variable.
28063         (syms_of_macfont): Initialize it.
28064         (macfont_available_families_cache): New variable.
28065         (macfont_invalidate_family_cache, macfont_get_family_cache_if_present)
28066         (macfont_set_family_cache, macfont_invalidate_available_families_cache)
28067         (macfont_handle_font_change_notification)
28068         (macfont_init_font_change_handler)
28069         (macfont_copy_available_families_cache): New functions.
28070         (macfont_create_family_with_symbol): Use font family caches.
28071         (macfont_list, macfont_list_family):
28072         Use macfont_copy_available_families_cache instead of
28073         mac_font_create_available_families.
28075 2015-07-12  Dmitry Gutov  <dgutov@yandex.ru>
28077         Show the default value in the prompt
28078         * lisp/progmodes/xref.el: Add `M-?' binding for
28079         xref-find-references.  Declare functions `grep-read-files' and
28080         `grep-expand-template'.
28081         (xref--read-identifier): Show the default value in the prompt.
28083         * lisp/progmodes/xref.el (xref-find-regexp): When called with
28084         prefix argument, ask for file patterns to search as well.  When
28085         prompting for the directory, require an existing one.
28086         (xref-collect-matches): Add a new argument, FILES.  Use it in the
28087         above function.
28089         Add `project-ignores'
28090         * lisp/progmodes/project.el (project-ignores): New generic
28091         function, and an implementation for the VC project type.
28092         * lisp/progmodes/xref.el (xref--rgrep-command): Split, as a
28093         variant of rgrep-default-command that handles a generic list of
28094         ignores.
28095         (xref-collect-matches): Use it, and pass through to it the value
28096         of the newly added argument.
28097         (xref-find-regexp): Handle ignored paths within the project.
28098         Remove outdated comment.
28099         * lisp/vc/vc.el (vc-default-ignore-completion-table):
28100         Skip the comments and the empty lines.
28102 2015-07-12  Xue Fuqiao  <xfq.free@gmail.com>
28104         * doc/emacs/buffers.texi (Misc Buffer): Add a cross reference.
28106 2015-07-11  Eric Abrahamsen  <eric@ericabrahamsen.net>
28108         gnus-registry.el: Correct function argument order
28109         * lisp/gnus/gnus-registry.el (gnus-registry--set/remove-mark):
28110         Reverse the order of function arguments.
28112 2015-07-11  Dmitry Gutov  <dgutov@yandex.ru>
28114         Bind grep-highlight-matches to nil
28115         * lisp/progmodes/xref.el (xref-collect-matches):
28116         Bind grep-highlight-matches to nil (bug#20728).
28118 2015-07-11  Nikolaus Rath  <Nikolaus@rath.org>
28120         nnimap.el: Fix IMAP message size parsing
28121         * lisp/gnus/nnimap.el (nnimap-transform-headers):
28122         Don't assume that UID comes before RFC822.SIZE.
28124 2015-07-10  Stefan Monnier  <monnier@iro.umontreal.ca>
28126         * lisp/gnus/nnimap.el: Clean up "unused var" warnings
28127         (auth-source-creation-prompts): Declare.
28128         (nnimap-retrieve-headers, nnimap-status-message)
28129         (nnimap-request-create-group, nnimap-request-delete-group)
28130         (nnimap-close-group, nnimap-request-move-article)
28131         (nnimap-request-accept-article, nnimap-request-newgroups)
28132         (nnimap-request-post, nnimap-dummy-active-number)
28133         (nnimap-save-mail-spec, nnimap-get-groups): Add _ to unused vars.
28134         (nnimap-parse-flags): Remove unused var `p'.
28135         (nnimap-retrieve-group-data-early): Remove unused var `groups'.
28136         (nnimap-flags-to-marks): Remove unused var `totalp'.
28138 2015-07-10  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
28140         * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 20MB.
28142 2015-07-10  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
28144         * src/macfont.m (macfont_list): Ignore font families lacking
28145         font descriptors.
28147 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
28149         Don't check the exit status, it can be misleading
28150         * lisp/progmodes/xref.el (xref-collect-matches): Don't check the
28151         exit status, it can be misleading.
28153         Introduce a Project API
28154         * lisp/progmodes/project.el: New file.
28155         * lisp/cedet/ede.el (project-try-ede): New function.
28156         (project-root): New implementation.
28157         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
28158         Set project-search-path-function.
28159         (elisp--xref-find-references): Delegate some logic to
28160         project-search-path.
28161         (elisp-search-path): New function.
28162         (elisp-xref-find): Don't implement `matches' anymore.
28163         * lisp/progmodes/etags.el: Don't implement `matches'.
28164         Delegate some logic to project-search-path.
28165         (etags-search-path): New function.
28166         * lisp/progmodes/xref.el (xref-find-function):
28167         Remove `matches' from the API.
28168         (xref-find-regexp): Move whatever common logic was in elisp and
28169         etags implementations, and search the directories returned by
28170         project-directories and project-search-path.
28172 2015-07-09  Nicolas Petton  <nicolas@petton.fr>
28174         * test/automated/map-tests.el (test-map-delete-return-value):
28175         Uncomment test.
28177         Add support for gv.el in map.el
28178         * lisp/emacs-lisp/map.el (map-elt, map-delete): Declare a gv-expander.
28179         * lisp/emacs-lisp/map.el (map-put): Refactor using `setf' and `map-elt'.
28180         * test/automated/map-tests.el: Update tests to work with the new
28181         implementations of map-elt and map-put.
28183 2015-07-09  Glenn Morris  <rgm@gnu.org>
28185         * lisp/emacs-lisp/debug.el (debug-help-follow): Use describe-symbol.
28187 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
28189         Syntax-propertize until the end of the line first
28190         * lisp/progmodes/xref.el (xref--collect-match): Syntax-propertize
28191         until the end of the line first.
28193 2015-07-09  Xue Fuqiao  <xfq.free@gmail.com>
28195         * doc/emacs/files.texi (File Archives): Add a cross reference.
28197 2015-07-08  Nikolaus Rath  <Nikolaus@rath.org>
28199         nnimap.el: Handle plain value for nnimap-stream
28200         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Always query
28201         capabilities, so that a 'plain value for the `nnimap-stream' server
28202         variable is handled correctly.
28203         * doc/misc/gnus.texi (Customizing the IMAP Connection):
28204         Document the 'plain option.
28206 2015-07-08  Leo Liu  <sdl.web@gmail.com>
28208         Fix bug in thing-at-point--bounds-of-well-formed-url
28209         * lisp/thingatpt.el (thing-at-point--bounds-of-well-formed-url): Make
28210         sure boundary contains current point.
28212 2015-07-08  Dmitry Gutov  <dgutov@yandex.ru>
28214         * lisp/progmodes/xref.el (xref-collect-matches): Use `nreverse'
28215         in the end.
28217         Declare whitespace-line-column a safe file-local
28218         * lisp/whitespace.el (whitespace-line-column): Declare to be a
28219         safe file-local when the value is an integer.
28221 2015-07-08  Eric Abrahamsen  <eric@ericabrahamsen.net>
28223         gnus-group.el: Check if group names are already strings
28224         * lisp/gnus/gnus-group.el (gnus-group-group-name):
28225         The group name may already be a string.
28226         Specifically, in the group list reached from the *Server* buffer,
28227         the 'gnus-group text property returns a string.  Everywhere else
28228         it returns a symbol.
28230         nnimap.el: Remove unused let variables
28231         * lisp/gnus/nnimap.el (nnimap-request-group): Variables are not used.
28233 2015-07-08  Eli Zaretskii  <eliz@gnu.org>
28235         Support "maximized" property of runemacs's shortcut
28236         * nt/runemacs.c (WinMain): If runemacs is invoked "maximized", pass
28237         the '--maximized' switch to Emacs.
28239         Support "minimized" property of runemacs's shortcut
28240         * nt/runemacs.c (WinMain): If runemacs is invoked "minimized",
28241         pass the '--iconic' switch to Emacs.  (Bug#20991)
28243 2015-07-08  Xue Fuqiao  <xfq.free@gmail.com>
28245         Doc fixes
28246         * doc/emacs/files.texi (Diff Mode): Fix the description of `C-c
28247         C-w' in Diff mode.
28248         * doc/emacs/arevert-xtra.texi (Auto Reverting the Buffer Menu):
28249         Add a cross reference.
28251 2015-07-08  Nicolas Richard  <youngfrog@members.fsf.org>
28253         * lisp/obsolete/landmark.el: Add Obsolete-since header.
28255 2015-07-07  Glenn Morris  <rgm@gnu.org>
28257         * test/automated/ert-tests.el (ert-test-deftest):
28258         Update for recent changes.
28260 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
28262         (gv-setter, gv-synthetic-place, gv-delay-error): New funs/macros
28263         * lisp/emacs-lisp/gv.el (gv-setter): New function.
28264         (gv-invalid-place): New error.
28265         (gv-get): Use them.
28266         (gv-synthetic-place, gv-delay-error): New places.
28267         * lisp/emacs-lisp/cl-generic.el (cl--generic-setf-rewrite): Remove.
28268         (cl-defgeneric, cl-defmethod): Use gv-setter.
28270 2015-07-07  Fabrice Popineau  <fabrice.popineau@gmail.com>
28272         Make vc-tests work with MSYS svn program
28273         * lisp/vc/vc-svn.el (vc-svn-create-repo): Fix the file:// URL when
28274         svn is an MSYS program.
28276 2015-07-07  Ken Brown  <kbrown@cornell.edu>
28278         Improve recent change to emacsclient on Cygwin
28279         * lisp/server.el (server-process-filter): Remove redundant check
28280         that 'cygwin-convert-file-name-from-windows' is defined as a
28281         function on Cygwin.  Don't call that function unless its argument
28282         starts with a drive letter.
28284 2015-07-07  Artur Malabarba  <bruce.connor.am@gmail.com>
28286         * lisp/emacs-lisp/package.el (package-compute-transaction):
28287         Fix void variable due to `found-something' being in the wrong `let'.
28289 2015-07-07  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
28291         * lisp/play/landmark.el: Move to lisp/obsolete/.
28293 2015-07-07  Martin Rudalics  <rudalics@gmx.at>
28295         Have `x-show-tip' handle `right' and `bottom' frame parameters
28296         * src/nsfns.m (compute_tip_xy, Fx_show_tip)
28297         * src/w32fns.c (compute_tip_xy, Fx_show_tip)
28298         * src/xfns.c (compute_tip_xy, Fx_show_tip): Allow aligning
28299         tooltips also via `right' and `bottom' frame parameters.
28301 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
28303         Add online-help support to describe types
28304         * lisp/help-fns.el (describe-symbol-backends): Move to help-mode.el.
28305         (describe-symbol): Improve the selection of default.
28306         * lisp/help-mode.el: Require cl-lib.
28307         (describe-symbol-backends): Move from help-fns.el.
28308         (help-make-xrefs): Use it.
28309         * lisp/emacs-lisp/cl-extra.el (describe-symbol-backends): Add entry
28310         for types.
28311         (cl--typedef-regexp): New const.
28312         (find-function-regexp-alist): Add entry for types.
28313         (cl-help-type, cl-type-definition): New buttons.
28314         (cl-find-class): New function.
28315         (cl-describe-type): New command.
28316         (cl--describe-class, cl--describe-class-slot)
28317         (cl--describe-class-slots): New functions, moved from eieio-opt.el.
28318         * lisp/emacs-lisp/cl-generic.el (cl--generic-method-documentation)
28319         (cl--generic-all-functions, cl--generic-specializers-apply-to-type-p):
28320         New functions.  Moved from eieio-opt.el.
28321         (cl--generic-class-parents): New function, extracted from
28322         cl--generic-struct-specializers.
28323         (cl--generic-struct-specializers): Use it.
28324         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Use pcase-dolist.
28325         Improve constructor's docstrings.
28326         (cl-struct-unknown-slot): New error.
28327         (cl-struct-slot-offset): Use it.
28328         * lisp/emacs-lisp/cl-preloaded.el (cl-struct-define): Record the type
28329         definition in current-load-list.
28330         * lisp/emacs-lisp/eieio-core.el (eieio--known-slot-names): New var.
28331         (eieio--add-new-slot): Set it.
28332         (eieio-defclass-internal): Use new name for current-load-list.
28333         (eieio-oref): Add compiler-macro to warn about unknown slots.
28334         * lisp/emacs-lisp/eieio.el (defclass): Update eieio--known-slot-names
28335         as compile-time as well.  Improve constructor docstrings.
28336         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
28337         (eieio--help-print-slot, eieio-help-class-slots): Move to cl-extra.el.
28338         (eieio-class-def): Remove button.
28339         (eieio-help-constructor): Use new name for load-history element.
28340         (eieio--specializers-apply-to-class-p, eieio-all-generic-functions)
28341         (eieio-method-documentation): Move to cl-generic.el.
28342         (eieio-display-method-list): Use new names.
28343         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression):
28344         Add "define-linline".
28345         (lisp-fdefs): Remove "defsubst".
28346         (el-fdefs): Add "defsubst", "cl-defsubst", and "define-linline".
28347         * lisp/emacs-lisp/macroexp.el (macroexp--warned): New var.
28348         (macroexp--warn-and-return): Use it to avoid inf-loops.
28349         Add `compile-only' argument.
28351 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
28353         python.el: Fix local/remote shell environment setup
28354         * lisp/progmodes/python.el (python-shell-with-environment):
28355         Fix remote/local environment setup.
28356         * test/automated/python-tests.el (python-shell-with-environment-1)
28357         (python-shell-with-environment-2): New tests.
28359 2015-07-06  Glenn Morris  <rgm@gnu.org>
28361         * lisp/simple.el (set-variable): Tweak recent doc fix.
28363 2015-07-06  Ken Brown  <kbrown@cornell.edu>
28365         * src/sysdep.c (handle_sigsegv) [CYGWIN]: Increase STACK_DANGER_ZONE.
28367 2015-07-06  Glenn Morris  <rgm@gnu.org>
28369         * lisp/simple.el (set-variable): Use user-error for type mismatch.
28371 2015-07-06  Ken Brown  <kbrown@cornell.edu>
28373         * src/emacs.c (main): Don't increase the stack size on Cygwin.
28375 2015-07-06  Stefan Monnier  <monnier@iro.umontreal.ca>
28377         (describe-symbol): Rewrite describe-function-or-variable
28378         * lisp/help-fns.el (describe-symbol-backends): New var.
28379         (help-xref-stack-item): Declare.
28380         (describe-symbol): Rename from describe-function-or-variable.
28381         Rewrite using describe-symbol-backends instead of help-xref-interned.
28382         * lisp/help.el (help-map): Use it.
28383         * lisp/help-mode.el (help-symbol, help-follow-symbol): Use it.
28384         (help-xref-interned): Make it into an obsolete alias.
28386         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-save): Don't ignore
28387         `file' arg (bug#20972).  Always use utf-8-emacs.  Use with-temp-buffer
28388         and cl-letf.
28390 2015-07-06  Wolfgang Jenkner  <wjenkner@inode.at>
28392         Fix parsing glitches in dired-mark-sexp (bug#13575)
28393         * lisp/dired-x.el (dired-x--string-to-number): New function.
28394         (dired-mark-sexp): Use it.  Tweak dired-re-inode-size.  Fix usage
28395         of directory-listing-before-filename-regexp.  Consider
28396         forward-word harmful and replace it.  Add more verbiage in
28397         comments and doc string.
28399 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
28401         python.el: Respect process environment for remote shells
28402         * lisp/progmodes/python.el
28403         (python-shell-calculate-process-environment): Calculate
28404         process-environment or tramp-remote-process-environment depending
28405         whether current file is remote.
28406         (python-shell-calculate-exec-path): Calculate exec-path or
28407         tramp-remote-path depending whether current file is remote.
28408         (python-shell-with-environment): New macro.
28409         (python-shell-prompt-detect, python-shell-calculate-command)
28410         (python-shell-make-comint, python-check): Use it.
28412         python.el: Avoid making let-bound defvars buffer local  (Bug#18244)
28413         * lisp/progmodes/python.el (python-shell--interpreter)
28414         (python-shell--interpreter-args): New vars.
28415         (inferior-python-mode, python-shell-make-comint): Use them.
28417         python.el: Fixes for IPython 3.x  (Bug#20580)
28418         * lisp/progmodes/python.el:
28419         (python-shell-completion-native-setup): Fix IPython 3.x setup.
28420         (python-shell-completion-native-get-completions): Fix timeout
28421         logic.
28423         python.el: Fix mark-defun behavior  (Bug#19665)
28424         * lisp/progmodes/python.el (python-mark-defun): New function.
28425         * test/automated/python-tests.el (python-mark-defun-1)
28426         (python-mark-defun-2, python-mark-defun-3): New tests.
28428 2015-07-05  Glenn Morris  <rgm@gnu.org>
28430         * lisp/progmodes/f90.el (f90-type-def-re): Handle attribute lists
28431         such as "extends(parent), private".  (Bug#20969)
28432         * test/automated/f90.el (f90-test-bug20969, f90-test-bug20969b):
28433         New tests.
28435 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
28437         Avoid duplicate calls to current_timespec
28438         * src/process.c (wait_reading_process_output):
28439         Cache current_timespec results as long as we're not waiting.
28441 2015-07-05  Ian Kelling  <ian@iankelling.org>
28443         Avoid returning early reading process output due to SIGIO
28444         * src/process.c (wait_reading_process_output): Extend the behavior of
28445         not breaking due to not finding output when a timer has lowered the
28446         timeout to include when SIGIO lowers the timeout.
28448         Don't return as fast reading any process output
28449         * src/process.c (wait_reading_process_output):
28450         The patch for Bug#17647 returns too fast sometimes when reading
28451         from any processes.  Revert part of it, and limit the timeout more
28452         sensibly (Bug#20978).
28454         Refactor timeouts in wait_reading_process_output
28455         * src/process.c (wait_reading_process_output):
28456         Simplify timeouts with an enum.  Remove a redundant condition.
28457         (Bug#20978)
28459         Remove ADAPTIVE_READ_BUFFERING ifdef
28460         * src/process.c (make-process, make-pipe-process, deactivate_process)
28461         (wait_reading_process_output, read_process_output, send_process)
28462         (init_process_emacs): ifdef ADAPTIVE_READ_BUFFERING was originally
28463         added in case there was an operating system in which it was not
28464         useful.  That was 11 years ago and it hasn't happened.  Make
28465         development easier by not considering the effect of changes on a
28466         theoretical OS where this is disabled (Bug#20978).
28468 2015-07-05  Glenn Morris  <rgm@gnu.org>
28470         * lisp/simple.el (set-variable): Doc fix.
28472         * lisp/progmodes/fortran.el (fortran-line-length): Doc fix.
28474 2015-07-05  Ian Kelling  <ian@iankelling.org>
28476         accept-process-output fix
28477         This is a followon to the fix for bug#17647 (Bug#20976).
28478         * src/process.c (status_notify): Fix too high return in some cases.
28480 2015-07-05  Artur Malabarba  <bruce.connor.am@gmail.com>
28482         * lisp/character-fold.el (character-fold-table):
28483         Only fold decompositions if at least one character is non-spacing.
28484         (Bug#20975)
28486 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
28488         Merge from gnulib
28489         This incorporates:
28490         2015-07-04 file-has-acl, acl-permissions: fix HP-UX typos
28491         2015-07-03 set-permissions.c: adjust acl_from_mode's cpp guard
28492         2015-07-02 update-copyright: fix test failure with perl >= 5.22
28493         2015-07-01 gnulib-common.m4: change the ARFLAGS default to 'cr'
28494         2015-07-01 acl: fix definition of acl_from_mode on FreeBSD
28495         * build-aux/update-copyright, doc/misc/texinfo.tex, lib/acl-internal.h:
28496         * lib/set-permissions.c, m4/gnulib-common.m4: Copy from gnulib.
28498 2015-07-05  Christoph Wedler  <christoph.wedler@sap.com>
28500         Respect `prog-indentation-context' in python.el
28501         * lisp/progmodes/python.el (python-indent-guess-indent-offset)
28502         (python-indent-context, python-indent--calculate-indentation)
28503         (python-info-current-defun)
28504         (python-info-dedenter-opening-block-message)
28505         (python-info-line-ends-backslash-p)
28506         (python-info-beginning-of-backslash)
28507         (python-info-continuation-line-p): Use `prog-widen'.
28508         (python-indent--calculate-indentation)
28509         (python-indent--calculate-levels)
28510         (python-indent-calculate-indentation): Use `prog-first-column'.
28511         (python-indent--calculate-levels): Simplify.
28512         Ignore also initial empty lines for syntax calculation.
28513         * lisp/progmodes/python.el (python-indent-context): Return
28514         :no-indent for first non-empty line, not just in line 1.
28515         * test/automated/python-tests.el (python-indent-base-case)
28516         (python-indent-inside-paren-1, python-indent-inside-paren-2)
28517         (python-indent-inside-paren-3, python-indent-inside-paren-4)
28518         (python-indent-inside-paren-5, python-indent-inside-paren-6)
28519         (python-indent-after-backslash-1)
28520         (python-indent-after-backslash-2)
28521         (python-indent-after-backslash-3)
28522         (python-indent-after-backslash-4, python-indent-inside-string-1):
28523         Expect :no-indent for first non-empty line.
28525 2015-07-04  Daniel Colascione  <dancol@dancol.org>
28527         Factor isearch word description into new function
28528         * lisp/isearch.el (isearch--describe-word-mode): New function.
28529         (isearch-message-prefix, isearch-query-replace): Use it.
28531 2015-07-04  Eli Zaretskii  <eliz@gnu.org>
28533         Fix mouse pointer on w32 when a menu is active
28534         * src/w32fns.c (w32_wnd_proc): Don't change the mouse pointer
28535         shape while a menu is in use.  This started happening since we now
28536         send WM_EMACS_SHOWCURSOR messages when the mouse moves.
28538 2015-07-04  Martin Rudalics  <rudalics@gmx.at>
28540         Fix processing of alpha parameter for Windows tip frames  (Bug#17344)
28541         * src/w32fns.c (x_create_tip_frame): Fix processing alpha
28542         parameter.  (Bug#17344)
28544         Have `compilation-set-window' use right window for getting fringes
28545         (Bug#20829)
28546         * lisp/progmodes/compile.el (compilation-set-window):
28547         Take `window-fringes' from argument window.
28549 2015-07-03  Glenn Morris  <rgm@gnu.org>
28551         Update eieio tests for recent eieio-core change.
28552         * test/automated/eieio-test-persist.el (persist-test-save-and-compare):
28553         * test/automated/eieio-tests.el
28554         (eieio-test-32-slot-attribute-override-2):
28555         Replace the deleted eieio--class-v with cl--find-class.
28557 2015-07-03  Martin Rudalics  <rudalics@gmx.at>
28559         Fix some issues with `window-divider-mode'
28560         * lisp/frame.el (window-divider-default-places): New option.
28561         (window-divider-mode): Remove option.
28562         (window-divider-mode): Make it a "regular" minor mode.
28563         (window-divider-width-valid-p): Drop frame- prefix.
28564         (window-divider-mode-apply): New argument ENABLE.  Drop frame-
28565         prefix.  Handle `window-divider-default-places'.
28566         (frame--window-divider-mode-set-and-apply): Remove.
28567         (window-divider-default-bottom-width)
28568         (window-divider-default-right-width): Drop :group entries.
28569         * lisp/menu-bar.el (menu-bar-bottom-and-right-window-divider)
28570         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
28571         (menu-bar-no-window-divider): Set `window-divider-default-places'
28572         and call `window-divider-mode'.
28573         * doc/emacs/frames.texi (Window Dividers): Document
28574         `window-divider-default-places'.
28576 2015-07-02  Xue Fuqiao  <xfq.free@gmail.com>
28578         * doc/emacs/display.texi (Displaying Boundaries):
28579         * doc/emacs/search.texi (Word Search): Add cross references.
28581 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
28583         -batch should not affect ‘’ -> `' display
28584         * lisp/startup.el (command-line): Do the ‘’ -> `' check even if
28585         -batch (Bug#20926).
28587 2015-07-02  Stefan Monnier  <monnier@iro.umontreal.ca>
28589         * lisp/emacs-lisp/eieio-core.el (eieio--class-v): Remove
28590         * lisp/emacs-lisp/eieio-core.el, lisp/emacs-lisp/eieio.el:
28591         * lisp/emacs-lisp/eieio-opt.el, lisp/emacs-lisp/eieio-compat.el:
28592         Use cl--find-class instead.
28594         * lisp/term/xterm.el (xterm--query): Fix paren typo (bug#20951).
28596 2015-07-02  Martin Rudalics  <rudalics@gmx.at>
28598         Some further fixes in Change Window node (Bug#20183)
28599         * doc/emacs/windows.texi (Change Window): Replace "rearranging"
28600         by "resizing" in section title.  Add some concept indices.
28601         Suggested by N. Jackson (Bug#20183).
28603         * doc/emacs/windows.texi (Change Window): Reference window
28604         dividers.
28606         Document new `window-divider-mode'.
28607         * lisp/frame.el (window-divider-mode): Fix doc-string.
28608         * doc/emacs/frames.texi (Window Dividers): New section.
28610         Improve accessibility of window dividers (Bug#20183)
28611         * lisp/faces.el (window-divider)
28612         (window-divider-first-pixel, window-divider-last-pixel): Change
28613         membership from `frames' to `window-divider' customization group.
28614         * lisp/frame.el (window-divider): New customization group.
28615         (window-divider-mode): New minor mode.
28616         (window-divider-default-bottom-width)
28617         (window-divider-default-right-width): New options.
28618         (frame--window-divider-previous-mode): New variable.
28619         (frame-window-divider-width-valid-p)
28620         (frame--window-divider-mode-apply)
28621         (frame--window-divider-mode-set-and-apply): New functions.
28622         * lisp/menu-bar.el (menu-bar-options-save): Save
28623         window-divider-mode settings.
28624         (menu-bar-window-divider-customize)
28625         (menu-bar-bottom-and-right-window-divider)
28626         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
28627         (menu-bar-no-window-divider): New functions.
28628         (menu-bar-showhide-window-divider-menu): New variable.
28629         (menu-bar-showhide-menu): Show/hide window divider menu.
28630         * lisp/mouse.el (mouse-split-window-vertically)
28631         (mouse-split-window-horizontally): Replace `error' by
28632         `user-error'.  Bind `window-combination-resize' to nil.
28633         (top-level): Add/reorder mouse key bindings on mode- and
28634         vertical-line.
28636 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
28638         Don't display ‘’ as `' under X in en_GB
28639         The curved quote setup code invokes (char-displayable-p ?‘),
28640         but this isn’t reliable until after the X frame replaces the
28641         terminal frame (Bug#20926).
28642         * lisp/international/mule-cmds.el (set-locale-environment):
28643         Move curved quote setup code from here ...
28644         * lisp/startup.el (command-line): ... to here, after creating
28645         the X frame.
28647 2015-07-01  Nicolas Richard  <youngfrog@members.fsf.org>
28649         * lisp/emacs-lisp/seq.el (seq-difference): Fix typo in docstring.
28651         * lisp/ido.el (ido-restrict-to-matches): Add an optional argument
28652         to reverse the meaning (Bug#15631).
28654 2015-07-01  Eli Zaretskii  <eliz@gnu.org>
28656         Be more tolerant to fonts named "Foobar-12"
28657         * src/frame.c (x_set_font): If font_spec_from_name returns nil,
28658         don't barf; instead, request a new fontset to be generated.  This
28659         avoids unnecessarily rejecting fonts named against XLFD rules.  See
28660         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html,
28661         for the description of the original problem.
28662         * lisp/faces.el (set-face-attribute): Don't be fooled too easily
28663         by a hyphen in a font's name.
28665         Fix value of posn-at-pont in R2L lines
28666         * src/keyboard.c (Fposn_at_x_y, Fposn_at_point): Allow X pixel
28667         coordinate of -1, for a newline in a right-to-left line that
28668         overflowed into the left fringe.
28670 2015-07-01  Stefan Monnier  <monnier@iro.umontreal.ca>
28672         (cl--copy-slot-descriptor): Copy the `props' alist as well
28673         * lisp/emacs-lisp/cl-preloaded.el (cl--copy-slot-descriptor-1):
28674         Rename from cl--copy-slot-descriptor.
28675         (cl--copy-slot-descriptor): New function.  Copy the alist (bug#20914).
28677 2015-06-30  Stefan Monnier  <monnier@iro.umontreal.ca>
28679         * lisp/term/xterm.el (xterm--query): Avoid generating garbage
28680         (xterm-query-timeout): New var.
28681         (xterm--query): Use it.  Fallback on async method if we timeout before
28682         getting the first byte of the reply (bug#12354).
28684 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
28686         Spelling fixes
28687         * lisp/character-fold.el (character-fold-search):
28688         * lisp/emacs-lisp/package.el (package-hidden-regexps):
28689         Fix typos.
28691 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
28693         * doc/emacs/frames.texi (Frame Commands): Typo fix.  (Bug#20946)
28695 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
28697         In strings, prefer plain ` and ' to \` and \'
28698         * lisp/allout.el (allout-insert-listified):
28699         * lisp/emacs-lisp/easy-mmode.el (define-globalized-minor-mode):
28700         * lisp/ls-lisp.el (ls-lisp-UCA-like-collation)
28701         (ls-lisp-string-lessp):
28702         * lisp/menu-bar.el (menu-bar-open):
28703         * lisp/obsolete/otodo-mode.el (todo-top-priorities):
28704         * lisp/progmodes/compile.el (compile):
28705         * lisp/progmodes/etags.el (tags-loop-scan):
28706         * lisp/progmodes/make-mode.el (makefile-browser-insert-continuation):
28707         * lisp/subr.el (posn-actual-col-row):
28708         * lisp/term/pc-win.el (x-list-fonts):
28709         * lisp/textmodes/texinfmt.el (texinfmt-version):
28710         * lisp/textmodes/texnfo-upd.el (texinfo-master-menu):
28711         * lisp/time.el (display-time-world-list):
28712         * lisp/tmm.el (tmm-menubar):
28713         * src/buffer.c (syms_of_buffer):
28714         * src/fileio.c (syms_of_fileio):
28715         Omit unnecessary and confusing backslash before quote.
28716         * lisp/erc/erc.el (erc-cmd-LASTLOG):
28717         * lisp/progmodes/flymake.el (flymake-fix-file-name):
28718         * lisp/progmodes/vhdl-mode.el (vhdl-in-extended-identifier-p):
28719         Fix string that was intended to escape a backslash and not a quote.
28721 2015-06-30  Glenn Morris  <rgm@gnu.org>
28723         * leim/Makefile.in, lisp/Makefile.in: Add missing EXEEXT definition.
28725         * lisp/Makefile.in (MH_E_SRC, TRAMP_SRC, CAL_SRC):
28726         Replace hard-coded lists with wildcard + filter-out.
28728         * configure.ac (system-configuration-features): Add X11, NS.
28730         Improve reproducibility of generated loaddefs file
28731         * lisp/emacs-lisp/autoload.el (autoload-generate-file-autoloads):
28732         Make the return value the modtime of the input file (if no autoloads).
28733         (update-directory-autoloads): In the "no autoloads" section,
28734         use "most recent modtime" rather than "current time".
28736 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
28738         * lisp/emacs-lisp/package.el (package--remove-hidden): Fix logic.
28739         (Bug#20930)
28741 2015-06-30  Nicolas Petton  <nicolas@petton.fr>
28743         * doc/lispref/sequences.texi: Add documentation for seq-min and seq-max.
28745         Add seq-min and seq-max
28746         Bump version number.
28747         * lisp/emacs-lisp/seq.el (seq-min, seq-max): New functions.
28748         * test/automated/seq-tests.el: Add tests for seq-min and seq-max.
28750 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
28752         Make sure sleep-for always delays for as long as it's told
28753         * src/dispnew.c (Fsleep_for): Call wait_reading_process_output in
28754         a loop, to ensure we always wait exactly the required amount of
28755         time.  (Bug#15990)
28757 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
28759         Fix pointer signedness glitch
28760         * src/font.c (font_load_for_lface): Use SSDATA, not SDATA.
28762 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
28764         Don't block changes in mouse pointer inside 'track-mouse'
28765         * etc/NEWS:
28766         * doc/lispref/frames.texi (Mouse Tracking): Document the special
28767         effect of setting 'track-mouse' to 'dragging'.
28768         * lisp/textmodes/artist.el (artist-mouse-draw-continously):
28769         * lisp/ruler-mode.el (ruler-mode-mouse-drag-any-column-iteration):
28770         * lisp/mouse-drag.el (mouse-drag-throw):
28771         * lisp/mouse.el (mouse-drag-line): Set 'track-mouse' to 'dragging'
28772         to avoid changes in the shape of the mouse pointer.
28773         * src/xdisp.c (define_frame_cursor1): Don't change the mouse
28774         pointer shape when do_mouse_tracking has the value of 'dragging',
28775         not just any non-nil value.  (Bug#20934)
28776         (syms_of_xdisp): DEFSYM 'dragging'.
28778 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
28780         * lisp/isearch.el (isearch-toggle-word): Fix toggle.
28782         * lisp/emacs-lisp/package.el (package-compute-transaction):
28783         Don't assume version sorting.
28785         * lisp/emacs-lisp/package.el (package--save-selected-packages):
28786         Don't save before init time, to avoid overwriting configurations.
28787         (Bug#20855)
28789 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
28791         * doc/emacs/display.texi (Standard Faces, Fringes): Add cross
28792         references.
28794 2015-06-29  Ted Zlatanov  <tzz@lifelogs.com>
28796         Update for the upcoming CFEngine 3.7 release: support macros and
28797         quoted context strings; reformat JSON; indent promise attributes 2
28798         units by default; give function parameter descriptions in the eldoc
28799         glue.
28800         * lisp/progmodes/cfengine.el: Update version and docs and fix name.
28801         Autoload `json-pretty-print'.  Support new features in 3.7.
28802         (cfengine-parameters-indent): Set default promise attribute indent to
28803         2 more than the promise itself.
28804         (cfengine3-macro-regex): New variable to match the new macro syntax.
28805         (cfengine3-font-lock-keywords): Use it to highlight macros.
28806         (cfengine3-indent-line): Use it to indent macros to column 0.
28807         (cfengine3-class-selector-regex): Update for the new quoted strings
28808         format.
28809         (cfengine3-reformat-json-string): New function to reformat a JSON
28810         string using `json-pretty-print'.
28811         (cfengine3-format-function-docstring): Use function parameter
28812         description if it's provided by the cf-promises syntax dump.
28814 2015-06-29  Michael R. Mauger  <michael@mauger.com>
28816         Cygwin emacsclient handles w32 file names
28817         * lisp/server.el (server-process-filter): Allow Cygwin's
28818         emacsclient to be used as a file handler on MS-Windows.
28820 2015-06-29  Katsumi Yamaoka  <yamaoka@jpl.org>
28822         * lisp/isearch.el (isearch-exit): Don't call isearch-done twice
28823         (bug#20925).
28825 2015-06-29  Eli Zaretskii  <eliz@gnu.org>
28827         * doc/lispref/text.texi (Sticky Properties): Improve wording.
28828         (Bug#20924)
28830         Allow font names that end in "-NN", where NN is a number
28831         * src/font.c (font_load_for_lface): If the font-spec didn't match
28832         any available fonts, try again without interpreting trailing "-NN"
28833         as the font size.  For the description of the original problem, see
28834         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html
28836         .gdbinit followup to changes in !USE_LSB_TAG
28837         * src/.gdbinit (xgetsym): Don't left-shift $ptr even under
28838         !USE_LSB_TAG, as Emacs no longer does.
28840 2015-06-29  Wolfgang Jenkner  <wjenkner@inode.at>
28842         * lisp/calc/calc-store.el (calc-insert-permanent-variable): Heed case.
28843         Otherwise `s p' of f and F will stomp on each other's value.
28844         (Bug#20916)
28846 2015-06-29  Artur Malabarba  <bruce.connor.am@gmail.com>
28848         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
28849         Don't block remember-pos if buffer isn't displayed.  (Bug#20921)
28851 2015-06-29  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
28853         * lisp/emacs-lisp/package.el (describe-package): Use symbol-at-point
28854         as additional guess.
28856         * lisp/emacs-lisp/package.el (describe-package): Convert the guess
28857         to a string.
28859 2015-06-28  Paul Eggert  <eggert@cs.ucla.edu>
28861         apropos-library quoting fix
28862         * lisp/apropos.el (apropos-library): Quote library consistently
28863         with the rest of the quoting used by apropos.
28865         Clarify interpreter-mode-alist doc
28866         * lisp/files.el (interpreter-mode-alist):
28867         Reword to avoid confusing quoting that wasn't working anyway.
28869 2015-06-28  Michael Albinus  <michael.albinus@gmx.de>
28871         Sync with Tramp 2.2.12
28872         * doc/misc/trampver.texi:
28873         * lisp/net/trampver.el: Update release number.
28874         * test/automated/tramp-tests.el (tramp-test13-make-directory):
28875         Fix cleanup.
28877 2015-06-28  Artur Malabarba  <bruce.connor.am@gmail.com>
28879         * lisp/isearch.el (isearch-mode): Don't char-fold regexps (bug#20913).
28881 2015-06-27  Dmitry Gutov  <dgutov@yandex.ru>
28883         Bind grep-highlight-matches around the rgrep call
28884         * lisp/progmodes/grep.el (zrgrep): Bind grep-highlight-matches
28885         around the rgrep call (bug#20728).
28887         Put "--color" before the other options in grep-command
28888         * lisp/progmodes/grep.el (grep-compute-defaults): Put "--color"
28889         before the other options in grep-command (bug#20912).
28891         Add --color Grep option to the command dynamically
28892         * lisp/progmodes/grep.el (grep-template, grep-find-template):
28893         Update the description for <C>.  (Bug#20728)
28894         (grep-compute-defaults): Don't add the --color option to
28895         grep-options.  Only add it to grep-command.
28896         (grep-expand-keywords): Expand the env value opts into <C>.
28897         (grep-expand-template): Replace cf in the env with the opts list,
28898         that can include -i and --color.
28899         * lisp/progmodes/xref.el (xref-collect-matches): Do not remove
28900         "--color=always" from the template, because we don't have to.
28902 2015-06-27  Paul Eggert  <eggert@cs.ucla.edu>
28904         cl-extra fixes for most-negative-fixnum
28905         * lisp/emacs-lisp/cl-extra.el (cl-gcd, cl-lcm, cl-random):
28906         Don't mishandle an argument equal to most-negative-fixnum,
28907         whose absolute value equals itself.
28908         (cl-gcd, cl-lcm): Use dolist rather than doing it by hand.
28910         Initialize cl--gensym-counter to 0
28911         Previously it was initialized to a random value, which made it
28912         harder to reproduce earlier Emacs runs.  The need for a random
28913         value went away when Emacs introduced and used the #: syntax for
28914         uninterned symbols (Bug#20862).
28915         * doc/misc/cl.texi (Creating Symbols, Common Lisp Compatibility):
28916         Document that cl--gensym-counter now starts with 0.
28917         * lisp/emacs-lisp/cl-lib.el (cl--gensym-counter): Remove.
28918         (cl--random-time): Move to near only remaining use.
28919         * lisp/emacs-lisp/cl-macs.el (cl--gensym-counter): Initialize to 0.
28921         Improve docstring for macroexp-let2
28922         * lisp/emacs-lisp/macroexp.el (macroexp-let2):
28923         Improve as per suggestion by RMS in:
28924         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00621.html
28925         Also, rename args to match new doc string.
28927 2015-06-27  Eli Zaretskii  <eliz@gnu.org>
28929         Fix VC test suite on MS-Windows
28930         * lisp/vc/vc-svn.el (vc-svn-create-repo): Make sure the file: URL
28931         always starts with 3 slashes after the colon.
28932         * test/automated/vc-tests.el (vc-test--create-repo-function): Use
28933         'w32-application-type' to invoke CVS on MS-Windows with properly
28934         formatted CVSROOT directory name.
28936         Add a new function w32-application-type
28937         * src/w32proc.c (Fw32_application_type): New function.
28939         Avoid error in TLS connections due to incorrect format
28940         * src/gnutls.c (Fgnutls_boot): Use the %x conversion specifier in
28941         the call to 'error', instead of the unsupported %u.  Reported by
28942         lo2net <fangtao0901@gmail.com>.  (Bug#20908)
28944 2015-06-26  Artur Malabarba  <bruce.connor.am@gmail.com>
28946         * lisp/replace.el (replace-search): Fix regexp case (bug#20901).
28948 2015-06-26  Leo Liu  <sdl.web@gmail.com>
28950         * lisp/emacs-lisp/cl-indent.el: Fix indentation for
28951         `with-output-to-string' in elisp.
28953         Revert "lisp/emacs-lisp/cl-indent.el: Fix indent of
28954         with-output-to-string".
28955         This reverts commit 659199f2ca5f283fb246faa78a244e5ca25f53dd.
28957 2015-06-26  Eli Zaretskii  <eliz@gnu.org>
28959         Minor corrections in ELisp manual
28960         * doc/lispref/nonascii.texi (Character Properties): Correct
28961         inaccuracies in description of values of the Unicode properties.
28963         Fix invisible mouse pointers on Windows.
28964         * src/w32fns.c: Include windowsx.h.
28965         (w32_wnd_proc): If the mouse moved and the mouse pointer is
28966         invisible, make it visible again even when the main (Lisp)
28967         thread is busy.
28968         * src/w32term.c (w32_toggle_invisible_pointer): Rather then
28969         garbaging the frame have the input thread call SetCursor.
28971 2015-06-26  Martin Rudalics  <rudalics@gmx.at>
28973         Provide invisible mouse pointers on Windows (Bug#6105) (Bug#12922)
28974         * src/w32fns.c (w32_wnd_proc): Handle f->pointer_invisible
28975         for WM_SETCURSOR and WM_EMACS_SETCURSOR cases.
28976         * src/w32term.c (w32_hide_hourglass): Handle f->pointer_invisible.
28977         (w32_toggle_invisible_pointer): New function.
28978         (w32_create_terminal): Add w32_toggle_invisible_pointer as
28979         toggle_invisible_pointer_hook for this terminal.
28981 2015-06-25  Xue Fuqiao  <xfq.free@gmail.com>
28983         Doc fix for deletion commands
28984         'delete-char' does not respect the value of 'delete-active-region'.
28985         * doc/emacs/killing.texi (Deletion):
28986         Fix documentation for some single-char deletion commands.
28988         * doc/emacs/help.texi (Apropos):
28989         Improve documentation of 'apropos-do-all'.
28991         * doc/emacs/help.texi (Help Summary):
28992         Improve documentation of 'describe-mode'.
28994 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
28996         Fix submake dependency bug with .h files
28997         * src/Makefile.in ($(libsrc)/make-docfile$(EXEEXT)):
28998         Depend on $(lib)/libgnu.a, so that we build $(lib)/*/*.h
28999         before the submake in $(libsrc) would spin off a subsubmake
29000         for $(lib) in parallel with our submake for $(lib) (Bug#20894).
29002 2015-06-25  Artur Malabarba  <bruce.connor.am@gmail.com>
29004         * lisp/character-fold.el (character-fold-table): Reuse `table'.
29006 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
29008         Translate undisplayable ‘ to `
29009         * doc/lispref/help.texi (Keys in Documentation):
29010         * lisp/international/mule-cmds.el (set-locale-environment):
29011         * lisp/term/w32console.el (terminal-init-w32console):
29012         * src/doc.c (Fsubstitute_command_keys, Vhelp_quote_translation):
29013         If ‘ is not displayable, transliterate it to `, not to '.  See:
29014         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00542.html
29016         Fix C99 incompatibilities in Cairo code
29017         * src/image.c (xpm_load) [USE_CAIRO]:
29018         * src/xterm.c (x_cr_accumulate_data) [USE_CAIRO]:
29019         Fix pointer signedness problem.
29021 2015-06-25  Oleh Krehel  <ohwoeowho@gmail.com>
29023         lisp/emacs-lisp/cl-indent.el: Fix indent of with-output-to-string
29024         * lisp/emacs-lisp/cl-indent.el (common-lisp-indent-function):
29025         `with-output-to-string' should have the same indent as `progn'.
29026         This is in line with the declaration of `with-output-to-string'.
29028 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
29030         Get ‘./configure; make -C src emacs’ to work
29031         Without this fix, lib/fcntl.h isn't built in time (Bug#20894).
29032         * lib-src/Makefile.in (../lib/libgnu.a):
29033         * src/Makefile.in ($(lib)/libgnu.a): Build all, not libgnu.a.
29035 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
29037         Fix GC bugs --with-wide-int and Qnil == 0
29038         Use the same alignment for the !USE_LSB_TAG case as for the
29039         more-typical USE_LSB_TAG case.  The attempt to support arbitrary
29040         alignments with !USE_LSB_TAG had subtle bugs in garbage collection
29041         once we changed the representation of symbols so that Qnil == 0.
29042         Problem reported by Eli Zaretskii (Bug#20862).
29043         * src/alloc.c (XMALLOC_HEADER_ALIGNMENT) [XMALLOC_OVERRUN_CHECK]:
29044         * src/alloc.c (vector_alignment, union aligned_Lisp_Symbol)
29045         (union aligned_Lisp_Misc, maybe_lisp_pointer, pure_alloc):
29046         Use same alignment for !USE_LSB_TAG as for USE_LSB_TAG.
29047         * src/alloc.c (POINTERS_MIGHT_HIDE_IN_OBJECTS): Remove.
29048         This optimization in the !USE_LSB_TAG case is no longer valid when
29049         symbols are represented via offsets.  Change the only use to
29050         assume that pointers might hide in objects.
29051         * src/lisp.h (alignas) [!USE_LSB_TAG]:
29052         Require support in this case, too.
29053         (TAG_SYMOFFSET, XSYMBOL) [!USE_LSB_TAG]: Do not shift the offset.
29054         This is OK, because the !USE_LSB_TAG case now applies only when
29055         Lisp_Object is wider than void *, so there's no longer any need
29056         to shift the offset.  Not shifting the offset means that
29057         symbol representations have the same alignment as pointers,
29058         which the GC assumes.
29060 2015-06-24  Xue Fuqiao  <xfq.free@gmail.com>
29062         * doc/lispintro/emacs-lisp-intro.texi (Data types):
29063         Improve documentation of 'substring'.
29065 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
29067         * lisp/character-fold.el (character-fold-table): Fix table generation.
29069 2015-06-24  Glenn Morris  <rgm@gnu.org>
29071         * nextstep/Makefile.in (all): Make it the first target.
29072         (../src/emacs${EXEEXT}): Add rule for making it.
29074 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
29076         * etc/NEWS: Fix mention to old function name.
29078         * lisp/character-fold.el: New file (Bug#20887)
29079         (character-fold-to-regexp): New function.
29080         * lisp/replace.el (replace-search): Check value of
29081         `character-fold-search'.
29082         * lisp/isearch.el: Move character-folding code to
29083         character-fold.el
29084         (isearch-toggle-character-fold): New command.
29085         (isearch-mode-map): Bind it to "\M-sf".
29086         (isearch-mode): Check value of `character-fold-search'.
29088 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
29090         lisp/subr.el (remove-from-invisibility-spec): Handle the t case
29091         * lisp/subr.el (remove-from-invisibility-spec): Make sure `element'
29092         is visible even if it's not yet in buffer-invisibility-spec (bug#20468).
29094         * lisp/progmodes/xref.el (xref-location-group, xref-location-marker)
29095         (xref--insert-xrefs, xref-collect-references): Avoid init-args in oref.
29097 2015-06-24  Glenn Morris  <rgm@gnu.org>
29099         * Makefile.in (install-arch-dep): Don't set sticky bit on the binary.
29101 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
29103         lisp/gnus/nnmaildir.el: Silence lexical warnings
29104         * lisp/gnus/nnmaildir.el (nnmaildir--prepare): Use a more
29105         functional style.
29106         (nnmaildir--update-nov): Remove unused var `numdir'.
29107         (nnmaildir-request-type, nnmaildir--scan, nnmaildir-request-newgroups)
29108         (nnmaildir-request-group, nnmaildir-request-create-group)
29109         (nnmaildir-request-post, nnmaildir-request-move-article)
29110         (nnmaildir-request-accept-article, nnmaildir-active-number):
29111         Mark unused args.
29112         (nnmaildir-get-new-mail, nnmaildir-group-alist)
29113         (nnmaildir-active-file): Declare.
29114         (nnmaildir-request-scan): Remove unused vars `group' and `grp-dir'.
29115         (nnmaildir-request-update-info): Remove unused vars `dotfile', `num',
29116         `mark', `end', `new-mark', and `mark-sym'.
29117         (nnmaildir-retrieve-headers): Remove unused args `srv-dir', `dir',
29118         `nlist2'.
29119         (nnmaildir-request-expire-articles):
29120         Remove unused vars `article', `stop' and `nlist2'.
29121         (nnmaildir-request-set-mark): Remove unused vars `begin', `article' and
29122         `end'.  Use nnmaildir--article when dyn-binding is needed.
29123         Give the value directly in the `let' for `del-mark', `del-action',
29124         `add-action', and `set-action'.  Don't use `add-to-list' on a local var.
29125         (nnmaildir-close-server): Declare those local vars that need to be
29126         dyn-bound.
29128 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
29130         * src/keyboard.h (kbd_buffer_store_event_hold): Remove unused local.
29132         Port selection info fix to clang
29133         * src/keyboard.h (kbd_buffer_store_event_hold):
29134         Don't assume C11 semantics for alignof (Bug#20756).
29136         Fix bug that munged selection info
29137         On some optimizing C compilers, copying a structure did not
29138         copy the padding bytes between elements, and the type punning
29139         between struct input_data and struct selection_input_data did
29140         not work.  Change the C code to use a proper union type instead.
29141         Problem reported by YAMAMOTO Mitsuharu (Bug#20756).
29142         * src/keyboard.c (kbd_buffer, kbd_fetch_ptr, kbd_store_ptr)
29143         (readable_events, discard_mouse_events, kbd_buffer_events_waiting)
29144         (kbd_buffer_get_event, process_special_events, stuff_buffered_input)
29145         (mark_kboards):
29146         Use union buffered_input_event, not struct input_event.
29147         (clear_event, deliver_input_available_signal, process_special_events):
29148         Remove unnecessary forward decls.
29149         (kbd_buffer_store_buffered_event): New function, mostly just the
29150         old kbd_buffer_store_event_hold, except its argument is of type
29151         union buffered_input_event, not struct input_event.
29152         (kbd_buffer_unget_event): Define only if HAVE_X11, since it's
29153         not needed otherwise.  Argument is now of type
29154         struct selection_input_event *, not struct input_event *.
29155         All callers changed.
29156         (clear_event): Arg is now of type union buffered_input_event *,
29157         not struct input_event *.  All callers changed.
29158         * src/keyboard.h [HAVE_X11]: Include "xterm.h".
29159         (union buffered_input_event): New type.
29160         (kbd_buffer_store_event_hold): Now an inline function,
29161         defined here.
29162         * src/termhooks.h (EVENT_KIND_WIDTH): New constant.
29163         (struct input_event): Use it.
29164         * src/xselect.c (struct selection_event_queue):
29165         Make elements be of type struct selection_input_event,
29166         not struct input_event.
29167         (selection_input_event_equal): New static function.
29168         (x_queue_event): Use it.
29169         (x_queue_event, x_decline_selection_request)
29170         (x_selection_current_request, x_reply_selection_request)
29171         (x_handle_selection_request, x_handle_selection_clear)
29172         (x_handle_selection_event): Use struct selection_input_event,
29173         not struct input_event.  All callers changed.
29174         (x_convert_selection): Omit unused first arg.  All callers changed.
29175         (Fx_disown_selection_internal): Omit unnecessary union.
29176         * src/xterm.c (handle_one_xevent): Use new union buffered_input_event
29177         rather than rolling our own equivalent.  Prefer sie.kind when
29178         setting up that kind of structure.
29179         Call kbd_buffer_store_buffered_event, not kbd_buffer_store_event_hold.
29180         * src/xterm.h (struct selection_input_event: Use EVENT_KIND_WIDTH.
29181         (SELECTION_EVENT_DISPLAY, SELECTION_EVENT_DPYINFO)
29182         (SELECTION_EVENT_REQUESTOR, SELECTION_EVENT_SELECTION)
29183         (SELECTION_EVENT_TARGET, SELECTION_EVENT_PROPERTY)
29184         (SELECTION_EVENT_TIME, x_handle_selection_event):
29185         Arg is now of type struct selection_input_event *)
29186         not struct input_event *.  All callers changed.
29188 2015-06-23  Glenn Morris  <rgm@gnu.org>
29190         * Makefile.in (install-arch-dep): Simplify with Make conditionals.
29192 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
29194         * lisp/isearch.el: Fold many unicode characters to ASCII.
29195         (isearch-character-fold-search, isearch--character-fold-extras)
29196         (isearch--character-fold-table): New variable.
29197         (isearch--character-folded-regexp): New function.
29198         (isearch-search-fun-default): Use them.
29199         * lisp/replace.el (replace-character-fold): New variable.
29200         (replace-search): Use it.
29201         * etc/NEWS: Document it.
29203 2015-06-23  Glenn Morris  <rgm@gnu.org>
29205         Check for an input event before showing a dialog box.  (Bug#20813)
29206         * lisp/subr.el (y-or-n-p):
29207         * src/fns.c (Fyes_or_no_p): Check last-input-event as well
29208         as last-nonmenu-event.
29210 2015-06-23  Jürgen Hartmann  <juergen_hartman_@hotmail.com>  (tiny change)
29212         Respect ‘switch-to-visible-buffer’ more rigidly.  (Bug#20861)
29213         * lisp/window.el (switch-to-visible-buffer): Doc adjustment.
29214         (switch-to-prev-buffer, switch-to-next-buffer): Respect
29215         switch-to-visible-buffer independent of the windows history.
29217 2015-06-23  Paul Eggert  <eggert@cs.ucla.edu>
29219         * src/keyboard.c (last_timer_event): Remove unused var.
29221 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
29223         * test/automated/package-test.el (package-test-update-listing):
29224         Fix test.
29226 2015-06-23  Glenn Morris  <rgm@gnu.org>
29228         Revert 2014-06-25 nextstep/Makefile change.
29229         * nextstep/Makefile.in (${ns_appbindir}): Remove rule.
29230         (${ns_appbindir}/Emacs, links): Create ns_appbindir in the rule,
29231         not as an order-only prerequisite.
29233         * configure.ac (--with-ns): Enable by default on OS X.
29235 2015-06-23  Leo Liu  <sdl.web@gmail.com>
29237         Fix shell-for/backward-command to exclude spaces
29238         * lisp/shell.el (shell-forward-command, shell-backward-command):
29239           Handle the 'move case from re-search-forward/backward.
29240           fixes debbugs:20873
29242 2015-06-22  Juri Linkov  <juri@linkov.net>
29244         * lisp/replace.el (query-replace-read-from): Add separator to
29245         the local binding of text-property-default-nonsticky.  (Bug#20690)
29247         * lisp/simple.el (shell-command-on-region): Replace 'error' with 'user-error'.
29248         (Bug#20785)
29250 2015-06-22  Ken Brown  <kbrown@cornell.edu>
29252         Enable CPU profiling on Cygwin
29253         * src/syssignal.h [CYGWIN] (PROFILER_CPU_SUPPORT): Revert previous
29254         change that undefined this.
29255         (SIGEV_SIGNAL): Ensure that this is defined as a macro.
29256         * src/profiler.c [CYGWIN] (timer_getoverrun): Define as a macro on
29257           Cygwin.
29259         Improve diagnostics of profiler-cpu-start
29260         * src/profiler.c (setup_cpu_timer): Change return type to 'int';
29261         return -1 if the sampling interval is invalid.
29262         (Fprofiler_cpu_start): Improve error message if 'setup_cpu_timer'
29263         fails.  (Bug#20843)
29265 2015-06-22  Artur Malabarba  <bruce.connor.am@gmail.com>
29267         * lisp/emacs-lisp/package.el: Exclude packages by name.
29268         (package-hidden-regexps): New variable.
29269         (package-menu--refresh): Use it.
29270         (package-menu-hide-package): New command.
29272         * lisp/emacs-lisp/package.el: Rename hide-obsolete to toggle-hiding.
29274 2015-06-22  Eli Zaretskii  <eliz@gnu.org>
29276         Fix debug-timer-check on systems without HAVE_TIMERFD
29277         * src/atimer.c (Fdebug_timer_check) [!HAVE_TIMERFD]: Actively run
29278         the expired timers, since wait_reading_process_output doesn't.
29279         (debug_timer_callback): Enlarge the tolerance to 20 msec.
29281         Fix RCS crashes in vc-test
29282         * lisp/vc/vc-rcs.el (vc-rcs-register): Avoid crashes with some old
29283         ports of 'ci' on MS-Windows by always passing the -t- switch.
29285 2015-06-22  Glenn Morris  <rgm@gnu.org>
29287         * doc/emacs/package.texi (Packages):
29288         * doc/emacs/trouble.texi (Known Problems): Remove faq cross-references.
29290         * doc/misc/efaq-w32.texi (Downloading): Copyedits.  (Bug#20851)
29292 2015-06-22  Paul Eggert  <eggert@cs.ucla.edu>
29294         Port tests to help-quote-translation
29295         * test/automated/ert-x-tests.el (ert-test-describe-test):
29296         * test/automated/package-test.el (package-test-describe-package)
29297         (package-test-signed): Allow straight quotes, too.
29299 2015-06-22  Dmitry Gutov  <dgutov@yandex.ru>
29301         Make find-function-on-key use the current window
29302         * lisp/emacs-lisp/find-func.el (find-function-on-key-do-it):
29303         Extract from `find-function-on-key', add a second argument.
29304         (find-function-on-key): Use it (bug#19679).
29305         (find-function-on-key-other-window)
29306         (find-function-on-key-other-frame): New commands.
29308 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
29310         Revert "Define `map-elt' as a generalized variable"
29311         This reverts commit 8b6d82d3ca86f76ed964063b3941a7c6ab0bf1c6.
29313 2015-06-21  Ken Brown  <kbrown@cornell.edu>
29315         Drop support for CPU profiling on Cygwin
29316         * src/syssignal.h (PROFILER_CPU_SUPPORT): Don't define on Cygwin.
29317         (Bug#20843)
29319 2015-06-21  Paul Eggert  <eggert@cs.ucla.edu>
29321         Fix some “nested” quoting confusion in doc strings
29322         * lisp/emacs-lisp/advice.el (ad-map-arglists):
29323         * lisp/kermit.el (kermit-clean-on):
29324         * lisp/mh-e/mh-comp.el (mh-repl-group-formfile):
29325         * src/keyboard.c (Frecursive_edit):
29326         Use curved quotes when quoting text containing apostrophe,
29327         so that the apostrophe isn't curved in the output.
29329 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
29331         Define `map-elt' as a generalized variable
29332         * lisp/emacs-lisp/map.el (map-elt): Define a gv-expander.
29333         * lisp/emacs-lisp/map.el (map--dispatch): Tighten the code.
29334         * lisp/emacs-lisp/map.el (map-put): Redefine it as a function using a
29335         `setf' with `map-elt'.
29336         * test/automated/map-tests.el: Comment out `test-map-put-literal'.
29338 2015-06-21  Michael Albinus  <michael.albinus@gmx.de>
29340         Improve error handling in tramp-adb.el
29341         * lisp/net/tramp-adb.el (tramp-adb-handle-file-local-copy):
29342         Improve error handling.
29344 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
29346         Reuse `alist-get' in map.el
29347         * lisp/emacs-lisp/map.el (map-elt): Use `alist-get' to retrieve alist
29348         elements.
29350 2015-06-21  Eli Zaretskii  <eliz@gnu.org>
29352         Fix bytecomp-tests--warnings when $TMPDIR has a long name
29353         * test/automated/bytecomp-tests.el (bytecomp-tests--warnings):
29354         Allow the warning to begin on the 3rd, not only 2nd line, which
29355         happens if temporary-file-directory has a very long name.
29357         Expect 2 icalendar tests to fail on MS-Windows
29358         * test/automated/icalendar-tests.el (icalendar-import-with-timezone)
29359         (icalendar-real-world): Make them expected failures on MS-Windows.
29361 2015-06-20  Paul Eggert  <eggert@cs.ucla.edu>
29363         Improve port of settings UI to older displays
29364         * lisp/cus-start.el (standard): Don't assume curved quotes are
29365         easily distinguishable when users are tinkering with a setting
29366         that affects how curved quotes are generated.
29368         Fix quoting in electric-quote-mode doc string
29369         * lisp/electric.el (electric-quote-mode): Fix quoting.
29370         This is a fallout from the recent change introducing
29371         ‘help-quote-translation’.
29373         Spelling fix
29375         * doc/misc/texinfo.tex, lib/set-permissions.c: Merge from gnulib.
29377         * src/doc.c (syms_of_doc): Remove unused symbols.
29379 2015-06-20  Martin Rudalics  <rudalics@gmx.at>
29381         * lisp/window.el (window-state-put): Undedicate target window
29382         before putting STATE into it.  (Bug#20848)
29384 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
29386         Merge from origin/emacs-24
29387         a5e6f33 Fixes: debbugs:20832
29388         b9f02cf Fixes: debbugs:20832
29390 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
29392         Fix file-in-directory-p when the directory is UNC
29393         * lisp/files.el (file-in-directory-p): Support files and
29394         directories that begin with "//".  (Bug#20844)
29396 2015-06-19  Stephen Berman  <stephen.berman@gmx.net>
29398         * lisp/calendar/todo-mode.el (todo-show): Don't visit todo file
29399         in the minibuffer.  (Bug#20832)
29401 2015-06-19  Nicolas Richard  <youngfrog@members.fsf.org>
29403         * lisp/calendar/todo-mode.el (todo-show): Signal an error if buffer
29404         for adding new todo file is empty but modified.  (Bug#20832)
29406 2015-06-19  Stefan Monnier  <monnier@iro.umontreal.ca>
29408         (filepos-to-bufferpos): Further tweaks to the utf-16 code
29409         * lisp/international/mule-util.el (filepos-to-bufferpos):
29410         Fix typo.  Move non-exact check to the utf-16 branch (the only one
29411         affected).  Don't use byte-to-position for the utf-16 case.
29413 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
29415         Minor fixes in filepos-to-bufferpos
29416         * lisp/international/mule-util.el (filepos-to-bufferpos): Remove
29417         test for utf-8-emacs.  Exempt single-byte encodings from the
29418         'use-exact' path when QUALITY is 'exact'.  Test UTF-16 encodings
29419         for BOM before subtracting 2 bytes.  Use 'identity' when adjusting
29420         UTF-16 encoded files for CR-LF EOLs.
29422 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
29424         Improve the optional translation of quotes
29425         Fix several problems with the recently-added custom variable
29426         help-quote-translation where the code would quote inconsistently
29427         in help buffers.  Add support for quoting 'like this', which
29428         is common in other GNU programs in ASCII environments.  Change
29429         help-quote-translation to use more mnemonic values: values are now the
29430         initial quoting char, e.g., (setq help-quote-translation ?`) gets the
29431         traditional Emacs help-buffer quoting style `like this'.  Change the
29432         default behavior of substitute-command-keys to match what's done in
29433         set-locale-environment, i.e., quote ‘like this’ if displayable,
29434         'like this' otherwise.
29435         * doc/lispref/help.texi (Keys in Documentation): Document
29436         new behavior of substitute-command-keys, and document
29437         help-quote-translation.
29438         * doc/lispref/tips.texi (Documentation Tips):
29439         Mention the effect of help-quote-translation.
29440         * etc/NEWS: Mention new behavior of substitute-command-keys,
29441         and merge help-quote-translation news into it.
29442         When talking about doc strings, mention new ways to type quotes.
29443         * lisp/cedet/mode-local.el (overload-docstring-extension):
29444         Revert my recent change to this function, which shouldn't be
29445         needed as the result is a doc string.
29446         * lisp/cedet/mode-local.el (mode-local-print-binding)
29447         (mode-local-describe-bindings-2):
29448         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
29449         * lisp/cus-theme.el (describe-theme-1):
29450         * lisp/descr-text.el (describe-text-properties-1, describe-char):
29451         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
29452         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
29453         (eieio-help-constructor):
29454         * lisp/emacs-lisp/package.el (describe-package-1):
29455         * lisp/faces.el (describe-face):
29456         * lisp/help-fns.el (help-fns--key-bindings)
29457         (help-fns--compiler-macro, help-fns--parent-mode)
29458         (help-fns--obsolete, help-fns--interactive-only)
29459         (describe-function-1, describe-variable):
29460         * lisp/help.el (describe-mode):
29461         Use substitute-command-keys to ensure a more-consistent quoting
29462         style in help buffers.
29463         * lisp/cus-start.el (standard):
29464         Document new help-quote-translation behavior.
29465         * lisp/emacs-lisp/lisp-mode.el (lisp-fdefs):
29466         * lisp/help-mode.el (help-xref-symbol-regexp, help-xref-info-regexp)
29467         (help-xref-url-regexp):
29468         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
29469         * lisp/wid-edit.el (widget-documentation-link-regexp):
29470         Also match 'foo', in case we're in a help buffer generated when
29471         help-quote-translation is ?'.
29472         * src/doc.c: Include disptab.h, for DISP_CHAR_VECTOR.
29473         (LEFT_SINGLE_QUOTATION_MARK, uLSQM0, uLSQM1, uLSQM2, uRSQM0)
29474         (uRSQM1, uRSQM2, LSQM, RSQM): New constants.
29475         (Fsubstitute_command_keys): Document and implement new behavior.
29476         (Vhelp_quote_translation): Document new behavior.
29478 2015-06-18  Glenn Morris  <rgm@gnu.org>
29480         * lisp/cus-start.el (help-quote-translation): Add :version.
29482         * src/doc.c (Fsubstitute_command_keys): Make previous change compile.
29484 2015-06-18  Alan Mackenzie  <acm@muc.de>
29486         Make translation of quotes to curly in doc strings optional.
29487         * src/doc.c (traditional, prefer-unicode): New symbols.
29488         (help-quote-translation): New variable.
29489         (Fsubstitute_command_keys): Make translation of quotes dependent on
29490         `help-quote-translation'; also translate curly quotes back to ASCII
29491         ones.
29492         * lisp/cus-start.el (top-level): Add a customization entry for
29493         `help-quote-translation'.
29495 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
29497         * lisp/emacs-lisp/package.el: Don't always propagate async errors
29498         (package--with-work-buffer-async): Only propagate the error if the
29499         callback returns non-nil.
29500         (package--download-one-archive): Return nil on the signature
29501         checking callback if we accept unsigned.
29502         (package--download-and-read-archives): Return non-nil on the
29503         archive download callback.
29505 2015-06-18  Martin Rudalics  <rudalics@gmx.at>
29507         Set image_cache_refcount before x_default_parameter calls.  (Bug#20802)
29508         * src/nsfns.m (Fx_create_frame):
29509         * src/xfns.c (Fx_create_frame, x_create_tip_frame): Move setting
29510         image_cache_refcount before first x_default_parameter call.
29512 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
29514         Improve and extend filepos-to-bufferpos
29515         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
29516         Don't barf if F returns nil for some argument.
29517         (filepos-to-bufferpos): Expand to support UTF-16 and not assume
29518         that every encoding of type 'charset' is single-byte.
29520 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
29522         * lisp/emacs-lisp/package.el (package-menu--perform-transaction):
29523         Properly delete packages.  (Bug#20836)
29525 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
29527         Update data files from just-released Unicode 8.0
29528         * etc/NEWS: Update wording since Unicode 8.0 is no longer in draft
29529         status.
29530         * test/BidiCharacterTest.txt: Update from Unicode 8.0.
29531         * admin/unidata/BidiMirroring.txt:
29532         * admin/unidata/BidiBrackets.txt:
29533         * admin/unidata/UnicodeData.txt: Update from Unicode 8.0.
29535 2015-06-18  Paul Eggert  <eggert@cs.ucla.edu>
29537         Document curved quotes a bit better
29538         * doc/emacs/basic.texi (Inserting Text):
29539         Mention C-x 8.  Change example to use curved quote rather
29540         than infinity, as this lets us give more ways to do it.
29541         * doc/emacs/mule.texi (International Chars): Mention C-x 8 shortcuts
29542         and quotation marks.
29543         * doc/emacs/text.texi (Quotation Marks):
29544         * doc/lispref/tips.texi (Documentation Tips):
29545         Add "curly quotes" and "curved quotes" to the index.
29546         * doc/emacs/text.texi (Quotation Marks):
29547         Give the C-x 8 shorthands for curved quotes.
29548         Cross-reference to "Quotation Marks".
29550 2015-06-17  Daiki Ueno  <ueno@gnu.org>
29552         Add pinentry.el for better GnuPG integration
29553         * lisp/pinentry.el: New file.
29554         * etc/NEWS: Add entry about pinentry.el.
29555         * lisp/epg.el (epg--start): Set INSIDE_EMACS envvar.
29556         (Bug#20550)
29558 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
29560         * lisp/emacs-lisp/package.el: Slightly better error reporting.
29562 2015-06-17  Stefan Monnier  <monnier@iro.umontreal.ca>
29564         (define-minor-mode): Use setq-default for :global minor modes
29565         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
29566         Use setq-default for :global minor modes (bug#20712).
29568 2015-06-17  Eli Zaretskii  <eliz@gnu.org>
29570         Avoid infloop in redisplay with tall images
29571         * src/xdisp.c (try_scrolling): Prevent an infloop when scrolling
29572         down near ZV.  (Bug#20808)
29573         Call bidi_unshelve_cache to avoid memory leaks.  Use IT_CHARPOS
29574         instead of CHARPOS.
29576 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
29578         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
29579         Fix error reporting.
29581         * lisp/emacs-lisp/let-alist.el: Move to lisp/emacs-lisp/let-alist.el
29583         * lisp/emacs-lisp/package.el: Revert buffer after any operation
29584         Call `package-menu--post-refresh' after any operation that changes
29585         the package database (`package-install' and `package-delete').  To
29586         avoid performance issues in large transactions, these functions
29587         add `post-refresh' to `post-command-hook' instead of calling it
29588         immediately.
29589         (package-menu--mark-or-notify-upgrades): New function.
29590         (list-packages): Add it to `package--post-download-archives-hook'.
29591         (package-menu--post-refresh): Lose the upgrade-checking code, add
29592         code to remove itself from `post-command-hook'.
29593         (package-install, package-delete): Add it to `post-command-hook'.
29594         (package-menu-execute): Don't call `package-menu--post-refresh'.
29596 2015-06-17  Stephen Leake  <stephen_leake@stephe-leake.org>
29598         Add missing function xref-location-group for elisp-mode.
29599         * lisp/progmodes/elisp-mode.el: Add missing function xref-location-group.
29601 2015-06-17  Wolfgang Jenkner  <wjenkner@inode.at>
29603         * src/editfns.c (Fbyte_to_position): Fix bytepos not at char boundary.
29604         The behavior now matches the description in the manual.  (Bug#20783)
29606 2015-06-17  Xue Fuqiao  <xfq.free@gmail.com>
29608         * etc/tutorials/TUTORIAL.cn: Update; synchronize with TUTORIAL.
29610 2015-06-17  Glenn Morris  <rgm@gnu.org>
29612         Generate char-script-table from Unicode source.  (Bug#20789)
29613         * admin/unidata/Makefile.in (AWK): New, set by configure.
29614         (all): Add charscript.el.
29615         (blocks): New variable.
29616         (charscript.el, ${unidir}/charscript.el): New targets.
29617         (extraclean): Also remove generated charscript.el.
29618         * admin/unidata/blocks.awk: New script.
29619         * admin/unidata/Blocks.txt: New data file, from unicode.org.
29620         * lisp/international/characters.el: Load charscript.
29621         * src/Makefile.in (charscript): New variable.
29622         (${charscript}): New target.
29623         (${lispintdir}/characters.elc): Depend on charscript.elc.
29624         (temacs$(EXEEXT)): Depend on charscript.
29626         * lisp/international/characters.el (char-script-table): Tweak
29627         some ranges to better match the source.  (Bug#20789#17)
29629         Remove "no-byte-compile: t" from a few files.
29630         * lisp/obsolete/bruce.el, lisp/obsolete/keyswap.el:
29631         * lisp/obsolete/patcomp.el: No reason not to compile these.
29633 2015-06-16  Glenn Morris  <rgm@gnu.org>
29635         Fix some typos in copied Unicode data.  (Bug#20789)
29636         * lisp/international/characters.el (char-script-table):
29637         * lisp/international/fontset.el (script-representative-chars)
29638         (setup-default-fontset): Fix typos.
29640         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
29641         Don't print filename twice (it's in the prefix now).
29643         * lisp/emacs-lisp/pcase.el (pcase--u1): Revert earlier workaround.
29644         No longer needed.
29646         Address a compilation warning.
29647         * lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-defalias):
29648         Replace 't' with '_' in pcase.
29650         Address some check-declare warnings.
29651         * lisp/simple.el (tabulated-list-print):
29652         * lisp/progmodes/elisp-mode.el (xref-collect-matches):
29653         * lisp/term/ns-win.el (ns-selection-owner-p, ns-selection-exists-p)
29654         (ns-get-selection): Update declarations.
29656         Address some compilation warnings.
29657         * lisp/elec-pair.el (electric-pair-post-self-insert-function):
29658         * lisp/vc/vc-git.el (vc-git-file-type-as-string):
29659         Replace 't' with '_' in pcase.
29661         Address some compilation warnings.
29662         * lisp/face-remap.el (text-scale-adjust):
29663         * lisp/menu-bar.el (popup-menu-normalize-position):
29664         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand):
29665         * lisp/emacs-lisp/bytecomp.el (byte-compile-arglist-warn):
29666         * lisp/emacs-lisp/generator.el (cps--transform-1):
29667         * lisp/emacs-lisp/macroexp.el (macroexp--expand-all):
29668         * lisp/obsolete/vc-arch.el (vc-arch-mode-line-string):
29669         * lisp/progmodes/octave.el (octave-goto-function-definition)
29670         (octave-find-definition-default-filename):
29671         Replace 't' with '_' in pcase.
29673         * lisp/emacs-lisp/pcase.el (pcase--u1):
29674         Paper-over today's bootstrap failure.
29676 2015-06-16  Nicolas Petton  <nicolas@petton.fr>
29678         * lisp/emacs-lisp/seq.el: Fix a byte-compiler warnings related to pcase.
29680         * lisp/emacs-lisp/map.el (map-into): Fix a byte-compiler warning.
29682         Better confirmation message in `find-alternate-file' (Bug#20830)
29683         * lisp/files.el (find-alternate-file'): Improve the confirmation
29684         message to show the buffer name.
29686         Better docstring for null.  (Bug#20815)
29687         * src/data.c (null): Improves the docstring, saying what null returns
29688         when OBJECT is non-nil.
29690 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
29692         * lisp/net/newst-treeview.el: Use lexical-binding.
29694         (filepos-to-bufferpos): Add missing cases.  Make sure it terminates.
29695         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
29696         New auxiliary function, extracted from filepos-to-bufferpos.
29697         Make sure it terminates.
29698         (filepos-to-bufferpos): Use it to fix the latin-1-dos case.
29699         Add support for the `exact' quality.
29701 2015-06-16  Cédric Chépied  <cedric.chepied@gmail.com>
29703         Identify feeds in newsticker treeview with :nt-feed property
29704         * lisp/net/newst-treeview.el:
29705         (newsticker--treeview-nodes-eq): Use property :nt-feed instead of :tag.
29707 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
29709         * lisp/emacs-lisp/pcase.el: Improve docs and error handling.
29710         (pcase--self-quoting-p): Floats aren't self-quoting.
29711         (pcase): Tweak docstring.
29712         (pcase--u1): Deprecate the t pattern.  Improve error detection for
29713         the nil pattern.
29714         (\`): Tweak docstring.  Signal an error for unrecognized cases.
29715         (bug#20784)
29717 2015-06-16  Eli Zaretskii  <eliz@gnu.org>
29719         Fix infloop in filepos-to-bufferpos
29720         * lisp/international/mule-util.el (filepos-to-bufferpos): Fix EOL
29721         offset calculation, and make it conditional on the eol-type of the
29722         file's encoding.  (Bug#20825)
29724 2015-06-16  Martin Rudalics  <rudalics@gmx.at>
29726         Fix handling of image cache refcounts.  (Bug#20802)
29727         This backports Eli Zaretskii's solution of this problem for W32
29728         to X and NS.
29729         * src/nsfns.m (image_cache_refcount): Define unconditionally.
29730         (unwind_create_frame): If the image cache's reference count
29731         hasn't been updated yet, do that now.
29732         (Fx_create_frame): Set image_cache_refcount unconditionally.
29733         * src/xfns.c (image_cache_refcount): Define unconditionally.
29734         (unwind_create_frame): If the image cache's reference count
29735         hasn't been updated yet, do that now.
29736         (Fx_create_frame, x_create_tip_frame): Set image_cache_refcount
29737         unconditionally.
29738         * src/w32fns.c (image_cache_refcount): Make it a ptrdiff_t as on
29739         X and NS.
29741 2015-06-16  Nils Ackermann  <nils@ackermath.info>
29743         Improve reftex-label-regexps default value
29744         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Make
29745         keyvals label regexp more strict to better cope with unbalanced
29746         brackets common in math documents.
29748 2015-06-16  Glenn Morris  <rgm@gnu.org>
29750         * doc/emacs/calendar.texi (Format of Diary File):
29751         Move "nonmarking" from here...
29752         (Displaying the Diary): ... to here.
29754         * doc/emacs/calendar.texi (Format of Diary File, Displaying the Diary):
29755         Swap the order of these nodes.
29756         * doc/emacs/emacs.texi: Update detailed menu for the above change.
29758         * doc/emacs/calendar.texi (Specified Dates, Special Diary Entries):
29759         Update date of examples.
29760         (Diary, Format of Diary File): Move example from former to latter.
29761         Reduce duplication.
29763         No need for cp51932.el, eucjp-ms.el to not be compiled any more.
29764         * admin/charsets/cp51932.awk, admin/charsets/eucjp-ms.awk:
29765         Don't set no-byte-compile in the outputs.
29766         * lisp/loadup.el: Don't specify uncompiled cp51932, eucjp-ms.
29768 2015-06-15  Glenn Morris  <rgm@gnu.org>
29770         * lisp/calendar/calendar.el (diary-file): Use locate-user-emacs-file.
29771         * doc/emacs/calendar.texi (Diary, Format of Diary File):
29772         Update for above diary-file change.
29774         * lisp/macros.el (name-last-kbd-macro, kbd-macro-query)
29775         (apply-macro-to-region-lines): Use user-error.
29777         * lisp/textmodes/page-ext.el (add-new-page, pages-directory)
29778         (pages-directory-for-addresses): Doc fixes.
29780 2015-06-15  Stefan Monnier  <monnier@iro.umontreal.ca>
29782         * lisp/info.el: Cleanup bytepos/charpos issues
29783         * lisp/international/mule-util.el: Use lexical-binding.
29784         (filepos-to-bufferpos): New function.
29785         * lisp/info.el (Info-find-in-tag-table-1): Use 0-based file positions.
29786         (Info-find-node-2): Use filepos-to-bufferpos (bug#20704).
29787         (Info-read-subfile, Info-search): Use 0-based file positions.
29789         * lisp/progmodes/perl-mode.el: Refine handling of /re/ and y/abc/def/
29790         (perl--syntax-exp-intro-keywords): New var.
29791         (perl--syntax-exp-intro-regexp, perl-syntax-propertize-function): Use it.
29792         (bug#20800).
29794 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
29796         Fix quoting when making derived mode docstring
29797         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
29798         Nest regexp-quote inside format, not the reverse.
29799         Problem reported by Artur Malabarba in:
29800         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00206.html
29802 2015-06-15  Eli Zaretskii  <eliz@gnu.org>
29804         Fix current-iso639-language on MS-Windows
29805         * lisp/international/mule-cmds.el (set-locale-environment):
29806         Downcase the locale name before interning it.  This is so the
29807         'current-iso639-language' on MS-Windows matches the ':lang'
29808         property of font-spec objects.
29810         Limit Symbola usage some more
29811         * lisp/international/fontset.el (setup-default-fontset): Limit
29812         Symbol coverage of Currency Symbols to u+20B6..u+20CF.
29813         (Bug#20727)
29815 2015-06-15  Nicolas Petton  <nicolas@petton.fr>
29817         * lisp/emacs-lisp/map.el (map-let): Better docstring.
29819 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
29821         * test/automated/help-fns.el (abc\\\[universal-argument\]b\`c\'d\\e\"f):
29822         (help-fns-test-funny-names): Spelling fixes.
29824 2015-06-14  Glenn Morris  <rgm@gnu.org>
29826         * lisp/version.el (emacs-repository-version-git): Demote errors.
29827         Check result is a hash.
29829 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
29831         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
29832         Catch errors that happen before going async.  (Bug#20809)
29834 2015-06-14  Eli Zaretskii  <eliz@gnu.org>
29836         Another improvement of documentation of set-fontset-font
29837         * doc/lispref/display.texi (Fontsets): Say explicitly that
29838         CHARACTER can be a single codepoint.
29839         * src/fontset.c (Fset_fontset_font): Doc fix.
29841         Another improvement for symbol and punctuation characters
29842         * lisp/international/fontset.el (setup-default-fontset): Exclude
29843         from Symbola character ranges for symbols and punctuation covered
29844         well by popular Unicode fonts.  Prefer fixed-misc Unicode font, if
29845         installed and where its coverage of symbols and punctuation is
29846         known to be good.  (Bug#20727)
29848 2015-06-14  Christoph Wedler  <christoph.wedler@sap.com>
29850         Some generic support for multi-mode indentation.
29851         * lisp/progmodes/prog-mode.el (prog-indentation-context):
29852         New variable.
29853         (prog-first-column, prog-widen): New convenience functions.
29855 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
29857         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
29858         Don't assume that `tabulated-list-printer' will leave point at the
29859         end of the buffer.  (Bug#20810)
29861 2015-06-13  Glenn Morris  <rgm@gnu.org>
29863         Tweaks for getting repository version; a bit more like it was for bzr
29864         * lisp/version.el (emacs-repository-version-git)
29865         (emacs-repository--version-git-1): New functions,
29866         split from emacs-repository-get-version.
29867         (emacs-repository-get-version): Make the second argument meaningful.
29869         * lisp/startup.el (command-line-1): Inform if skipping relative
29870         file names due to deleted PWD.
29872         * src/xsmfns.c (x_session_initialize): Avoid libSM crash
29873         when starup directory is missing.  (Bug#18851)
29874         (errno.h): Include it.
29876 2015-06-13  Paul Eggert  <eggert@cs.ucla.edu>
29878         Better fix for documenting `X as "`X"
29879         Fix suggested by Stefan Monnier.
29880         * lisp/help-fns.el (help-fns--signature):
29881         Insert "`X", not "(\` X)", when documenting `X (Bug#20759).
29882         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
29883         Don't treat `X specially, as help-fns--signature now handles this.
29885 2015-06-13  Eli Zaretskii  <eliz@gnu.org>
29887         Improve the default fontset when Symbola is not installed
29888         * lisp/international/fontset.el (setup-default-fontset): Only
29889         prepend Symbola and FreeMono font specs for symbols and
29890         punctuation; do not replace the default spec for them.  This
29891         should have better results when Symbola/FreeMono are not
29892         installed.  (Bug#20727)
29894         Improve documentation of ':lang' in font specs
29895         * src/font.c (Ffont_spec): Doc fix: elaborate on the values and
29896         use of the ':lang' property of the font spec.
29897         * doc/emacs/frames.texi (Fonts): Document the language names that
29898         can be in the STYLE part of XLFD.
29899         * doc/lispref/display.texi (Low-Level Font): Document the ':lang'
29900         property.
29902         * nt/README: Don't advertise the (obsolescent) w32 FAQ.
29904         * nt/README.W32: Don't advertise the (obsolescent) w32 FAQ.
29906         Revert last change in fontset.el
29907         * lisp/international/fontset.el (setup-default-fontset): Revert
29908         the change "Configure Symbola font only if installed", since font
29909         search is evidently not yet set up when this function is called.
29910         (Bug#20727)
29912 2015-06-12  Glenn Morris  <rgm@gnu.org>
29914         Ensure early startup warnings are visible at the end.  (Bug#20792)
29915         * lisp/emacs-lisp/warnings.el (display-warning):
29916         If startup isn't complete, delay the warning.
29917         * lisp/startup.el (normal-top-level, command-line):
29918         Let display-warning automatically handle the needed delays.
29919         Run delayed-warnings-hook.
29921         * lisp/version.el (emacs-repository-get-version):
29922         Avoid calling external executable if possible.  (Bug#20799)
29924 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
29926         Document `X as "`X", not as "(` X)"
29927         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
29928         Document (backquote FOO) as "`FOO", not as "(` FOO)" (Bug#20759).
29930         * src/print.c (print_object): Minor simplification.
29932 2015-06-12  Glenn Morris  <rgm@gnu.org>
29934         * src/buffer.c (init_buffer): Add final newline to message.
29936 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
29938         Configure Symbola font only if installed
29939         * lisp/international/fontset.el (setup-default-fontset):
29940         Don't specify the Symbola font if it's not installed.
29941         Likewise for FreeMono.  (Bug#20727)
29943 2015-06-12  Eli Zaretskii  <eliz@gnu.org>
29945         Configure Symbola font only for symbols and punctuation
29946         * lisp/international/fontset.el (setup-default-fontset): Leave
29947         only symbols and punctuation in the fontset setup for Symbola
29948         font; remove "Greek and Coptic" and "Cyrillic Supplement".
29949         (Bug#20798)
29951 2015-06-12  Andreas Schwab  <schwab@linux-m68k.org>
29953         Fix crash in fontset-info
29954         * src/fontset.c (Ffontset_info): Check that the RFONT-DEF elt is
29955         non-nil.
29957 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
29959         Port to Solaris 10 sparc + Sun C 5.13
29960         * configure.ac (SETUP_SLAVE_PTY) [sol2* | unixware]:
29961         Adjust to process.c change.
29962         * src/process.c (create_process): Declare volatile variables at
29963         top level of this function, so that they're less likely to be
29964         reused later in the function in the code executed by the vforked
29965         child.  Do not declare locals used only in the vforked child, as
29966         they might share memory with locals still live in the parent.
29967         Instead, use the same variables in the child as in the parent.
29968         This works around a subtle bug that causes a garbage collector
29969         crash when Emacs is built with Sun C 5.13 sparc on Solaris 10.
29971 2015-06-12  Glenn Morris  <rgm@gnu.org>
29973         * lisp/startup.el (normal-top-level): Don't let *Messages* get
29974         a nil default-directory.
29976 2015-06-11  Glenn Morris  <rgm@gnu.org>
29978         * lisp/startup.el (normal-top-level): Use delay-warning.  (Bug#20792)
29980         Some progress towards starting with PWD deleted.  (Bug#18851)
29981         * src/buffer.c (init_buffer): Handle get_current_dir_name failures.
29982         * lisp/startup.el (normal-top-level, command-line-1):
29983         * lisp/minibuffer.el (read-file-name-default):
29984         Handle default-directory being nil.
29986 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
29988         Fix "not a tty" bug on Solaris 10
29989         * configure.ac (PTY_OPEN): Define to plain 'open'
29990         on SVR4-derived hosts, so that the O_CLOEXEC flag isn't set.
29991         * src/process.c (allocate_pty): Set the O_CLOEXEC flag after
29992         calling PTY_TTY_NAME_SPRINTF, for the benefit of SVR4-derived
29993         hosts that call grantpt which does its work via a setuid subcommand
29994         (Bug#19191, Bug#19927, Bug#20555, Bug#20686).
29995         Also, set O_CLOEXEC even if PTY_OPEN is not defined, since it
29996         seems relevant in that case too.
29998 2015-06-11  Juri Linkov  <juri@linkov.net>
30000         * lisp/bindings.el (debug-ignored-errors): Add mark-inactive.
30001         * lisp/simple.el (kill-region): Replace 'error' with 'user-error'.
30002         (Bug#20785)
30004 2015-06-11  Glenn Morris  <rgm@gnu.org>
30006         * lisp/international/characters.el (char-script-table): Fix typo.
30008 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
30010         Fix quoting of help for functions with odd names
30011         While investigating Bug#20759, I discovered other quoting problems:
30012         C-h f mishandled characters like backslash and quote in function names.
30013         This fix changes the behavior so that 'C-h f pcase RET' now
30014         generates "... (\` QPAT) ..." instead of "... (` QPAT) ...",
30015         because '(format "%S" '(` FOO))' returns "(\\` FOO)".  A comment
30016         in src/lread.c's read1 function says that the backslash will be
30017         needed starting in Emacs 25, which implies that 'format' is
30018         correct and the old pcase documention was wrong to omit the backslash.
30019         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
30020         * lisp/help-fns.el (help-fns--signature):
30021         * lisp/help.el (help-add-fundoc-usage):
30022         * lisp/progmodes/elisp-mode.el (elisp-function-argstring):
30023         Use help--make-usage-docstring rather than formatting
30024         help-make-usage.
30025         * lisp/emacs-lisp/pcase.el (pcase--make-docstring):
30026         Return raw docstring.
30027         * lisp/help-fns.el (help-fns--signature): New arg RAW, to return
30028         raw docstring.  Take more care to distinguish raw from cooked dstrings.
30029         (describe-function-1): Let help-fns--signature substitute
30030         command keys.
30031         * lisp/help.el (help--docstring-quote): New function.
30032         (help-split-fundoc): Use it, to quote funny characters more
30033         systematically.
30034         (help--make-usage): Rename from help-make-usage, since this
30035         should be private.  Leave an obsolete alias for the old name.
30036         (help--make-usage-docstring): New function.
30037         * test/automated/help-fns.el (help-fns-test-funny-names): New test.
30039 2015-06-11  Stefan Monnier  <monnier@iro.umontreal.ca>
30041         * lisp/thingatpt.el (in-string-p): Revert last change,
30042         since in-string-p is not used in thingatpt.el but only from outside.
30043         Also, use lexical binding.
30045 2015-06-11  Artur Malabarba  <bruce.connor.am@gmail.com>
30047         * lisp/emacs-lisp/let-alist.el (let-alist--deep-dot-search): Fix cons.
30048         * test/automated/let-alist.el (let-alist-cons): Test it.
30050 2015-06-11  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
30052         * src/syntax.c (Fbackward_prefix_chars): Reword docstring.
30054 2015-06-10  Glenn Morris  <rgm@gnu.org>
30056         * build-aux/gitlog-to-emacslog: Also ignore pointless merge commits.
30058         Improve generated ChangeLog for gitmerge.el commits.  (Bug#20717)
30059         * build-aux/gitlog-to-changelog: Handle gitmerge.el skipped commits.
30060         * admin/gitmerge.el (gitmerge-commit-message):
30061         Exclude "skipped" messages from ChangeLog once again.
30063         Slight namespace cleanup for thingatpt.el.
30064         * lisp/thingatpt.el (thing-at-point--in-string-p)
30065         (thing-at-point--end-of-sexp, thing-at-point--beginning-of-sexp)
30066         (thing-at-point--read-from-whole-string): Rename from
30067         old versions without "thing-at-point--" prefix.
30068         Keep old versions as obsolete aliases.  Update all uses.
30070         * lisp/emacs-lisp/checkdoc.el (checkdoc-get-keywords):
30071         Move requiring of finder from here...
30072         (checkdoc-package-keywords): ... to here.
30074         Use 'user-error' in a few calendar files.
30075         * lisp/calendar/appt.el (appt-add):
30076         * lisp/calendar/calendar.el (calendar-absolute-from-gregorian)
30077         (calendar-generate):
30078         * lisp/calendar/diary-lib.el (diary-mail-entries, diary-cyclic):
30079         Replace 'error' with 'user-error'.
30081         * lisp/progmodes/f90.el (f90-backslash-not-special): Use user-error.
30083         * lisp/files-x.el (add-file-local-variable):
30084         Special-case 'lexical-binding'.  (Bug#20641)
30086         * lisp/progmodes/executable.el (executable-self-display): Obsolete.
30087         No longer autoload.
30088         * doc/misc/autotype.texi (Executables):
30089         Undocument executable-self-display.
30091         * lisp/progmodes/executable.el (executable-self-display):
30092         Use non-obsolete tail syntax.  (Bug#20779)
30093         (executable-self-display): Doc update.
30095 2015-06-10  Stefan Monnier  <monnier@iro.umontreal.ca>
30097         * lisp/emacs-lisp/checkdoc.el: Use lexical-binding
30098         (finder-known-keywords): Silence byte-compiler.
30100 2015-06-09  Stefan Monnier  <monnier@iro.umontreal.ca>
30102         * lisp/simple.el (eval-expression): Macroexpand before evaluating
30103         (bug#20730).
30105         * lisp/progmodes/sh-script.el: Better handle nested quotes.
30106         (sh-here-doc-open-re): Don't mis-match the <<< operator (bug#20683).
30107         (sh-font-lock-quoted-subshell): Make sure double quotes within single
30108         quotes don't mistakenly end prematurely the surrounding string.
30110         * lisp/progmodes/elisp-mode.el: Require cl-lib for cl-defstruct.
30112 2015-06-09  Glenn Morris  <rgm@gnu.org>
30114         * test/automated/Makefile.in (ELFILES): Sort.
30116         * Makefile.in (SUBDIR_MAKEFILES):
30117         * lwlib/Makefile.in (WARN_CFLAGS):
30118         Use built-in Make functions rather than echo+sed.
30120 2015-06-09  Eli Zaretskii  <eliz@gnu.org>
30122         Update char-script-table
30123         * lisp/international/characters.el (char-script-table): Update
30124         from Unicode 8.0 Draft.
30126         Improve font selection for punctuation and other symbols
30127         * src/fontset.c (face_for_char): If the character's script is
30128         'symbol', and the font used for ASCII face has a glyph for it, use
30129         the font for the ASCII face instead of searching the fontsets.
30130         This comes instead of NS-specific code that used the current
30131         face's font instead, which is now disabled due to undesirable
30132         consequences.  (Bug#20727)
30134 2015-06-08  Dmitry Gutov  <dgutov@yandex.ru>
30136         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
30137         Skip past `#' to find BEG (bug#20771).
30138         * test/automated/elisp-mode-tests.el
30139         (elisp-completes-functions-after-hash-quote): New test.
30141 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
30143         Fix compilation warning/error in --without-x builds
30144         * src/xdisp.c (append_space_for_newline): Condition GUI-specific
30145         code on HAVE_WINDOW_SYSTEM.
30147         Improve the default fontset wrt symbols
30148         * lisp/international/fontset.el (setup-default-fontset): Better
30149         setup of fontset-default for symbols: use Symbola and FreeMono.
30150         (Bug#20727)
30152 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
30154         Add new command checkdoc-package-keywords
30155         * lisp/emacs-lisp/checkdoc.el (checkdoc-package-keywords-flag):
30156         New defcustom.
30157         (checkdoc-list-of-strings-p): Add doc.
30158         (checkdoc-current-buffer): When `checkdoc-package-keywords-flag' is
30159         non-nil, call `checkdoc-package-keywords'.
30160         (checkdoc-get-keywords): New defun.
30161         (checkdoc-package-keywords): New command.  Warns if the current file
30162         has package.el-style keywords that aren't in `finder-known-keywords'.
30163         * etc/NEWS: Add entry.
30165 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
30167         Avoid crashes when key-binding is called from a timer
30168         * src/keymap.c (Fkey_binding): Don't segfault if called with an
30169         empty vector as KEY.  (Bug#20705)
30171         Fix a thinko in arc-mode.el
30172         * lisp/arc-mode.el (archive-zip-summarize): Fix last change in the
30173         non-Zip64 case.  (Bug#20769)
30175 2015-06-08  Artur Malabarba  <bruce.connor.am@gmail.com>
30177         * lisp/emacs-lisp/package.el (package-delete): Make interactive.
30179 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
30181         * lisp/emacs-lisp/checkdoc.el (checkdoc-file): New function.
30182         (checkdoc-error): When `checkdoc-diagnostic-buffer' is set to
30183         "*warn*", print the warning to the standard output.  (bug#20754)
30185 2015-06-07  Glenn Morris  <rgm@gnu.org>
30187         * admin/update_autogen (changelog_files): Remove gitlog-to-emacslog.
30189         * src/font.c (syms_of_font) <font-log>: Doc fix.
30191         Remove the obsolete leading "*" from some C doc strings.
30192         * src/coding.c (syms_of_coding):
30193         * src/font.c (syms_of_font): Remove leading "*" from docs.
30194         * lisp/cus-start.el (enable-character-translation): Add it.
30196 2015-06-07  Paul Eggert  <eggert@cs.ucla.edu>
30198         Move gen_origin from program to data
30199         That way, 'make change-history' needs to change only ChangeLog.2,
30200         instead of having to change two files.
30201         * ChangeLog.2: Add commit info for range that this file covers.
30202         * Makefile.in (new_commit_regexp): New macro.
30203         (change-history-nocommit): Simplify, by putting what used to be
30204         the gen_origin value into the data (ChangeLog.2) rather than
30205         into the program (gitlog-to-emacslog).
30206         * build-aux/gitlog-to-emacslog (gen_origin): Calculate from
30207         the input file (e.g., ChangeLog.2) rather than by having a
30208         constant in the program.  Substitute it into the output.
30210 2015-06-07  Dmitry Gutov  <dgutov@yandex.ru>
30212         * lisp/help-fns.el (help-fns--signature): Quote any quotes in the
30213         function name (bug#20759).
30215 2015-06-07  Eli Zaretskii  <eliz@gnu.org>
30217         Adapt 'struct timespec' to next release of MinGW runtime
30218         * nt/inc/ms-w32.h (struct timespec): Don't declare if
30219         __struct_timespec_defined is defined.
30221 2015-06-06  Paul Eggert  <eggert@cs.ucla.edu>
30223         Merge from gnulib
30224         This incorporates:
30225         2015-06-06 acl-permissions: pacify -Wsuggest-attribute=const
30226         2015-06-05 stdio: Don't redefine gets when using C++
30227         2015-06-05 acl-permissions: port to AIX, C89 HP-UX
30228         2015-06-02 file-has-acl: fix build on Mac OS X 10
30229         2015-06-01 gnulib-tool: concatenate lib_SOURCES to a single line
30230         2015-06-01 pthread_sigmask: discount system version if a simple macro
30231         2015-05-31 readlinkat: avoid OS X 10.10 trailing slash bug
30232         * doc/misc/texinfo.tex, lib/acl-internal.h, lib/get-permissions.c:
30233         * lib/readlinkat.c, lib/set-permissions.c, lib/stdio.in.h:
30234         * m4/acl.m4, m4/pthread_sigmask.m4, m4/readlinkat.m4: Copy from gnulib.
30235         * lib/gnulib.mk: Regenerate.
30237 2015-06-06  Juri Linkov  <juri@linkov.net>
30239         * lisp/progmodes/grep.el (zrgrep): Let-bind grep-highlight-matches
30240         before calling grep-compute-defaults because now it affects the
30241         command lines computed in grep-compute-defaults.  (Bug#20728)
30243 2015-06-06  Glenn Morris  <rgm@gnu.org>
30245         Address some compilation warnings.
30246         * lisp/international/mule-cmds.el (w32-get-console-codepage)
30247         (w32-get-console-output-codepage):
30248         * lisp/progmodes/elisp-mode.el (xref-collect-references):
30249         * lisp/version.el (cairo-version-string): Declare.
30250         * lisp/erc/erc.el (erc-nickname-in-use): Fix typo.
30252 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
30254         Fix display when a font claims large values of ascent and descent
30255         This fixes bug#20628.
30256         * src/xdisp.c (get_phys_cursor_geometry): Correct the Y
30257         coordinate of a hollow cursor glyph when the original glyph's
30258         ascent is too small.
30259         (get_font_ascent_descent, normal_char_ascent_descent)
30260         (normal_char_height): New functions.
30261         (handle_single_display_spec, append_space_for_newline)
30262         (calc_pixel_width_or_height, produce_stretch_glyph)
30263         (calc_line_height_property): Use normal_char_ascent_descent and
30264         normal_char_height.
30265         (x_produce_glyphs): When font-global values of ascent and descent
30266         are too large, use per-character glyph metrics instead, if
30267         possible.  But don't allow the glyph row's ascent and descent
30268         values become smaller than the values from the metrics of the
30269         font's "normal" character.
30270         * src/xftfont.c (xftfont_draw):
30271         * src/w32font.c (w32font_draw): Correct the values of ascent and
30272         descent used to draw glyphless characters' hex code in a box.
30273         * src/xterm.c (x_draw_glyph_string_background):
30274         * src/xdisp.c (x_produce_glyphs):
30275         * src/w32term.c (x_draw_glyph_string_background):
30276         * src/nsterm.m (ns_maybe_dumpglyphs_background): Use FONT_TOO_HIGH
30277         to detect fonts whose global ascent and descent values are too
30278         large to be used in layout decision, and redraw the background
30279         when that happens.
30280         * src/dispextern.h (FONT_TOO_HIGH): New macro.
30281         (get_font_ascent_descent): Add prototype.
30282         * src/xterm.c (x_new_font):
30283         * src/w32term.c (x_new_font):
30284         * src/nsterm.m (x_new_font):
30285         * src/font.c (font_open_entity):
30286         * src/composite.c (composition_gstring_width):
30287         Use get_font_ascent_descent to obtain reasonable values for ascent
30288         and descent of a font.
30290 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
30292         Add assertion in adjust_point_for_property
30293         * src/keyboard.c (adjust_point_for_property): Add eassert for
30294         current buffer being shown in selected window.
30296 2015-06-06  Dmitry Gutov  <dgutov@yandex.ru>
30298         Replace uses of in-string-p; make it obsolete
30299         * lisp/thingatpt.el (in-string-p): Declare obsolete (bug#20732).
30300         (end-of-sexp, beginning-of-sexp): Use syntax-ppss instead.
30302 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
30304         Fix Dired display of an explicit list of files by ls-lisp.el
30305         * lisp/ls-lisp.el (ls-lisp-uid-d-fmt, ls-lisp-uid-s-fmt)
30306         (ls-lisp-gid-d-fmt, ls-lisp-gid-s-fmt): Make the initial values be
30307         correct for when displaying individual files separately, not as
30308         part of listing a directory, in which case these values are not
30309         recomputed by 'ls-lisp-insert-directory', but used verbatim.
30311         * lisp/dired.el (dired): Doc fix.  (Bug#20739)
30313 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
30315         Do not adjust point in a non-selected window
30316         * src/keyboard.c (command_loop_1): Do not adjust point when
30317         current buffer is not shown in selected window (Bug#20590).
30319         * etc/DEBUG: Mention 'maybe_call_debugger'
30321 2015-06-05  Nicolas Petton  <nicolas@petton.fr>
30323         Fix a unit test for map.el
30324         * test/automated/map-tests.el (test-map-let): Fix the test to work
30325         with the new syntax of `map-let'.
30327         * lisp/emacs-lisp/map.el (map-let): Better docstring.
30329         Better syntax for the map pcase pattern
30330         * lisp/emacs-lisp/map.el: Improves the map pcase pattern to take
30331         bindings of the form (KEY PAT) or SYMBOL.  KEY is not quoted.
30333         * lisp/emacs-lisp/map.el (map--dispatch): Better docstring.
30335         Fix a byte-compiler error in map-put and map-delete
30336         * lisp/emacs-lisp/map.el (map-put, map-delete): Ensure that `setq' is
30337         called with a symbol.
30339 2015-06-05  Glenn Morris  <rgm@gnu.org>
30341         * admin/gitmerge.el (gitmerge-commit-message):
30342         Revert to including "skipped" messages in ChangeLog once again.
30344 2015-06-05  Tassilo Horn  <tsdh@gnu.org>
30346         Use string> instead of equiv lambda with string<
30347         * lisp/help.el (view-emacs-news): Use string> instead of equivalent
30348         lambda with string<.
30350 2015-06-05  Glenn Morris  <rgm@gnu.org>
30352         * lisp/emacs-lisp/map.el (map--dispatch): Move before use.
30353         (map--delete-array): Fix typo.
30355         * test/automated/map-tests.el: Replace "assert" with "should".
30357         * lisp/Makefile.in (SUBDIRS): Rename from SUBDIRS_ABS.
30358         (SUBDIRS_REL): Derive from SUBDIRS.
30360         Tweak some build messages.
30361         * lisp/Makefile.in ($(lisp)/loaddefs.el):
30362         * lisp/cus-dep.el (custom-make-dependencies):
30363         * lisp/finder.el (finder-compile-keywords): Say what we are doing.
30364         * lisp/international/titdic-cnv.el (batch-titdic-convert):
30365         Don't say how to compile.
30367 2015-06-05  Paul Eggert  <eggert@cs.ucla.edu>
30369         Omit U+0332 COMBINING LOW LINE in previous change
30370         It turns out that it does not work on Ubuntu 15.04.
30372         Fix transliteration of Bahá'í months
30373         * lisp/calendar/cal-bahai.el (calendar-bahai-month-name-array):
30374         Improve quality of Latin transliteration of Bahá'í month names.
30376         Fix curved quotes in a few places
30377         * lisp/calc/calc-misc.el (calc-help): Fix quoting.
30378         The strings in question are not doc strings, so this partially
30379         undoes the recent change that assumed they were doc strings.
30380         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
30381         * lisp/info.el (Info-finder-find-node):
30382         Use curved quotes.
30383         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
30384         Also allow curved quotes in doc strings.
30386 2015-06-04  Glenn Morris  <rgm@gnu.org>
30388         * lisp/Makefile.in (AM_V_at): Add missing definition.
30390         * lisp/Makefile.in: Quieten output a bit.
30391         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el):
30392         Don't echo directories, since the commands we invoke print them.
30394         * lisp/Makefile.in: Replace shell fragments in variables with $(shell).
30395         (SUBDIRS_REL, SUBDIRS_ABS, SUBDIRS_ALMOST, SUBDIRS_FINDER)
30396         (SUBDIRS_SUBDIRS): New variables.
30397         (setwins, setwins_almost, setwins_finder, setwins_for_subdirs):
30398         Remove.
30399         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el, $(lisp)/loaddefs.el)
30400         (update-subdirs, compile-main, compile-clean):
30401         Replace "setwins" usage with new "SUBDIRS" variables.
30403         * lisp/vc/compare-w.el (compare-windows-get-window-function):
30404         Fix :version tag.
30406 2015-06-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
30408         * src/ftfont.c (ftfont_open2): Round divisions by upEM.
30410         Undo removal of x_clear_area call on expose for GTK3 or cairo
30411         * src/xterm.c (handle_one_xevent) [HAVE_GTK3 || USE_CAIRO]:
30412         Clear exposed area.  (Bug#20677)
30414 2015-06-04  Glenn Morris  <rgm@gnu.org>
30416         * doc/lispref/hash.texi (Creating Hash): Remove obsolete makehash.
30418         * lisp/Makefile.in (check-defun-dups): Also skip ldefs-boot.
30420         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
30421         Rename from quail-lao-update-translation, since lao.el defines that.
30423 2015-06-04  Dmitry Gutov  <dgutov@yandex.ru>
30425         Handle new-style advice in find-funct
30426         * lisp/emacs-lisp/find-func.el (find-function-advised-original):
30427         Handle new-style advice.  Return the symbol's function definition.
30428         (Bug#20718)
30429         (find-function-library): Update accordingly.
30431 2015-06-04  Nicolas Petton  <nicolas@petton.fr>
30433         Merge branch 'map'
30435         * lisp/emacs-lisp/map.el: Better docstring for the map pcase macro.
30437         Add new function string-greaterp
30438         * lisp/subr.el (string-greaterp): New function.  Also aliased to
30439         `string>'.
30440         * test/automated/subr-tests.el (string-comparison-test): Add unit
30441         tests for `string>'and `string<'.
30442         * src/fns.c (string-lessp): Better docstring.
30444 2015-06-04  Eli Zaretskii  <eliz@gnu.org>
30446         Fix timezone-related functions on MS-Windows
30447         * src/editfns.c (set_time_zone_rule) [WINDOWSNT]: Always call
30448         'xputenv', even if no reallocation of tzvalbuf was necessary.
30449         This fixes a bug in timezone-related functions on MS-Windows.
30450         Reported by Fabrice Popineau <fabrice.popineau@gmail.com>.
30452 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
30454         Don't pass raw directory name to 'error'
30455         * lisp/files.el (basic-save-buffer-2): Avoid format error if
30456         a directory name contains a string like "%s".
30458 2015-06-03  Dmitry Gutov  <dgutov@yandex.ru>
30460         Override 'grep --color=always'
30461         * lisp/progmodes/xref.el (xref-collect-matches):
30462         Override --color=always in grep-find-template.
30464 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
30466         Fix error introduced recently in file-notify-tests.el
30467         * test/automated/file-notify-tests.el
30468         (file-notify--test-remote-enabled): Do not use `file-notify--test-desc'.
30469         (file-notify--deftest-remote): Revert previous patch, not
30470         necessary anymore.
30472 2015-06-03  Wolfgang Jenkner  <wjenkner@inode.at>
30474         * src/indent.c (Fvertical_motion): Amend motion by 0 lines.
30475         Starting from a display string after a newline, point went to the
30476         previous line.  Also, fix an inadvertent use of a buffer position
30477         with FETCH_BYTE.  (Bug#20701)
30479 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
30481         Instrument file-notify-test.el in order to catch hydra error
30482         * test/automated/file-notify-tests.el (file-notify--deftest-remote):
30483         Wrap body by `ignore-case', in order to trap non-local errors.
30485 2015-06-03  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
30487         Undo previous changes in non-toolkit scroll bar drawing
30488         * src/xterm.c (x_scroll_bar_set_handle, x_scroll_bar_expose)
30489         [!USE_TOOLKIT_SCROLL_BARS]: Draw into scroll bar window.  (Bug#20668)
30491 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
30493         * .gitignore: Also ignore doc/*/*/*.html and .ps.
30495         Support quotes 'like this' in info files
30496         This is possible when 'makeinfo --disable-encoding' is used
30497         in Texinfo 5.
30498         * lisp/calc/calc-help.el (calc-describe-thing):
30499         * lisp/gnus/gnus-art.el (gnus-button-alist):
30500         * lisp/info.el (Info-find-index-name):
30501         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
30502         Also support quotes 'like this'.
30503         * lisp/calc/calc-help.el (calc-describe-thing): Simplify.
30504         * lisp/finder.el (finder-font-lock-keywords): Remove var that
30505         hasn't been used in years, instead of bothering to fix its quoting.
30507 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
30509         * .gitignore: Remove !test/etags/html-src/*.html.
30510         It's no longer needed, since *.html was removed.  Sort.
30512 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
30514         Restore <D> instead of '.' in grep-find-template
30515         * lisp/cedet/semantic/symref/grep.el
30516         (semantic-symref-grep-use-template): Update a comment.
30517         * lisp/progmodes/grep.el (grep-compute-defaults): Restore <D>
30518         instead of '.' in grep-find-template (bug#20719).
30519         (rgrep): Pass nil as the directory to rgrep-default-command.
30520         * lisp/progmodes/grep.el (grep-expand-keywords): Use '.' as the
30521         default value for DIR.
30522         * lisp/progmodes/xref.el (xref-collect-matches): Drop the
30523         workaround.
30525 2015-06-02  Glenn Morris  <rgm@gnu.org>
30527         * configure.ac (emacs_config_features): Add X toolkit and scroll-bars.
30529         * configure.ac (emacs_config_features): Add Cairo.
30531         * configure.ac [HAVE_GTK3]: Remove USE_CAIRO that gets reset later.
30533 2015-06-02  Michael Albinus  <michael.albinus@gmx.de>
30535         Ensure that autorevert works for remote files in file-notify-tests.el
30536         * test/automated/file-notify-tests.el (file-notify--test-desc):
30537         New defvar.
30538         (file-notify--test-remote-enabled)
30539         (file-notify-test00-availability, file-notify-test01-add-watch)
30540         (file-notify-test02-events): Use it.
30541         (file-notify--test-event-test): Check proper descriptor.
30542         (file-notify-test03-autorevert): Ensure that
30543         `visited-file-modtime' has changed.  (Bug#20392)
30545 2015-06-02  Nicolas Petton  <nicolas@petton.fr>
30547         Add a pcase pattern for maps and `map-let' based on it
30548         * lisp/emacs-lisp/map.el (map-let): New macro.
30549         (map--make-pcase-bindings, map--make-pcase-patterns): New functions.
30550         * test/automated/map-tests.el: New test for `map-let'.
30552 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
30554         Reuse rgrep mechanics in xref-find-regexp
30555         * lisp/progmodes/grep.el (rgrep-default-command):
30556         Extract from `rgrep'.
30557         * lisp/progmodes/xref.el (xref-collect-references): Split from
30558         `xref-collect-matches'.  Only handle the case of symbol search.
30559         (xref-collect-matches): Instead of Semantic Symref, use
30560         `rgrep-default-command', to take advantage of its directory and
30561         file ignore settings.
30562         (xref--collect-match): Remove the last argument, leaving the
30563         regexp construction up to the caller.
30564         * lisp/progmodes/elisp-mode.el (elisp--xref-find-matches):
30565         Change to take the xref-collect- function to use as an argument.
30566         (elisp-xref-find): Update accordingly.
30567         * lisp/progmodes/etags.el (etags--xref-find-matches)
30568         (etags-xref-find): Same.
30570         Move xref-elisp-location to elisp-mode.el
30571         * lisp/progmodes/xref.el (xref-elisp-location)
30572         (xref-make-elisp-location, xref-location-marker): Remove here.
30573         (xref--xref): Don't limit the type of the location slot.
30574         * lisp/progmodes/elisp-mode.el (xref-elisp-location):
30575         Define as a cl-struct here.
30576         (xref-location-marker): Move here.
30578 2015-06-02  Eli Zaretskii  <eliz@gnu.org>
30580         Minor tweaks for .gitignore
30581         * .gitignore: Don't ignore versioned *.html and *.ps files.
30582         Don't ignore admin/notes/tags that might be ignored as TAGS
30583         on case-insensitive filesystems.  (Bug#20710)
30585 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
30587         Generate curved quotes in ert doc
30588         * lisp/emacs-lisp/ert.el (ert--print-test-for-ewoc)
30589         (ert-results-mode-menu)
30590         (ert-results-pop-to-backtrace-for-test-at-point)
30591         (ert-results-pop-to-messages-for-test-at-point)
30592         (ert-results-pop-to-should-forms-for-test-at-point)
30593         (ert-describe-test):
30594         Quote ‘like this’, not `like this', when generating doc strings
30595         and the like.
30596         * test/automated/ert-x-tests.el (ert-test-describe-test):
30597         Allow quoting ‘like this’.
30599 2015-06-02  Nicolas Richard  <youngfrog@members.fsf.org>
30601         Add test for previous commit
30602         * test/automated/replace-tests.el: New file.
30603         (query-replace--split-string-tests): Add test for previous commit.
30605         Avoid confusion in query-replace history when replacing NUL chars
30606         * lisp/replace.el (query-replace--split-string): New function.
30607         (query-replace-read-from): Rely on the 'separator' property
30608         instead of searching for the NUL character (Bug#20690).
30610 2015-06-02  Glenn Morris  <rgm@gnu.org>
30612         Merge from origin/emacs-24
30613         8b5f2f4 * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
30615         * admin/gitmerge.el (gitmerge-commit-message):
30616         Exclude "skipped" messages from ChangeLog.
30618 2015-06-01  Michael Albinus  <michael.albinus@gmx.de>
30620         Sync with Tramp repository
30621         * lisp/net/tramp.el (tramp-message): Dump connection buffer error
30622         messages.
30623         (tramp-handle-make-auto-save-file-name): When calling
30624         `make-auto-save-file-name' internally, make sure it uses Unix-like
30625         behavior, not Windows-like behavior.
30626         * lisp/net/tramp-sh.el (tramp-set-file-uid-gid): Add a timeout for
30627         the local case, because "chown" might fail on w32.
30628         * lisp/net/trampver.el (tramp-repository-get-version): Don't run
30629         for XEmacs.
30631 2015-06-01  Eli Zaretskii  <eliz@gnu.org>
30633         MS-Windows followup for batch stdout/stderr output changes
30634         * lisp/international/mule-cmds.el (set-locale-environment):
30635         In batch mode, use console codepages for keyboard and terminal
30636         encoding.  (Bug#20545)
30638         Update .gitattributes for DOS EOL files
30639         * .gitattributes: Use "whitespace=cr-at-eol" for files with DOS
30640         CRLF end-of-line format.
30642         NS equivalents of xterm.c and w32term.c changes
30643         * src/nsterm.m (ns_maybe_dumpglyphs_background): Force redraw of
30644         glyph string background also when the font in use claims
30645         preposterously large global height value.  Helps to remove
30646         artifacts left from previous displays when glyphless characters
30647         are displayed as hex code in a box.
30648         (x_new_font): Call get_font_ascent_descent to obtain a reasonable
30649         value for FRAME_LINE_HEIGHT, even when a font claims very large
30650         value for its height.
30652 2015-06-01  Paul Eggert  <eggert@cs.ucla.edu>
30654         Avoid grave accent quoting in stderr diagnostics
30655         A few Emacs diagnostics go directly to stderr, and so can't easily
30656         contain curved quotes (as non-UTF-8 locales might mishandle them).
30657         Instead of bothering to add support for this rarity, reword the
30658         diagnostics so that they don't use grave accent to quote.
30659         * src/alloc.c (mark_memory): Fix comment.
30660         * src/buffer.c (init_buffer):
30661         * src/dispnew.c (init_display):
30662         * src/emacs.c (main, sort_args):
30663         * src/lread.c (dir_warning):
30664         * src/term.c (init_tty):
30665         * src/unexmacosx.c (unexec):
30666         * src/xfns.c (select_visual):
30667         * src/xterm.c (cvt_string_to_pixel, x_io_error_quitter):
30668         Reword stderr diagnostics to avoid quoting `like this'.
30669         * src/unexmacosx.c: Include errno.h.
30670         * src/xfns.c (select_visual): Encode value for locale.
30672 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
30674         Treat batch stdout/stderr like standard display
30675         Calls like (print FOO) could generate improperly encoded or
30676         hard-to-read output if FOO contains characters outside the system
30677         locale.  Fix this by treating batch stdout and stderr like
30678         interactive standard display, when it comes to transliterating and
30679         encoding characters (Bug#20545).
30680         * doc/emacs/mule.texi (Communication Coding):
30681         * doc/lispref/display.texi (Active Display Table):
30682         * doc/lispref/nonascii.texi (Locales):
30683         * etc/NEWS:
30684         * src/coding.c (syms_of_coding):
30685         * src/dispnew.c (syms_of_display):
30686         Document this.
30687         * src/print.c: Include disptab.h.
30688         (printchar_to_stream): New function, with much of the guts of the
30689         old Fexternal_debugging_output, except this one also uses the
30690         standard display table.
30691         (printchar, strout, Fexternal_debugging_output): Use it.
30693 2015-05-31  Glenn Morris  <rgm@gnu.org>
30695         * src/emacs.c (syms_of_emacs) <system-configuration-features>: Doc fix.
30697 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
30699         Remove DEFSYMs that aren't used at the C level.  Also:
30700         * src/decompress.c (Qzlib_dll):
30701         * src/font.c (Qunicode_sip):
30702         * src/frame.c (Qtip_frame):
30703         * src/ftfont.c (Qserif):
30704         * src/gnutls.c (Qgnutls_dll):
30705         * src/xml.c (Qlibxml2_dll):
30706         Move from here ...
30707         * src/w32fns.c (syms_of_w32fns): ... to here,
30708         as these are used only on MS-Windows.
30710 2015-05-31  Michael Albinus  <michael.albinus@gmx.de>
30712         Use another default value for tramp-histfile-override
30713         * lisp/net/tramp-sh.el (tramp-histfile-override):
30714         Use ".tramp_history" as default.
30715         Fixes bug#20446
30717 2015-05-29  Nicolas Petton  <nicolas@petton.fr>
30719         * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
30721 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
30723         * etc/NEWS: Add an entry about map.el.
30725         Improve the docstring of functions in map.el
30726         Since a map is not a data structure but a concept, adding information
30727         about the possible types of maps can be useful information.
30728         * lisp/emacs-lisp/map.el: Add documentation about the type of MAP to
30729         each public function.
30731 2015-04-29  Nicolas Petton  <nicolas@petton.fr>
30733         * lisp/emacs-lisp/map.el (map-empty-p): Faster implementation using
30734         specific tests depending on the type of the map.
30736         * lisp/emacs-lisp/map.el: Better docstrings.
30738 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
30740         * lisp/emacs-lisp/map.el (map-pairs): Dump redundant lambda.
30742 2015-04-25  Nicolas Petton  <nicolas@petton.fr>
30744         * lisp/emacs-lisp/map.el (map--elt-list): Better docstring.
30746         * lisp/emacs-lisp/map.el (map--elt-list): Minor refactoring.
30748         Fix a false negative in `map-elt' with alists and values being nil
30749         * lisp/emacs-lisp/map.el (map-elt): If map is an alist and key is
30750         found but its associated value is nil, do not return the default
30751         value.
30752         * test/automated/map-tests.el: Add a regression test.
30754 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
30756         * lisp/emacs-lisp/map.el (map--dispatch): Improve the docstring.
30758         Do not signal an error when trying to delete a key from an array
30759         * lisp/emacs-lisp/map.el (map-delete): When map is an array, check if
30760         the key is present to avoid signaling an error.
30761         * test/automated/map-tests.el: Add a test for deleting non-existing
30762         keys from maps.
30764         * lisp/emacs-lisp/map.el: Better docstring.
30766         Minor improvement in map-elt
30767         * lisp/emacs-lisp/map.el (map-elt): Do not use `ignore-errors' when
30768         doing a lookup in arrays, but check the boundaries of the array
30769         instead.
30770         * test/automated/map-tests.el: Adds a test for `map-elt' with arrays
30771         and a negative integer as key.
30773 2015-04-21  Nicolas Petton  <nicolas@petton.fr>
30775         * test/automated/map-tests.el: Refactoring of test methods.
30777         * test/automated/map-tests.el: Renamed from map-test.el.
30779 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
30781         * lisp/emacs-lisp/map.el (map-into): Better error message.
30783         * lisp/emacs-lisp/map.el: Remove byte-compilation warnings.
30785         Throw an error when converting a map into an unknown map type
30786         * lisp/emacs-lisp/map.el (map-into): Throw an error if type is
30787         not valid.
30788         * test/automated/map-tests.el: Add a regression test.
30790         New library map.el similar to seq.el but for mapping data structures.
30791         * test/automated/map-tests.el: New file.
30792         * lisp/emacs-lisp/map.el: New file.
30794 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
30796         * lisp/progmodes/etags.el (tag-implicit-name-match-p): Make sure
30797         there's no explicit tag name (bug#20629).
30799 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
30801         Remove format2
30802         * src/editfns.c, src/lisp.h (format2): Remove.
30803         It is more trouble than it's worth, now that we have CALLN.
30804         This is just a minor refactoring.
30805         * src/buffer.c (Fkill_buffer):
30806         * src/dbusbind.c (XD_OBJECT_TO_STRING):
30807         * src/fileio.c (barf_or_query_if_file_exists):
30808         Adjust to format2 going away.
30810         Don't misencode C-generated messages
30811         Also, be more consistent about calls to 'Fmessage' vs 'message'.
30812         * src/alloc.c (Fgc_status):
30813         Prefer AUTO_STRING to build_string for Fmessage call.
30814         * src/data.c (Fmake_variable_buffer_local)
30815         (Fmake_local_variable, Fmake_variable_frame_local):
30816         * src/doc.c (store_function_docstring):
30817         Use Fmessage, not message, since the argument can contain
30818         non-ASCII characters, and this can cause the resulting message
30819         to be incorrectly encoded for the current environment.
30820         * src/fns.c (maybe_resize_hash_table):
30821         * src/xselect.c (x_clipboard_manager_save_all):
30822         Use message, not Fmessage, since Fmessage's power isn't needed here.
30823         * src/process.c (Fmake_network_process): Reword message to avoid %s.
30824         * src/xdisp.c (vmessage): Document restrictions on message contents.
30825         (message_nolog) [false]: Remove unused code.
30827         Use \r rather than ^M in string literals
30828         This is less likely to cause problems on platforms that
30829         use CRLF (or CR!) termination for lines.
30831         Update .gitattributes to match current sources
30832         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00879.html
30833         * .gitattributes: Accommodate tests that insist on DOS format.
30834         Remove test/automated/data/decompress/foo-gzipped.
30835         Add etc/e/eterm-color.
30837 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
30839         * doc/emacs/mule.texi (Modifying Fontsets):
30840         Document face-ignored-fonts.  (Bug#20628)
30842         Add etags test for the new -Q option
30843         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
30844         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
30845         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
30846         test-case changes below.
30847         * test/etags/ETAGS.good_6: New file.
30848         * test/etags/cp-src/x.cc: New file.
30849         * test/etags/Makefile (CPSRC): Add x.cc.
30850         (check): Add one more test, for -Q.
30852 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
30854         Use list for the tags completion table, not obarray
30855         * lisp/progmodes/etags.el (etags-tags-completion-table): Return a
30856         list instead of an obarray
30857         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00876.html).
30858         (tags-completion-table): Combine those lists.
30859         (tags-completion-table): Update the docstring.
30861 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
30863         Restore EOL format testing in etags
30864         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
30865         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
30866         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
30867         test-case changes below.
30868         * test/etags/html-src/algrthms.html: Convert back to DOS EOL format.
30869         * test/etags/cp-src/c.C (B): Add back stray CR character.
30870         * test/etags/c-src/dostorture.c: Add back.
30871         * test/etags/Makefile (CSRC): Add back c-src/dostorture.c.
30873 2015-05-30  Vitaly Takmazov  <vitalyster@gmail.com>  (tiny change)
30875         Declare Emacs on MS-Windows to be DPI-aware
30876         * nt/emacs-x86.manifest (asmv3:windowsSettings): Add dpiAware.
30877         * nt/emacs-x64.manifest (asmv3:windowsSettings): Add dpiAware.
30878         This avoids Windows entering compatibility mode for Emacs,
30879         which causes fonts to look less nice.
30881 2015-05-30  Michael Albinus  <michael.albinus@gmx.de>
30883         Improve Tramp traces
30884         * lisp/net/trampver.el (tramp-repository-get-version): New defun.
30885         * lisp/net/tramp.el (tramp-debug-message): Use it.
30887 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
30889         backup-buffer minor reworking of internals
30890         * lisp/files.el (backup-buffer): Rework to avoid a couple of
30891         unused locals inadvertently introduced in the previous change.
30893         backup-buffer now reports .emacs.d/%backup% ills
30894         * lisp/files.el (backup-buffer): If the write to .emacs.d/%backup%
30895         fails due to disk space exhaustion or whatever, do not pretend
30896         that it succeeded.  More generally, do a better job of checking
30897         for I/O failures, and limit the scope of the condition-case to
30898         just the operations where file errors should be caught and ignored
30899         (Bug#20595).  Also, don't bother trying to delete later backups if
30900         an earlier deletion fails, as this is a sign of trouble and it's
30901         better to stop when there's trouble.
30903         copy-file now truncates output after writing
30904         * src/fileio.c (Fcopy_file): Truncate output after writing rather
30905         than before.  This is more likely to work than truncation before
30906         writing, if the file system is out of space or the user is over
30907         disk quota (Bug#20595).  Also, check for read errors.
30909 2015-05-29  Artur Malabarba  <bruce.connor.am@gmail.com>
30911         * lisp/emacs-lisp/package.el (package-load-all-descriptors):
30912         Don't load descriptors from directories above the package directories.
30914 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
30916         Merge from gnulib
30917         This incorporates the following (Bug#20681):
30918         2015-05-29 acl-permissions: Fix build on Mac OS X and older AIX
30919         2015-05-29 acl-permissions: Fix build on Solaris and Cygwin
30920         * lib/set-permissions.c: Copy from gnulib.
30922 2015-05-29  Michael Albinus  <michael.albinus@gmx.de>
30924         Improve Tramp traces
30925         * lisp/net/tramp.el (tramp-call-process-region): New defun.
30926         * lisp/net/tramp-sh.el (tramp-get-inline-coding): Use it.
30928 2015-05-29  Glenn Morris  <rgm@gnu.org>
30930         * test/automated/vc-tests.el: Try enabling tests on hydra.nixos.org.
30932 2015-05-29  Wolfgang Jenkner  <wjenkner@inode.at>
30934         * src/xfns.c (x_set_menu_bar_lines): Fix calls to x_clear_area.
30935         The signature was changed in the cairo branch, merged on 2015-05-23.
30936         This oversight broke compiling only the non-toolkit X version.
30938 2015-05-29  Samer Masterson  <samer@samertm.com>
30940         * doc/lispref/os.texi: Update initial-buffer-choice docs.
30942 2015-05-29  Glenn Morris  <rgm@gnu.org>
30944         * test/automated/vc-tests.el (vc-test-rcs04-checkout-model):
30945         Mark as an expected failure.
30947 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
30949         Change package test to look for curved quotes
30950         * test/automated/package-test.el (package-test-describe-package)
30951         (package-test-signed): Search for curved single quotes as well as
30952         for grave accent and apostrophe.
30954 2015-05-28  Katsumi Yamaoka  <yamaoka@jpl.org>
30956         * lisp/gnus/gnus-art.el (gnus-button-alist): Re-revert last change.
30957         cf. <http://news.gmane.org/group/gmane.emacs.devel/thread=186896>
30959 2015-05-28  Samer Masterson  <samer@samertm.com>
30961         Show files when `initial-buffer-choice' is non-nil
30962         * lisp/startup.el (command-line-1): When Emacs is given a file as an
30963         argument and `initial-buffer-choice' is non-nil, display both the file
30964         and `initial-buffer-choice'.  For more than one file, show
30965         `initial-buffer-choice' and *Buffer List*.  Refactor display-changing
30966         commands out of the command line arg parser.
30967         (initial-buffer-choice): Clarify docstring.
30969 2015-05-28  Eli Zaretskii  <eliz@gnu.org>
30971         Fix last commit
30972         * nt/gnulib.mk (libgnu_a_SOURCES): Add get-permissions.c back.
30973         (gnulib module qcopy-acl): Add back, as it is harmless.  This
30974         minimizes differences wrt lib/gnulib.mk.
30976         Fix the MS-Windows build as followup to gnulib update
30977         * nt/gnulib.mk (libgnu_a_SOURCES): Remove get-permissions.c and
30978         set-permissions.c, as they don't compile on MinGW.
30979         (gnulib module qcopy-acl): Remove, as it needs set-permissions.c.
30981 2015-05-28  Paul Eggert  <eggert@cs.ucla.edu>
30983         Revert my change to gnus-art.el
30984         * lisp/gnus/gnus-art.el (gnus-button-alist): Revert last change.
30985         It wasn't that important, and it caused a Gnus build to fail.  See:
30986         http://www.randomsample.de:4456/builders/emacs-devel/builds/734
30988         New minor mode Electric Quote
30989         This lets you easily insert quotes ‘like this’ by typing
30990         quotes `like this', and similarly you can easily insert
30991         quotes “like this” by typing quotes ``like this'' (Bug#20545).
30992         * doc/emacs/basic.texi (Inserting Text):
30993         * doc/emacs/modes.texi (Minor Modes):
30994         * etc/NEWS: Document it.
30995         * doc/emacs/text.texi (Quotation Marks): New section.
30996         * lisp/electric.el (electric-quote-comment)
30997         (electric-quote-string, electric-quote-paragraph):
30998         New custom vars.
30999         (electric--insertable-p)
31000         (electric-quote-post-self-insert-function): New functions.
31001         (electric-quote-mode, electric-quote-local-mode): New minor modes.
31002         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
31003         Add curved single quotes to electric-pair-text-pairs.
31004         Set electric-quote-string in this buffer.
31006         A few more doc string fixes (Bug#20385)
31008         Accept curved quotes in doc strings
31009         * lisp/info-look.el (info-lookup-guess-custom-symbol):
31010         (info-lookup-alist): Treat ‘’ like `' when parsing help buffers etc.
31012         Generate curved quotes in pseudo-info nodes
31013         * lisp/info.el (Info-virtual-index-find-node)
31014         (Info-virtual-index, Info-apropos-find-node, info-apropos):
31015         Quote ‘like this’, not `like this', when generating pseudo-info nodes.
31017         Fix minor quoting problems in doc strings
31018         Most of these fixes involve escaping grave accents that are
31019         actually intended to be grave accents, not left quotes.
31020         (Bug#20385)
31022         Support curved quotes in doc strings
31023         Emacs's traditional doc string style has been to quote symbols
31024         `like this'.  This worked well on now-obsolete terminals where
31025         ` and ' were symmetric quotes, but nowadays curved quotes
31026         ‘like this’ look better.  Support quoting the new way too.
31027         (Bug#20385)
31028         * doc/lispref/tips.texi (Documentation Tips): Symbols can be quoted
31029         ‘like-this’ as well as `like-this'.
31030         * etc/NEWS: Mention this.
31031         * lisp/cedet/mode-local.el (overload-docstring-extension)
31032         (mode-local-print-binding, mode-local-describe-bindings-2):
31033         * lisp/cus-theme.el (describe-theme-1):
31034         * lisp/descr-text.el (describe-text-properties-1, describe-char):
31035         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
31036         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
31037         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
31038         (eieio-help-constructor):
31039         * lisp/emacs-lisp/package.el (describe-package-1):
31040         * lisp/faces.el (describe-face):
31041         * lisp/help-fns.el (help-fns--key-bindings)
31042         (help-fns--compiler-macro, help-fns--parent-mode, help-fns--obsolete):
31043         (help-fns--interactive-only, describe-function-1):
31044         (describe-variable):
31045         * lisp/help.el (describe-mode):
31046         * lisp/international/mule-cmds.el (describe-input-method)
31047         (describe-language-environment):
31048         * lisp/international/mule-diag.el (describe-character-set)
31049         (print-coding-system-briefly, list-input-methods)
31050         (list-input-methods-1):
31051         Insert curved quotes rather than grave accent and apostrophe.
31052         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
31053         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
31054         (checkdoc-proper-noun-region-engine):
31055         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2)
31056         (lisp-cl-font-lock-keywords-2):
31057         * lisp/finder.el (finder-font-lock-keywords):
31058         * lisp/gnus/gnus-art.el (gnus-button-alist):
31059         * lisp/help-fns.el (help-do-arg-highlight)
31060         (describe-function-1, describe-variable):
31061         * lisp/help-mode.el (help-xref-symbol-regexp)
31062         (help-xref-info-regexp, help-xref-url-regexp):
31063         * lisp/help.el (describe-mode):
31064         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
31065         * lisp/wid-edit.el (widget-documentation-link-regexp):
31066         Parse symbols quoted ‘like-this’ as well as `like-this'.
31067         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
31068         Add "‘" and "’" to electric-pair-text-pairs.
31069         (elisp--form-quoted-p): Also allow "‘" as a quoting char.
31070         (elisp-completion-at-point, elisp--preceding-sexp):
31071         Also treat "‘" and "’" as quoting chars.
31073         substitute-command-keys now curves quotes
31074         So, for example, it turns "`abc'" into "‘abc’" (Bug#20385).
31075         * doc/lispref/help.texi (Keys in Documentation):
31076         * etc/NEWS: Document this.
31077         * src/doc.c (Fsubstitute_command_keys): Implement it.
31079 2015-05-28  Glenn Morris  <rgm@gnu.org>
31081         * lisp/mail/rmailsum.el (rmail-summary-by-recipients)
31082         (rmail-summary-by-topic, rmail-summary-by-senders):
31083         No longer strip leading/trailing whitespace.
31085         * lisp/progmodes/f90.el (f90-type-def-re): Add "type, extends".
31086         (f90-no-block-limit): Add "enum".  (Bug#20680)
31087         * test/automated/f90.el (f90-test-bug20680, f90-test-bug20680b):
31088         New tests.
31090 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
31092         * lisp/isearch.el (isearch--current-buffer): Give a default value.
31093         Un-revert changes mistakenly dropped by f9fabb2b.
31095 2015-05-27  Paul Eggert  <eggert@cs.ucla.edu>
31097         Merge from gnulib
31098         This incorporates:
31099         2015-05-27 qacl: Reimplement qset_acl and qcopy_acl (Bug#20666)
31100         2015-05-27 file-has-acl: Split feature tests again (Bug#20667)
31101         2015-05-27 string: fix build failure on BSD/OSX with FORTIFY_SOURCE
31102         2015-05-26 stdio: limit __gnu_printf__ witness to gcc 4.4+
31103         2015-05-26 inttypes: force correct mingw PRIdMAX even without <stdio.h>
31104         2015-05-26 stdio: fix probe on mingw under gcc 5.1
31105         * admin/merge-gnulib (GNULIB_MODULES):
31106         Replace qacl with qcopy-acl, since we don't need the rest of qacl.
31107         * doc/misc/texinfo.tex, lib/acl-internal.c, lib/acl-internal.h:
31108         * lib/inttypes.in.h, lib/qcopy-acl.c, lib/qset-acl.c:
31109         * lib/string.in.h, m4/acl.m4, m4/stdio_h.m4:
31110         Get latest versions from gnulib.
31111         * lib/get-permissions.c, lib/set-permissions.c: New files.
31112         * lib/gnulib.mk, m4/gnulib-comp.m4:
31113         Regenerate.
31114         * nt/gnulib.mk: Merge lib/gnulib.mk changes by hand.
31116 2015-05-27  Dmitry Gutov  <dgutov@yandex.ru>
31118         * lisp/vc/vc-dispatcher.el (vc-setup-buffer): Delete the old
31119         process here.
31120         (vc-do-command): Rather than here (bug#20608).
31122 2015-05-27  Ivan Shmakov  <ivan@siamics.net>
31124         Avoid gratuitous delete-dups in face-at-point
31125         * lisp/faces.el (face-at-point): Do not compute the properly
31126         ordered, duplicate-free list if only a single value is
31127         requested anyway.  (Bug#20519)
31129         Show the exact C-x 8 RET invocation in describe-char
31130         * lisp/descr-text.el (describe-char): Show the exact C-x 8 RET
31131         invocation instead of a template.  (Bug#20522)
31133 2015-05-27  Artur Malabarba  <bruce.connor.am@gmail.com>
31135         * lisp/emacs-lisp/package.el: Don't erase tags on refresh.
31136         (package-menu--post-refresh): Call `tabulated-list-print' with the
31137         UPDATE argument.  This only affects the refresh action, the revert
31138         action still erases tags.
31139         (package-menu-get-status): Change `assq' to `assoc'.
31140         (package-menu--mark-upgrades-1): New function.
31141         (package-menu--mark-upgrades-pending): New variable.
31142         (package-menu-mark-upgrades): Use them to delay marking until
31143         after refresh is done.
31144         (package-menu--post-refresh): Call mark-upgrades-1 if
31145         mark-upgrades-pending is non-nil.
31147 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
31149         * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
31150         Fix typo in "Improve tramp-handle-make-auto-save-file-name"
31151         (commit 3953c4be2816537be95520605d45b866dc731f4b).
31153 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
31155         * lisp/isearch.el (isearch--current-buffer): New var.
31156         (isearch-update): Set cursor-sensor-inhibit here.
31157         (isearch-done): Unset cursor-sensor-inhibit in the right buffer
31158         (bug#20532).
31160         Change inhibit-point-motion-hooks to t
31161         * src/textprop.c (syms_of_textprop): Default Vinhibit_point_motion_hooks
31162         to t and document it as obsolete.
31164 2015-05-27  Eli Zaretskii  <eliz@gnu.org>
31166         Support ZIP files that use Zip64 extensions
31167         * lisp/arc-mode.el (archive-zip-summarize): Handle the new ZIP
31168         format of central directory offsets used by Zip64 extensions.
31169         (Bug#20665)
31171 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
31173         New test tramp-test30-make-auto-save-file-name
31174         * test/automated/tramp-tests.el
31175         (tramp-test30-make-auto-save-file-name): New test.
31176         (tramp-test31-special-characters)
31177         (tramp-test31-special-characters-with-stat)
31178         (tramp-test31-special-characters-with-perl)
31179         (tramp-test31-special-characters-with-ls, tramp-test32-utf8)
31180         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
31181         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
31182         (tramp-test34-recursive-load, tramp-test35-unload): Rename.
31184         Improve tramp-handle-make-auto-save-file-name
31185         * lisp/net/tramp.el (tramp-auto-save-directory): Add :tags.
31186         (tramp-handle-make-auto-save-file-name): Let native
31187         `make-auto-save-file-name' use `auto-save-file-name-transforms',
31188         if `tramp-auto-save-directory' is not set.
31190 2015-05-27  Glenn Morris  <rgm@gnu.org>
31192         No longer set dired-directory in eshell.  (Bug#16477)
31193         * lisp/eshell/esh-mode.el (eshell-mode):
31194         * lisp/eshell/em-dirs.el (eshell/cd): No longer set dired-directory.
31196         * lisp/mail/sendmail.el (mail-position-on-field): Doc fix.
31198         Make c-submit-bug-report file reports at debbugs.gnu.org.  (Bug#15784)
31199         * lisp/progmodes/cc-mode.el (c-mode-help-address):
31200         Change to submit@debbugs.
31201         (c-mode-bug-package): New constant.
31202         (mail-position-on-field): Declare.
31203         (c-submit-bug-report): Insert X-Debbugs-Package header.
31204         * doc/misc/cc-mode.texi (Mailing Lists and Bug Reports):
31205         Mention debbugs.gnu.org.
31207 2015-05-26  Glenn Morris  <rgm@gnu.org>
31209         * lisp/mail/rmailsum.el: Commas no longer separate regexps.  (Bug#19026)
31210         (rmail-summary-by-recipients, rmail-summary-by-topic)
31211         (rmail-summary-by-senders): No longer use mail-comma-list-regexp.
31212         * doc/emacs/rmail.texi (Rmail Make Summary): Update for this change.
31214 2015-05-26  Paul Eggert  <eggert@cs.ucla.edu>
31216         Handle curved quotes in info files
31217         * lisp/calc/calc-help.el (calc-describe-thing):
31218         * lisp/info.el (Info-find-index-name)
31219         (Info-try-follow-nearest-node, Info-fontify-node):
31220         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
31221         In info files, process quotes ‘like this’ the same way we process
31222         quotes `like this'.  This catches a few places we missed earlier.
31224 2015-05-26  Dmitry Gutov  <dgutov@yandex.ru>
31226         xref-prompt-for-identifier: Use a list value
31227         * lisp/progmodes/xref.el (xref-prompt-for-identifier): Allow list
31228         value, to be interpreted as a list of commands.
31229         (xref--prompt-p): New function.
31230         (xref--read-identifier): Use it.
31232 2015-05-26  Eli Zaretskii  <eliz@gnu.org>
31234         Teach MS-Windows font back-end return per-glyph ascent/descent
31235         * src/w32font.h (struct w32_metric_cache): Add ascent and descent
31236         values.
31237         * src/w32font.c (w32font_text_extents): Compute, cache, and
31238         accumulate per-glyph ascent and descent values, instead of copying
31239         global values from the font.  If the values are not available from
31240         the font data, i.e., non-TTF fonts, fall back on font-global values.
31241         (compute_metrics): Compute and return per-glyph ascent and descent
31242         values, if returned by GetGlyphOutlineW, falling back on
31243         font-global values.  (Bug#20628)
31244         * src/w32term.c (w32_draw_rectangle): Add 1 pixel to width and
31245         height of rectangle to be drawn, to be compatible with
31246         XDrawRectangle.  Fixes glyphless-char display as hex codes in a
31247         box, when per-glyph ascent/descent values are used.
31249 2015-05-26  Artur Malabarba  <bruce.connor.am@gmail.com>
31251         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
31252         Don't sort if sorter is nil.
31254 2015-05-26  Michael Albinus  <michael.albinus@gmx.de>
31256         Fix Bug#20621
31257         * lisp/net/tramp-sh.el (tramp-set-auto-save): Remove it.  There
31258         are major modes which set `auto-save-mode' on their own rules;
31259         Tramp shall not overwrite such settings.
31261 2015-05-26  Glenn Morris  <rgm@gnu.org>
31263         * lisp/desktop.el: If modes aren't autoloaded, try simple guesswork.
31264         (desktop-load-file): Guess that "foobar" defines "foobar-mode".
31265         (desktop-buffer-mode-handlers, desktop-minor-mode-handlers):
31266         Doc updates.
31267         (vc-dir-mode): Remove unnecessary autoload.
31269 2015-05-25  Philipp Stephani  <phst@google.com>
31271         * lisp/term/xterm.el: Add gui-get-selection support via OSC-52.
31272         (xterm--extra-capabilities-type): Add `getSelection'.
31273         (xterm--query): Add `no-async' argument.
31274         (xterm--init-activate-get-selection): New function.
31275         (terminal-init-xterm): Use it.
31276         (xterm--init-modify-other-keys): Rename from
31277         terminal-init-xterm-modify-other-keys.
31278         (xterm--init-bracketed-paste-mode): Rename from
31279         terminal-init-xterm-bracketed-paste-mode.
31280         (xterm--init-activate-set-selection): Rename from
31281         terminal-init-xterm-activate-set-selection.
31282         (xterm--selection-char): New function.
31283         (gui-backend-set-selection): Use it.  Use the &context to only apply
31284         this method in terminals where we enabled the feature.
31285         (gui-backend-get-selection): New method.
31287 2015-05-25  Daniel Colascione  <dancol@dancol.org>
31289         * lisp/progmodes/cc-langs.el (c-constant-kwds): Add C-language
31290         keyword constants to C++.
31292 2015-05-25  Paul Eggert  <eggert@cs.ucla.edu>
31294         Make TAGS files more portable to MS-Windows
31295         * etc/NEWS: Document this.
31296         * lib-src/etags.c (readline_internal) [DOS_NT]:
31297         Don't treat CRs differently from GNUish hosts.
31298         * lisp/progmodes/etags.el (etags-goto-tag-location):
31299         Adjust STARTPOS to account for the skipped CRs in dos-style files.
31301 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
31303         Improve fix of bug#20634 in tramp-sh.el
31305 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
31307         Fix a typo in last commit
31308         * lib-src/etags.c (C_entries): Fix a typo.
31309         * test/etags/ETAGS.good_1:
31310         * test/etags/ETAGS.good_2:
31311         * test/etags/ETAGS.good_3:
31312         * test/etags/ETAGS.good_4:
31313         * test/etags/ETAGS.good_5:
31314         * test/etags/CTAGS.good: Update due to the change in etags.c.
31316         Fix tagging of class members in C-like OO languages
31317         * lib-src/etags.c (longopts): Add new option --class-qualify and
31318         its shorthand -Q.
31319         (print_help): Add help text for --class-qualify.
31320         (main): Add handling of -Q.
31321         (consider_token, C_entries) <omethodparm>: Append argument types
31322         to Objective C methods only if --class-qualify was specified.
31323         Qualify C++, Objective C, and Java class members with their class
31324         names only if --class-qualify was specified.
31325         (C_entries): If --class-qualify was not specified, remove the
31326         namespace and class qualifiers from tag names of C++ methods.
31327         This allows to use etags.el as xref back-end without the
31328         tag-symbol-match-p method, which greatly increases the number of
31329         potentially false positives.  (Bug#20629)
31330         * doc/man/etags.1: Update to document the new --class-qualify
31331         option.
31332         * test/etags/ETAGS.good_1:
31333         * test/etags/ETAGS.good_2:
31334         * test/etags/ETAGS.good_3:
31335         * test/etags/ETAGS.good_4:
31336         * test/etags/ETAGS.good_5:
31337         * test/etags/CTAGS.good: Update due to changes in etags.c.
31339 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
31341         (cl-generic-define-method): Side effects are evil (bug#20644)
31342         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method): Don't reuse
31343         cons-cells that might be used as keys in an `equal' hash-table.
31345 2015-05-25  Lars Magne Ingebrigtsen  <larsi@gnus.org>
31347         Make erc timestamps visible again
31348         * lisp/erc/erc-stamp.el (erc-munge-invisibility-spec):
31349         Make timestamps visible again (if requested).
31351 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
31353         Fix last change in etags.c that broke tagging compresed files
31354         * lib-src/etags.c (process_file_name) [MSDOS || DOS_NT]: Fix
31355         quoting of decompression shell command for MS-Windows/MS-DOS.
31357 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
31359         * lisp/emacs-lisp/cl-macs.el (cl-tagbody): Scope cl--tagbody-alist.
31360         (Bug#20639)
31362 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
31364         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer):
31365         Fix typo in "Inhibit `epa-file-handler' in Tramp"
31366         (commit 89035e247591c8d688fce922b7079881aa110f33).
31368 2015-05-25  Orivej Desh  <orivej@gmx.fr>  (tiny change)
31370         Fix IPv6 addresses in Tramp
31371         * lisp/net/tramp-sh.el (tramp-make-copy-program-file-name):
31372         Add square brackets around host name.
31374 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
31376         Inhibit `epa-file-handler' in Tramp (Bug#20634)
31377         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer)
31378         (tramp-sh-handle-insert-file-contents-literally): Inhibit also
31379         `epa-file-handler'.
31381 2015-05-24  Stefan Monnier  <monnier@iro.umontreal.ca>
31383         * lisp/emacs-lisp/pcase.el: Use PAT rather than UPAT in docstring.
31384         (pcase-let): Document the behavior in case the pattern doesn't match.
31386 2015-05-24  Artur Malabarba  <bruce.connor.am@gmail.com>
31388         * lisp/emacs-lisp/tabulated-list.el: New optional print method.
31389         (tabulated-list-print): New optional argument, UPDATE.  If
31390         non-nil, the list is printed by only adding and deleting the
31391         changed entries, instead of erasing the whole buffer.  This method
31392         is much faster when few or no entries have changed.
31393         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
31394         * etc/NEWS: Document it.
31396         * lisp/emacs-lisp/tabulated-list.el: Improve printing.
31397         (tabulated-list--get-sorter): New function.
31398         (tabulated-list-print): Restore window-line when remember-pos is
31399         passed and optimize away the `nreverse'.
31401 2015-05-24  Paul Eggert  <eggert@cs.ucla.edu>
31403         Simpilify etags TEX mode scanning
31404         * lib-src/etags.c (TEX_mode, TEX_esc, TEX_opgrp, TEX_clgrp):
31405         Remove static vars.
31406         (TeX_commands): Deduce escapes here instead.
31407         (TEX_LESC, TEX_SESC, TEX_mode): Remove; all uses removed.
31408         This removes the need for a reset_input call.
31410         Improve etags I/O error reporting
31411         * lib-src/etags.c:
31412         Don't include sys/types.h and sys/stat.h; no longer needed.
31413         (infilename): New static var.
31414         (process_file_name): Don't call 'stat'.  Instead, just open the
31415         file for reading and report any errors.  Don't bother making
31416         a copy of the file argument; it's not needed.  Be more careful to
31417         use the failing errno when reporting an error.
31418         Quote the real name better (though no perfectly)
31419         when passing it to the shell.
31420         (reset_input): New function, which reports I/O errors.
31421         All uses of 'rewind' changed to use this function.
31422         (perhaps_more_input): New function, which also checks for
31423         I/O errors.  All uses of 'feof' changed to use this function.
31424         (analyze_regex): Report an error if fclose fails.
31425         (readline_internal): Report an error if getc fails.
31426         (etags_mktmp): Return an error if close fails.
31428         etags.c: avoid side effects in 'if'
31429         * lib-src/etags.c (process_file_name, Perl_functions)
31430         (TEX_decode_env): Hoist side effects into previous statement.
31432         .gitignore tweaks
31433         * .gitignore: Ignore all *.stamp files.  Sort.
31434         Ignore [0-9]*.txt (commonly used name for git patches)
31435         and /vc-dwim-log-* (vc-dwim temporary).
31437 2015-05-24  Eli Zaretskii  <eliz@gnu.org>
31439         Fix last change in etags.c, which failed the test suite
31440         * lib-src/etags.c (intoken): Add '$' to the set, as it was there
31441         before the last change.
31443 2015-05-23  Glenn Morris  <rgm@gnu.org>
31445         Remove charset map files from repository, generate in first bootstrap
31446         * admin/charsets/Makefile.in (${srcdir}/charsets.stamp): New.
31447         (all): Create the stamp file.
31448         (extraclean): Delete the stamp file.
31449         * src/Makefile.in (lispintdir, charsets): New variables.
31450         (${lispintdir}/cp51932.el, ${lispintdir}/eucjp-ms.el, ${charsets}):
31451         New rules.
31452         (emacs$(EXEEXT), temacs$(EXEEXT)): Depend on $charsets.
31453         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
31454         * etc/charsets/*.map: Remove from repository.
31456 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
31458         Cleanup etags.c to use locale-independent code
31459         Although this doesn't alter behavior (as etags doesn't use
31460         setlocale), the new version is more clearly locale-independent and
31461         the executable is a bit smaller on my platform.
31462         * lib-src/etags.c: Include <limits.h>, for UCHAR_MAX.
31463         Include <c-ctype.h> instead of <ctype.h>.
31464         (CHARS, CHAR, init, _wht, _nin, _itk, _btk, _etk, white, nonam, endtk)
31465         (begtk, midtk):
31466         Remove; no longer needed.
31467         (iswhite, ISALNUM, ISALPHA, ISDIGIT, ISLOWER, lowcase): Remove.
31468         All callers changed to use c_isspace, c_isalnum, c_isalpha, c_isdigit,
31469         c_islower, c_tolower, respectively.
31470         (notinname, begtoken, intoken, endtoken): Rewrite as functions
31471         instead of macros, and initialize the tables at compile-time
31472         rather than at run-time.
31474         Put default action first in src/Makefile
31475         * src/Makefile.in (all): Put this rule before lisp.mk.
31476         That way, plain 'make' works in the src directory again.
31478 2015-05-23  Glenn Morris  <rgm@gnu.org>
31480         * Makefile.in: Fix extraclean rule.
31481         (extraclean_dirs): New.
31482         (extraclean): Use it.
31484 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
31486         Avoid compiler warning in image.c on MS-Windows
31487         * src/w32term.h (x_query_color): Add prototype, to avoid compiler
31488         warning in image.c.
31490 2015-05-23  Glenn Morris  <rgm@gnu.org>
31492         Fix --without-toolkit-scroll-bars builds.
31493         * src/xterm.c (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]:
31494         Add new argument to x_clear_area1.
31495         (XTset_horizontal_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
31496         Update x_clear_area arguments.
31498         * admin/charsets/glibc/: New directory, imported from glibc 2.21.
31499         * admin/charsets/Makefile.in (GLIBC_CHARMAPS):
31500         Change to included version.
31501         (LOCAL, local, totalclean): Remove.
31502         (extraclean): Delete all generated files.
31504 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
31506         * lisp/pcmpl-cvs.el (pcmpl-cvs-entries): Don't assume
31507         CVS/Entries exists.
31509         * lisp/progmodes/xref.el (xref-find-apropos): Use read-string.
31511         * lisp/progmodes/etags.el (tags-completion-at-point-function):
31512         Don't trust the find-tag function.
31514 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
31516         Pacify --enable-gcc-warnings
31517         * src/frame.h (x_query_color): Remove redundant extern decl.
31518         * src/ftcrfont.c (ftcrfont_glyph_extents, ftcrfont_list)
31519         (ftcrfont_match, ftcrfont_open, ftcrfont_close)
31520         (ftcrfont_text_extents, ftcrfont_draw):
31521         * src/xterm.c (x_set_window_size_1, *x_color_cells, x_update_end)
31522         (XTframe_up_to_date, x_clear_area1, x_clear_frame)
31523         (x_ins_del_lines, frame_highlight, frame_unhighlight)
31524         (x_new_focus_frame, x_focus_changed, XTframe_rehighlight)
31525         (x_draw_hollow_cursor, x_draw_bar_cursor, x_flush, x_update_begin)
31526         (x_update_window_begin, x_connection_closed)
31527         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
31528         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
31529         (*x_gc_get_ext_data, x_extension_initialize)
31530         (x_cr_accumulate_data):
31531         Remove redundant static decl.  Many of these GCC doesn't complain
31532         about, but we might as well clean out the duplication while we're
31533         in the neighborhood.
31534         * src/xterm.c (x_fill_trapezoid_for_relief):
31535         Remove decl of nonexistent function.
31537 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
31539         Replace gui-method macros with cl-generic with &context
31540         * lisp/frame.el (gui-method--name, gui-method, gui-method-define)
31541         (gui-method-declare, gui-call): Remove.
31542         (frame-creation-function): Use cl-defgeneric.
31543         (make-frame): Adjust callers.
31544         * lisp/menu-bar.el (menu-bar-edit-menu):
31545         Use gui-backend-selection-exists-p.
31546         * lisp/select.el (x-get-clipboard): Use gui-backend-get-selection.
31547         (gui-backend-get-selection): New cl-generic to replace
31548         gui-get-selection method.
31549         (gui-backend-set-selection): New cl-generic to replace
31550         gui-set-selection method.
31551         (gui-selection-owner-p): New cl-generic to replace
31552         gui-selection-owner-p method.
31553         (gui-backend-selection-exists-p): New cl-generic to replace
31554         gui-selection-exists-p method.  Adjust all callers.
31555         * lisp/server.el (server-create-window-system-frame): Don't ignore
31556         window-system spec even when unsupported.
31557         * lisp/simple.el (deactivate-mark): Use new gui-backend-* functions.
31558         * lisp/startup.el (handle-args-function, window-system-initialization):
31559         Use cl-defgeneric.
31560         (command-line): Adjust calls accordingly.
31561         * lisp/term/ns-win.el (ns-window-system-initialization): Turn into
31562         a window-system-initialization method.
31563         (handle-args-function, frame-creation-function): Use cl-defmethod.
31564         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
31565         (gui-get-selection): Use cl-defmethod on the new functions instead.
31566         * lisp/term/pc-win.el (w16-get-selection-value): Turn into
31567         a gui-backend-get-selection method.
31568         (gui-selection-exists-p, gui-selection-owner-p, gui-set-selection):
31569         Use cl-defmethod on the new functions instead.
31570         (msdos-window-system-initialization): Turn into
31571         a window-system-initialization method.
31572         (frame-creation-function, handle-args-function): Use cl-defmethod.
31573         * lisp/term/w32-win.el (w32-window-system-initialization): Turn into
31574         a window-system-initialization method.
31575         (handle-args-function, frame-creation-function): Use cl-defmethod.
31576         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
31577         (gui-get-selection): Use cl-defmethod on the new functions instead.
31578         * lisp/term/x-win.el (x-window-system-initialization): Turn into
31579         a window-system-initialization method.
31580         (handle-args-function, frame-creation-function): Use cl-defmethod.
31581         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
31582         (gui-get-selection): Use cl-defmethod on the new functions instead.
31583         * lisp/term/xterm.el (xterm--set-selection): Turn into
31584         a gui-backend-set-selection method.
31585         * src/nsselect.m (Fns_selection_exists_p): Remove unused arg `terminal'.
31586         (Fns_selection_owner_p): Remove unused arg `terminal'.
31587         (Fns_get_selection): Remove unused args `time_stamp' and `terminal'.
31589 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
31591         Revert "Fix etags Bug#20629 that broke C++ support"
31592         This reverts commit 13dd9d4f7e75d2c78aa5537cef09de03663e9748.
31594 2015-05-23  Jan D  <jan.h.d@swipnet.se>
31596         Fix etags Bug#20629 that broke C++ support
31597         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
31598         Revert commit from Sun May 10 (Bug#20629).
31600         Merge branch 'cairo'.
31601         Main work done by YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>.
31602         Small fixes and image work by Jan D. <jan.h.d@swipnet.se>.
31604         Merge branch 'master' into cairo
31606         Fixes to compile cairo branch without cairo
31607         * src/gtkutil.c (xg_update_scrollbar_pos): x_clear_area takes frame as
31608         first argument.
31609         * src/xterm.c (handle_one_xevent): Surround x_cr_destroy_surface with
31610         USE_CAIRO.
31612 2015-05-23  Artur Malabarba  <bruce.connor.am@gmail.com>
31614         * lisp/emacs-lisp/package.el: Always update selected-packages.
31615         (package--update-selected-packages): New function.
31616         (package-menu-execute): Use it before starting the transaction,
31617         this way the list of selected packages is updated even when the
31618         transaction fails.
31619         (package-menu--perform-transaction): Don't edit selected-packages.
31621 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
31623         Fix etags reading of compressed files
31624         * lib-src/etags.c (O_CLOEXEC) [WINDOWSNT]: Define.
31625         Include fcntl.h, for O_CLOEXEC.
31626         (process_file_name): Don't use 'popen', whose streams cannot be
31627         rewound.  Instead, uncompress the file to a temporary file,
31628         created by 'etags_mktmp', and read from that as usual.
31629         (etags_mktmp): New function.
31630         * test/etags/ETAGS.good_1:
31631         * test/etags/ETAGS.good_2:
31632         * test/etags/ETAGS.good_3:
31633         * test/etags/ETAGS.good_4:
31634         * test/etags/ETAGS.good_5: Update to be consistent with latest
31635         changes in etags.c regarding reading compressed files.
31637         Improve documentation of 'set-fontset-font'
31638         * doc/lispref/display.texi (Fontsets): Document the value of nil
31639         for the 3rd argument of 'set-fontset-font'.
31641         Fix documentation of forward-line
31642         * src/cmds.c (Fforward_line): Clarify the return value if the line
31643         at end of accessible portion of the buffer has no newline.
31644         * doc/lispref/positions.texi (Text Lines): Document what happens
31645         if the line at end of accessible portion of buffer has no newline.
31646         (Bug#20587)
31648 2015-05-22  Glenn Morris  <rgm@gnu.org>
31650         * admin/charsets/Makefile.in (TRANS_TABLE): Add short aliases.
31652         * admin/charsets/mapconv (LC_ALL): Set to C.
31654         * Makefile.in: Add admin/charsets into top-level clean rules.
31655         (clean): Add admin/charsets.
31656         (maybeclean_dirs): New variable.
31657         (distclean, bootstrap-clean, maintainer-clean): Use $maybeclean_dirs.
31659         * admin/charsets/Makefile.in (LOCAL, local): Fix members.
31661 2015-05-22  Artur Malabarba  <bruce.connor.am@gmail.com>
31663         * lisp/emacs-lisp/package.el (package-selected-packages): Fix doc.
31665 2015-05-22  Glenn Morris  <rgm@gnu.org>
31667         Generate admin/charsets Makefile via configure, and make more portable
31668         * configure.ac (SUBDIR_MAKEFILES): Add admin/charsets/Makefile.
31669         (admin/charsets/Makefile): Generate it.
31670         * admin/charsets/Makefile.in: Rename from Makefile.
31671         (AWK, srcdir, top_srcdir, AM_DEFAULT_VERBOSITY):
31672         New variables, set by configure.
31673         (charsetdir, lispintdir, mapfiledir, AM_V_GEN, am__v_GEN_)
31674         (am__v_GEN_0, am__v_GEN_1, AM_V_at, am__v_at_, am__v_at_0)
31675         (am__v_at_1, LOCAL, mapconv, run_mapconv, big5, compact, cp51932)
31676         (cp932, eucjp_ms, gb180302, gb180304, kuten): New variables.
31677         (TRANS_TABLE, CHARSETS): Add directory prefix to value.
31678         (all): Declare PHONY.
31679         (local): New PHONY target.
31680         (map_template): New template.  Use to define short PHONY aliases.
31681         (*.map): Add directory prefixes to targets and prerequisites.
31682         Respect make verbosity.
31683         (JISC6226.map): Replace non-portable sed append without newline.
31684         (install): Remove rule.
31685         (clean): Only delete temporary sedscript.
31686         (bootstrap-clean, distclean, maintainer-clean, extraclean)
31687         (totalclean): New PHONY rules.
31688         * admin/charsets/mapconv (BASE): Replace basename with expr.
31689         (FILE): Add "mapfiles" subdirectory.
31690         (AWK): New variable.  Use throughout in place of "awk".
31691         (main): Use "gunzip -c" in place of "zcat".
31692         Don't leave whitespace before "p", for older sed.
31693         * admin/charsets/mapfiles/PTCP154: Add final newline,
31694         to make older sed versions happy.
31696 2015-05-22  Stefan Monnier  <monnier@iro.umontreal.ca>
31698         * lisp/autorevert.el: Use lexical-binding.  Fix hook usage.
31699         (global-auto-revert-ignore-buffer, auto-revert-notify-modified-p)
31700         (auto-revert-notify-watch-descriptor): Use defvar-local.
31701         (find-file-hook, auto-revert-tail-mode)
31702         (auto-revert-notify-add-watch): Use setq-local.
31703         (auto-revert-notify-add-watch): Don't call make-local-variable on
31704         kill-buffer-hook (bug#20601).
31706 2015-05-21  Stefan Monnier  <monnier@iro.umontreal.ca>
31708         Change defgeneric so it doesn't completely redefine the function
31709         * lisp/emacs-lisp/cl-generic.el (cl-generic-define): Don't throw away
31710         previously defined methods.
31711         (cl-generic-define-method): Let-bind purify-flag instead of
31712         using `fset'.
31713         (cl--generic-prefill-dispatchers): Only define during compilation.
31714         (cl-method-qualifiers): Remove redundant alias.
31715         (help-fns-short-filename): Silence byte-compiler.
31716         * test/automated/cl-generic-tests.el:
31717         Adjust to new defgeneric semantics.
31719 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
31721         * lisp/emacs-lisp/package.el (package-menu-execute):
31722         Remove reference to remove-dups.
31724 2015-05-21  Kelvin White  <kwhite@gnu.org>
31726         * lisp/erc/erc.el: Hide network/channel messages.
31727         (erc-network-hide-list, erc-channel-hide-list): New lists to define
31728         message types per network/channel.
31729         (erc-add-targets): New function to parse list of targets.
31730         (erc-hide-current-message-p): Modify to check for new targets.
31732 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
31734         Don't quote nil and t in doc strings
31735         This is as per "Tips for Documentation Strings" in the elisp manual.
31736         For consistency, do the same in diagnostics and comments.
31738 2015-05-21  Eli Zaretskii  <eliz@gnu.org>
31740         Fix a minor problem with mouse-face on mode line
31741         * src/xdisp.c (note_mode_line_or_margin_highlight): Reset the
31742         mouse face also if the mouse pointer hovers above mode-line glyphs
31743         that don't come from any Lisp string.  (Bug#20620)
31745 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
31747         * lisp/emacs-lisp/package.el: Fix selected-package logic.
31748         (package-menu-execute): Mark as selected all non-upgrade packages
31749         being installed.
31750         (package-menu--perform-transaction): Don't mark anything.
31752         * lisp/emacs-lisp/package.el: Mode-line progress report.
31753         (package-menu--transaction-status): New variable.
31754         (package-menu-mode, package-menu--perform-transaction): Use it.
31756         * lisp/emacs-lisp/package.el: Better transaction messages.
31757         (package-menu--partition-transaction): New function.
31758         (package-menu--prompt-transaction-p, package-menu-execute):
31759         Use it.
31760         (package-menu--perform-transaction): Don't do any messaging.
31762         * lisp/emacs-lisp/package.el: Revert async package transactions.
31763         (package-menu-async): Update doc.
31764         (package-install-from-archive, package-download-transaction)
31765         (package-install, package-menu--perform-transaction)
31766         (package-menu-execute): Remove asynchronous functionality.
31768 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
31770         Revert doc string changes to f90.el
31771         Problem reported by Glenn Morris in:
31772         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00596.html
31773         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
31774         Revert recent changes to doc strings, as it's intended that they
31775         use grave accent, not quote.
31777 2015-05-20  Bozhidar Batsov  <bozhidar@batsov.com>
31779         * lisp/emacs-lisp/subr-x.el (hash-table-empty-p):
31780         Improve parameter name.
31782         * lisp/emacs-lisp/subr-x.el (hash-table-empty-p): New inline function.
31784 2015-05-20  Paul Eggert  <eggert@cs.ucla.edu>
31786         Don't require help-fns when not needed
31787         * lisp/emacs-lisp/autoload.el, lisp/emacs-lisp/advice.el:
31788         * lisp/emacs-lisp/elint.el:
31789         Don't require help-fns at the top level
31790         * lisp/emacs-lisp/advice.el (ad-arglist):
31791         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
31792         Don't require help-fns.  (Bug#17001)
31794 2015-05-20  Eli Zaretskii  <eliz@gnu.org>
31796         Fix slash collapsing in etags on MS-Windows
31797         * lib-src/etags.c (canonicalize_filename) [DOS_NT]: Separate the
31798         MS-Windows code from the Posix code, and support collapsing both
31799         forward- and back-slashes on MS-Windows.  Fixes a regression found
31800         by the test suite.
31802         Improve documentation of glyphless-char-display
31803         * doc/lispref/display.texi (Glyphless Chars): Improve
31804         documentation of glyphless character display.
31806         Fix "acronym" display of glyphless characters on w32
31807         * src/w32term.c (x_draw_glyphless_glyph_string_foreground): Don't
31808         ignore "acronym" substitutes of 1 character for glyphless characters.
31810 2015-05-20  Oleh Krehel  <ohwoeowho@gmail.com>
31812         Add an automated test for let-when-compile
31813         * test/automated/subr-tests.el (let-when-compile): New test.
31815         Add let-when-compile macro instead of using pcase-let
31816         * lisp/subr.el (let-when-compile): New let-like macro that makes its
31817         bindings known to macros like `eval-when-compile' in the body.
31818         * lisp/emacs-lisp/lisp-mode.el: Change the top-level `pcase-let' to
31819         a `let-when-compile'.  Also comment out the unused lexical var
31820         `el-kws-re'.
31821         The change greatly improves readability, while providing almost the
31822         same (even shorter) byte code: instead of pre-evaluating 10 variables,
31823         tossing them into a list, and destructuring that list a full screen
31824         page later, the variables are simply bound as they are evaluated,
31825         wrapped individually in `eval-when-compile'.
31827 2015-05-20  Artur Malabarba  <bruce.connor.am@gmail.com>
31829         * lisp/emacs-lisp/package.el: "Delete" button in Help buffer.
31830         (package-delete-button-action): New function.
31831         (describe-package-1): Add Delete button.
31833         * lisp/emacs-lisp/package.el: Better dependency description.
31834         (package--used-elsewhere-p): New optional arg, ALL, and return
31835         package-desc objects instead of names.
31836         (package-delete): Update accordingly.
31837         (describe-package-1): Describe which packages require the package.
31839 2015-05-20  Martin Rudalics  <rudalics@gmx.at>
31841         Fix handling and doc-string of FRAME arg of `other-buffer' (Bug#20533)
31842         * src/buffer.c (Fother_buffer): Argument FRAME must denote a live frame.
31843         Fix doc-string.
31845         Improve `switch-to-buffer' in strongly dedicated windows (Bug#20472)
31846         * lisp/window.el (switch-to-buffer-in-dedicated-window): New option.
31847         (switch-to-buffer): If the selected window is strongly dedicated
31848         to its buffer, signal error before prompting for buffer name.
31849         Handle `switch-to-buffer-in-dedicated-window'.
31850         * doc/lispref/windows.texi (Switching Buffers):
31851         Document `switch-to-buffer-in-dedicated-window'.
31853 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
31855         Prefer "this" to “this” in doc strings
31856         This mostly just straightens quotes introduced in my previous patch.
31857         Suggested by Dmitry Gutov in:
31858         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00565.html
31859         * lisp/faces.el, lisp/gnus/gnus-group.el, lisp/ldefs-boot.el:
31860         * lisp/mail/supercite.el, lisp/net/tramp.el, lisp/recentf.el:
31861         * lisp/textmodes/artist.el, lisp/textmodes/rst.el:
31862         * lisp/textmodes/tildify.el, lisp/vc/ediff-util.el:
31863         * lisp/vc/log-edit.el, lisp/xt-mouse.el:
31864         Prefer straight double quotes to curved double quotes in doc strings.
31866         Fix minor quoting problems in doc strings
31867         These were glitches regardless of how or whether we tackle the
31868         problem of grave accent in doc strings.
31869         * lisp/calc/calc-aent.el (math-restore-placeholders):
31870         * lisp/ido.el (ido-ignore-buffers, ido-ignore-files):
31871         * lisp/leim/quail/cyrillic.el ("bulgarian-alt-phonetic"):
31872         * lisp/leim/quail/hebrew.el ("hebrew-new")
31873         ("hebrew-biblical-sil"):
31874         * lisp/leim/quail/thai.el ("thai-kesmanee"):
31875         * lisp/progmodes/idlw-shell.el (idlwave-shell-file-name-chars):
31876         Used curved quotes to avoid ambiguities like ‘`''’ in doc strings.
31877         * lisp/calendar/calendar.el (calendar-month-abbrev-array):
31878         * lisp/cedet/semantic/mru-bookmark.el (semantic-mrub-cache-flush-fcn):
31879         * lisp/cedet/semantic/symref.el (semantic-symref-tool-baseclass):
31880         * lisp/cedet/semantic/tag.el (semantic-tag-copy)
31881         (semantic-tag-components):
31882         * lisp/cedet/srecode/cpp.el (srecode-semantic-handle-:cpp):
31883         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
31884         * lisp/emacs-lisp/byte-opt.el (byte-optimize-all-constp):
31885         * lisp/emacs-lisp/checkdoc.el (checkdoc-message-text-engine):
31886         * lisp/emacs-lisp/generator.el (iter-next):
31887         * lisp/gnus/gnus-art.el (gnus-treat-strip-list-identifiers)
31888         (gnus-article-mode-syntax-table):
31889         * lisp/net/rlogin.el (rlogin-directory-tracking-mode):
31890         * lisp/net/soap-client.el (soap-wsdl-get):
31891         * lisp/net/telnet.el (telnet-mode):
31892         * lisp/org/org-compat.el (org-number-sequence):
31893         * lisp/org/org.el (org-remove-highlights-with-change)
31894         (org-structure-template-alist):
31895         * lisp/org/ox-html.el (org-html-link-org-files-as-html):
31896         * lisp/play/handwrite.el (handwrite-10pt, handwrite-11pt)
31897         (handwrite-12pt, handwrite-13pt):
31898         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
31899         * lisp/progmodes/idlwave.el (idlwave-mode, idlwave-check-abbrev):
31900         * lisp/progmodes/verilog-mode.el (verilog-tool)
31901         (verilog-string-replace-matches, verilog-preprocess)
31902         (verilog-auto-insert-lisp, verilog-auto-insert-last):
31903         * lisp/textmodes/makeinfo.el (makeinfo-options):
31904         * src/font.c (Ffont_spec):
31905         Fix minor quoting problems in doc strings, e.g., missing quote,
31906         ``x'' where `x' was meant, etc.
31907         * lisp/erc/erc-backend.el (erc-process-sentinel-2):
31908         Fix minor quoting problem in other string.
31909         * lisp/leim/quail/ethiopic.el ("ethiopic"):
31910         * lisp/term/tvi970.el (tvi970-set-keypad-mode):
31911         Omit unnecessary quotes.
31912         * lisp/faces.el (set-face-attribute, set-face-underline)
31913         (set-face-inverse-video, x-create-frame-with-faces):
31914         * lisp/gnus/gnus-group.el (gnus-group-nnimap-edit-acl):
31915         * lisp/mail/supercite.el (sc-attribs-%@-addresses)
31916         (sc-attribs-!-addresses, sc-attribs-<>-addresses):
31917         * lisp/net/tramp.el (tramp-methods):
31918         * lisp/recentf.el (recentf-show-file-shortcuts-flag):
31919         * lisp/textmodes/artist.el (artist-ellipse-right-char)
31920         (artist-ellipse-left-char, artist-vaporize-fuzziness)
31921         (artist-spray-chars, artist-mode, artist-replace-string)
31922         (artist-put-pixel, artist-text-see-thru):
31923         * lisp/vc/ediff-util.el (ediff-submit-report):
31924         * lisp/vc/log-edit.el (log-edit-changelog-full-paragraphs):
31925         Use double-quotes rather than TeX markup in doc strings.
31926         * lisp/skeleton.el (skeleton-pair-insert-maybe):
31927         Reword to avoid the need for grave accent and apostrophe.
31928         * lisp/xt-mouse.el (xterm-mouse-tracking-enable-sequence):
31929         Don't use grave and acute accents to quote.
31931 2015-05-19  Stefan Monnier  <monnier@iro.umontreal.ca>
31933         * lisp/emacs-lisp/generator.el (cps--gensym, cps--transform-1):
31934         Silence compiler.
31936 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
31938         Try to port new etags tests to MS-Windows
31939         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
31940         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
31941         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
31942         Adjust to test-case changes below.
31943         * test/etags/Makefile (CSRC): Remove dostorture.c.
31944         Whatever it was trying to test, wasn't working portably.
31945         (LC_ALL): Remove.  Apparently there wasn't an encoding problem,
31946         just a line-ending problem.
31947         * test/etags/c-src/dostorture.c: Remove.
31948         * test/etags/cp-src/c.C: Remove stray CR.
31949         * test/etags/html-src/algrthms.html: Remove trailing CRs.
31950         State UTF-8 as the encoding.  The file is ASCII so it doesn't matter,
31951         but if someone edits it later it should stay UTF-8-compatible.
31953 2015-05-19  Eli Zaretskii  <eliz@gnu.org>
31955         Fix display of overlapping window-specific overlays
31956         * src/keyboard.c (adjust_point_for_property): When adjusting point
31957         due to display strings, ignore overlays that are specific to
31958         windows other than the currently selected one.
31959         * src/xdisp.c (handle_single_display_spec): If the display
31960         property comes from an overlay, arrange for buffer iteration to
31961         resume only after the end of that overlay.  (Bug#20607)
31963 2015-05-19  Dmitry Gutov  <dgutov@yandex.ru>
31965         New command icomplete-force-complete-and-exit
31966         * lisp/icomplete.el (icomplete-force-complete-and-exit):
31967         New command
31968         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00461.html)
31969         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00516.html).
31970         (icomplete-minibuffer-map): Bind C-j to it.
31971         (icomplete-forward-completions, icomplete-backward-completions):
31972         Mention the new command in the docstring.
31973         * lisp/minibuffer.el (minibuffer-force-complete-and-exit):
31974         Revert the previous fix for bug#17545.
31976 2015-05-19  Martin Rudalics  <rudalics@gmx.at>
31978         Fix last commit
31980         In Elisp manual explain how to override window manager positioning
31981         (Bug#20552)
31982         * doc/lispref/frames.texi (Position Parameters): Give example of
31983         how to override a window manager positioning decision.
31985         Clarify concept of "surrogate minibuffer frames" (Bug#20538)
31986         * src/frame.c (Fdelete_frame): In doc-string mention that frame
31987         can't be deleted if it has a surrogate minibuffer.
31988         * doc/lispref/frames.texi (Minibuffers and Frames)
31989         (Deleting Frames): Explain "surrogate minibuffer frames".
31991         * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 19/12 MB.
31993 2015-05-18  Glenn Morris  <rgm@gnu.org>
31995         Add option to ignore commit lines matching a pattern in ChangeLog
31996         * build-aux/gitlog-to-changelog: Add --ignore-line option.
31997         * build-aux/gitlog-to-emacslog: Ignore lines matching '^; '.
31999 2015-05-18  Paul Eggert  <eggert@cs.ucla.edu>
32001         Don't skip new etags tests on non-UTF-8 hosts
32002         Problem reported by Eli Zaretskii for MS-Windows.
32003         * test/etags/Makefile (UTF8_LOCALE, UTF8_ENCODING): Remove.
32004         (LC_ALL): Set to C if the current locale isn't UTF-8.
32005         (.PHONY): Remove ediff_1 thru ediff_5.
32006         (check): Always run.
32008 2015-05-18  Glenn Morris  <rgm@gnu.org>
32010         * lisp/calculator.el (calculator-funcall):
32011         * lisp/textmodes/artist.el (artist-spray-random-points):
32012         Use standard degree/radian conversion utilities.
32014         Further lisp-complete-symbol related cleanup.
32015         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol):
32016         Unadvertise non-functional argument.  Replace obsolete alias.
32018 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
32020         Add a test case for Maven warning ouput
32021         * test/automated/compile-tests.el
32022         (compile-tests--test-regexps-data): Add a case for Maven warning
32023         ouput.
32024         (compile--test-error-line): Check the compilation message type, if
32025         it's specified in the test data.
32027 2015-05-18  Paul Pogonyshev  <pogonyshev@gmail.com>
32029         Update Maven compilation-mode entry to distinguish warnings
32030         * lisp/progmodes/compile.el
32031         (compilation-error-regexp-alist-alist): Update Maven entry to
32032         distinguish warnings (bug#20556).
32034 2015-05-18  Przemysław Wojnowski  <esperanto@cumego.com>
32036         * test/automated/sgml-mode-tests.el: New file.
32038 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
32040         Improve handling of the first Git revision
32041         * lisp/vc/log-view.el (log-view-toggle-entry-display): When
32042         there's no next entry, delete until the end of the buffer.
32043         (log-view-end-of-defun-1): Stop at eob.
32044         * lisp/vc/vc-annotate.el
32045         (vc-annotate-show-diff-revision-at-line-internal): Don't give up
32046         when previous-revision is nil.
32047         * lisp/vc/vc-git.el (vc-git-expanded-log-entry): End the arguments
32048         with `--' to avoid ambiguity.
32049         (vc-git-annotate-extract-revision-at-line): Exclude `^' from the
32050         returned revision string.
32051         (vc-git-annotate-time): Expect `^' before the first revision.
32052         * lisp/vc/vc-git.el (vc-git-diff): Diff against an empty tree if
32053         REV1 is nil, and REV2 is not.
32054         * lisp/vc/vc.el: Update the description of the `diff' function.
32056 2015-05-18  Oleh Krehel  <ohwoeowho@gmail.com>
32058         Allow checkdoc to be called in batch
32059         * lisp/emacs-lisp/checkdoc.el (checkdoc-error): When `noninteractive'
32060         is non-nil, echo the error with `warn'.
32061         How it can be used in -batch:
32062         (with-current-buffer (find-file "checkdoc.el")
32063           (checkdoc-current-buffer t))
32065 2015-05-18  Glenn Morris  <rgm@gnu.org>
32067         * lisp/calendar/solar.el (solar-ecliptic-coordinates): Use float-pi.
32069 2015-05-17  Paul Eggert  <eggert@cs.ucla.edu>
32071         * admin/notes/unicode: New section "binary files".
32073         Change new etags test to use UTF-8 encoding
32074         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
32075         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
32076         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
32077         * test/etags/html-src/index.shtml, test/etags/html-src/software.html:
32078         * test/etags/html-src/softwarelibero.html:
32079         Switch to UTF-8 encoding.
32080         * test/etags/Makefile (SRCS): Adjust to switch to UTF-8.
32081         Remove Makefile, as it's too incestuous to have the test input
32082         include the build procedure.
32083         (UTF8_LOCALE, UTF_ENCODING): New macros.
32084         (LC_ALL): If possible, set to a UTF-8 encoding if not already UTF-8.
32085         (check): Skip if not UTF-8.
32086         (.PHONY): New rule.
32087         (FRC): Remove, as superseded by .PHONY.  All uses removed.
32088         (regexfile): Prefer printf to echo when outputting oddball chars.
32089         (.PRECIOUS): Remove, as these files are not built.
32091         Rename 'foo-gzipped' to 'foo.gz'
32092         * test/automated/data/decompress/foo.gz:
32093         Rename from test/automated/data/decompress/foo-gzipped,
32094         to make it easier for other tools to tell that it's compressed.
32095         * test/automated/zlib-tests.el (zlib--decompress):
32096         Adjust to renamed file.
32098 2015-05-17  Dmitry Gutov  <dgutov@yandex.ru>
32100         Set up default-directory
32101         * lisp/vc/vc-annotate.el (vc-annotate-mode-map): Remove duplicate
32102         binding for `v'.
32103         (vc-annotate-show-changeset-diff-revision-at-line): Set up an
32104         appropriate value for default-directory.
32106 2015-05-17  Samer Masterson  <samer@samertm.com>
32108         * lisp/eshell/em-term.el (eshell-term-sentinel):
32109         No-op by default, only kills term buffer if
32110         `eshell-destroy-buffer-when-process-dies' is non-nil.  (Bug#18108)
32111         (eshell-destroy-buffer-when-process-dies): New custom to preserve
32112         previous behavior.
32114         eshell: Introduce new buffer syntax
32115         The new buffer syntax '#<buffer-name>' is equivalent to '#<buffer
32116         buffer-name>'.  Remove `eshell-buffer-shorthand', as it is no longer
32117         needed (Bug#19319).
32118         * lisp/eshell/esh-io.el (eshell-buffer-shorthand): Remove.
32119         (eshell-get-target): Remove shorthand-specific code.
32120         * lisp/eshell/esh-arg.el (eshell-parse-special-reference): Parse
32121         '#<buffer-name>'.
32123 2015-04-26  Jan D  <jan.h.d@swipnet.se>
32125         Add PBM support for cairo
32126         * src/image.c (xcolor_to_argb32): New function.
32127         (get_spec_bg_or_alpha_as_argb): Call xcolor_to_argb32.
32128         (pbm_load, png_load_body, jpeg_load_body, gif_load): Only use
32129         XImagePtr if ! USE_CAIRO.
32130         (pbm_load): Add cairo support.
32132 2015-04-12  Jan D  <jan.h.d@swipnet.se>
32134         * src/xterm.c (x_free_cr_resources): Rename from x_prepare_for_xlibdraw.
32135         (x_cr_draw_frame, x_cr_export_frames, x_shift_glyphs_for_insert)
32136         (x_free_frame_resources): Rename x_prepare_for_xlibdraw to
32137         x_free_cr_resources.
32139         Handle specified bg in images.  Use generic libpng code for PNGs.
32140         * src/image.c (get_spec_bg_or_alpha_as_argb)
32141         (create_cairo_image_surface): New functions when USE_CAIRO.
32142         (xpm_load): Call the above functions.  Handle XPM without mask
32143         when USE_CAIRO.
32144         (png_load_body): Handle USE_CAIRO case.
32145         (png_load): Remove USE_CAIRO specific fuction, modify png_load_body
32146         instead.
32147         (jpeg_load_body): Call create_cairo_image_surface.
32148         (gif_load, svg_load_image): Handle specified background, call
32149         create_cairo_image_surface.
32150         * src/xterm.c (x_draw_image_glyph_string): Add missing USE_CAIRO.
32152 2015-04-11  Jan D  <jan.h.d@swipnet.se>
32154         Support GIF and TIFF with cairo
32155         * configure.ac: Allow jpeg with cairo.
32156         Allow tiff and gif with cairo.
32157         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
32158         (tiff_load): Create cairo image surface if USE_CAIRO.
32159         (gif_load): Ditto.
32161         Support JPEG with USE_CAIRO
32162         * configure.ac: Allow jpeg with cairo.
32163         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
32165 2015-04-05  Jan D  <jan.h.d@swipnet.se>
32167         Support RSVG and cairo
32168         * configure.ac: Allow rsvg with cairo.  Move back HAVE_RSVG.
32169         * src/dispextern.h (struct image): Add cr_data2 if cairo.
32170         * src/image.c: #undef COLOR_TABLE_SUPPORT when USE_CAIRO.
32171         (x_clear_image): Free cr_data and cr_data2 if set.
32172         (xpm_load): Assign data to cr_data2.
32173         (svg_load_image): Convert from GdkPixbuf to CAIRO_FORMAT_ARGB32.
32175 2015-04-03  Jan D  <jan.h.d@swipnet.se>
32177         Introduce limited Xpm support (32 bit ZPixmap) for Cairo
32178         * configure.ac (HAVE_RSVG): Move after cairo.
32179         (USE_CAIRO): Disable rsvg, don't disable Xpm.
32180         * src/image.c (prepare_image_for_display): Don't load if USE_CAIRO.
32181         (x_clear_image): If USE_CAIRO, also free possible img->ximg->obdata and
32182         don't return early.
32183         (ALLOC_XPM_COLORS): Don't define when USE_CAIRO.
32184         (xpm_load): Convert simple Xpms (32 bit ZPixmap) to CAIRO_FORMAT_ARGB32
32185         and create a surface.
32187         Tool tips for menus did not show any text.
32188         * src/xterm.c (x_update_begin): Don't create any surface for non-visible
32189         tip frames, the geometry may be wrong.
32191         Add CAIRO_CFLAGS to lwlib/Makefile.in
32192         * Makefile.in (CAIRO_CFLAGS): Add.
32194 2015-02-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
32196         * src/ftcrfont.c (ftcrfont_draw): Don't flush when drawing to screen.
32198 2015-02-16  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
32200         Draw outermost line using black relief and erase corners also for cairo.
32201         * src/xterm.c [USE_CAIRO]: Include math.h.
32202         (enum corners) [USE_CAIRO]: New enum.
32203         (x_erase_corners_for_relief) [USE_CAIRO]: New function.
32204         (x_draw_relief_rect) [USE_CAIRO]: Use it.  If box width is larger
32205         than 1, draw the outermost line using the black relief.
32207         * src/xterm.c (x_fill_trapezoid_for_relief):
32208         Remove unnecessary cairo_close_path.
32210 2015-02-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
32212         * src/xterm.c (x_draw_relief_rect) [USE_CAIRO]: Reset clipping.
32214         * src/xterm.c (x_draw_stretch_glyph_string):
32215         Call x_reset_clip_rectangles instead of XSetClipMask.
32217         Use int instead of unsigned int for width and height args.
32218         * src/xterm.c (x_cr_draw_image, x_fill_rectangle, x_draw_rectangle)
32219         (x_fill_trapezoid_for_relief): Use int instead of unsigned int for
32220         width and height args.
32222         Modernize k&r cairo-related function declarations.
32223         * src/gtkutil.c (xg_page_setup_dialog, xg_get_page_setup, draw_page)
32224         (xg_print_frames_dialog): Modernize k&r declarations.
32225         * src/xfns.c (Fx_export_frames, Fx_page_setup_dialog, Fx_get_page_setup)
32226         (Fx_print_frames_dialog): Modernize k&r declarations.
32227         * src/xterm.c (x_gc_get_ext_data, x_extension_initialize)
32228         (x_begin_cr_clip, x_end_cr_clip, x_set_cr_source_with_gc_foreground)
32229         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
32230         (x_cr_destroy_fringe_bitmap, x_cr_draw_frame, x_cr_accumulate_data)
32231         (x_cr_destroy, x_cr_export_frames, x_prepare_for_xlibdraw)
32232         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
32233         (x_draw_rectangle, x_clear_window, x_fill_trapezoid_for_relief)
32234         (x_clear_area): Modernize k&r declarations.
32236         Implement wave-style variant of underlining for cairo.
32237         * src/xterm.c (x_draw_horizontal_wave) [USE_CAIRO]: New function.
32238         (x_draw_underwave) [USE_CAIRO]: Use it.
32240         * src/xterm.c (x_draw_window_divider): Use x_fill_rectangle
32241         instead of XFillRectangle.
32243 2015-02-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
32245         Fix fringe bitmap initialization for cairo
32246         * src/fringe.c (init_fringe_bitmap) [USE_CAIRO]: Adjust bitmap
32247         data for cairo image surface.
32248         * src/xterm.c (x_cr_define_fringe_bitmap):
32249         Call cairo_surface_mark_dirty.
32251 2015-02-11  Jan D  <jan.h.d@swipnet.se>
32253         Add cairo drawing
32254         * configure.ac (with-cairo): New option.
32255         (USE_CAIRO): Default to yes for Gtk+ 3.  Add code to test for cairo,
32256         set CAIRO_CFLAGS, CAIRO_LIBS.  Add ftcrfonto to FONT_OBJ if cairo.
32257         Output "Does Emacs use cairo?".
32258         * lisp/version.el (emacs-version): Add cairo version.
32259         * src/Makefile.in (CAIRO_CFLAGS, CAIRO_LIBS): New variables.
32260         (FONT_OBJ): Add comment about ftcrfont.
32261         (ALL_CFLAGS): Add CAIRO_CFLAGS.
32262         (LIBES): Add CAIRO_LIBS.
32263         * src/dispextern.h (struct image): Add cr_data for cairo.
32264         (x_cr_init_fringe): Declare.
32265         * src/font.c (syms_of_font): Call syms_of_ftcrfont for cairo.
32266         * src/font.h (ftcrfont_driver, syms_of_ftcrfont): Declare
32267         * src/fringe.c (x_cr_init_fringe): New function name that shares code
32268         with w32_init_fringe.
32269         * src/ftcrfont.c: New font driver for cairo, based on the ftfont driver.
32270         * src/ftfont.c (ftfont_info_size); New global variable.
32271         (ftfont_open2): New extern function almost the same as old ftfont_open,
32272         but takes the font_object as argument.
32273         (ftfont_open): Build font object and call ftfont_open2.
32274         * src/ftfont.h (ftfont_open2, ftfont_info_size): Declare.
32275         * src/gtkutil.c (xg_clear_under_internal_border)
32276         (xg_update_scrollbar_pos, xg_update_horizontal_scrollbar_pos):
32277         Only queue_draw if not cairo.  Change args to x_clear_area.
32278         (xg_get_font): Use Qftcr when using cairo, Qxft otherwise.
32279         (xg_page_setup_dialog, xg_get_page_setup, draw_page)
32280         (xg_print_frames_dialog): New functions for printing.
32281         * src/gtkutil.h (xg_page_setup_dialog, xg_get_page_setup)
32282         (xg_print_frames_dialog): Declare.
32283         * src/image.c: Add defined (USE_CAIRO) for PNG.
32284         Add !defined USE_CAIRO for W32 PNG code.
32285         (x_clear_image): If cairo, destroy the surface in cr_data.
32286         (png_load): Add new cairo compatible implementation.
32287         (lookup_image_type): Add defined (USE_CAIRO) for define png_type.
32288         * src/xfns.c: New section Printing.
32289         (x-export-frames, x-page-setup-dialog, x-get-page-setup)
32290         (x-print-frames-dialog): New printing functions.
32291         (Fx_create_frame, x_create_tip_frame): Register ftcrfont if cairo.
32292         (syms_of_xfns): Defsym Qorientation, Qtop_margin, Qbottom_margin,
32293         Qportrait, Qlandscape, Qreverse_portrait, Qreverse_landscape).
32294         (syms_of_xfns): Provide cairo and defvar cairo-version-string.
32295         defsubr Sx_page_setup_dialog, Sx_get_page_setup, Sx_print_frames_dialog.
32296         * src/xterm.c (x_clear_area1, x_prepare_for_xlibdraw)
32297         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
32298         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
32299         (x_gc_get_ext_data, x_extension_initialize, x_cr_accumulate_data):
32300         Declare.
32301         (FRAME_CR_CONTEXT, FRAME_CR_SURFACE): New macros.
32302         (max_fringe_bmp, fringe_bmp): New variables.
32303         (x_gc_get_ext_data, x_extension_initialize)
32304         (x_cr_destroy_surface, x_begin_cr_clip, x_end_cr_clip)
32305         (x_set_cr_source_with_gc_foreground)
32306         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
32307         (x_cr_destroy_fringe_bitmap, x_cr_draw_image, x_cr_draw_frame)
32308         (x_cr_accumulate_data, x_cr_destroy, x_cr_export_frames)
32309         (x_prepare_for_xlibdraw, x_set_clip_rectangles)
32310         (x_reset_clip_rectangles, x_fill_rectangle, x_draw_rectangle)
32311         (x_clear_window, x_fill_trapezoid_for_relief): New functions.
32312         (x_update_begin): Create cairo surface if needed.
32313         (x_draw_vertical_window_border): Call x_fill_rectangle for cairo.
32314         (x_update_end): Paint cairo drawing surface to xlib surface.
32315         (x_clear_under_internal_border, x_after_update_window_line): Adjust
32316         arguments to x_clear_area.
32317         (x_draw_fringe_bitmap): Call x_fill_rectangle.  Get GC values and
32318         call x_cr_draw_image for cairo.  Call x_reset_clip_rectangles instead
32319         of XSetClipMask.
32320         (x_set_glyph_string_clipping)
32321         (x_set_glyph_string_clipping_exactly): Use x_set_clip_rectangles
32322         instead of XSetClipRectangles.
32323         (x_clear_glyph_string_rect, x_draw_glyph_string_background):
32324         Use x_fill_rectangle instead of XFillRectangle.
32325         (x_draw_glyph_string_foreground)
32326         (x_draw_composite_glyph_string_foreground)
32327         (x_draw_glyphless_glyph_string_foreground): Use x_draw_rectangle
32328         instead of XDrawRectangle.
32329         (x_draw_relief_rect): Add code for USE_CAIRO.
32330         Call x_reset_clip_rectangles instead of XSetClipMask.
32331         (x_draw_box_rect): x_set_clip_rectangles instead of XSetClipRectangles,
32332         x_fill_rectangle instead of XFillRectangle, x_reset_clip_rectangles
32333         instead of XSetClipMask.
32334         (x_draw_image_foreground, x_draw_image_foreground_1):
32335         x_draw_rectangle instead of XDrawRectangle.
32336         (x_draw_glyph_string_bg_rect): x_fill_rectangle instead of
32337         XFillRectangle.
32338         (x_draw_image_glyph_string): If img has cr_data, use it as
32339         a cairo surface.
32340         (x_draw_stretch_glyph_string): x_set_clip_rectangles instead of
32341         XSetClipRectangles, x_fill_rectangle instead of XFillRectangle.
32342         (x_draw_glyph_string): x_fill_rectangle instead of XFillRectangle.,
32343         x_reset_clip_rectangles instead of XSetClipMask.
32344         (x_shift_glyphs_for_insert): Call x_prepare_for_xlibdraw.
32345         (x_clear_area1): New function that calls XClearArea.
32346         (x_clear_area): Takes frame as parameter, calls x_clear_area1 for
32347         non-cairo.
32348         (x_clear_frame): x_clear_window instead of XClearWindow.
32349         (x_scroll_run): Set frame garbaged if cairo.
32350         (XTmouse_position): Initialize *part to 0.
32351         (x_scroll_bar_create): Adjust arguments to x_clear_area.
32352         (x_scroll_bar_set_handle): x_clear_area1 instead of x_clear_area,
32353         x_fill_rectangle instead of XFillRectangle.
32354         (XTset_vertical_scroll_bar, XTset_horizontal_scroll_bar): Adjust
32355         arguments to x_clear_area.
32356         (x_scroll_bar_expose): x_draw_rectangle instead of XDrawRectangle.
32357         (handle_one_xevent): Adjust arguments to x_clear_area.
32358         Destroy cairo surface for frame if ConfigureNotify.
32359         (x_clip_to_row): x_set_clip_rectangles instead of XSetClipRectangles.
32360         (x_draw_hollow_cursor): x_draw_rectangle instead of XDrawRectangle,
32361         x_reset_clip_rectangles instead of XSetClipMask.
32362         (x_draw_bar_cursor): x_fill_rectangle instead of XFillRectangle,
32363         x_reset_clip_rectangles instead of XSetClipMask.
32364         (x_clear_frame_area): Adjust arguments to x_clear_area.
32365         (x_free_frame_resources): Call x_prepare_for_xlibdraw.
32366         (x_term_init): Call x_extension_initialize if cairo.
32367         (x_redisplay_interface): Add x_cr_define_fringe_bitmap,
32368         x_cr_destroy_fringe_bitmap for cairo.
32369         (x_initialize): Call x_cr_init_fringe for cairo.
32370         * src/xterm.h: Add include of cairo header files.
32371         (x_bitmap_record): Add img if cairo.
32372         (x_gc_ext_data): New struct for cairo.
32373         (x_display_info): Add ext_codes for cairo.
32374         (x_output): Add cr_context and cr_surface for cairo.
32375         (x_clear_area): Change arguments from Display*/Window to frame pointer.
32376         (x_query_color, x_begin_cr_clip, x_end_cr_clip)
32377         (x_set_cr_source_with_gc_foreground, x_set_cr_source_with_gc_background)
32378         (x_cr_draw_frame, x_cr_export_frames): Declare.
32380 2015-05-17  Johan Bockgård  <bojohan@gnu.org>
32382         Fix integer-valued `mouse-highlight' (Bug#20590)
32383         * src/xterm.c (handle_one_xevent) [USE_GTK]: Fix ifdef scope.
32385 2015-05-17  Eli Zaretskii  <eliz@gnu.org>
32387         MS-Windows followup for ASCIIfication of curved quotes
32388         * lisp/term/w32console.el (terminal-init-w32console): Repeat the
32389         test for curved quotes being displayable, after switching the
32390         terminal encoding.  (Bug#20545)
32392 2015-05-17  Jan D  <jan.h.d@swipnet.se>
32394         Add comment that x_shift_glyphs_for_insert is never called
32395         * src/xterm.c (x_shift_glyphs_for_insert, x_redisplay_interface):
32396         Add comment that this function is never called.
32398 2015-05-16  Glenn Morris  <rgm@gnu.org>
32400         * src/lisp.mk: Remove from repository and generate at build-time.
32401         * src/Makefile.in (lisp.mk): New rule to generate from loadup.el.
32402         (shortlisp_filter): New variable.
32403         (emacs$(EXEEXT), $(etc)/DOC): Depend on lisp.mk.
32404         (distclean): Remove lisp.mk.
32405         * Makefile.in ($(MAKEFILE_NAME)): No longer depend on src/lisp.mk.
32406         * lisp/loadup.el: Tweak layout to make it easier to parse.
32407         * make-dist: Do not distribute src/lisp.mk.
32409 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
32411         Display shorter dates in Git annotate output
32412         * lisp/vc/vc-git.el (vc-git-annotate-command): Use the short date
32413         format (when not overridden with vc-git-annotate-switches).
32414         (vc-git-annotate-time): Support the short format, as well as ISO
32415         8601 that has been used until now (bug#5428).
32417 2015-05-16  Paul Eggert  <eggert@cs.ucla.edu>
32419         ASCIIfy curved quotes on displays lacking them
32420         * lisp/international/mule-cmds.el (set-locale-environment):
32421         If curved quotes don't work, display straight ASCII approximations
32422         (Bug#20545).
32424 2015-05-16  Glenn Morris  <rgm@gnu.org>
32426         Small src/Makefile simplification
32427         * src/lisp.mk (shortlisp): Rename from lisp, remove $lispsource prefix.
32428         * src/Makefile.in (lisp): Derive from shortlisp.
32429         ($(etc)/DOC): Use $shortlisp rather than parsing lisp.mk.
32431 2015-05-16  Eli Zaretskii  <eliz@gnu.org>
32433         * lisp/help-mode.el (help-go-forward): Doc fix.
32434         (Bug#20577)
32436         * doc/lispref/debugging.texi (Profiling): Improve indexing.
32437         (Bug#20576)
32439 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
32441         * lisp/vc/vc-git.el (vc-git-resolve-when-done): Use `unless' to
32442         have one fewer `not'.
32444         * lisp/vc/vc-git.el (vc-git-diff-switches)
32445         (vc-git-annotate-switches, vc-git-resolve-conflicts)
32446         (vc-git-program, vc-git-root-log-format): Remove the redundant
32447         :group declarations.
32449 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
32451         Removes the predicate from lisp-complete-symbol (Bug#20456)
32452         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol): Do not use predicate
32453         and remove it from the docstring.
32455 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
32457         Add new option vc-git-resolve-conflicts
32458         * lisp/vc/vc-git.el (vc-git-resolve-conflicts): New variable.
32459         (vc-git-find-file-hook): Add to after-save-hook only when the
32460         above is non-nil.
32461         (vc-git-resolve-when-done): Update to honor the new variable.
32462         (Bug#20292)
32464 2015-05-16  Artur Malabarba  <bruce.connor.am@gmail.com>
32466         * lisp/emacs-lisp/tabulated-list.el: Don't error on null header-string.
32467         (tabulated-list-init-header): Document new behavior.
32468         (tabulated-list-print-fake-header): Do nothing if
32469         `tabulated-list--header-string' is nil.
32470         (tabulated-list--header-string): Add a docstring.
32471         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
32472         * etc/NEWS: Document it.
32474 2015-05-15  Leo Liu  <sdl.web@gmail.com>
32476         Revert "Fix cps--gensym"
32477         * lisp/emacs-lisp/generator.el (cps--gensym): Revert commit
32478         fbda511ab8069d0115eafca411a43353b85431b1 on 2015-05-14.
32480 2015-05-15  Glenn Morris  <rgm@gnu.org>
32482         Replace AC_SUBST_FILE in configure with include in Makefiles
32483         * configure.ac (DEPDIR, MKDEPDIR, deps_frag, lwlib_deps_frag)
32484         (oldxmenu_deps_frag, lisp_frag): Remove output variables/files.
32485         (AUTO_DEPEND): New output variable.
32486         * lwlib/Makefile.in (AUTO_DEPEND): New, set by configure.
32487         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
32488         (lwlib_deps_frag): Replace by conditional include.
32489         * lwlib/autodeps.mk: Remove file.
32490         * oldXMenu/Makefile.in (AUTO_DEPEND): New, set by configure.
32491         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
32492         (oldxmenu_deps_frag): Replace by conditional include.
32493         * oldXMenu/autodeps.mk: Remove file.
32494         * src/Makefile.in (AUTO_DEPEND): New, set by configure.
32495         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
32496         (lisp_frag): Replace by an include.
32497         (deps_frag): Replace by conditional include.
32498         * src/autodeps.mk: Remove file.
32500         Tweak japanese.el's loading of dependencies
32501         * lisp/loadup.el: Explicitly load cp51932 and eucjp-ms.
32502         * lisp/language/japanese.el: Use require rather than load.
32503         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
32504         Provide a feature.
32505         * admin/charsets/eucjp-ms.awk, admin/charsets/cp51932.awk:
32506         Provide a feature in the generated file.
32508 2015-05-15  Jan D  <jan.h.d@swipnet.se>
32510         Fix NS warnings
32511         * src/nsmenu.m (ns_popup_dialog)
32512         * src/nsimage.m (initFromXBM:width:height:fg:bg:)
32513         * src/nsfns.m (Fx_create_frame): Remove unused variables.
32514         (Fns_read_file_name): Initialize fname, remove ret.
32515         * src/nsterm.m (ns_draw_window_cursor): Handle DEFAULT_CURSOR in switch.
32516         (ns_get_color, ns_set_horizontal_scroll_bar, keyDown):
32517         Remove unused variable.
32518         (init): Add parantesis in if.
32519         (ns_create_terminal): Assign set_horizontal_scroll_bar_hook.
32521 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
32523         Fix a enum conversion warning in macfont.m
32524         * src/macfont.h (CharacterCollection): Typedef to NSCharacterCollection.
32525         (MAC_CHARACTER_COLLECTION_*): Use the NS variants.
32527 2015-05-15  Eli Zaretskii  <eliz@gnu.org>
32529         * lisp/textmodes/ispell.el (ispell-aspell-find-dictionary):
32530         Support Aspell dictionaries with names like "de-alt".  (Bug#20581)
32532 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
32534         * lisp/cus-start.el: Add ns-confirm-quit.
32536         Fix warnings on OSX 10.10
32537         * src/nsfns.m (MODAL_OK_RESPONSE): New define for different
32538         OSX versions.
32539         (Fns_read_file_name): Check against MODAL_OK_RESPONSE.
32540         (compute_tip_xy): Use convertRectToScreen for OSX >= 10.7
32541         * src/nsmenu.m (initWithContentRect:styleMask:backing:defer:)
32542         * src/nsimage.m (allocInitFromFile, setPixmapData): Only call
32543         setScalesWhenResized for OSX < 10.6.
32544         * src/nsterm.h (EmacsScroller): Declare scrollerWidth.
32545         * src/nsterm.m (ns_copy_bits): New function that does not use
32546         deprecated NSCopyBits.
32547         (ns_scroll_run, ns_shift_glyphs_for_insert): Call ns_copy_bits.
32548         (runAlertPanel): New function.
32549         (applicationShouldTerminate:): Call runAlertPanel.
32550         (initFrameFromEmacs, toggleFullScreen:): Only call
32551         useOptimizedDrawing for OSX < 10.10.
32552         (initFrameFromEmacs:): Only call allocateGState for OSX < 10.10.
32553         (windowWillUseStandardFrame:defaultFrame:): Cast arg to abs to int.
32554         (draggingEntered:): Returns NSDragOperation.
32555         (scrollerWidth): Use scrollerWidthForControlSize for OSX >= 10.7.
32557 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
32559         * lisp/emacs-lisp/package.el: Don't ensure-init during startup.
32560         (package--init-file-ensured): New variable.
32561         (package-initialize, package--ensure-init-file): Use it.
32563 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
32565         Honor :fore/background for XBM on NS (Bug#14969)
32566         * src/nsterm.h (EmacsImage): Add xbm_fg, remove initFromSkipXBM,
32567         initFromXBM takes bg, fg args, remove flip arg.
32568         (ns_image_from_XBM): Add bg, fg args.
32569         * src/image.c (x_create_bitmap_from_data)
32570         (Create_Pixmap_From_Bitmap_Data): ns_image_from_XBM takes bg, fg args.
32571         * src/nsimage.m (ns_image_from_XBM): Add fg, bg args, pass to
32572         initFromXBM.  Remove flip arg.
32573         (initFromSkipXBM): Move code to initFromXBM.
32574         (initFromXBM): Actually set fg and bg, instead of playing alpha games.
32575         Use fg, bg from args (Bug#14969).  Remove if (length) section, was
32576         always false.
32577         Remove bit flipping (bitPat, swt), generated incorrect images when
32578         width/height wasn't a multiple of 8.
32579         (setXBMColor:): Modify planes by comparing to saved xbm_fg.
32580         * src/nsterm.m (ns_draw_fringe_bitmap): initFromXBM takes fg, bg args,
32581         remove flip arg.
32583 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
32585         * lisp/emacs-lisp/package.el: Be more careful with the init file.
32586         (package--ensure-init-file): Check that user-init-file is set,
32587         exists, is readable, and is writable.  (Bug#20584)
32588         Also expand the docstring.
32590 2015-05-14  Wilson Snyder  <wsnyder@wsnyder.org>
32592         Sync with upstream verilog-mode revision 6232468
32593         * lisp/progmodes/verilog-mode.el
32594         (verilog-font-lock-grouping-keywords-face)
32595         (verilog-highlight-grouping-keywords): Fix use of face when
32596         `verilog-highlight-grouping-keywords' set.  Reported by Jeff Pompa.
32597         (verilog-auto-reset): Fix AUTORESET to ignore member resets if
32598         parent is reset, bug906.  Reported by Ken Schmidt.
32599         (verilog-auto-inout-module): Add fourth regexp argument to
32600         AUTOINOUTMODULE and AUTOINOUTCOMP for signals to not match, bug856.
32601         Reported by John Tillema.
32602         (verilog-auto-inst-port): Fix AUTOINST interfaces to not show
32603         modport if signal attachment is itself a modport.  Reported by
32604         Matthew Lovell.
32605         (verilog-auto-reset, verilog-auto-sense-sigs): Fix AUTORESET with
32606         always_comb and always_latch, bug844.  Reported by Greg Hilton.
32607         (verilog-at-constraint-p, verilog-beg-of-statement-1): Fix hanging
32608         with many curly-bracket pairs, bug663.
32609         (verilog-set-auto-endcomments): Fix end comments for functions of
32610         type void, etc.  Reported by Alex Reed.
32611         (verilog-do-indent): Fix electric tab deleting form-feeds.  Note
32612         caused by indent-line-to deleting tabls pre 24.5.
32613         (verilog-nameable-item-re): Fix nameable items that can have an
32614         end-identifier to include endchecker, endgroup, endprogram,
32615         endproperty, and endsequence.  Reported by Alex Reed.
32616         (verilog-label-be): When auto-commenting a buffer, consider
32617         auto-comments on all known keywords (not just a subset thereof).
32618         Reported by Alex Reed.
32619         (verilog-auto-end-comment-lines-re)
32620         (verilog-end-block-ordered-re, verilog-set-auto-endcomments):
32621         Automatically comment property/endproperty blocks to match other
32622         similar blocks like sequence/endsequence, function/endfunction, etc.
32623         Reported by Alex Reed.
32624         (verilog-set-auto-endcomments): Detect the function- or task-name
32625         when auto-commenting blocks that lack an explicit portlist.
32626         Reported by Alex Reed.
32627         (verilog-auto, verilog-auto-insert-last): Add AUTOINSERTLAST to
32628         allow post-AUTO user fixups, bug826.  Reported by Dennis Muhlestein.
32629         (verilog-no-indent-begin-re): When `verilog-indent-begin-after-if'
32630         is nil, fix indenting initial/final to match always statements,
32631         bug825.  Reported by Tim Clapp.
32632         (verilog-extended-complete-re): Fix indentation of DPI-C imports
32633         with c_identifiers, and DPI-C imports, bug557.  Reported by ZeDong
32634         Mao and Jason Forkey.
32635         (verilog-read-decls): Fix parsing typed interfaces.  Fix
32636         AUTOINOUTMODPORT missing types.  Reported by Stephan Bourduas.
32637         Fix localparam not being ignored in AUTOINSTPARAM,
32638         bug889.  Reported by Shannon Hill.
32639         (verilog-auto-output-every): Add regexp to AUTOOUTPUTEVERY,
32640         bug793.  Reported by Pierre-David Pfister.
32641         (verilog-auto-arg-format, verilog-auto-arg-ports):
32642         Add verilog-auto-arg-format to support newlines in AUTOARG.
32643         Reported by Jie Xiao.
32644         (verilog-batch-execute-func): Do not batch re-auto files loaded by
32645         Local Variables.  Fix printing "no changes to be saved" with
32646         verilog-batch.  Reported by Dan Dever.
32647         (verilog-auto-inout-module): Fix AUTOINOUTMODULE not inserting
32648         interface-only modules, bug721.  Reported by Dean Hoyt.
32649         Author: Alex Reed <acreed4@gmail.com>
32650         * lisp/progmodes/verilog-mode.el (verilog-beg-of-statement):
32651         Don't treat '<keyword>:<identifier>' as the start of a labeled
32652         statement, bug905.  Reported by Enzo Chi.
32653         (verilog-directive-re, verilog-compiler-directives)
32654         (verilog-keywords): Match full set of IEEE 2012-1800 compiler
32655         directives (plus some extras) when determining indentation, bug
32656         901.  Reported by Bernd Beuster.
32657         (verilog-at-constraint-p): Fix indentation of coverpoint bins if
32658         iff expression doesn't start with word-character, bug900.
32659         (verilog-optional-signed-range-re, verilog-optional-signed-re):
32660         Fix incorrect indentation/alignment of unsigned declarations,
32661         bug897.
32662         (verilog-looking-back, verilog-in-attribute-p): Fix labeling of
32663         always constructs, bug895.
32664         (verilog-calc-1): Fix verilog-mode constraint indentation, bug324.
32665         Reported by Eric Mastromarchi.
32666         (verilog-beg-of-statement): Fix indenting for some forms of
32667         constraintsm bug433.  Reported by Brad Parker.  Fix indentation of
32668         continued assignment incorrect if first line ends with ']', bug437.
32669         Reported by Dan Dever.  Fix indention of cover inside an
32670         ifdef, bug 862.  Reported by Bernd Beuster.  Fix labeling do-while
32671         blocks, bug842.
32672         (verilog-preprocessor-re): Fix fork/end UNMATCHED warning, bug859.
32673         Reported by Kaushal Modi.
32674         (verilog-set-auto-endcomments): Fix endlabel end comments, bug888.
32675         (verilog-backward-token): Fix indenting sensitivity lists with
32676         named events, bug840.  Reed.
32677         (verilog-no-indent-begin-re): Fix `verilog-indent-begin-after-if'
32678         nil not honoring 'forever', 'foreach', and 'do' keywords.
32680 2015-05-14  Paul Eggert  <eggert@cs.ucla.edu>
32682         Check for invalid GTK+ monitor scales
32683         * src/gtkutil.c (xg_get_gdk_scale): Return 1 for invalid scales,
32684         INT_MAX for too-large scales.  All callers changed to assume the
32685         result is valid (Bug#20432).
32686         (xg_frame_set_char_size, xg_update_scrollbar_pos):
32687         Calculate scale only if needed.
32688         Show ASCII approximations instead.
32690 2015-05-14  Eli Zaretskii  <eliz@gnu.org>
32692         Fix daemon crashes when linum-mode is turned on early on
32693         * src/window.c (Fwindow_end): Don't try calling display engine
32694         functions on initial-frame frame.  (Bug#20565)
32696         Fix selective diff browsing in Ediff
32697         * lisp/vc/ediff-util.el (ediff-focus-on-regexp-matches):
32698         Go to the beginning of the region before searching for the
32699         ediff-regexp-focus-* regexps.  (Bug#20568)
32701 2015-05-14  Jan D  <jan.h.d@swipnet.se>
32703         Fixes bug#20142
32704         * src/gtkutil.c (delete_cb): Don't send delete event here, it does
32705         arrive in the main loop, even for Gtk 3 (Bug#20142).
32707         Don't access display after i/o error (Bug#19147).
32708         * src/xterm.c (x_connection_closed): Add third arg ioerror.
32709         If ioerror, set display to 0 (Bug#19147).
32710         (x_error_quitter): Call x_connection_closed with third arg false.
32711         (x_io_error_quitter): Call x_connection_closed with third arg true.
32713         Handle GTK_SCALE, fixes Bug#20432.
32714         * src/gtkutil.c (xg_get_gdk_scale): New function.
32715         (xg_frame_set_char_size)
32716         (x_wm_set_size_hint, xg_get_default_scrollbar_width)
32717         (xg_get_default_scrollbar_height)
32718         (xg_update_horizontal_scrollbar_pos): Take GTK_SCALE in to account
32719         when setting sizes (Bug#20432).
32721 2015-05-13  Leo Liu  <sdl.web@gmail.com>
32723         * lisp/emacs-lisp/generator.el (cps--gensym): Fix.
32725 2015-05-13  Glenn Morris  <rgm@gnu.org>
32727         Fix bootstrap (void function cl-member).
32728         * lisp/emacs-lisp/cl-lib.el: Load cl-seq if no cl-loaddefs file.
32729         * lisp/emacs-lisp/cl-seq.el: Provide a feature.
32731 2015-05-13  Stefan Monnier  <monnier@iro.umontreal.ca>
32733         * lisp/loadup.el ("emacs-lisp/cl-generic"): Preload
32734         * src/lisp.mk (lisp): Add emacs-lisp/cl-generic.elc.
32735         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method):
32736         Avoid defalias for closures which are not immutable.
32737         (cl--generic-prefill-dispatchers): New macro.  Use it to prefill
32738         the dispatchers table with various entries.
32739         * lisp/emacs-lisp/ert.el (emacs-lisp-mode-hook):
32740         * lisp/emacs-lisp/seq.el (emacs-lisp-mode-hook): Use add-hook.
32742 2015-05-13  Eli Zaretskii  <eliz@gnu.org>
32744         Improve tagging of C bindings in DEFVAR_*
32745         * src/Makefile.in (TAGS): Add --regex options to tag the C binding
32746         from DEFVAR_*.
32748 2015-05-13  Paul Eggert  <eggert@cs.ucla.edu>
32750         * src/editfns.c (Fformat): Fix use-after-free bug (Bug#20548).
32752 2015-05-12  Glenn Morris  <rgm@gnu.org>
32754         * lisp/progmodes/tcl.el (tcl-filter):
32755         Handle comint-prompt-read-only like gud.el does.  (Bug#20549)
32757         Add basic VC push support
32758         * lisp/vc/vc.el (vc-push): New autoloaded command.
32759         * lisp/vc/vc-hooks.el (vc-prefix-map, vc-menu-map): Add vc-push.
32760         * lisp/vc/vc-bzr.el (vc-bzr--pushpull): New, factored from vc-bzr-pull.
32761         (vc-bzr-pull): Reimplement using vc-bzr--pushpull.
32762         (vc-bzr-push): New.
32763         * lisp/vc/vc-git.el (vc-git--pushpull): New, factored from vc-git-pull.
32764         (vc-git-pull): Reimplement using vc-git--pushpull.
32765         (vc-git-push): New.
32766         * lisp/vc/vc-hg.el (vc-hg--pushpull): New, factored from vc-hg-pull.
32767         (vc-hg-pull, vc-hg-push): Reimplement using vc-hg--pushpull.
32768         * doc/emacs/maintaining.texi (Pulling / Pushing):
32769         Rename from "VC Pull".  Mention pushing.
32770         (VC With A Merging VCS, VC Change Log): Update xrefs.
32771         (Branches): Update menu.
32772         * doc/emacs/emacs.texi: Update menu.
32773         * etc/NEWS: Mention this.
32775 2015-05-12  Nicolas Petton  <nicolas@petton.fr>
32777         Improve the seq pcase pattern and the `seq-let' macro
32778         * lisp/emacs-lisp/seq.el: The pcase pattern now matches only if the
32779         object is a sequence, and binds each element of ARGS to the
32780         corresponding element of the sequence.
32782 2015-05-12  Eli Zaretskii  <eliz@gnu.org>
32784         Fix tags created from DEFVAR_* declarations in C
32785         * src/Makefile.in (TAGS): Improve the --regex argument to etags,
32786         to make tags extracted from DEFVAR_* declarations more accurate.
32788         Add a test suite for etags
32789         * test/etags/: New test suite, adapted from
32790         http://fly.isti.cnr.it/pub/software/unix/etags-regression-test.tar.bz2,
32791         whose original author is Francesco Potortì <pot@gnu.org>.
32793         Fix tagging of symbols in C enumerations
32794         * lib-src/etags.c (consider_token): Don't tag symbols in
32795         expressions that assign values to enum constants.  See
32796         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00291.html
32797         for details.
32798         (C_entries): Reset fvdef to fvnone after processing a preprocessor
32799         conditional and after a comma outside of parentheses.
32801 2015-05-12  Glenn Morris  <rgm@gnu.org>
32803         * lisp/url/url-handlers.el (url-file-name-completion)
32804         (url-file-name-all-completions): Silence compiler.
32806         * lisp/emacs-lisp/chart.el (chart-axis-draw): Replace obsolete alias.
32808         * lisp/play/dunnet.el (dun-dos-boot-msg): Fix time.  (Bug#20554)
32810 2015-05-12  Stefan Monnier  <monnier@iro.umontreal.ca>
32812         * lisp/emacs-lisp/cl-generic.el: Add dispatch on &context arguments
32813         (cl--generic-mandatory-args): Remove.
32814         (cl--generic-split-args): New function.
32815         (cl-generic-define, cl--generic-lambda): Use it.
32816         (cl-generic-define-method): Use it as well, and add support for
32817         context args.
32818         (cl--generic-get-dispatcher): Handle &context dispatch.
32819         (cl--generic-cache-miss): `dispatch-arg' can now be a
32820         context expression.
32821         (cl--generic-dispatchers): Pre-fill.
32822         * test/automated/cl-generic-tests.el (sm-generic-test-12-context):
32823         New test.
32825 2015-05-11  Glenn Morris  <rgm@gnu.org>
32827         * make-dist: Abort if "make ChangeLog" fails.  Add "--no-changelog".
32829 2015-05-11  Stefan Monnier  <monnier@iro.umontreal.ca>
32831         * lisp/term/xterm.el: Fix xterm-paste handling for rxvt
32832         * lisp/term/rxvt.el: Require term/xterm.
32833         (rxvt-function-map): Use xterm-rxvt-function-map.
32834         (rxvt-standard-colors): Move before first use.
32835         (terminal-init-rxvt): Use xterm--push-map and
32836         xterm-register-default-colors.
32837         (rxvt-rgb-convert-to-16bit, rxvt-register-default-colors): Remove.
32838         * lisp/term/xterm.el (xterm-rxvt-function-map): New var.
32839         Move shared bindings between rxvt and xterm to it.
32840         (xterm-function-map): Use it.  Move the xterm-paste binding to
32841         xterm-rxvt-function-map (bug#20444).
32842         (xterm-standard-colors): Move before first use.
32843         (xterm--push-map): New function.
32844         (xterm-register-default-colors): Take standard colors as argument.
32845         (terminal-init-xterm): Use it.  Adjust call to
32846         xterm-register-default-colors.
32848 2015-05-11  Glenn Morris  <rgm@gnu.org>
32850         * lisp/term/x-win.el: Quieten --without-x compilation.
32851         (x-own-selection-internal, x-disown-selection-internal)
32852         (x-selection-owner-p, x-selection-exists-p, x-get-selection-internal):
32853         Declare.
32855         * Makefile.in (emacslog): Remove srcdir.
32856         (ChangeLog): Update for the above.
32858 2015-05-10  Fabián Ezequiel Gallina  <fgallina@gnu.org>
32860         python.el: better limit for looking-back calls
32861         * lisp/progmodes/python.el (python-shell-accept-process-output):
32862         Use last comint prompt start as limit for looking-back.
32864 2015-05-10  Stefan Monnier  <monnier@iro.umontreal.ca>
32866         CEDET (srecode-insert-fcn): Fix use of oref on a class
32867         * lisp/cedet/srecode/insert.el (srecode-insert-fcn): Fix use of oref
32868         on a class.  Reported by Pierre Lorenzon.
32869         (srecode-template-inserter-point): Remove declaration.
32871         CEDET (srecode-create-dictionary): Avoid obsolete object name
32872         * lisp/cedet/srecode/dictionary.el (srecode-create-dictionary):
32873         Don't use a symbol as an object name.  Reported by Pierre Lorenzon.
32875 2015-05-10  Paul Eggert  <eggert@cs.ucla.edu>
32877         C-x 8 shorthands for curved quotes, Euro, etc.
32878         Although C-x 8 lets you insert arbitrary Unicode characters,
32879         it's awkward to use this to insert commonly used symbols such as curved
32880         quotes, the Euro symbol, etc.  This patch adds simpler sequences for
32881         characters commonly found in English text and in basic math.
32882         For example, assuming the Alt key works on your keyboard and iso-transl
32883         is loaded, one can now type "A-[" instead of "A-RET LEFT SIN TAB RET"
32884         to get the character "‘" (U+2018 LEFT SINGLE QUOTATION MARK).
32885         (Bug#20499)
32886         * doc/emacs/mule.texi (Unibyte Mode):
32887         A few other printing characters now work too.
32888         * etc/NEWS: Document this.
32889         * lisp/international/iso-transl.el (iso-transl-char-map):
32890         Also support the following characters:
32891         ‐ ‑ ‒ – — ― ‘ ’ “ ” † ‡ • ′ ″ € № ← → ↔ − ≈ ≠ ≤ ≥
32893 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
32895         Add xref-find-regexp
32896         * lisp/progmodes/xref.el (xref-find-function): Describe the
32897         `matches' action.
32898         (xref-find-regexp): New command, using it.
32899         (xref-collect-references): Rename to xref-collect-matches.
32900         (xref--collect-reference): Rename to xref--collect-match.
32901         (xref-collect-matches, xref--collect-match): Accept new argument,
32902         KIND.  Update accordingly.
32903         (xref--regexp-to-extended): New function.
32904         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Support the
32905         `matches' action.
32906         (elisp--xref-find-matches): Accept new argument.  Resolve a FIXME.
32907         * lisp/progmodes/etags.el (etags-xref-find):
32908         Support the `matches' action.
32909         (etags--xref-find-matches): New function.
32911 2015-05-10  Glenn Morris  <rgm@gnu.org>
32913         * Makefile.in: Fixes for recent change-history changes.
32914         (change-history-nocommit): Update footer regexp.
32915         Ensure output script stays executable.
32917 2015-05-10  Nicolas Petton  <nicolas@petton.fr>
32919         New version of `seq-let' based on a pcase pattern
32920         * lisp/emacs-lisp/seq.el (seq-let): Define the macro in terms of a
32921         pcase pattern if `pcase-defmacro' is defined (Emacs>=25.1).
32923 2015-05-10  Przemysław Wojnowski  <esperanto@cumego.com>
32925         Add basic HTML5 tags and a template
32926         * lisp/textmodes/sgml-mode.el: Basic HTML5 support.
32927         (html-tag-alist): Add HTML5 tags.
32928         (html-tag-help): Add new tags descriptions.
32929         (html-navigational-links): Template for nav links.
32930         (html-html5-template): Template for a HTML5 page.
32932 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
32934         semantic/symref/grep: Don't use word boundaries
32935         * lisp/cedet/semantic/symref/grep.el
32936         (semantic-symref-perform-search): Instead of wrapping input in
32937         word boundaries, check that the characters before and after are
32938         not word constituents.
32940         semantic/symref/grep: Support regexp search
32941         * lisp/cedet/semantic/symref.el
32942         (semantic-symref-hit-to-tag-via-buffer): Don't regexp-quote when
32943         the search type is regexp.
32944         * lisp/cedet/semantic/symref/grep.el
32945         (semantic-symref-perform-search): Support the regexp search type.
32946         Pass -E to Grep when it's used.
32948         semantic-symref-regexp: Allow to input an arbitrary string
32949         * lisp/cedet/semantic/symref/list.el (semantic-symref-regexp):
32950         Allow to input an arbitrary string interactively.
32952         Remove tag-symbol-match-p from etags-xref-find-definitions-tag-order
32953         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
32954         Remove tag-symbol-match-p from the default value
32955         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00292.html).
32957         Declare find-tag obsolete
32958         * lisp/progmodes/etags.el (find-tag): Declare obsolete in favor of
32959         xref-find-definitions.
32961 2015-05-10  Jan D  <jan.h.d@swipnet.se>
32963         Draw composite string correctly (Bug#20537)
32964         * src/nsterm.m (ns_draw_composite_glyph_string_foreground):
32965         New function.
32966         (ns_draw_glyph_string): Call it.
32968 2015-05-09  Eli Zaretskii  <eliz@gnu.org>
32970         Avoid infloop in ERC
32971         * lisp/simple.el (line-move-to-column): Ignore field boundaries
32972         while computing line beginning position.  (Bug#20498)
32974 2015-05-08  Glenn Morris  <rgm@gnu.org>
32976         * Makefile.in (ChangeLog): No longer pass "srcprefix"; cd instead.
32977         * build-aux/gitlog-to-emacslog: Check called from right directory.
32978         (srcprefix): Remove.
32980         * build-aux/gitlog-to-emacslog: Get rid of "distprefix".
32981         * Makefile.in (ChangeLog): No longer pass "distprefix".
32982         * make-dist: Update "make ChangeLog" syntax for the above change.
32984         * build-aux/gitlog-to-emacslog: Don't hard-code "ChangeLog.2".
32985         * Makefile.in (ChangeLog): Pass -n to gitlog-to-emacslog.
32987         * build-aux/gitlog-to-emacslog: Add "for earlier changes" to footer.
32989         Add command-line option-parsing to gitlog-to-emacslog
32990         * build-aux/gitlog-to-emacslog: Add command-line options.
32991         By default, refuse to remove an existing output file.
32992         * Makefile.in (CHANGELOG): Update default.
32993         (ChangeLog): Do not test for existing file.
32994         (change-history-nocommit): Ensure temp file does not exist.
32996         Quieten --without-x compilation
32997         * lisp/term/common-win.el: Provide a feature.
32998         * lisp/term/x-win.el (term/common-win): Require it.
33000         * lisp/dired-aux.el (dired-do-print): Require lpr.
33002         Quieten compilation, eg in --without-x builds
33003         * lisp/dired-aux.el (lpr-printer-switch):
33004         * lisp/frame.el (tool-bar-height):
33005         * lisp/linum.el (font-info):
33006         * lisp/window.el (font-info, overflow-newline-into-fringe)
33007         (tool-bar-height):
33008         * lisp/emacs-lisp/package-x.el (tar-data-buffer):
33009         * lisp/gnus/gnus-util.el (iswitchb-mode):
33010         * lisp/mail/rmailmm.el (libxml-parse-html-region):
33011         * lisp/net/nsm.el (gnutls-peer-status)
33012         (gnutls-peer-status-warning-describe):
33013         * lisp/net/shr.el (libxml-parse-xml-region):
33014         * lisp/url/url-http.el (gnutls-peer-status): Declare.
33016 2015-05-08  Stefan Monnier  <monnier@iro.umontreal.ca>
33018         CEDET (srecode-pop, srecode-peek): Don't use `subclass'
33019         * lisp/cedet/srecode/insert.el (srecode-pop, srecode-peek): Don't use
33020         `subclass' since they're never called with a class.
33021         (srecode-insert-method, srecode-insert-subtemplate): Avoid obsolete
33022         srecode-dictionary-child-p.
33024 2015-05-08  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
33026         * lisp/help.el (help--binding-locus): Document argument POSITION.
33027         (Bug#20530)
33029 2015-05-08  Paul Eggert  <eggert@cs.ucla.edu>
33031         Merge from gnulib
33032         * doc/misc/texinfo.tex: Get latest version.
33034 2015-05-08  Oleh Krehel  <ohwoeowho@gmail.com>
33036         ffap.el (ffap-read-file-or-url): Fix completing-read call
33037         * lisp/ffap.el (ffap-read-file-or-url): The HIST argument of
33038         `completing-read' should be a symbol.
33040 2015-05-08  Eli Zaretskii  <eliz@gnu.org>
33042         Verify file modifications by other programs
33043         * src/filelock.c (lock_file): Check whether the file was modified
33044         since it was visited even if 'create-lockfiles' is nil.  (Bug#18828)
33046         Fix keyboard macros that include function keys
33047         * src/keyboard.c (read_char_minibuf_menu_prompt): Record function
33048         keys in the macro before returning.  (Bug#20454)
33050 2015-05-08  Glenn Morris  <rgm@gnu.org>
33052         * build-aux/gitlog-to-changelog: Treat "Tiny-change" like
33053         "Copyright-paperwork-exempt".  (Bug#20324)
33055         * lisp/vc/log-edit.el: Handle "(tiny change)".  (Bug#20324)
33056         (log-edit-rewrite-tiny-change): New variable.
33057         (log-edit-insert-changelog): Maybe add "Copyright-paperwork-exempt".
33058         (log-edit-changelog-ours-p): Set log-edit-author to a cons.
33059         * etc/NEWS: Mention this.
33061         * lisp/calc/calc.el (math-zerop): Declare.
33063         * lisp/emacs-lisp/eieio-opt.el (help-fns-short-filename): Declare.
33065 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
33067         * lisp/emacs-lisp/subr-x.el (if-let): Fix debug spec.
33068         Support the case when BINDINGS is a single tuple.  (Bug#20525)
33070         * etc/NEWS: Fix typo in previous commit
33071         (14bb519f1034ddb38ce375cbad7095d9b07f8b26).
33073 2015-05-07  Jan D  <jan.h.d@swipnet.se>
33075         * configure.ac: Warn for multiple display crash for all Gtk+ versions.
33076         Output URL to Gtk+ bug (Bug#20452).
33078         * lisp/term/ns-win.el (ns-paste-secondary): Use gui-get-selection.
33080 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
33082         * lisp/emacs-lisp/package.el: New "external" package status.
33083         An external package is any installed package that's not built-in
33084         and not from `package-user-dir', which usually means it's from an
33085         entry in `package-directory-list'.  They are treated much like
33086         built-in packages, in that they cannot be through the Package Menu
33087         deleted and are not considered for upgrades.
33088         (package-desc-status): Identify if a package is installed outside
33089         `package-user-dir'.
33090         (package-menu--print-info-simple)
33091         (package-menu--status-predicate): Add support for it.
33092         * etc/NEWS: Document it.
33094 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
33096         * lisp/mail/rmail.el: Use lexical-binding.
33097         (rmail-bury): Remove unused var `buffer-to-bury'.
33098         (rmail-get-new-mail): Remove unused vars `opoint' and `success'.
33099         (rmail-parse-url): Remove unused var `proto', `user', and `host'.
33100         (rmail-unrmail-new-mail-maybe): Remove unused var `new-file'.
33101         (rmail-insert-inbox-text): Remove unused var `movemail'.
33102         (rmail-add-mbox-headers): Remove unused var `limit'.
33103         (rmail-undelete-previous-message): Remove unused var `value'.
33104         (rmail-reply): Remove unused vars `resent-to', `resent-cc',
33105         `resent-reply-to'.
33106         (rmail-mime-mbox-buffer, rmail-mime-view-buffer): Declare.
33107         (rmail-restore-desktop-buffer): Rename arguments.
33109 2015-05-06  Glenn Morris  <rgm@gnu.org>
33111         * Makefile.in (change-history-commit): Add missing piece of previous.
33113         Avoid unnecessary bumping of Makefile.in's timestamp
33114         * Makefile.in (gen_origin): Move to gitlog-to-emacslog.
33115         (emacslog): New variable.
33116         (ChangeLog): Use $emacslog.  Don't pass $gen_origin.
33117         (unchanged-history-files): Use $emacslog rather than Makefile.in.
33118         (change-history-nocommit): Store hash in $emacslog.
33119         * build-aux/gitlog-to-emacslog (gen_origin): Move default here.
33120         * admin/update_autogen (changelog_files): Update for the above.
33122         * Makefile.in: Don't always insist on removing existing "ChangeLog".
33123         (CHANGELOG): New variable.
33124         (no-ChangeLog): Remove.
33125         (ChangeLog): Replace "no-ChangeLog"; pass output file to script.
33126         (change-history-nocommit): Use a temp file rather than insisting
33127         on deletion of any existing "ChangeLog".
33129         * build-aux/gitlog-to-emacslog: Allow specification of output.
33131         * admin/update_autogen: Add option to update ChangeLog.
33132         (usage): Mention -H.
33133         (changelog_flag, changelog_n, changelog_files): New variables.
33134         (main): Check for -H, and maybe run change-history-nocommit.
33136 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
33138         * lisp/subr.el (delete-dups): Pre-size the hashtable.
33140         * lisp/emacs-lisp/cl.el (define-modify-macro): Make sure
33141         cl--arglist-args is defined (bug#20517).
33143 2015-05-06  Glenn Morris  <rgm@gnu.org>
33145         * Makefile.in (change-history-nocommit): New.
33147 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
33149         * lisp/cedet/pulse.el (pulse-momentary-unhighlight): Only cancel
33150         timer when it is non-nil
33151         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00223.html).
33153 2015-05-06  Glenn Morris  <rgm@gnu.org>
33155         Quieten CEDET compilation
33156         * lisp/cedet/semantic/db-el.el (semanticdb-elisp-sym->tag):
33157         Invert fboundp test to quieten on current Emacs.
33158         * lisp/cedet/ede/config.el (ede-shell-run-something)
33159         (semanticdb-file-table-object, semanticdb-needs-refresh-p)
33160         (semanticdb-refresh-table): Declare.
33161         (ede-preprocessor-map): Require semantic/db.
33163         Quieten cc-mode compilation
33164         * lisp/progmodes/cc-awk.el (c-forward-sws):
33165         * lisp/progmodes/cc-cmds.el (c-forward-subword, c-backward-subword):
33166         Declare.
33168 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
33170         * lisp/subr.el (delete-dups): Avoid nreverse.
33172 2015-05-06  Artur Malabarba  <bruce.connor.am@gmail.com>
33174         * lisp/subr.el (delete-dups): Make it destructive again.
33176 2015-05-06  Paul Eggert  <eggert@cs.ucla.edu>
33178         * doc/lispref/sequences.texi (Sequence Functions): Fix quoting.
33180 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
33182         * lisp/emacs-lisp/testcover.el: Don't use edebug--read (bug#20487).
33183         * lisp/emacs-lisp/testcover.el: Use lexical-binding.
33184         (testcover--read): Rename from testcover-read.  Change calling
33185         convention.  Use edebug-read-and-maybe-wrap-form now that edebug-read
33186         is gone.
33187         (testcover-start): Use add-function.  Move edebug-all-defs binding to
33188         testcover--read.
33189         (testcover-this-defun): Tighten scope of edebug-all-defs binding.
33190         (testcover-mark): Remove unused var `item'.
33191         * src/lread.c (syms_of_lread): Default load-read-function to `read'.
33193 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
33195         * lisp/subr.el (delete-dups): When there are more than 100 candidates,
33196           use a hash table.  This can result in ~500 times speed-up for typical
33197           collections of size 5000, like that of `load-library'.
33199 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
33201         CEDET: Avoid `oref' on classes in a few more cases
33202         * lisp/cedet/ede/generic.el (ede-find-target):
33203         * lisp/cedet/ede.el (ede-project-forms-menu): Avoid `oref' on classes.
33204         * lisp/cedet/semantic/bovine/gcc.el (semantic-gcc-setup): Remove unused
33205         var `prefix'.
33207         * lisp/cedet/semantic/symref/grep.el: Fix unused var warnings.
33208         (grepflags, greppattern): Declare.
33209         (semantic-symref-perform-search): Remove unused var `pat'.
33211         CEDET (srecode-compile-inserter): Avoid `oref' on classes
33212         * lisp/cedet/srecode/compile.el (srecode-compile-inserter):
33213         Avoid `oref' on classes (bug#20491).
33214         (srecode-compile-split-code): Remove unused var `key'.
33216 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
33218         Clean up pulse.el a little
33219         * lisp/cedet/pulse.el (pulse): Remove.
33220         (pulse-momentary-timer): Save instead of the stop time.
33221         (pulse-momentary-highlight-overlay):
33222         Call pulse-momentary-unhighlight first thing.
33223         Treat pulse-momentary-overlay as a single value, not a list.
33224         Save the created timer.  Only pass the stop time to the timer.
33225         (pulse-tick): Update accordingly.
33226         (pulse-momentary-unhighlight): Treat pulse-momentary-overlay as a
33227         single value.  Cancel the timer.
33229 2015-05-06  Tassilo Horn  <tsdh@gnu.org>
33231         * lisp/textmodes/reftex-cite.el (reftex-format-bib-entry):
33232         Support the biblatex journaltitle field.
33234 2015-05-05  Glenn Morris  <rgm@gnu.org>
33236         Minor declare-function improvement
33237         * lisp/emacs-lisp/bytecomp.el
33238         (byte-compile-macroexpand-declare-function):
33239         Handle declarations after calls.  (Bug#20509)
33241         * lisp/progmodes/js.el (js--optimize-arglist): Remove declaration.
33243         * lisp/w32-fns.el (w32-shell-name): Silence compiler.
33245 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
33247         Pulse using a timer
33248         * lisp/cedet/pulse.el (pulse-momentary-stop-time): New variable.
33249         (pulse-momentary-highlight-overlay): Set up the timer instead of
33250         calling `pulse'
33251         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/).
33252         (pulse-tick): New function.
33253         (pulse-momentary-unhighlight): Cut off the stop time.
33254         (pulse-delay): Update the docstring WRT to not using sit-for.
33256         Add semantic/symref/grep file patterns for ruby-mode
33257         * lisp/cedet/semantic/symref/grep.el
33258         (semantic-symref-filepattern-alist): Add patterns for ruby-mode.
33259         Clarify the docstring.
33261         Don't require match
33262         * lisp/progmodes/xref.el (xref--read-identifier): Don't require
33263         match.  That doesn't work for every command, and some identifier
33264         completion tables are bound to be imperfect anyway.
33266 2015-05-05  Stefan Monnier  <monnier@iro.umontreal.ca>
33268         * lisp/cedet/semantic/grammar.el: Fix compiler warnings (bug#20505).
33269         (semantic-grammar--template-expand): New function.
33270         (semantic-grammar-header, semantic-grammar-footer): Use it.
33271         (semantic-grammar--lex-block-specs): Remove unused var `block-spec'.
33272         (semantic-grammar-file-regexp): Refine regexp.
33273         (semantic-grammar-eldoc-get-macro-docstring):
33274         Use elisp-get-fnsym-args-string when available.
33275         (semantic-idle-summary-current-symbol-info): Use new elisp-* names
33276         instead of the old eldoc-* names.
33277         * lisp/emacs-lisp/eldoc.el (eldoc-docstring-format-sym-doc): Move back
33278         from elisp-mode.el.  Tweak calling convention.
33279         * lisp/progmodes/elisp-mode.el (package-user-dir): Declare.
33280         (elisp-get-fnsym-args-string): Add `prefix' argument.  Rename from
33281         elisp--get-fnsym-args-string.
33282         (elisp--highlight-function-argument): Add `prefix' arg.
33283         (elisp-get-var-docstring): Rename from elisp--get-var-docstring.
33284         (elisp--docstring-format-sym-doc): Move back to eldoc.el.
33286 2015-05-05  Glenn Morris  <rgm@gnu.org>
33288         * lisp/help-fns.el (describe-function-1):
33289         Handle builtins with advertised calling conventions.  (Bug#20479)
33291 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
33293         Merge branch 'seq-let'
33295         Update `seq-let' documentation
33296         * doc/lispref/sequences.texi: Update the documentation of `seq-let'
33297         with the support of  `&rest'.
33299         Add support for &rest in `seq-let'
33300         * lisp/emacs-lisp/seq.el (seq--make-bindings): Add support for `&rest'
33301         in the argument list.
33302         * test/automated/seq-tests.el: Add a test for parsing and binding
33303         `&rest' in `seq-let'.
33305 2015-05-05  Pierre Lorenzon  <devel@pollock-nageoire.net>  (tiny change)
33307         * lisp/emacs-lisp/eieio-custom.el (eieio-object-value-get):
33308         Add missing increment (Bug#20467).
33309         (eieio-object-value-create): Adjust to new slots representation
33310         (Bug#20467).
33311         (eieio-object-value-create): Fix missed adjustment to new
33312         representation of slots metadata.
33314 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
33316         * lisp/emacs-lisp/seq.el (seq--make-bindings): Improve the docstring.
33318 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
33320         Work around "Attempt to modify read-only object"
33321         * lisp/progmodes/elisp-mode.el (elisp--xref-format): Extract from
33322         elisp--xref-find-definitions, to work around "Attempt to modify
33323         read-only object" error.
33325         Only skip some variables that have function counterparts
33326         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
33327         Only skip minor-mode-named variable if it's defined in a Lisp
33328         file, and it's in minor-mode-list (bug#20506).
33329         * test/automated/elisp-mode-tests.el
33330         (elisp-xref-finds-both-function-and-variable)
33331         (elisp-xref-finds-only-function-for-minor-mode): New tests.
33333 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
33335         * lisp/progmodes/xref.el (xref--location-at-point): Revert the
33336         previous change.
33337         (xref--insert-xrefs): Buttonize the whole line, including the
33338         number at the beginning.
33340         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
33341         Make sure we're inside the let bindings.
33342         * test/automated/elisp-mode-tests.el
33343         (elisp-completes-functions-after-let-bindings): New test.
33345 2015-05-04  Glenn Morris  <rgm@gnu.org>
33347         * lisp/cedet/semantic/grammar.el (eldoc-function-argstring)
33348         (eldoc-docstring-format-sym-doc, eldoc-last-data-store)
33349         (eldoc-get-fnsym-args-string, eldoc-get-var-docstring):
33350         Remove outdated declarations.
33352         Replace instances of "(eval-when-compile (autoload ...))"
33353         * lisp/gnus/gnus-art.el (nneething-get-file-name):
33354         Declare rather than autoload.
33355         * lisp/gnus/gnus-async.el (gnus-html-prefetch-images):
33356         Remove pointless autoload.
33357         * lisp/gnus/gnus-sync.el (gnus-group-topic): Autoload at run-time.
33358         (gnus-topic-create-topic, gnus-topic-enter-dribble):
33359         Declare rather than autoload.
33360         * lisp/gnus/mm-archive.el (gnus-recursive-directory-files)
33361         (mailcap-extension-to-mime): Autoload at run-time.
33362         * lisp/gnus/mm-util.el (latin-unity-massage-name)
33363         (latin-unity-maybe-remap, latin-unity-representations-feasible-region)
33364         (latin-unity-representations-present-region):
33365         Declare rather than autoload.
33366         * lisp/gnus/mml-smime.el (epg-make-context)
33367         (epg-passphrase-callback-function): Autoload at run-time.
33368         (epg-context-set-signers, epg-context-result-for)
33369         (epg-new-signature-digest-algorithm)
33370         (epg-verify-result-to-string, epg-list-keys, epg-verify-string)
33371         (epg-sign-string, epg-encrypt-string)
33372         (epg-context-set-passphrase-callback, epg-sub-key-fingerprint)
33373         (epg-configuration, epg-expand-group, epa-select-keys):
33374         Declare rather than autoload.
33375         * lisp/gnus/nnir.el (nnimap-change-group, nnimap-make-thread-query):
33376         Autoload at run-time.
33377         (gnus-group-topic-name, nnimap-buffer, nnimap-command)
33378         (gnus-registry-get-id-key, gnus-registry-action):
33379         Declare rather than autoload.
33380         * lisp/gnus/nnmail.el (mail-send-and-exit): Autoload at run-time.
33381         * lisp/gnus/spam.el (spam-stat-buffer-change-to-non-spam)
33382         (spam-stat-buffer-change-to-spam, spam-stat-buffer-is-non-spam)
33383         (spam-stat-buffer-is-spam, spam-stat-load, spam-stat-save)
33384         (spam-stat-split-fancy): Remove pointless autoloads.
33385         * lisp/net/mairix.el: Load gnus-util when compiling.
33386         (gnus-group-read-ephemeral-group, gnus-summary-toggle-header)
33387         (message-field-value): Declare rather than autoload.
33388         (mairix-gnus-ephemeral-nndoc, mairix-gnus-fetch-field):
33389         Check gnus-alive-p is fbound.
33390         (vm-quit, vm-visit-folder, vm-select-folder-buffer)
33391         (vm-check-for-killed-summary, vm-error-if-folder-empty)
33392         (vm-get-header-contents, vm-select-marked-or-prefixed-messages):
33393         Declare rather than autoload.
33395         * lisp/gnus/mm-view.el (epg-decrypt-string): Autoload.
33397         * lisp/gnus/mml-smime.el (epg-key-sub-key-list)
33398         (epg-sub-key-capability, epg-sub-key-validity): Fix declarations.
33400         * lisp/progmodes/elisp-mode.el (xref-collect-references): Declare.
33402         * lisp/emacs-lisp/debug.el (help-xref-interned): Update declaration.
33404         * lisp/allout.el (epg-user-id-string, epg-key-user-id-list):
33405         * lisp/emacs-lisp/package.el (epg-signature-status):
33406         Fix declarations.
33408         * lisp/play/gametree.el (gametree-show-children-and-entry)
33409         (gametree-apply-layout, gametree-mouse-show-subtree)
33410         (gametree-mouse-hide-subtree): Replace obsolete outline aliases.
33412         * lisp/emacs-lisp/check-declare.el (check-declare-verify):
33413         Handle cl-defgeneric, cl-defmethod.
33415 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
33417         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions):
33418         Highlight both type and symbol name.
33420         Insert, highlight and align line numbers in xref output
33421         * lisp/progmodes/etags.el (xref-location-line): Specialize for
33422         xref-etags-location.
33423         * lisp/progmodes/xref.el (xref-location-line): New generic method.
33424         (xref-file-location): Add reader for the line slot.
33425         (xref--location-at-point): Skip to the `xref-location' property.
33426         (xref--collect-reference): Drop the line number from description.
33427         (xref--insert-xrefs): Insert, highlight and align line numbers.
33429 2015-05-04  Daniel Colascione  <dancol@dancol.org>
33431         * lisp/simple.el (save-mark-and-excursion--save)
33432         (save-mark-and-excursion--restore): Fix previous commit
33433         (255a011f0ecf004b31c59945b10154b10fac3af1).
33435 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
33437         Don't pulse the indentation, or the newline
33438         * lisp/cedet/pulse.el (pulse-lighten-highlight)
33439         (pulse-reset-face): Fall back to the inherited background
33440         attribute in FACE.
33441         (pulse-momentary-highlight-region): Add autoload cookie.
33442         * lisp/progmodes/xref.el (xref--maybe-pulse): Don't highlight the
33443         indentation, or the newline, if the line's non-empty
33444         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00118.html).
33446 2015-05-04  Daniel Colascione  <dancol@dancol.org>
33448         Add `save-mark-and-excursion', which has the old
33449         `save-excursion' behavior
33450         * doc/lispref/positions.texi (Excursions):
33451         Document `save-mark-and-excursion'.
33452         * lisp/font-lock.el (font-lock-fontify-block):
33453         Use `save-mark-and-excursion' instead of `save-excursion',
33454         restoring Emacs 24 behavior.
33455         * lisp/simple.el (save-mark-and-excursion--save)
33456         (save-mark-and-excursion--restore): New functions.
33457         (save-mark-and-excursion): New user macro.
33458         * src/editfns.c (Fsave_excursion): Mention `save-mark-and-excursion'
33459         in `save-excursion' documentation.
33461 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
33463         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
33464         Classify lone symbol inside let varlist as variable.
33465         * test/automated/elisp-mode-tests.el
33466         (completest-variables-in-let-bindings): New test.
33468         Add xref-pulse-on-jump
33469         * lisp/cedet/pulse.el (pulse-momentary-highlight-one-line):
33470         Add autoload cookie.
33471         * lisp/progmodes/xref.el (xref-pulse-on-jump): New option.
33472         (xref--maybe-pulse): New function.
33473         (xref-pop-marker-stack, xref--pop-to-location)
33474         (xref--display-position): Use it.
33475         (xref--location-at-point): Use back-to-indentation.
33477 2015-05-04  Stefan Monnier  <monnier@iro.umontreal.ca>
33479         lisp/org/org-{macs,list}.el: Fix lexical warnings
33480         * lisp/org/org-list.el (org-list-struct): Remove unused var `ind'.
33481         (org-list-get-next-item, org-list-get-prev-item)
33482         (org-list-get-children): Mark unused arg `struct'.
33483         (org-list-use-alpha-bul-p): Remove unused var `bul'.
33484         (org-toggle-checkbox): Mark unused var.
33485         (org-update-checkbox-count): Remove unused var `box-num'.
33486         (org-adapt-indentation): Declare.
33487         (org-list-parse-list): Declare var instead of adding a dummy duplicate.
33488         (org-list-send-list): Remove unused var `txt'.
33489         (org-list-to-latex, org-list-to-texinfo): Mark unused arg `params'.
33490         (org-list-to-subtree): Add prefix to dyn-bind var, and declare them.
33491         * lisp/org/org-macs.el: Use `declare'.
33492         (org-with-limited-levels): Declare dyn-bound vars.
33494 2015-05-04  Eli Zaretskii  <eliz@gnu.org>
33496         Fix minor issues with CEDET on MS-Windows
33497         * lisp/cedet/semantic/symref/idutils.el
33498         (semantic-symref-parse-tool-output-one-line): Fix the search
33499         regexp to match MS-Windows file names with drive letters.
33500         (Bug#19468)
33501         * lisp/cedet/semantic/symref/grep.el
33502         (semantic-symref-grep-use-template): Remove "--color=always" from
33503         Grep switches on MS-Windows.
33504         (semantic-symref-grep-shell): Use shell-file-name as the default
33505         value, so this works not only on Posix platforms.
33506         (semantic-symref-perform-search): Use shell-quote-argument instead
33507         of literal '..' for portable quoting of Grep command-line
33508         argument.  Use shell-command-switch instead of a literal "-c".
33509         * lisp/cedet/semantic/bovine/gcc.el
33510         (semantic-gcc-get-include-paths): Use file-name-absolute-p to test
33511         for an absolute file name in a portable way.
33513 2015-05-04  Artur Malabarba  <bruce.connor.am@gmail.com>
33515         * lisp/emacs-lisp/package.el: Remove `package--silence' variable.
33516         (package-import-keyring, package-refresh-contents)
33517         (package-compute-transaction, package--save-selected-packages)
33518         (package-install-from-archive, package-delete)
33519         (package-menu--perform-transaction): Use `inhibit-message' instead.
33520         (package--compile): Set `warning-minimum-level' to :error.
33522 2015-05-03  Stefan Monnier  <monnier@iro.umontreal.ca>
33524         * lisp/term/screen.el (xterm-screen-extra-capabilities): New custom.
33525         (terminal-init-screen): Use it (bug#20356).
33526         * lisp/term/xterm.el: Provide `term/xterm' instead of `xterm'.
33527         (xterm--extra-capabilities-type): New const.
33528         (xterm-extra-capabilities): Use it.
33529         (xterm--version-handler): Lower the pseudo-version for `screen'.
33531 2015-05-03  Dmitry Gutov  <dgutov@yandex.ru>
33533         * lisp/progmodes/xref.el (xref--insert-xrefs): Tweak the faces.
33534         Always insert a newline at the end (to avoid mouse-face background
33535         tail at the last line).
33537         elisp-completion-at-point: Prioritize being quoted over funpos
33538         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
33539         Only consider function position when not inside quoted form
33540         (bug#20425).
33541         * test/automated/elisp-mode-tests.el: New file.
33543         Stop vc-print-log from jumping to the top
33544         * lisp/vc/vc.el (vc-print-log-internal): Pass nil
33545         GOTO-LOCATION-FUNC to vc-log-internal-common when WORKING-REVISION
33546         is not specified.
33547         (vc-incoming-outgoing-internal): Always pass nil.
33548         (vc-log-internal-common): When GOTO-LOCATION-FUNC is nil, don't
33549         call it, and don't set vc-sentinel-movepoint (bug#15322).
33550         (vc-print-root-log): Don't fetch the root working revision, nor
33551         pass it to vc-print-log-internal.
33553 2015-05-02  Michael Vehrs  <Michael.Burschik@gmx.de>
33555         Fix display of keyboard layouts for right-to-left scripts
33556         * lisp/international/quail.el (quail-insert-kbd-layout):
33557         Force left-to-right paragraph direction.
33559 2015-05-02  K. Handa  <handa@gnu.org>
33561         * src/cmds.c (internal_self_insert): When we insert spaces for
33562         padding, set point before the padding spaces, not after them.
33564 2015-05-02  Nicolas Petton  <nicolas@petton.fr>
33566         * lisp/emacs-lisp/seq.el (seq-p): New alias to `sequencep'.
33568 2015-05-02  Dmitry Gutov  <dgutov@yandex.ru>
33570         Fix etags-xref-find for references
33571         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references):
33572         Use `cl-mapcan'.
33573         * lisp/progmodes/etags.el (etags-xref-find): Ditto.  Prompt for
33574         directory if no tags tables are loaded (bug#19468).
33576 2015-05-02  Philipp Stephani  <phst@google.com>
33578         Update the options in whitespace-style defcustom
33579         * lisp/whitespace.el (whitespace-style): Use `set' instead of a
33580         `repeat' because the option is really set-like.  Add missing
33581         options.  Reorder options to match the order in the
33582         documentation.  (Bug#20346)
33584 2015-05-02  Eli Zaretskii  <eliz@gnu.org>
33586         Fix error diagnostics of c-macro-expand
33587         * lisp/progmodes/cmacexp.el (c-macro-expansion): Don't bail out
33588         too early if no start-marker string was found -- that generally
33589         means cpp exited abnormally, and we still want to show its error
33590         messages to the user.
33592         Don't require Texinfo 5.0 for Emacs documentation
33593         * doc/emacs/docstyle.texi: Use "@set txicodequoteundirected" and
33594         "@set txicodequotebacktick" instead of "@codequotebacktick on" and
33595         "@codequoteundirected on", respectively, to avoid requiring
33596         Texinfo 5.x for Emacs documentation.
33598 2015-05-01  Simen Heggestøyl  <simenheg@gmail.com>
33600         * lisp/files.el (pwd):
33601         When called with a prefix argument, insert the current default
33602         directory at point.
33604 2015-05-01  Stefan Monnier  <monnier@iro.umontreal.ca>
33606         * lisp/isearch.el (isearch-mode-map): Allow backspace remapping
33607         * lisp/isearch.el (isearch-mode-map): Don't inhibit
33608         function-key-map remapping for backspace (bug#20466).
33610 2015-05-01  Dmitry Gutov  <dgutov@yandex.ru>
33612         Implement xref-find-references in etags and elisp-mode
33613         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references): New function.
33614         (elisp-xref-find): Use it.
33615         * lisp/progmodes/etags.el (etags-xref-find): Use `xref-collect-references'.
33616         * lisp/progmodes/xref.el (xref-collect-references):
33617         (xref--collect-reference): New functions.
33619 2015-05-01  Paul Eggert  <eggert@cs.ucla.edu>
33621         Prefer plain characters to Texinfo circumlocutions
33622         For example, prefer 'François' to 'Fran\c{c}ois', 'Fran\c cois',
33623         'Fran@,{c}ois' or 'Francois' (all of which were used!) in Texinfo sources.
33625         Fix single-quoting style in PDF manuals
33626         The PDF versions of the GNU manuals used curved single quotes to
33627         represent grave accent and apostrophe, which made it a pain to cut
33628         and paste code examples from them.  Fix the PDF versions to use
33629         grave accent and apostrophe for Lisp source code, keystrokes, etc.
33630         This change does not affect the info files, nor does it affect
33631         ordinary uses of curved single quotes in PDF.
33632         * doc/emacs/docstyle.texi: New file, which specifies treatment for
33633         grave accent and apostrophe, as well as the document encoding.
33634         * doc/emacs/emacs-xtra.texi, doc/emacs/emacs.texi:
33635         * doc/lispintro/emacs-lisp-intro.texi:
33636         * doc/lispref/back.texi, doc/lispref/book-spine.texi:
33637         * doc/lispref/elisp.texi, doc/lispref/lay-flat.texi:
33638         * doc/misc/ada-mode.texi, doc/misc/auth.texi:
33639         * doc/misc/autotype.texi, doc/misc/bovine.texi, doc/misc/calc.texi:
33640         * doc/misc/cc-mode.texi, doc/misc/cl.texi, doc/misc/dbus.texi:
33641         * doc/misc/dired-x.texi, doc/misc/ebrowse.texi, doc/misc/ede.texi:
33642         * doc/misc/ediff.texi, doc/misc/edt.texi, doc/misc/efaq-w32.texi:
33643         * doc/misc/efaq.texi, doc/misc/eieio.texi, doc/misc/emacs-gnutls.texi:
33644         * doc/misc/emacs-mime.texi, doc/misc/epa.texi, doc/misc/erc.texi:
33645         * doc/misc/ert.texi, doc/misc/eshell.texi, doc/misc/eudc.texi:
33646         * doc/misc/eww.texi, doc/misc/flymake.texi, doc/misc/forms.texi:
33647         * doc/misc/gnus-coding.texi, doc/misc/gnus-faq.texi:
33648         * doc/misc/gnus.texi, doc/misc/htmlfontify.texi:
33649         * doc/misc/idlwave.texi, doc/misc/ido.texi, doc/misc/info.texi:
33650         * doc/misc/mairix-el.texi, doc/misc/message.texi, doc/misc/mh-e.texi:
33651         * doc/misc/newsticker.texi, doc/misc/nxml-mode.texi:
33652         * doc/misc/octave-mode.texi, doc/misc/org.texi, doc/misc/pcl-cvs.texi:
33653         * doc/misc/pgg.texi, doc/misc/rcirc.texi, doc/misc/reftex.texi:
33654         * doc/misc/remember.texi, doc/misc/sasl.texi, doc/misc/sc.texi:
33655         * doc/misc/semantic.texi, doc/misc/ses.texi, doc/misc/sieve.texi:
33656         * doc/misc/smtpmail.texi, doc/misc/speedbar.texi:
33657         * doc/misc/srecode.texi, doc/misc/todo-mode.texi, doc/misc/tramp.texi:
33658         * doc/misc/url.texi, doc/misc/vhdl-mode.texi, doc/misc/vip.texi:
33659         * doc/misc/viper.texi, doc/misc/widget.texi, doc/misc/wisent.texi:
33660         * doc/misc/woman.texi:
33661         Use it instead of '@documentencoding UTF-8', to lessen the need for
33662         global changes like this in the future.
33663         * doc/emacs/Makefile.in (EMACS_XTRA):
33664         * doc/lispintro/Makefile.in (srcs):
33665         * doc/lispref/Makefile.in (srcs):
33666         Add dependency on docstyle.texi.
33667         * doc/misc/Makefile.in (style): New macro.
33668         (${buildinfodir}/%.info, %.dvi, %.pdf, %.html)
33669         (${buildinfodir}/ccmode.info, ${buildinfodir}/efaq%.info, gnus_deps):
33670         Use it.
33672 2015-05-01  Glenn Morris  <rgm@gnu.org>
33674         * test/automated/cl-lib-tests.el (cl-lib-adjoin-test): Fix it.
33676         * lisp/emacs-lisp/pcase.el (get-edebug-spec, edebug-match)
33677         (help-fns--signature): Declare.
33679         * lisp/emacs-lisp/pcase.el (pcase--make-docstring): Require help-fns.
33681 2015-05-01  Nicolas Petton  <nicolas@petton.fr>
33683         New macro seq-let, providing destructuring support to seq.el
33684         * lisp/emacs-lisp/seq.el (seq-let): New macro.  `seq-let' is similar
33685         to `cl-destructuring-bind' but works on all sequence types supported
33686         by `seq.el'.  Bump version number to 1.6.
33687         * test/automated/seq-tests.el: Add tests for seq-let.
33688         * doc/lispref/sequences.texi: Add documentation for seq-let.
33690 2015-05-01  Pontus Michael  <m.pontus@gmail.com>
33692         * lisp/simple.el (blink-matching-open): Better behavior in minibuffer.
33694 2015-05-01  Glenn Morris  <rgm@gnu.org>
33696         * lisp/emacs-lisp/ert.el (ert--special-operator-p): Fix previous.
33698 2015-05-01  Artur Malabarba  <bruce.connor.am@gmail.com>
33700         * lisp/emacs-lisp/bytecomp.el: Revert "Silence noninteractive compilations"
33701         This reverts commit 9a7ddde977378cb5276a81476ae458889c403267.
33702         This reverts commit 3c0ea587daf8b17960b90603a70e3ac4057d883d.
33703         With message: "* lisp/emacs-lisp/bytecomp.el: Use `inhibit-message'".
33704         (Bug#20445).
33706 2015-05-01  K. Handa  <handa@gnu.org>
33708         * lisp/international/mule-cmds.el (input-method-use-echo-area):
33709         Change :type to 'boolean.
33711 2015-05-01  Lars Magne Ingebrigtsen  <larsi@gnus.org>
33713         Start using proportional fonts in eww by default
33714         * lisp/net/shr.el (shr-use-fonts): Switch the default to t, since
33715         it seems to work well.
33717         Fix links in tables in shr
33718         * lisp/net/shr.el: Remove `shr-inhibit-decoration', because that
33719         makes (some) links in tables not work.
33721 2015-05-01  Jan D  <jan.h.d@swipnet.se>
33723         * lisp/term/ns-win.el (ns-get-cut-buffer-internal): Remove this alias.
33725 2015-04-30  Glenn Morris  <rgm@gnu.org>
33727         * lisp/emacs-lisp/ert.el (ert--special-operator-p):
33728         Update for 2015-02-08 change to indirect-function.
33730         * lisp/term/ns-win.el (ns-get-selection-internal):
33731         Remove declaration for function deleted 2014-10-21.
33733         * lisp/dom.el: Load subr-x when compiling, for when-let.
33735         Silence some compilation warnings
33736         * lisp/emacs-lisp/check-declare.el (compilation-forget-errors):
33737         * lisp/emulation/cua-base.el (delete-active-region):
33738         * lisp/net/net-utils.el (w32-get-console-output-codepage):
33739         * lisp/term/ns-win.el (ns-own-selection-internal)
33740         (ns-disown-selection-internal, ns-selection-owner-p)
33741         (ns-selection-exists-p, ns-get-selection):
33742         Declare for compiler.
33744         Function declaration updates prompted by 'make check-declare'
33745         * lisp/emacs-lisp/package.el (lm-homepage):
33746         * lisp/gnus/gnus-util.el (iswitchb-read-buffer):
33747         * lisp/gnus/mm-decode.el (libxml-parse-html-region):
33748         * lisp/gnus/mml.el (libxml-parse-html-region):
33749         * lisp/gnus/nnrss.el (libxml-parse-html-region):
33750         * lisp/net/eww.el (libxml-parse-html-region):
33751         * lisp/net/shr.el (libxml-parse-html-region):
33752         * lisp/vc/vc-bzr.el (vc-annotate-convert-time):
33753         * lisp/vc/vc-cvs.el (vc-annotate-convert-time):
33754         * lisp/vc/vc-git.el (vc-annotate-convert-time):
33755         * lisp/vc/vc-hg.el (vc-annotate-convert-time):
33756         * lisp/vc/vc-mtn.el (vc-annotate-convert-time):
33757         * lisp/vc/vc-rcs.el (vc-annotate-convert-time):
33758         Update declaration.
33760         Remove compatibility code for 20-year old function renaming
33761         * lisp/progmodes/idlw-shell.el (idlwave-shell-comint-filter):
33762         Make it an obsolete alias.
33763         (idlwave-shell-filter): Change all uses to comint-output-filter.
33765 2015-04-30  Tassilo Horn  <tsdh@gnu.org>
33767         Add ace-window face config
33768         * etc/themes/tsdh-light-theme.el (tsdh-light): Add ace-window face
33769         configuration.
33771 2015-04-30  Paul Eggert  <eggert@cs.ucla.edu>
33773         Unclutter 'make doc' output a bit
33774         * Makefile.in ($(DOCS), $(INSTALL_DOC), $(UNINSTALL_DOC)):
33775         Use make subst rather than sh IFS to split target string apart.
33776         This makes 'make' output easier to follow.
33778         Merge from gnulib
33779         * doc/misc/texinfo.tex: Update from gnulib.
33781 2015-04-30  Artur Malabarba  <bruce.connor.am@gmail.com>
33783         * lisp/emacs-lisp/package.el: Some speed optimizations on menu refresh.
33784         (package-menu--print-info): Obsolete.
33785         (package-menu--print-info-simple): New function.
33786         (package-menu--refresh): Use it, simplify code, and improve
33787         performance.
33788         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print-entry):
33789         Tiny performance improvement.
33791         * lisp/emacs-lisp/package.el (package--message): inhibit-message.
33793 2015-04-29  Paul Eggert  <eggert@cs.ucla.edu>
33795         Omit -Wstrict-overflow workaround in GCC 5
33796         * src/process.c: Remove workaround for GCC -Wstrict-overflow bug
33797         if it's GCC 5 or later, as the bug appears to be fixed in GCC 5.1.
33799         Merge from gnulib
33800         This incorporates:
33801         2015-04-29 extern-inline: no need for workaround in GCC 5.1
33802         2015-04-26 file-has-acl: port to CentOS 6
33803         * m4/acl.m4, m4/extern-inline.m4: Update from gnulib.
33805 2015-04-29  Helmut Eller  <eller.helmut@gmail.com>
33807         Set next-error-* in xref--xref-buffer-mode
33808         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
33809         Set `next-error-function' and `next-error-last-buffer'.
33810         (xref--next-error-function): New function.
33811         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01311.html)
33813 2015-04-29  Fabián Ezequiel Gallina  <fgallina@gnu.org>
33815         python.el: Fix warnings on looking-back calls missing LIMIT
33816         * lisp/progmodes/python.el (python-shell-accept-process-output):
33817         Pass LIMIT arg to looking-back.
33819 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
33821         * lisp/emacs-lisp/package.el: Use pushnew for downloads in progress.
33822         (package--download-and-read-archives): Use pushnew instead of
33823         append.  If something terrible happened during a previous
33824         download, simply refreshing should now make things work again.
33826 2015-04-29  Dmitry Gutov  <dgutov@yandex.ru>
33828         Introduce etags-xref-find-definitions-tag-order
33829         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
33830         New variable.
33831         (etags--xref-find-definitions): Use it (bug#19468).
33833 2015-04-29  Eli Zaretskii  <eliz@gnu.org>
33835         PATH- and completion-related fixes in Eshell on MS-Windows
33836         * lisp/eshell/esh-ext.el (eshell-search-path): When running on
33837         MS-Windows, prepend "." to list of directories produced from PATH,
33838         as Windows always implicitly searches the current directory first.
33839         (eshell-force-execution): Make it have a non-nil default value on
33840         MS-Windows and MS-DOS.
33841         * lisp/eshell/em-cmpl.el (eshell-complete-commands-list): If
33842         eshell-force-execution is non-nil, complete on readable files and
33843         directories, not only executables.  When running on MS-Windows,
33844         prepend "." to list of directories produced from PATH, as Windows
33845         always implicitly searches the current directory first.
33847 2015-04-29  Sam Steingold  <sds@gnu.org>
33849         Bury RCIRC buffers when there is no activity
33850         * lisp/net/rcirc.el (rcirc-non-irc-buffer): Remove.
33851         (rcirc-bury-buffers): New function.
33852         (rcirc-next-active-buffer): When there is no new activity, use
33853         `rcirc-bury-buffers' to hide all RCIRC buffers.
33855 2015-04-29  Krzysztof Jurewicz  <krzysztof.jurewicz@gmail.com>  (tiny change)
33857         Fix DBUS query result parsing for secrets-search-items
33858         * lisp/net/secrets.el (secrets-search-items): Fix DBUS query result
33859         parsing.  The function assumed that return value of the
33860         SearchItems method called on a collection is a list of two lists,
33861         however this is true only when no collection is specified.  GNOME
33862         had used to incorrectly return a list of two lists in both cases,
33863         but this was already fixed:
33864         https://bugzilla.gnome.org/show_bug.cgi?id=695115 .  Also fix an
33865         incorrect information in the secrets-search-items’ docstring.
33866         (Bug#20449)
33868 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
33870         * lisp/emacs-lisp/bytecomp.el (byte-compile--message):
33871         Use `inhibit-message' instead of hiding the previous message
33872         with (message nil).
33874 2015-04-29  Oleh Krehel  <ohwoeowho@gmail.com>
33876         Remove the deprecated INTERNAL_FIELD macro by expanding it
33877         * src/lisp.h (INTERNAL_FIELD): Remove.
33878         (DEFVAR_KBOARD): Modify accordingly.
33879         * src/alloc.c, src/buffer.c, src/buffer.h, src/category.c:
33880         * src/keyboard.c, src/keyboard.h, src/syntax.c: Adjust users.
33881         * src/buffer.c (compact_buffer): Use BVAR.
33883 2015-04-29  Glenn Morris  <rgm@gnu.org>
33885         Replace an obsolete function alias
33886         * lisp/isearch.el (isearch-yank-x-selection):
33887         * lisp/mouse-copy.el (mouse-drag-secondary-pasting)
33888         (mouse-drag-secondary-moving):
33889         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
33890         Replace obsolete alias x-get-selection with gui-get-selection.
33892 2015-04-29  Stefan Monnier  <monnier@iro.umontreal.ca>
33894         * lisp/mail/rmailsum.el: Use lexical-binding.
33896 2015-04-29  Glenn Morris  <rgm@gnu.org>
33898         * test/automated/package-test.el (package-test-update-archives-async):
33899         Skip test on hydra.nixos.org.
33901 2015-04-28  Glenn Morris  <rgm@gnu.org>
33903         * lisp/foldout.el: Update for 2015-01-30 outline.el changes.
33904         (foldout-zoom-subtree, foldout-exit-fold, foldout-mouse-show)
33905         (foldout-mouse-hide-or-exit): Use new names for outline functions.
33907         * lisp/cedet/semantic/bovine/c.el (semantic-c-do-lex-if):
33908         Update for 2014-06-26 hideif.el change.
33910         * lisp/mail/rmailsum.el: Fix search for encoded subjects.  (Bug#19088)
33911         (rmail--decode-and-apply): New function.
33912         (rmail-message-regexp-p-1, rmail-message-subject-p): Use it.
33914         * lisp/mail/rmail.el (rmail-highlighted-headers): Fix :type.
33916 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
33918         * lisp/emacs-lisp/package.el: Fix priority-hiding corner case
33919         (package-menu--refresh): Delegate obsolete-hiding to
33920         `package--remove-hidden'.
33921         (package--remove-hidden): Disregard high-priority package if it is
33922         older than the installed one.
33924 2015-04-28  Paul Eggert  <eggert@cs.ucla.edu>
33926         Update source file encoding list
33927         Update admin/notes/unicode, along with coding system cookies in
33928         other files, so that the two match each other better.
33929         * admin/notes/unicode: lisp/language/ethio-util.el and
33930         lisp/language/ethiopic.el also use utf-8-emacs.
33931         * admin/notes/hydra, doc/misc/dbus.texi, doc/misc/org.texi:
33932         * doc/misc/remember.texi, etc/refcards/cs-dired-ref.tex:
33933         * etc/refcards/cs-refcard.tex, etc/refcards/cs-survival.tex:
33934         * etc/refcards/sk-dired-ref.tex, etc/refcards/sk-refcard.tex:
33935         * etc/refcards/sk-survival.tex:
33936         Add "coding: utf-8" so that this file is not mishandled in a
33937         Latin-1 or Big-5 locale.
33938         * lisp/international/robin.el, lisp/org/ox-ascii.el:
33939         Specify utf-8, not utf-8-emacs, as these are plain UTF-8 files.
33940         * lisp/language/ethio-util.el: Fix trailer.
33942 2015-04-28  Eli Zaretskii  <eliz@gnu.org>
33944         Fix synchronous invocation of Ispell
33945         * lisp/textmodes/ispell.el (ispell-init-process): Assign a non-nil
33946         value to ispell-process-directory before calling ispell-init-process.
33947         Don't call set-process-coding-system if ispell-async-processp is nil.
33948         (Bug#20448)
33950 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
33952         * lisp/emacs-lisp/package.el: Skip space and comments in init file
33953         (package--ensure-init-file): Insert snippet at first
33954         non-whitespace non-comments line.  Respects local-vars at the top
33955         of the file.
33957 2015-04-28  Glenn Morris  <rgm@gnu.org>
33959         * lisp/mail/rmail.el (rmail-copy-headers):
33960         Handle rmail-nonignored-headers being nil.  (Bug#18878)
33962         * lisp/subr.el (delay-mode-hooks): Fix doc typo.
33964         * lisp/vc/vc-bzr.el (vc-bzr-after-dir-status):
33965         Don't get confused by a bzrlib version mismatch warning.
33967 2015-04-27  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
33969         Change default location of EUDC options file
33970         * etc/NEWS: Document change to EUDC options file's default location.
33971         * lisp/net/eudc-vars.el (eudc-options-file): Use
33972         `locate-user-emacs-file' to change default options file location.
33974 2015-04-27  Glenn Morris  <rgm@gnu.org>
33976         * test/automated/package-test.el (package-test-update-archives-async):
33977         Try to handle the test server script dying.
33979 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
33981         * lisp/saveplace.el (save-place-mode): New minor mode.
33982         (save-place): Redefine as an obsolete alias.
33984         * lisp/midnight.el: Make it a minor mode.  Allow predicates.
33985         * lisp/midnight.el: Use lexical-binding.
33986         (midnight-mode): Make it a proper minor mode.
33987         (midnight-buffer-display-time): Make arg non-optional.
33988         (midnight-find): Remove.
33989         (clean-buffer-list-kill-never-regexps)
33990         (clean-buffer-list-kill-regexps): Tweak type for new function choice.
33991         (clean-buffer-list-delay): Allow clean-buffer-list-kill-regexps to
33992         contain functions.
33993         (clean-buffer-list): Use cl-find.
33994         Allow clean-buffer-list-kill-never-regexps to contain functions.
33996 2015-04-27  Nicolas Petton  <nicolas@petton.fr>
33998         Bump version of seq.el to 1.5
33999         * lisp/emacs-lisp/seq.el (seq-doseq): Remove undocumented return value
34000         from seq-doseq.  Bump version number of seq.el.
34002 2015-04-27  Glenn Morris  <rgm@gnu.org>
34004         * lisp/mail/rmail.el (rmail-reply):
34005         Decode subject before matching "Re:" prefix.  (Bug#20396)
34007 2015-04-27  Artur Malabarba  <bruce.connor.am@gmail.com>
34009         * lisp/emacs-lisp/package.el: Small improvements
34010         (package--with-work-buffer-async): More informative error.
34011         (package-install-user-selected-packages): Rename to
34012         `package-install-selected-packages'.
34014 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
34016         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last
34017         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last change.
34018         (eieio--class-make): Remove leftover `tag'.
34020 2015-04-27  Glenn Morris  <rgm@gnu.org>
34022         * lisp/gnus/message.el (gnus-extract-address-components):
34023         Remove bogus declaration that was masking previous problem.
34025 2015-04-27  Nicolas Graner  <nicolas.graner@u-psud.fr>  (tiny change)
34027         * lisp/gnus/message.el (message-insert-formatted-citation-line):
34028         Fix typo.  (Bug#20318)
34030 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
34032         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Reuse oldc.
34034         * lisp/textmodes/reftex-toc.el: Improve multi-frame behavior
34035         * lisp/textmodes/reftex-toc.el (reftex-toc-revert): Avoid displaying
34036         the buffer in yet another frame.
34037         (reftex-toc-visit-location): Make sure toc-window has focus at the end
34038         when `final' is nil.
34039         (reftex--rebuilding-toc): Defvar to avoid `boundp' and
34040         silence warnings.  Use `--' to clarify that it's internal.
34041         (reftex-toc-next, reftex-toc-previous, reftex-toc-demote)
34042         (reftex-toc-promote): Clarify unused argument.
34043         (reftex--pro-or-de, reftex--start-line, reftex--mark-line):
34044         Add `reftex--' prefix.  Fix all users.
34045         (reftex-toc-promote-prepare): Use _ for dummy variable.
34046         (reftex-toc-restore-region): Rename `m.
34048 2015-04-27  Eli Zaretskii  <eliz@gnu.org>
34050         Fix a typo in bibtex.el
34051         * lisp/textmodes/bibtex.el (bibtex-insert-kill): Fix a typo from
34052         last change.  (Bug#20429)
34054         Fix redisplay of frame after loading new fonts
34055         * src/xdisp.c (redisplay_internal): When retrying redisplay of
34056         a frame because new fonts were loaded, disable all redisplay
34057         optimizations on that frame by calling SET_FRAME_GARBAGED.
34058         (Bug#20410)
34060 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
34062         * lisp/info.el (Info-menu): Properly provide the `default'
34063         (Bug#20391)
34065         * lisp/progmodes/elisp-mode.el (elisp--get-fnsym-args-string):
34066         Catch errors from documentation (bug#20418).
34067         (emacs-lisp-mode-abbrev-table): Remove redundant defvar.
34069 2015-04-26  Stefan Monnier  <monnier@iro.umontreal.ca>
34071         * lisp/emacs-lisp/package.el: Move variables to silence byte-compiler.
34072         Remove redundant ":group 'package".
34074 2015-04-26  Eli Zaretskii  <eliz@gnu.org>
34076         Fix a typo in rmail.el
34077         * lisp/mail/rmail.el (rmail-ensure-blank-line): Fix a typo in the
34078         last commit.  (Bug#20429)
34080 2015-04-26  Dmitry Gutov  <dgutov@yandex.ru>
34082         Introduce xref-prompt-for-identifier
34083         * lisp/progmodes/xref.el (xref-prompt-for-identifier): New option.
34084         (xref--read-identifier): Use it
34085         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01205.html).
34087 2015-04-26  João Távora  <joaotavora@gmail.com>
34089         `tex-insert-quote' after single `'' opens quotes instead of closing
34090         Without this, it's very hard to precede double quotes with the
34091         apostrophe character, i.e. insert the sequence '``
34092         (quote-backquote-backquote), commonly useful in portuguese, for
34093         instance.
34094         * lisp/textmodes/tex-mode.el (tex-insert-quote): Add ?' to the list of
34095         preceding chars making `tex-insert-quote' be in the "opening" context.
34097 2015-04-25  Dmitry Gutov  <dgutov@yandex.ru>
34099         Pass `id' to `completing-read' as def instead of initial input
34100         * lisp/progmodes/xref.el (xref--read-identifier): Pass `id' to
34101         `completing-read' as the default value instead of initial input
34102         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01182.html).
34104 2015-04-25  Paul Eggert  <eggert@cs.ucla.edu>
34106         Don't freeze with unreadable processes
34107         Don't freeze if an exiting process can't be read from.  (Bug#19860).
34108         This fixes a bug I introduced in
34109         2014-07-08T07:24:07Z@eggert@cs.ucla.edu
34110         "* process.c: Add sanity checks for file descriptors."
34111         Dmitry Gutov did most of the legwork in finding the problem.
34112         * src/process.c (wait_reading_process_output):
34113         Treat non-running processes that can't be read from
34114         the same as other non-running processes.
34116 2015-04-25  Alan Mackenzie  <acm@muc.de>
34118         Fix change from 2015-04-22 "On C-y, stop some text property entries ..."
34119         * lisp/subr.el (remove-yank-excluded-properties): Put
34120         `with-silent-modifications' around only the last three lines of code.
34122 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
34124         * lisp/emacs-lisp/package.el (package-all-keywords): Don't cache
34125         (package--all-keywords): Deleted variable.
34127         * etc/NEWS: Document package-hiding functionality.
34129 2015-04-25  Eli Zaretskii  <eliz@gnu.org>
34131         * lisp/window.el (recenter-last-op): Doc fix.  (Bug#20419)
34133         Clarify the doc string of 'replace-regexp-in-string'
34134         * lisp/subr.el (replace-regexp-in-string): Doc fix.  (Bug#20395)
34136         Improve doc string of 'insert-buffer-substring'
34137         * src/editfns.c (Finsert_buffer_substring): Doc fix.  (Bug#20421)
34139         MS-Windows followup for the recent gnulib update
34140         * nt/gnulib.mk (libgnu_a_SOURCES): Replace file-has-acl.c with
34141         acl-internal.c.
34143 2015-04-24  Paul Eggert  <eggert@cs.ucla.edu>
34145         Spelling fixes
34147         Merge from gnulib
34148         This incorporates:
34149         2015-04-24 file-has-acl: new module, split from acl
34150         2015-04-24 manywarnings: add GCC 5.1 warnings
34151         2015-04-21 lstat: fix cross-compilation 'ln -s' problem
34152         2015-04-15 qacl: Simplify HP-UX acl_nontrivial check
34153         2015-04-15 acl: On Linux, check for acls without libacl
34154         2015-04-14 tempname: avoid unused parameter warnings (trivial)
34155         * lib/acl-internal.c: New file, from gnulib.
34156         * lib/file-has-acl.c: Remove; no longer imported from gnulib.
34157         * lib/acl-internal.h, lib/gnulib.mk, lib/qcopy-acl.c, lib/tempname.c:
34158         * m4/acl.m4, m4/gnulib-comp.m4, m4/lstat.m4, m4/manywarnings.m4:
34159         Update from gnulib.
34161         Port --enable-gcc-warnings to GCC 5.1 x86-64
34162         * lib-src/ebrowse.c (dump_sym):
34163         * lib-src/hexl.c (main):
34164         * src/ccl.c (ccl_driver):
34165         * src/character.c (string_escape_byte8):
34166         * src/dbusbind.c (xd_retrieve_arg, xd_add_watch):
34167         * src/gnutls.c (Fgnutls_boot):
34168         * src/gtkutil.c (xg_check_special_colors):
34169         * src/image.c (x_build_heuristic_mask):
34170         * src/print.c (safe_debug_print, print_object):
34171         * src/term.c (produce_glyphless_glyph):
34172         * src/xdisp.c (get_next_display_element)
34173         (produce_glyphless_glyph):
34174         * src/xterm.c (x_draw_glyphless_glyph_string_foreground):
34175         Don't use a signed format to print an unsigned integer, or vice
34176         versa.  GCC 5.1's new -Wformat-signedness option warns about this.
34177         * src/image.c (png_load_body, jpeg_load_body):
34178         Silence a bogus setjump diagnostic from GCC 5.1 (GCC bug 54561).
34180 2015-04-24  Tassilo Horn  <tsdh@gnu.org>
34182         Add new faces to tsdh-light-theme
34183         * etc/themes/tsdh-light-theme.el (tsdh-light): New face
34184         definitions for Info-quoted, ace-jump-face-foreground,
34185         hl-paren-face, show-paren-match, and show-paren-mismatch.
34187 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
34189         * lisp/emacs-lisp/seq.el (seq-doseq): Fix the macro.
34191 2015-04-24  Glenn Morris  <rgm@gnu.org>
34193         * build-aux/gitlog-to-emacslog:
34194         Use raw log format rather than wrapped one.
34196 2015-04-24  Stefan Monnier  <monnier@iro.umontreal.ca>
34198         * lisp/emacs-lisp/seq.el (seq-doseq): Tighten the code.
34199         (seq-doseq): Fix out-of-scope binding.
34200         Don't call `seq-length at every iteration.
34201         Reduce `if's from 3 to 2 per iteration.
34202         (emacs-lisp-mode-hook): Don't tweak in Emacs≥25.
34204 2015-04-24  Glenn Morris  <rgm@gnu.org>
34206         * lisp/textmodes/text-mode.el (text-mode-hook):
34207         Move text-mode-hook-identify to default.
34209         * lisp/mouse.el (minor-mode-menu-from-indicator):
34210         Handle non-function members of minor-mode-map-alist.  (Bug#20201)
34212         * lisp/help-fns.el (describe-function): More type checking.
34213         (describe-function-1): Handle changed symbol-function.  (Bug#20201)
34215         * build-aux/gitlog-to-emacslog: Convert "Fixes:" to "(Bug#)".
34216         (Bug#20325)
34218 2015-04-24  Andreas Schwab  <schwab@linux-m68k.org>
34220         shr: strip leading whitespace when expanding URLs
34221         * lisp/net/shr.el (shr-expand-url): Strip leading whitespace from URL.
34223 2015-04-24  Eli Zaretskii  <eliz@gnu.org>
34225         Clarify "co-authored" some more
34227         * CONTRIBUTE: Clarify "co-authored-by".  (Bug#20400)
34229         Clarify doc strings of functions that search for properties
34230         * src/textprop.c (Fnext_char_property_change)
34231         (Fprevious_char_property_change)
34232         (Fnext_single_char_property_change)
34233         (Fprevious_single_char_property_change, Fnext_property_change)
34234         (Fnext_single_property_change, Fprevious_property_change)
34235         (Fprevious_single_property_change): Clarify doc strings wrt return
34236         value and the optional LIMIT argument.  (Bug#20411)
34238 2015-04-24  Glenn Morris  <rgm@gnu.org>
34240         * test/automated/message-mode-tests.el (message-mode-propertize):
34241         Handle non-writable HOME; eg on hydra.nixos.org.
34243 2015-04-23  Eli Zaretskii  <eliz@gnu.org>
34245         Avoid starting threads by w32-shell-execute
34246         * src/w32fns.c (Fw32_shell_execute): Convert "file:///" URLs into
34247         local file names, before invoking ShellExecute.  (Bug#20220)
34249 2015-04-23  Martin Rudalics  <rudalics@gmx.at>
34251         Fix following doc-links in `widget-documentation-link-action'
34252         * lisp/wid-edit.el (widget-documentation-link-action): Make
34253         following doc-links less simplistic (Bug#20398).
34255 2015-04-22  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
34257         Improve EUDC manual
34258         * doc/misc/eudc.texi (Troubleshooting):
34259         New LDAP troubleshooting subsection.
34261 2015-04-22  Paul Eggert  <eggert@cs.ucla.edu>
34263         Omit needless "\ " after multibyte then newline
34264         * src/print.c: Include <c-ctype.h>, for c_isxdigit.
34265         (print_object): When print-escape-multibyte is non-nil and a
34266         multibyte character is followed by a newline or formfeed, followed
34267         by a hex digit, don't output a needless "\ " before the hex digit.
34268         * test/automated/print-tests.el (print-hex-backslash): New test.
34270 2015-04-22  Oleh Krehel  <ohwoeowho@gmail.com>
34272         Add a new `inhibit-message' variable
34273         * src/xdisp.c (syms_of_xdisp): Define a boolean `inhibit_message'.
34274         (message3): Don't call `message3_nolog' (i.e. use the Echo Area) when
34275         `inhibit_message' is non-zero.
34276         * etc/NEWS: Add an entry.
34277         * doc/lispref/display.texi: Add an entry for `inhibit-message',
34278         mention it in `message'.
34280 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
34282         Fix last fix in `display-buffer-record-window'.
34283         * lisp/window.el (display-buffer-record-window): Fix last fix.
34285 2015-04-22  Eli Zaretskii  <eliz@gnu.org>
34287         Minor edits in CONTRIBUTE
34288         * CONTRIBUTE: Rearrange instructions about log messages.
34289         Use "Git" capitalized all over.
34290         Use 2 spaces between sentences.
34292 2015-04-22  Artur Malabarba  <bruce.connor.am@gmail.com>
34294         * lisp/files.el (basic-save-buffer): Fix argument.
34296         * lisp/cus-edit.el (custom-file): Consider init-file-had-error.
34297         In case `(and (null custom-file) init-file-had-error)' do the same
34298         thing we'd do if `(null user-init-file)', which is to either error out
34299         or return nil.  This is in line with `custom-save-all' which would
34300         throw an error in that situation.  (Bug#20355)
34302         * lisp/emacs-lisp/package.el: Hide lower-priority packages in menu.
34303         (package-menu-hide-low-priority): New variable, see its doc.
34304         (package-archive-priorities): Update doc.
34305         (package-desc-priority): New function.
34306         (package-desc-priority-version): Use it.
34307         (package--remove-hidden): New function.
34308         (package-menu--refresh): Use it.
34310         * lisp/emacs-lisp/package.el: Implement displaying obsolete packages.
34311         (package-menu--hide-obsolete): New variable.
34312         (package--remove-hidden): Use it.
34313         (package-menu-hide-obsolete): New interactive function to toggle
34314         the variable.
34315         (package--quick-help-keys): Document it.
34316         (package-menu-async): Add :version tag.
34317         (package-menu-mode-map): Bind package-menu-hide-obsolete.
34318         (package-desc-status): Indicate non-installed obsolete packages as
34319         avail-obso.
34320         (package-menu-mark-install): Allow installation of avail-obso.
34321         (package-menu--status-predicate): Sort avail-obso with available.
34323 2015-04-22  Alan Mackenzie  <acm@muc.de>
34325         On C-y, stop some text property entries being written into buffer-undo-list
34326         * lisp/subr.el (remove-yank-excluded-properties): Enclose the code in
34327         `with-silent-modifications'.
34329 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
34331         In display-buffer-record-window record selected window if necessary
34332         * lisp/window.el (display-buffer-record-window): Store selected window
34333         if it differs from 3rd element of 'quit-restore' parameter (Bug#20353).
34335 2015-04-22  Tassilo Horn  <tsdh@gnu.org>
34337         Fix reftex-citation bug
34338         * lisp/textmodes/reftex-cite.el (reftex-extract-bib-entries):
34339         Fix `wrong-type-argument stringp nil' error that occurs when AUCTeX
34340         integration is enabled and there are no citations in the document
34341         so far.
34343 2015-04-21  Dmitry Gutov  <dgutov@yandex.ru>
34345         Add or reset based on the presence of MERGE_HEAD
34346         * lisp/vc/vc-git.el (vc-git-find-file-hook): Add
34347         `vc-git-resolve-when-done' to `after-save-hook' in either case.
34348         (vc-git-conflicted-files): Add a TODO.
34349         (vc-git-resolve-when-done): Depending on the presence of
34350         MERGE_HEAD, either update the resolved file in the index, or
34351         remove it from there.  (Bug#20292)
34353 2015-04-21  Glenn Morris  <rgm@gnu.org>
34355         * lisp/custom.el (custom-declare-group): No need to purecopy
34356         custom-current-group-alist members following recent change to set
34357         it to nil before dumping.
34359         * build-aux/gitlog-to-emacslog: Get footer from ChangeLog.2.
34360         (Bug#20399)
34362 2015-04-21  Daniel Colascione  <dancol@dancol.org>
34364         Unbreak no-op buffer save message
34365         * lisp/files.el (basic-save-buffer): Accept called-interactively as
34366         an argument instead of directly invoking called-interactively-p,
34367         which will always yield nil in that context.
34369 2015-04-21  Alan Mackenzie  <acm@muc.de>
34371         CC Mode: Do nothing in before/after-change-functions for text
34372         property changes
34373         Fixes bug#20266.
34374         * lisp/progmodes/cc-mode.el (c-basic-common-init): Make
34375         yank-handled-properties buffer local, and remove 'category from it.
34376         (c-called-from-text-property-change-p): New function.
34377         (c-before-change): Don't do anything if a call of the new function
34378         returns non-nil.
34379         (c-after-change): Don't do much if a call of the new function returns
34380         non-nil.
34381         (c-extend-after-change-region): Put changes to text property 'fontified
34382         inside c-save-buffer-state.
34384 2015-04-20  Stefan Monnier  <monnier@iro.umontreal.ca>
34386         Fix byte-compiler warnings about looking-back
34387         * lisp/vc/log-view.el (log-view-end-of-defun-1):
34388         * lisp/textmodes/tex-mode.el (latex-forward-sexp-1):
34389         * lisp/textmodes/reftex-ref.el (reftex-goto-label):
34390         * lisp/textmodes/bibtex.el (bibtex-insert-kill):
34391         * lisp/progmodes/sh-script.el (sh--maybe-here-document):
34392         * lisp/progmodes/ruby-mode.el (ruby-end-of-defun):
34393         * lisp/progmodes/ada-mode.el (ada-in-numeric-literal-p):
34394         * lisp/org/org.el (org-insert-heading, org-sort-entries):
34395         * lisp/org/org-mouse.el (org-mouse-end-headline)
34396         (org-mouse-context-menu):
34397         * lisp/org/org-clock.el (org-clock-cancel):
34398         * lisp/man.el (Man-default-man-entry):
34399         * lisp/mail/rmail.el (rmail-get-new-mail, rmail-insert-inbox-text)
34400         (rmail-ensure-blank-line):
34401         * lisp/mail/footnote.el (Footnote-delete-footnote):
34402         * lisp/mail/emacsbug.el (report-emacs-bug):
34403         * lisp/info.el (Info-follow-reference, Info-fontify-node):
34404         * lisp/info-look.el (info-lookup-guess-custom-symbol):
34405         * lisp/help-fns.el (help-fns--key-bindings):
34406         * lisp/files.el (hack-local-variables):
34407         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-cmd-complete)
34408         (viper-get-ex-pat, ex-expand-filsyms, viper-get-ex-file)
34409         (viper-complete-filename-or-exit):
34410         * lisp/emulation/viper-cmd.el (viper-backward-indent):
34411         * lisp/emacs-lisp/lisp-mode.el (calculate-lisp-indent):
34412         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
34413         * lisp/cus-edit.el (custom-face-edit-value-create):
34414         * lisp/calendar/todo-mode.el (todo-set-item-priority)
34415         (todo-filter-items-1, todo-convert-legacy-files)
34416         (todo-prefix-overlays): Add explicit second arg to looking-back.
34418 2015-04-20  Glenn Morris  <rgm@gnu.org>
34420         Avoid non-nil current-load-list at startup
34421         * src/process.c (init_process_emacs): Move Fprovide statement...
34422         (syms_of_process): ... to here.
34424         * lisp/loadup.el (custom-current-group-alist): Reset before dumping.
34426         * lisp/startup.el (command-line) <site-run-file>: Avoid rogue value
34427         in emacs -Q.
34429 2015-04-20  Ludovic Courtès  <ludo@gnu.org>
34431         * lisp/loadup.el (exec-path): Avoid storing build-time PATH in binary.
34432         (Bug#20330)
34434 2015-04-20  Glenn Morris  <rgm@gnu.org>
34436         * lisp/cus-start.el (exec-path): Set standard value, to avoid rogue.
34438         Tweak exec-path in uninstalled case
34439         * src/callproc.c (init_callproc): If running uninstalled, do not
34440         include eventual installation libexec directory in exec-path.
34442 2015-04-20  Artur Malabarba  <bruce.connor.am@gmail.com>
34444         * lisp/emacs-lisp/package.el: Filter by multiple keywords and
34445         cache keywords.
34446         (package-menu-filter): Accept a list of keywords.
34447         (package--all-keywords): New variable to cache known keywords.
34448         (package-all-keywords): Populate it if necessary.
34449         (package-refresh-contents): Reset it.
34451         * lisp/emacs-lisp/package.el: Make archive and status pseudo-keywords
34452         (package--has-keyword-p): Understand "arc:xxxx" and "status:xxxx"
34453         as special keywords which match agains package archive and status
34454         respectively.
34455         * etc/NEWS: Document it.
34457 2015-04-20  Eli Zaretskii  <eliz@gnu.org>
34459         Describe and index "empty overlays".
34460         * doc/lispref/display.texi (Overlays): Improve indexing.
34461         (Managing Overlays): Describe "empty" overlays.
34462         (Overlay Properties, Finding Overlays): Add cross-reference to
34463         where empty overlays are described.
34465 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
34467         Spelling fixes
34469         Quote 'like this' in top-level files
34470         * CONTRIBUTE, INSTALL, Makefile.in, README, configure.ac, make-dist:
34471         Prefer to single-quote 'like this' (instead of the older style
34472         `like this').
34473         * configure.ac: Fix some space-before-tab problems that 'git commit'
34474         complained about.
34476         Use bool for boolean in textprop.c, undo.c
34477         * src/textprop.c (soft, hard): Now constants instead of macros.
34478         (validate_plist): Rewrite to avoid need for boolean local.
34479         (interval_has_all_properties, interval_has_some_properties)
34480         (interval_has_some_properties_list, add_properties)
34481         (remove_properties, get_char_property_and_overlay)
34482         (Fnext_single_char_property_change)
34483         (Fprevious_single_char_property_change, add_text_properties_1)
34484         (Fremove_text_properties, Fremove_list_of_text_properties)
34485         (copy_text_properties):
34486         * src/tparam.c (tparam1):
34487         * src/undo.c (record_change, record_property_change)
34488         (syms_of_undo):
34489         Use 'true' and 'false' for booleans.
34491 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
34493         * lisp/vc/vc-git.el (vc-git-find-file-hook):
34494         Call `smerge-start-session' even when dealing with a stash
34495         conflict (bug#20292).
34497 2015-04-19  Vibhav Pant  <vibhavp@gmail.com>
34499         Add option to eshell/clear to clear scrollback.
34500         * lisp/eshell/esh-mode.el (eshell/clear-scrollback): New function.
34501         (eshell/clear): Add an optional SCROLLBACK argument.  If non-nil,
34502         scrollback contents are cleared.
34503         * etc/NEWS: Describe change.
34504         * doc/misc/eshell.texi: Add entry for `clear'.
34506 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
34508         * src/widget.c (set_frame_size): Prefer 'int' to 'unsigned'
34509         where either will do.
34511 2015-04-19  Steve Purcell  <steve@sanityinc.com>
34513         Assume package archive-contents are UTF8-encoded
34514         * lisp/emacs-lisp/package.el (package--read-archive-file):
34515         Set `coding-system-for-read' explicitly to 'utf-8 when reading the
34516         downloaded and cached archive-contents files, so that non-ASCII
34517         characters in package descriptions are displayed correctly in the
34518         `list-packages' menu.  (Bug#20231)
34520 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
34522         Abort when looking at stashed changes
34523         * lisp/vc/vc-git.el (vc-git-find-file-hook): Abort when looking at
34524         stashed changes (bug#20292).
34526 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
34528         Refactor low-level printing for simplicity
34529         * src/print.c (PRINTDECLARE): Remove.  Move its contents into
34530         PRINTPREPARE; doable now that we assume C99.  All callers changed.
34531         (PRINTCHAR): Remove, as it adds more mystery than clarity.
34532         All callers changed.
34533         (strout): Assume that caller computes length.  All callers changed.
34534         (print_c_string): New function.
34535         (write_string, write_string_1): Compute length instead of asking
34536         the caller to compute it.  All callers changed.
34537         (write_string): Simplify by using write_string_1.
34538         (write_string_1): Simplify by using print_c_string.
34539         (Fterpri): Compute default val more clearly.
34540         (Fprin1_to_string, print_object):
34541         Assume C99 to avoid unnecessary nesting.
34542         (print_object): Prefer print_c_string to multiple printchar, or
34543         to calling strout with -1 length.  Coalesce into sprintf when
34544         this is easy.
34546 2015-04-18  Paul Eggert  <eggert@cs.ucla.edu>
34548         Prefer "Bug#1234" in commit messages (Bug#20325)
34549         * .dir-locals.el (log-edit-mode): Don't rewrite Bug#,
34550         as this isn't useful for Git.
34551         * CONTRIBUTE: Suggest "Bug#1234" instead of "Fixes: debbugs:1234".
34553 2015-04-18  Glenn Morris  <rgm@gnu.org>
34555         * lisp/files.el (auto-mode-alist): Use conf mode for gitconfig, hgrc.
34556         (Bug#19506)
34558 2015-04-18  Tom Willemse  <tom@ryuslash.org>  (tiny change)
34560         * lisp/elec-pair.el (electric-pair-post-self-insert-function):
34561         Do not use `chomp' as a function.  (Bug#19505)
34563 2015-04-18  Glenn Morris  <rgm@gnu.org>
34565         * lisp/net/browse-url.el (browse-url, browse-url-at-point): Doc fixes.
34567         * doc/emacs/misc.texi (Sorting): Small edit.
34568         (Bug#19896)
34570         * admin/admin.el (make-manuals): Add emacs-xtra in pdf and ps.
34572 2015-04-18  Simen Heggestøyl  <simenheg@gmail.com>
34574         css-mode.el: Support multi-line comment filling
34575         (Bug#20256)
34576         * lisp/textmodes/css-mode.el (css-fill-paragraph): Support multi-line
34577         comment filling.
34578         (css-adaptive-fill): New function.
34579         (css-mode): Set `adaptive-fill-function'.
34580         (scss-mode): Set `comment-continue'.
34582 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
34584         * lisp/emacs-lisp/seq.el (seq-concatenate, seq-into):
34585         Better error messages.
34587 2015-04-18  Ivan Radanov Ivanov  <ivanradanov@yahoo.co.uk>  (tiny change)
34589         Minor improvements in Bulgarian input methods
34590         * lisp/leim/quail/cyrillic.el (bulgarian-phonetic, bulgarian-bds):
34591         Replace U+042C with U+045D, as the former character is not used in
34592         the modern Bulgarian language.
34593         (Bug#20350)
34595 2015-04-17  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
34597         Improve EUDC manual
34598         * doc/misc/eudc.texi (LDAP Configuration): Mention simple and SASL
34599         authentication schemes.  Add index items.  Shorten example server
34600         name.
34602 2015-04-17  Dmitry Gutov  <dgutov@yandex.ru>
34604         Don't show both feature and function with the same name
34605         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
34606         Don't show both feature and function with the same name.
34608         (elisp--xref-identifier-location): Skip variable, if it's also
34609         a function
34610         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
34611         Avoid returning both the variable and the function for the same
34612         minor mode.
34614 2015-04-17  Wolfgang Jenkner  <wjenkner@inode.at>
34616         Fix fontification of keywords clobbered by the prompt
34617         * lisp/comint.el (comint-output-filter): Remove the uses of
34618         with-silent-modifications I introduced as part of the last change.
34619         This fixes, e.g., erratically missing highlighting when running
34620         ./configure --help; ./configure in a shell-mode buffer with
34621         compilation-shell-minor-mode turned on.
34623 2015-04-17  Glenn Morris  <rgm@gnu.org>
34625         * admin/authors.el (authors-valid-file-names)
34626         (authors-renamed-files-alist): Additions.
34628 2015-04-17  Stefan Monnier  <monnier@iro.umontreal.ca>
34630         * lisp/indent.el (indent-region): Don't deactivate the mark.
34631         (Bug#20357)
34633 2015-04-17  Sam Steingold  <sds@gnu.org>
34635         * lisp/net/rcirc.el (defun-rcirc-command): Mark `target' as ignorable.
34637 2015-04-16  Leo Liu  <sdl.web@gmail.com>
34639         * lisp/progmodes/xref.el (xref-push-marker-stack): Add optional arg.
34641 2015-04-16  Stefan Monnier  <monnier@iro.umontreal.ca>
34643         * lisp/erc/erc-pcomplete.el (erc-pcomplete):
34644         Don't use `pcomplete' any more.
34646 2015-04-16  Glenn Morris  <rgm@gnu.org>
34648         * admin/authors.el (authors-lax-changelogs): Update for erc changes.
34650 2015-04-16  Eli Zaretskii  <eliz@gnu.org>
34652         Don't link with -ljpeg on MS-Windows, to avoid dependency on DLL
34653         * configure.ac (LIBJPEG): Leave it empty for MinGW.
34655 2015-04-16  Glenn Morris  <rgm@gnu.org>
34657         * lisp/replace.el (query-replace-from-to-separator):
34658         Delay initialization to avoid rogue setting after startup.
34660 2015-04-16  Paul Eggert  <eggert@cs.ucla.edu>
34662         Pre-4.6 GCC succeeds with unknown option
34663         * configure.ac (emacs_cv_prog_cc_nopie): Port to pre-4.6 GCC.
34664         (Bug#20338)
34666 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
34668         '[:graph:]' now excludes whitespace, not just ' '
34669         * doc/lispref/searching.texi (Char Classes):
34670         * lisp/emacs-lisp/rx.el (rx): Document [:graph:] to be [:print:]
34671         sans whitespace (not sans space).
34672         * src/character.c (graphicp): Exclude all Unicode whitespace chars,
34673         not just space.
34674         * src/regex.c (ISGRAPH): Exclude U+00A0 (NO-BREAK SPACE).
34676 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
34678         * lisp/subr.el (substitute-key-definition-key, special-form-p)
34679         (macrop): Drop deprecated second arg to indirect-function.
34680         (looking-back): Make the second arg non-optional.
34682         * lisp/org/org-clock.el (org-x11idle-exists-p): Be honest about which
34683         command is actually sent to the shell.
34685 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
34687         Port jpeg configuration to Solaris 10 with Sun C
34688         * configure.ac: Check for jpeglib 6b by trying to link it, instead
34689         of relying on cpp magic that has problems in practice.  Check for
34690         both jpeglib.h and jerror.h features.  Remove special case for
34691         mingw32, which should no longer be needed (and if it were needed,
34692         should now be addressable by hotwiring emacs_cv_jpeglib).
34693         (Bug#20332)
34695 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
34697         Move some Elisp-specific code from lisp-mode.el to elisp-mode.el
34698         * lisp/emacs-lisp/lisp-mode.el (lisp--el-font-lock-flush-elisp-buffers):
34699         Move to elisp-mode.el.
34700         (lisp-mode-variables): (Re)move elisp-specific settings.
34701         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode): Add settings removed
34702         from lisp-mode-variables.
34703         (elisp--font-lock-flush-elisp-buffers): New function, moved from
34704         lisp-mode.el.
34706         * lisp/emacs-lisp/lisp-mode.el (lisp--el-non-funcall-position-p):
34707         Avoid pathological slowdown at top-level in large file.
34709 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
34711         Standardize names of ChangeLog history files
34712         Suggested by Glenn Morris in:
34713         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
34714         * Makefile.in (install-man): Don't treat ChangeLog.1 as a man page.
34715         * doc/man/ChangeLog.1: Rename back from doc/man/ChangeLog.01.
34716         * lisp/erc/ChangeLog.1: New file, containing the old contents of ...
34717         * lisp/erc/ChangeLog.01, lisp/erc/ChangeLog.02, lisp/erc/ChangeLog.03:
34718         * lisp/erc/ChangeLog.04, lisp/erc/ChangeLog.05, lisp/erc/ChangeLog.06:
34719         * lisp/erc/ChangeLog.07, lisp/erc/ChangeLog.08, lisp/erc/ChangeLog.09:
34720         Remove.
34722         Split top-level entries into pre- and post-April 7
34723         This more clearly distingiushes pre-April-7 ChangeLog entries (which
34724         are for top-level files only) from post-April-7 entries (which are
34725         about files at all levels.  Problem reported by Glenn Morris in:
34726         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
34727         * ChangeLog.1: Move post-April-7 entries from here ...
34728         * ChangeLog.2: ... to this new file.
34729         * Makefile.in (CHANGELOG_HISTORY_INDEX_MAX): Bump to 2.
34731 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
34733         Fix recent cus-start changes that added customize-rogues
34734         * lisp/cus-start.el (custom-delayed-init-variables): Initialize the
34735         vars early.
34736         * lisp/loadup.el ("cus-start"): Move to the end to reduce
34737         customize-rogue.
34739 2015-04-15  Nicolas Petton  <nicolas@petton.fr>
34741         Define cl-concatenate as an alias to seq-concatenate
34742         * lisp/emacs-lisp/cl-extra.el (cl-concatenate): Removes duplicated
34743           code by making cl-concatenate an alias to seq-concatenate.
34745 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
34747         * src/lread.c (intern_1): Make sure we'd find the symbol we add
34748         (Bug#20334)
34749         * src/xfaces.c (resolve_face_name): Don't use `intern' with
34750         Lisp_Strings.
34752 2015-04-15  Glenn Morris  <rgm@gnu.org>
34754         * doc/lispref/sequences.texi (Sequence Functions): Fix typo in previous.
34756 2015-04-15  Lars Magne Ingebrigtsen  <larsi@gnus.org>
34758         Clean up gnus-uu saving code slightly
34759         * lisp/gnus/gnus-uu.el (gnus-uu-save-article): Make the
34760         save-restriction/widen calls make more sense.
34762 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
34764         Make [:graph:] act like [:print:] sans space
34765         In POSIX [[:print:]] is equivalent to [ [:graph:]], so change
34766         [:graph:] so that it matches everything that [:print:] does,
34767         except for space.
34768         * doc/lispref/searching.texi (Char Classes):
34769         * etc/NEWS:
34770         * lisp/emacs-lisp/rx.el (rx):
34771         Document [:graph:] to be [:print:] sans ' '.
34772         * src/character.c, src/character.h (graphicp): New function.
34773         * src/regex.c (ISGRAPH) [emacs]: Use it.
34774         (BIT_GRAPH): New macro.
34775         (BIT_PRINT): Increase to 0x200, to make room for BIT_GRAPH.
34776         (re_wctype_to_bit) [! WIDE_CHAR_SUPPORT]:
34777         Return BIT_GRAPH for RECC_GRAPH.
34778         (re_match_2_internal) [emacs]: Use ISGRAPH if BIT_GRAPH,
34779         and ISPRINT if BIT_PRINT.
34781 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
34783         automated/eieio-test-methodinvoke.el (make-instance) <(subclass C)>:
34784         Don't use call-next-method in a cl-defmethod.
34786         * lisp/emacs-lisp/eieio-core.el (eieio--class): Derive from cl--class
34787         (eieio--class-p): Remove, provided by cl-defstruct.
34789 2015-04-14  Nicolas Petton  <nicolas@petton.fr>
34791         Add seq-intersection and seq-difference to the seq library
34792         * lisp/emacs-lisp/seq.el (seq-intersection, seq-difference):
34793         New functions.
34794         * test/automated/seq-tests.el: Add tests for seq-intersection and
34795         seq-difference.
34796         * doc/lispref/sequences.texi: Add documentation for seq-intersection
34797         and seq-difference.
34799 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
34801         * lisp/emacs-lisp/eieio-core.el (class-abstract-p): Don't inline,
34802         to avoid leaking internals.
34804 2015-04-14  Sam Steingold  <sds@gnu.org>
34806         package--ensure-init-file: widen requires save-restriction
34808 2015-04-14  Eli Zaretskii  <eliz@gnu.org>
34810         Improve the commit-msg Git hook for unibyte environments
34811         * build-aux/git-hooks/commit-msg: Set LC_ALL=C, before running Awk
34812         in unibyte environments.  (Suggested by Paul Eggert
34813         <eggert@cs.ucla.edu>.)  Use a more accurate approximation to
34814         [:print:], based on UTF-8 sequences of the unprintable characters.
34816         Describe problems with cursor caused by Windows Magnifier
34817         * etc/PROBLEMS: Describe the problem with cursor shape on
34818         MS-Windows due to Windows Magnifier.
34819         (Bug#20271)
34821         Make [:print:] support non-ASCII characters correctly
34822         * src/regex.c (ISPRINT): Call 'printablep' for multibyte characters.
34823         (BIT_PRINT): New bit mask.
34824         (re_wctype_to_bit): Return BIT_PRINT for RECC_PRINT.
34825         * src/character.c (printablep): New function.
34826         * src/character.h (printablep): Add prototype.
34827         * lisp/emacs-lisp/rx.el (rx): Doc fix: document the new behavior
34828         of 'print', 'alnum', and 'alphabetic'.
34829         * doc/lispref/searching.texi (Char Classes): Document the new
34830         behavior of [:print:].
34831         * etc/NEWS: Mention the new behavior of [:print:].
34833         Assign correct general-category and names to surrogates
34834         * admin/unidata/unidata-gen.el (unidata-setup-list): Don't ignore
34835         surrogates.  This avoids assigning them the default
34836         general-category of 'Cn', i.e. unassigned codepoints.
34837         (unidata-get-name): Give surrogates synthetic names.
34839 2015-04-14  Paul Eggert  <eggert@cs.ucla.edu>
34841         Assume C89 offsetof in xterm.c, xlwmenu.c
34842         * lwlib/xlwmenu.c (offset):
34843         * src/xterm.c (cvt_string_to_pixel_args):
34844         Use offsetof, not XtOffset.
34846 2015-04-14  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
34848         Assume C89 offsetof in widget.c
34849         * src/widget.c (XtOffset): Remove; no longer needed.
34850         (offset): Implement via offsetof instead of via pre-C89 XtOffset hack.
34852         Fix think-o in previous patch
34853         * src/window.c (count_windows, get_leaf_windows):
34854         Don't optimize count_windows incorrectly.
34856 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
34858         Avoid some int overflows in window.c
34859         * src/print.c (print_object):
34860         * src/window.c (sequence_number):
34861         * src/window.h (struct window.sequence_number):
34862         Don't assume window sequence number fits in int.
34863         * src/window.c (window_select_count):
34864         * src/window.h (struct window.use_time, window_select_count):
34865         Don't assume window use time fits in int.
34866         * src/window.c (Fsplit_window_internal):
34867         Don't assume user-supplied integer, or sum, fits in int.
34868         (Fset_window_configuration, count_windows, get_leaf_windows)
34869         (save_window_save, Fcurrent_window_configuration):
34870         Use ptrdiff_t for object counts.
34871         (Fset_window_configuration): Omit unused local 'n'.
34872         (count_windows): Simplify by writing in terms of get_leaf_windows.
34873         (get_leaf_windows): Don't store through FLAT if it's null.
34874         (extract_dimension): New static function.
34875         (set_window_margins, set_window_fringes, set_window_scroll_bars):
34876         Use it to avoid undefined behavior when converting user-supplied
34877         integer to 'int'.
34879 2015-04-13  Glenn Morris  <rgm@gnu.org>
34881         Minor doc copyedits
34882         * doc/emacs/custom.texi (Init Examples): Tweak example, replace typo.
34883         * doc/lispintro/emacs-lisp-intro.texi (condition-case): Typo fix.
34885 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
34887         [Gnus] Catch the invalid-operation that idna.el will issue
34888         * lisp/gnus/gnus-art.el (gnus-use-idna):
34889         * lisp/gnus/gnus-sum.el (gnus-summary-idna-message):
34890         * lisp/gnus/message.el (message-use-idna):
34891         Catch the invalid-operation that idna.el will issue.
34893 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
34895         * doc/lispref/processes.texi (Shell Arguments): Prefer diff -u.
34897 2015-04-13  Sam Steingold  <sds@gnu.org>
34899         package--ensure-init-file: widen before looking for
34900         "(package-initialize)"
34902 2015-04-13  Dmitry Gutov  <dgutov@yandex.ru>
34904         Change diff-switches default to `-u' (Bug#20290)
34905         * doc/emacs/files.texi (Comparing Files): Document the new default
34906         value of `diff-switches'.
34907         * doc/emacs/trouble.texi (Sending Patches): Document the preference
34908         for unified diff format.  Escape the plus in the suggested `-F' regexp
34909         value.
34910         * lisp/vc/diff.el (diff-switches): Change the default to `-u'.
34912 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
34914         (gnus-group--setup-tool-bar-update): Fix last change
34915         * lisp/gnus/gnus-group.el (gnus-group--setup-tool-bar-update):
34916         cursor-sensor-functions should be a list of functions.
34918 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
34920         * lisp/gnus/gnus-topic.el (gnus-topic-mode):
34921         Use gmm-called-interactively-p.
34923 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
34925         * lisp/loadup.el ("cus-start"): Load it after loaddefs.el
34926         (Bug#20321)
34927         * lisp/cus-start.el (read-buffer-function): Don't advertise
34928         iswitchb-read-buffer any more.
34929         (iswitchb): Don't tweak this obsolete group any more.
34931 2015-04-13  Artur Malabarba  <bruce.connor.am@gmail.com>
34933         * lisp/emacs-lisp/package.el: Fix package--ensure-init-file.
34935         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Implement docstrings.
34936         Adding a string after a constructor's argument list will use
34937         that string as the constructor function docstring.  If this string
34938         is absent but the struct itself was given a docstring, use that as
34939         the constructor's docstring.
34940         Fixes bug#17284.
34942 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
34944         Deprecate `intangible' and `point-entered' properties
34945         * lisp/emacs-lisp/cursor-sensor.el: New file.
34946         * lisp/simple.el (pre-redisplay-functions): New hook.
34947         (redisplay--pre-redisplay-functions): New function.
34948         (pre-redisplay-function): Use it.
34949         (minibuffer-avoid-prompt): Mark obsolete.
34950         (redisplay--update-region-highlight): Adapt it to work as a function on
34951         pre-redisplay-functions.
34952         * lisp/cus-start.el (minibuffer-prompt-properties--setter): New fun.
34953         (minibuffer-prompt-properties): Use it.  Use cursor-intangible rather
34954         than point-entered to make the prompt intangible.
34955         * lisp/forms.el: Move `provide' calls to the end.
34956         (forms-mode): Don't use `run-hooks' on a local var.
34957         (forms--make-format, forms--make-format-elt-using-text-properties):
34958         Use cursor-intangible rather than `intangible'.
34959         (forms-mode): Enable cursor-intangible-mode.
34960         * lisp/isearch.el (isearch-mode): Use defvar-local.
34961         (cursor-sensor-inhibit): Declare.
34962         (isearch-mode): Set cursor-sensor-inhibit.
34963         (isearch-done): Set it back.
34964         (isearch-open-overlay-temporary, isearch-open-necessary-overlays)
34965         (isearch-close-unnecessary-overlays): Don't bother with `intangible'
34966         any more.
34967         * lisp/ses.el (ses-localvars): Remove `mode-line-process'.
34968         (ses-sym-rowcol, ses-cell-value, ses-col-width, ses-col-printer):
34969         Add Edebug spec.
34970         (ses-goto-print, ses-print-cell, ses-adjust-print-width)
34971         (ses-goto-data, ses-setup, ses-copy-region): Don't let-bind
34972         inhibit-point-motion-hooks any more.
34973         (ses--cell-at-pos, ses--curcell): New functions, extracted from
34974         ses-set-curcell.
34975         (ses-set-curcell): Use them.
34976         (ses-print-cell, ses-setup): Use cursor-intangible instead of
34977         `intangible'.  Make sure cursor-intangible isn't sticky at BOB.
34978         (ses-print-cell-new-width, ses-reprint-all, ses-recalculate-all):
34979         Use ses--cell-at-pos.
34980         (ses--mode-line-process, ses--cursor-sensor-highlight): New functions,
34981         extracted from ses-command-hook.  Make them work with multiple windows
34982         displaying the same buffer.
34983         (ses-mode): Use them via mode-line-process and pre-redisplay-functions.
34984         Enable cursor-intangible-mode.
34985         (ses-command-hook): Remove cell highlight and mode-line update code.
34986         (ses-forward-or-insert, ses-copy-region-helper, ses-sort-column):
34987         Update for new name of text-property holding the cell name.
34988         (ses-rename-cell): Don't mess with mode-line-process.
34989         * lisp/erc/erc-stamp.el (erc-add-timestamp): Use the new
34990         cursor-sensor-functions property instead of point-entered.
34991         (erc-insert-timestamp-right, erc-format-timestamp):
34992         Use cursor-intangible rather than `intangible'.
34993         (erc-munge-invisibility-spec): Use add-to-invisibility-spec and
34994         remove-from-invisibility-spec.  Enable cursor-intangible-mode and
34995         cursor-sensor-mode if needed.
34996         (erc-echo-timestamp): Adapt to calling convention of
34997         cursor-sensor-functions.
34998         (erc-insert-timestamp-right): Remove unused vars `current-window' and
34999         `indent'.
35000         * lisp/gnus/gnus-group.el (gnus-tmp-*): Declare.
35001         (gnus-update-group-mark-positions): Remove unused `topic' var.
35002         (gnus-group-insert-group-line): Remove unused var `header'.
35003         (gnus-group--setup-tool-bar-update): New function.
35004         (gnus-group-insert-group-line): Use it.
35005         (gnus-group-update-eval-form): Declare local
35006         dynamically-bound variables.
35007         (gnus-group-unsubscribe-group): Use \` and \' to match string bounds.
35008         * lisp/gnus/gnus-topic.el (gnus-topic-jump-to-topic)
35009         (gnus-group-prepare-topics, gnus-topic-update-topic)
35010         (gnus-topic-change-level, gnus-topic-catchup-articles)
35011         (gnus-topic-remove-group, gnus-topic-delete, gnus-topic-indent):
35012         Use inhibit-read-only.
35013         (gnus-topic-prepare-topic): Use gnus-group--setup-tool-bar-update.
35014         (gnus-topic-mode): Use define-minor-mode and derived-mode-p.
35015         * lisp/textmodes/reftex-index.el (reftex-display-index):
35016         Use cursor-intangible-mode if available.
35017         (reftex-index-post-command-hook): Check cursor-intangible.
35018         * lisp/textmodes/reftex-toc.el (reftex-toc):
35019         Use cursor-intangible-mode if available.
35020         (reftex-toc-recenter, reftex-toc-post-command-hook):
35021         Check cursor-intangible.
35022         * lisp/textmodes/sgml-mode.el: Use lexical-binding.
35023         (sgml-tag): Use cursor-sensor-functions instead of point-entered.
35024         (sgml-tags-invisible): Use with-silent-modifications and
35025         inhibit-read-only.  Enable cursor-sensor-mode.
35026         (sgml-cursor-sensor): Rename from sgml-point-entered and adjust to
35027         calling convention of cursor-sensor-functions.
35028         * lisp/textmodes/table.el (table-cell-map-hook, table-load-hook)
35029         (table-point-entered-cell-hook, table-point-left-cell-hook):
35030         Don't autoload.
35031         (table-cell-entered-state): Remove var.
35032         (table--put-cell-point-entered/left-property)
35033         (table--remove-cell-properties):
35034         Use cursor-sensor-functions rather than point-entered/left.
35035         (table--point-entered/left-cell-function): Merge
35036         table--point-entered-cell-function and table--point-left-cell-function
35037         and adjust to calling convention of cursor-sensor-functions.
35039         Update ldef-boots.el
35041         * lisp/emacs-lisp/pcase.el (pcase-dolist): Autoload as well.
35043         * doc/misc/eieio.texi: Don't advertise now obsolete constructs
35045         Collapse successive char deletions in the undo log
35046         * src/cmds.c (remove_excessive_undo_boundaries): New function,
35047         extracted from Fself_insert_command.
35048         (Fdelete_char, Fself_insert_command): Use it.
35049         * src/fileio.c (Fmake_symbolic_link): Rename arg to `target'.
35050         * src/keyboard.c (syms_of_keyboard): `top-level' shouldn't be special.
35052         xterm and OSC 52: Add NEWS entry, and tweak the code
35053         * lisp/term/xterm.el (gui-set-selection) <nil>: Move method definition
35054         to top-level.
35055         (terminal-init-xterm-activate-set-selection): Set a terminal property.
35056         (xterm--set-selection): Use it instead of checking the value of
35057         `terminal-initted'.  Don't use string-bytes.
35059 2015-04-13  Philipp Stephani  <p.stephani2@gmail.com>
35061         xterm.el: Implement OSC-52 functionality for setting the X selection
35062         * lisp/term/xterm.el (xterm-max-cut-length): New var.
35063         (xterm--set-selection, terminal-init-xterm-activate-set-selection):
35064         New funs.
35065         (terminal-init-xterm, xterm--version-handler): Use them.
35067 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
35069         Remove left over code from when we used an obsolete/loaddefs.el file
35070         * lisp/subr.el (do-after-load-evaluation): Remove left over code from
35071         when we used an obsolete/loaddefs.el file.
35073         * lisp/cedet/semantic/fw.el (semantic-exit-on-input)
35074         (semanticdb-without-unloaded-file-searches): Use declare.
35075         (semantic-fw-add-edebug-spec): Remove.
35077         * lisp/completion.el (completion-lisp-mode-hook):
35078         Use completion-separator-chars rather than local key binding.
35080         * src/*.c: Set deactivate_mark buffer-locally
35081         (Bug#20260)
35082         * src/insdel.c (prepare_to_modify_buffer_1):
35083         * src/fileio.c (Finsert_file_contents): Set deactivate_mark
35084         buffer-locally.
35086 2015-04-12  Fabián Ezequiel Gallina  <fgallina@gnu.org>
35088         python.el: Keep symmetry on sexp navigation with parens
35089         (Bug#19954)
35090         * lisp/progmodes/python.el
35091         (python-nav--forward-sexp): Add argument skip-parens-p.
35092         (python-nav-forward-sexp, python-nav-backward-sexp)
35093         (python-nav-forward-sexp-safe)
35094         (python-nav-backward-sexp-safe): Use it.
35095         * test/automated/python-tests.el
35096         (python-nav-forward-sexp-1): Fix test.
35098 2015-04-12  João Távora  <joaotavora@gmail.com>
35100         Don't use `setq-local' in Gnus code
35101         This might break upstream builds with older Emacsen
35102         * lisp/gnus/message.el (message-mode): Use `set' and
35103         `make-local-variable' instead of `setq-local'.
35105 2015-04-12  Paul Eggert  <eggert@cs.ucla.edu>
35107         Update Makefile.in's .PHONY dependencies
35108         * Makefile.in (change-history-commit, master-branch-is-current)
35109         (no-ChangeLog): Now phony.
35111         Remove configure's --with-mmdf option
35112         * configure.ac (MAIL_USE_MMDF): Remove.
35113         * etc/NEWS: Document this.
35114         * lib-src/movemail.c: Assume MAIL_USE_MMDF is not defined.
35115         (Bug#20308)
35117         * doc/man/ChangeLog.01: Rename from doc/man/ChangeLog.1.
35118         That way, 'make install' won't think it's a man page.
35119         Reported by Ashish SHUKLA in:
35120         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00656.html
35122         Improve 'make change-history' prereq tests
35123         * Makefile.in (gen_origin): Fix to match what's in the master branch.
35124         (no-ChangeLog, master-branch-is-current): New rules.
35125         (change-history): Depend on them, to avoid similar future problems.
35126         Escape the local-variables string to pacify Emacs when editing
35127         Makefile.in.
35129 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
35131         * test/automated/package-test.el (with-package-test):
35132         Kill Packages buffer.
35134         * lisp/emacs-lisp/package.el: Improve transaction y-or-n prompt.
35135         (package-menu--prompt-transaction-p): Prompt for "Delete" first,
35136         "Upgrade" last, and use capitalized instead of all-caps.
35138         * lisp/emacs-lisp/package.el: Completely silence async operations.
35139         (package--make-autoloads-and-stuff): Silence autoloads.
35140         (package--save-selected-packages): New function, silences
35141         `customize-save-variable'.
35142         (package--user-selected-p, package-install-from-buffer)
35143         (package-delete, package-install): Use it.
35144         (package-install-from-archive)
35145         (package-menu--perform-transaction): Silence.
35146         (package-menu-execute): Feedback when operation starts.
35148         Use delay-mode-hooks when visiting the init-file
35149         * lisp/emacs-lisp/package.el (package--ensure-init-file):
35150         delay-mode-hooks.
35151         * lisp/cus-edit.el (custom-save-all): delay-mode-hooks.
35153         * lisp/files.el: Only message when saving if save-silently is nil.
35154         (save-silently): New variable.
35155         (files--message): New function.
35156         (find-file-noselect, save-buffer, basic-save-buffer)
35157         (basic-save-buffer-2, save-some-buffers, not-modified)
35158         (append-to-file): Use them.
35160 2015-04-12  Johan Bockgård  <bojohan@gnu.org>
35162         Support debug declarations in pcase macros
35163         * lisp/emacs-lisp/pcase.el (pcase-MACRO): New edebug spec.
35164         (pcase-UPAT): Use it.  Remove "`".
35165         (pcase--edebug-match-macro): New function.
35166         (pcase-defmacro): Support debug declarations.
35167         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
35168         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>:
35169         * lisp/emacs-lisp/pcase.el (\`): <pcase-defmacro>:
35170         Add debug declaration.
35172         pcase.el: Edebug support for `app' and vector patterns
35173         * lisp/emacs-lisp/pcase.el (pcase-FUN): New edebug spec.
35174         (pcase-UPAT): Use it.  Support `app' patterns.
35175         (pcase-QPAT): Support vector patterns.
35177         edebug.el: Disambiguate vector specifications
35178         * lisp/emacs-lisp/edebug.el (edebug-match-list): Always treat
35179         `(vector ...)' as a vector specification, not as a sublist.
35181         (gnus-summary-refer-thread): Don't clobber unread articles
35182         This fixes a bug where `A T' causes "random" articles to become marked
35183         as read.
35184         * lisp/gnus/gnus-sum.el (gnus-summary-refer-thread): Make sure
35185         gnus-newsgroup-unreads remains sorted.
35187         mouse-sel.el: Fix mouse-sel-get-selection-function
35188         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
35189         Use gui--last-selected-text-primary instead of no longer existing
35190         gui-last-selected-text.
35192         * lisp/rect.el (delete-whitespace-rectangle-line): Don't cross EOL.
35194         * lisp/net/nsm.el (nsm-query-user): Use cursor-in-echo-area.
35196 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
35198         * lisp/emacs-lisp/package.el (list-packages): Avoid redundant generate.
35200         * lisp/emacs-lisp/package.el (list-packages): Call refresh in
35201         right buffer.
35203         * lisp/emacs-lisp/bytecomp.el: Silence noninteractive compilations.
35204         (byte-compile--interactive): New var.
35205         (byte-compile--message): New function.
35206         (byte-compile-log-1, byte-force-recompile)
35207         (byte-recompile-directory, byte-recompile-file)
35208         (byte-compile-file, compile-defun)
35209         (byte-compile-file-form-defmumble, byte-compile)
35210         (byte-compile-file-form-defalias, display-call-tree): Use it.
35212         * lisp/files.el: Don't message when nothing happened.
35213         (save-some-buffers, basic-save-buffer): Before messaging to say
35214         "nothing was saved" check if (called-interactively-p 'any).
35216 2015-04-12  João Távora  <joaotavora@gmail.com>
35218         Summary: Improve sexp-based movement in message-mode
35219         Works by giving citations and smileys a different syntax.  This helps
35220         modes like `show-paren-mode', `electric-pair-mode', and C-M-*
35221         sexp-based movement.
35222         * lisp/gnus/message.el (message--syntax-propertize): New function.
35223         (message-mode): Set syntax-related vars.
35224         (message-smileys): New variable.
35225         * test/automated/message-mode-tests.el: New file
35227 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
35229         Use bool for boolean in window.c
35230         * src/window.c: Omit unnecessary static function decls.
35231         (adjust_window_count, select_window, Fselect_window)
35232         (window_body_width, Fwindow_body_height, Fwindow_body_width)
35233         (set_window_hscroll, check_window_containing, Fwindow_at)
35234         (Fwindow_end, Fset_window_start, Fpos_visible_in_window_p)
35235         (unshow_buffer, replace_window, recombine_windows)
35236         (add_window_to_list, candidate_window_p, next_window)
35237         (Fnext_window, Fprevious_window, window_loop, check_all_windows)
35238         (Fget_buffer_window, Fdelete_other_windows_internal)
35239         (replace_buffer_in_windows_safely, set_window_buffer)
35240         (Fset_window_buffer, Fforce_window_update)
35241         (temp_output_buffer_show, make_parent_window)
35242         (window_resize_check, window_resize_apply, Fwindow_resize_apply)
35243         (resize_frame_windows, Fsplit_window_internal)
35244         (Fdelete_window_internal, grow_mini_window, shrink_mini_window)
35245         (Fresize_mini_window_internal, mark_window_cursors_off)
35246         (window_scroll, window_scroll_pixel_based)
35247         (window_scroll_line_based, scroll_command, Fscroll_other_window)
35248         (Fscroll_left, Fscroll_right, displayed_window_lines, Frecenter)
35249         (Fmove_to_window_line, Fset_window_configuration)
35250         (delete_all_child_windows, apply_window_adjustment)
35251         (set_window_fringes, set_window_scroll_bars)
35252         (Fset_window_vscroll, foreach_window, foreach_window_1)
35253         (compare_window_configurations, Fcompare_window_configurations):
35254         Prefer 'bool', 'true', and 'false' for booleans.
35255         * src/window.h (WINDOW_MODE_LINE_LINES)
35256         (WINDOW_HEADER_LINE_LINES): Omit unnecessary "!!" on bool value.
35258 2015-04-11  Artur Malabarba  <bruce.connor.am@gmail.com>
35260         Speed up byte-compilation and autoload generation by avoiding mode-hooks
35261         This prevents emacs-lisp-mode-hook from being run everytime an
35262         autoload file is generated, which can account for a fraction of
35263         package installation time depending on the hooks the user has
35264         configured.
35265         * lisp/emacs-lisp/bytecomp.el (byte-compile-file): Use delay-mode-hooks.
35266         * lisp/emacs-lisp/autoload.el (autoload-find-file)
35267         (autoload-find-generated-file): Use delay-mode-hooks.
35269         * lisp/emacs-lisp/package.el: Improve `package-menu-refresh'.
35270         (package-menu-refresh): Respect async and do new package checking.
35271         (list-packages): Use `package-menu-refresh' instead of repeating code.
35273         * lisp/emacs-lisp/package.el: Improve package-menu-quick-help.
35274         (package--quick-help-keys): New variable.
35275         (package--prettify-quick-help-key): New function.
35276         (package-menu-quick-help): Use it.
35278         * lisp/emacs-lisp/package.el: Fix initially wrong compat table.
35279         (package--build-compatibility-table): Require finder.
35281         * test/automated/package-test.el: Fix new test.
35283         * lisp/emacs-lisp/package.el: Silence async operations.
35284         (package--silence): New variable.
35285         (package--message): New function.
35286         (package-import-keyring, package-refresh-contents)
35287         (package-compute-transaction, package-install, package-delete)
35288         (package-menu--perform-transaction, package-menu-execute): Use it.
35290         * test/automated/package-test.el: Test async functionality.
35291         (package-test-update-archives-async): New test.
35293 2015-04-11  Daiki Ueno  <ueno@gnu.org>
35295         Utilize `make-process' in epg.el
35296         * lisp/epg.el (epg-error-output): Abolish.
35297         (epg-context): New slot `error-buffer'.
35298         (epg--start): Use `make-process' and `make-pipe-process'.
35299         (epg--process-filter): Remove code separating stderr from stdout.
35300         (epg-wait-for-completion): Simplify `error-output' handling.
35301         (epg-reset): Dispose error buffer.
35303 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
35305         * .gitignore: Ignore doc temps and outputs.
35307         Port commit-msg to MSYS Bash+Gawk
35308         See Eli Zaretskii in:
35309         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00610.html
35310         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format)
35311         (cent_sign, print_at_sign, at_sign): Revert previous change.
35312         (print_at_sign): Prepend "BEGIN".
35313         (at_sign): Redirect from /dev/null to be safer with pre-POSIX awk.
35315         Port commit-msg to broken MS-Windows shell
35316         * build-aux/git-hooks/commit-msg (cent_sign):
35317         Just use UTF-8 here rather than ASCII + printf, as the latter fails
35318         on a broken MS-Windows shell.  Reported by Eli Zaretskii in:
35319         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00592.html
35321 2015-04-11  Chris Zheng  <chriszheng99@gmail.com>  (tiny change)
35323         Support GnuTLS v3.4 and later on MS-Windows
35324         * src/gnutls.c (syms_of_gnutls) <libgnutls-version>: New DEFSYM.
35325         * lisp/term/w32-win.el (dynamic-library-alist): Determine which
35326         GnuTLS DLL to load according to value of libgnutls-version.
35327         (Bug#20294)
35329 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
35331         Minor quoting etc. fixes to misc manuals
35332         Fix some minor quoting and spacing issues.  Distinguish more
35333         clearly among grave accent and apostrophe (which are ASCII) and
35334         single quote (which is not).  Prefer the standard terms
35335         "apostrophe" and "grave accent" to alternative names that can be
35336         confusing.  Use apostrophes to single-quote ASCII text.
35337         * doc/misc/remember.texi: Spell the mystic's pseudonym in UTF-8
35338         rather than approximating it in ASCII with grave accent.
35340 2015-04-11  Daiki Ueno  <ueno@gnu.org>
35342         Respect more keyword args in `make-process'
35343         * src/process.c (Fmake_process): Respect `:sentinel' and `:filter'
35344         keywords as documented.
35346 2015-04-10  Dmitry Gutov  <dgutov@yandex.ru>
35348         Extract ChangeLog entries when committing a directory
35349         * lisp/vc/vc-dispatcher.el (vc-log-edit): Update FIXME comment.
35350         * lisp/vc/log-edit.el (log-edit-changelog-insert-entries):
35351         Add a FIXME comment.
35352         (log-edit-changelog-entries): Extract from
35353         `log-edit-changelog-entries', handle FILE being a directory
35354         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00555.html).
35356 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
35358         Fix problems found by --enable-gcc-warnings
35359         * src/process.c (create_process, Fmake_pipe_process)
35360         (Fmake_network_process): Omit unused locals.
35362         Fix commit-msg to handle scissors lines
35363         * build-aux/git-hooks/commit-msg:
35364         Ignore every line after a scissors line, such as a line generated
35365         by 'git commit -v'.  Problem reported by Johan Bockgård in:
35366         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00580.html
35368         port commit-msg to Gawk 3.0.4 (1999)
35369         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format, cent_sign)
35370         (print_at_sign, at_sign): New vars.  Use them to avoid problems
35371         Eli Zaretskii encountered with Gawk 3.0.4 (1999) on MSYS.  See:
35372         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
35374         Have commit-msg report commit failure
35375         * build-aux/git-hooks/commit-msg: If the commit is aborted,
35376         say so.  Simplify by doing this at the end.  Problem reported
35377         by Eli Zaretskii in:
35378         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
35380 2015-04-10  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
35382         Clean up LDAP Configuration section of EUDC manual
35383         * doc/misc/eudc.texi: Combine indices.
35384         (LDAP Configuration): Use command markup.  Add index entries.
35385         Change formatting.  Wrap long lines.  Add noindent markup.
35387 2015-04-10  Daiki Ueno  <ueno@gnu.org>
35389         Add facility to collect stderr of async subprocess
35390         * src/w32.h (register_aux_fd): New function declaration.
35391         * src/w32.c (register_aux_fd): New function.
35392         * src/process.h (struct Lisp_Process): New member stderrproc.
35393         * src/process.c (PIPECONN_P): New macro.
35394         (PIPECONN1_P): New macro.
35395         (Fdelete_process, Fprocess_status, Fset_process_buffer)
35396         (Fset_process_filter, Fset_process_sentinel, Fstop_process)
35397         (Fcontinue_process): Handle pipe process specially.
35398         (create_process): Respect p->stderrproc.
35399         (Fmake_pipe_process): New function.
35400         (Fmake_process): Add new keyword argument :stderr.
35401         (wait_reading_process_output): Specially handle a pipe process when
35402         it gets an EOF.
35403         (syms_of_process): Register Qpipe and Smake_pipe_process.
35404         * doc/lispref/processes.texi (Asynchronous Processes): Document
35405         `make-pipe-process' and `:stderr' keyword of `make-process'.
35406         * lisp/subr.el (start-process): Suggest to use `make-process' handle
35407         standard error separately.
35408         * test/automated/process-tests.el (process-test-stderr-buffer)
35409         (process-test-stderr-filter): New tests.
35410         * etc/NEWS: Mention new process type `pipe' and its usage with the
35411         `:stderr' keyword of `make-process'.
35413 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
35415         Minor quoting etc. fixes to lispref manual
35416         * doc/lispref/tips.texi (Documentation Tips):
35417         Distinguish more clearly among grave accent, apostrophe,
35418         and single quote.
35419         * doc/lispref/README, doc/lispref/buffers.texi:
35420         * doc/lispref/commands.texi, doc/lispref/control.texi:
35421         * doc/lispref/customize.texi, doc/lispref/display.texi:
35422         * doc/lispref/elisp.texi, doc/lispref/files.texi:
35423         * doc/lispref/frames.texi, doc/lispref/hash.texi:
35424         * doc/lispref/help.texi, doc/lispref/internals.texi:
35425         * doc/lispref/loading.texi, doc/lispref/makefile.w32-in:
35426         * doc/lispref/markers.texi, doc/lispref/modes.texi:
35427         * doc/lispref/nonascii.texi, doc/lispref/objects.texi:
35428         * doc/lispref/os.texi, doc/lispref/positions.texi:
35429         * doc/lispref/strings.texi, doc/lispref/syntax.texi:
35430         * doc/lispref/text.texi, doc/lispref/tips.texi:
35431         * doc/lispref/two-volume-cross-refs.txt, doc/lispref/windows.texi:
35432         Use American-style double quoting in ordinary text,
35433         and quote 'like this' when single-quoting in ASCII text.
35434         Also, fix some minor spacing issues.
35436 2015-04-10  Michael Albinus  <michael.albinus@gmx.de>
35438         Handle symlinked test directory in tramp-tests.el
35439         * test/automated/tramp-tests.el (tramp-test18-file-attributes)
35440         (tramp--test-check-files): Use `file-truename' for directories.
35442 2015-04-10  Eli Zaretskii  <eliz@gnu.org>
35444         Fix 'recenter' when visual-line-mode is turned on
35445         * src/window.c (Frecenter): Use the same code for GUI and TTY
35446         frames alike; use vmotion only for "initial" frames.  This is
35447         because vmotion doesn't support visual-line-mode.  Rewrite the
35448         'iarg >= 0' case to use move_it_* functions instead of using
35449         vmotion, for the same reason.  Fix the clipping of the argument
35450         value to support scroll-margin in all cases and avoid unwarranted
35451         recentering.  Reported by Milan Stanojević <milanst@gmail.com> in
35452         http://lists.gnu.org/archive/html/help-gnu-emacs/2015-04/msg00092.html,
35453         which see.
35455 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
35457         * lisp/abbrev.el (define-abbrev-table): Refine last change.
35459         * lisp/emacs-lisp/cl-lib.el: Partial revert of "2015-04-05 Rationalize
35460         use of c[ad]+r", so as to keep the "cl-" prefix on all
35461         cl-lib definitions.
35463         * lisp/progmodes/vhdl-mode.el (vhdl-prepare-search-2):
35464         Use inhibit-point-motion-hooks.
35466         * lisp/cedet/semantic: Remove some dead code.
35467         * lisp/cedet/semantic/util-modes.el
35468         (semantic-stickyfunc-header-line-format): Emacs<22 is not supported
35469         any more.
35470         * lisp/cedet/semantic/fw.el (semantic-buffer-local-value): Emacs<21 is
35471         not supported any more.
35472         (semantic-safe): Use `declare'.
35473         * lisp/cedet/semantic/decorate.el (semantic-set-tag-intangible)
35474         (semantic-tag-intangible-p): Remove unused functions.
35475         * lisp/cedet/semantic/complete.el (semantic-displayor-window-edges):
35476         Remove unused function.
35478         * lisp/gnus/gnus-art.el (gnus-hidden-properties): Simplify.
35479         (gnus-article-hide-text, gnus-article-unhide-text)
35480         (gnus-article-unhide-text-type): Remove special handling of
35481         `intangible' since that property is not used any more.
35482         (gnus-article-treat-body-boundary): Use gnus-hidden-properties.
35484 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
35486         Use the VC root in `log-edit-listfun'
35487         * lisp/vc/vc-dispatcher.el (vc-log-edit): Use the VC root in
35488         `log-edit-listfun'.
35490 2015-04-09  Jay Belanger  <jay.p.belanger@gmail.com>
35492         Fix description of Unix time, mention new function.
35493         * lisp/calc/calc-forms.el (calcFunc-unixtime): Fix adjustment for
35494         Unix time.
35495         * doc/misc/calc.texi (Date Forms): Fix description of Unix time.
35496         (Basic Operations on Units): Mention `calc-convert-exact-units'.
35498 2015-04-09  Artur Malabarba  <bruce.connor.am@gmail.com>
35500         * lisp/emacs-lisp/package.el: Use mode-line-process for notification.
35502 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
35504         * lisp/vc/log-edit.el (log-edit-insert-changelog-entries):
35505         Don't add newline after the last entry.
35507 2015-04-09  Simen Heggestøyl  <simenheg@gmail.com>
35509         css-mode.el: Add "not" pseudo-class
35510         (Bug#20267)
35511         * lisp/textmodes/css-mode.el (css-pseudo-class-ids): Add "not" to
35512         list of CSS pseudo-classes.
35514 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
35516         * etc/NEWS: Add missing entry for "Stop messing with the EMACS env var".
35518 2015-04-09  Michael Albinus  <michael.albinus@gmx.de>
35520         Stop messing with the EMACS env var
35521         * doc/emacs/misc.texi (Interactive Shell): Remove description of
35522         EMACS env var.
35524 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
35526         Adapt 'make change-history' to coding cookie
35527         * Makefile.in (change-history): Adjust to change of format of
35528         ChangeLog file, which now has a coding cookie before an indented
35529         copyright notice.
35531 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
35533         Adapt 'make change-history' to coding cookie
35534         * Makefile.in (change-history): Adjust to change of format of
35535         ChangeLog file, which now has a coding cookie before an indented
35536         copyright notice.
35538         gitlog-to-changelog coding cookie and mv -i
35539         * build-aux/gitlog-to-emacslog: Use ChangeLog.1, not Makefile.in,
35540         for copyright notice prototype, so that we get a proper "coding:"
35541         cookie.  Use 'mv -i' to avoid unconditionally overwriting an
35542         existing ChangeLog.  Problems reported by Eli Zaretskii in:
35543         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00504.html
35545         Merge from gnulib
35546         * build-aux/gitlog-to-changelog: Update from gnulib, incorporating:
35547         2015-04-09 gitlog-to-changelog: port to MS-Windows
35549 2015-04-09  Boruch Baum  <boruch_baum@gmx.com>  (tiny change)
35551         * lisp/bookmark.el (bookmark-bmenu-goto-bookmark): Don't inf-loop.
35552         (Bug#20212)
35554 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
35556         Stop messing with the EMACS env var
35557         (Bug#20202)
35558         * lisp/net/tramp-sh.el (tramp-remote-process-environment):
35559         * lisp/comint.el (comint-exec-1):
35560         * lisp/term.el (term-exec-1): Don't set EMACS envvar.
35561         * lisp/progmodes/compile.el (compilation-start): Same and bring
35562         INSIDE_EMACS's format in line with other users.
35564         css-mode.el (css-smie-rules): Fix indentation after complex selectors
35565         (Bug#20282)
35566         * lisp/textmodes/css-mode.el (css-smie-rules): Don't get confused by
35567         inner structure of selectors.
35569 2015-04-08  Fabián Ezequiel Gallina  <fgallina@gnu.org>
35571         python.el: Indent docstring lines to base-indent
35572         (Bug#19595)
35573         Thanks to immerrr <immerrr@gmail.com> for reporting and providing
35574         an initial patch.
35575         * lisp/progmodes/python.el
35576         (python-indent-context): Add :inside-docstring context.
35577         (python-indent--calculate-indentation): Handle :inside-docstring.
35578         (python-indent-region): Re-indent docstrings.
35579         * test/automated/python-tests.el (python-indent-region-5)
35580         (python-indent-inside-string-2): Fix tests.
35582         python.el: Increase native completion robustness
35583         (Bug#19755)
35584         Thanks to Carlos Pita <carlosjosepita@gmail.com> for reporting
35585         this and providing useful ideas.
35586         * lisp/progmodes/python.el
35587         (python-shell-completion-native-output-timeout): Increase value.
35588         (python-shell-completion-native-try-output-timeout): New var.
35589         (python-shell-completion-native-try): Use it.
35590         (python-shell-completion-native-setup): New readline setup avoids
35591         polluting current context, ensures output when no-completions are
35592         available and includes output end marker.
35593         (python-shell-completion-native-get-completions): Trigger with one
35594         tab only.  Call accept-process-output until output end is found or
35595         python-shell-completion-native-output-timeout is exceeded.
35597 2015-04-08  Samer Masterson  <samer@samertm.com>
35599         * lisp/eshell: Make backslash a no-op in front of normal chars
35600         (Bug#8531)
35601         * lisp/eshell/esh-arg.el (eshell-parse-argument-hook): Update comment.
35602         (eshell-parse-backslash): Return escaped character after backslash
35603         if it is special.  Otherwise, if the backslash is not in a quoted
35604         string, ignore the backslash and return the character after; if
35605         the backslash is in a quoted string, return the backslash and the
35606         character after.
35607         * test/automated/eshell.el (eshell-test/escape-nonspecial)
35608         (eshell-test/escape-nonspecial-unicode)
35609         (eshell-test/escape-nonspecial-quoted)
35610         (eshell-test/escape-special-quoted): Add tests for new
35611         `eshell-parse-backslash' behavior.
35613 2015-04-08  Gustav Hållberg  <gustav@gmail.com>  (tiny change)
35615         * lisp/vc/diff-mode.el (diff-hunk-file-names): Don't require a TAB
35616         after the file name.
35617         (Bug#20276)
35619 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
35621         Minor quoting etc. fixes to Emacs manual
35622         * doc/emacs/Makefile.in, doc/emacs/ack.texi, doc/emacs/building.texi:
35623         * doc/emacs/calendar.texi, doc/emacs/cmdargs.texi:
35624         * doc/emacs/custom.texi, doc/emacs/dired.texi, doc/emacs/emacs.texi:
35625         * doc/emacs/files.texi, doc/emacs/glossary.texi, doc/emacs/gnu.texi:
35626         * doc/emacs/indent.texi, doc/emacs/macos.texi:
35627         * doc/emacs/maintaining.texi, doc/emacs/makefile.w32-in:
35628         * doc/emacs/programs.texi, doc/emacs/rmail.texi:
35629         * doc/emacs/search.texi, doc/emacs/trouble.texi:
35630         * doc/emacs/vc1-xtra.texi:
35631         Use American-style double quoting in ordinary text,
35632         and quote 'like this' when single-quoting in ASCII text.
35633         Also, fix some minor spacing issues.
35635         Minor quoting etc. fixes to elisp intro
35636         * doc/lispintro/emacs-lisp-intro.texi: Consistently use
35637         American-style double quoting in ordinary text.  In ASCII text,
35638         consistently quote 'like this' instead of `like this', unless
35639         Emacs requires the latter.
35641 2015-04-08  Dmitry Gutov  <dgutov@yandex.ru>
35643         * CONTRIBUTE: Mention log-edit-insert-changelog.
35645         * CONTRIBUTE: Emphasize creating the top-level ChangeLog file manually.
35647 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
35649         * doc/misc/calc.texi (Summary): Avoid '@:' when usurped.
35651 2015-04-08  Stefan Monnier  <monnier@iro.umontreal.ca>
35653         * lisp/emacs-lisp/eieio-core.el (eieio-copy-parents-into-subclass):
35654         Fix inheritance of initargs.  (Bug#20270)
35656 2015-04-08  Artur Malabarba  <bruce.connor.am@gmail.com>
35658         * lisp/emacs-lisp/package.el (package-menu-mode): Mode-line notification
35659         while dowloading information.
35661         * lisp/emacs-lisp/package.el: More conservative `ensure-init-file'
35662         (package--ensure-init-file): Check file contents before visiting.
35663         (package-initialize): Call it.
35664         (package-install-from-buffer, package-install): Don't call it.
35666 2015-04-08  Eli Zaretskii  <eliz@gnu.org>
35668         * src/eval.c (init_eval_once): Bump max_lisp_eval_depth to 800.
35669         (Bug#17517)
35671 2015-04-08  Michael Albinus  <michael.albinus@gmx.de>
35673         * lisp/net/tramp-cache.el (tramp-flush-file-property):
35674         Fix nasty scoping bug.
35676 2015-04-08  Tassilo Horn  <tsdh@gnu.org>
35678         Add notice to visual commands section
35679         * doc/misc/eshell.texi (Input/Output): Add notice that some tools
35680         such as git call less with its -F option which omits pagination if
35681         the contents is less than one page long.  This interferes with
35682         eshell's visual (sub-)commands.
35684 2015-04-07  Dmitry Gutov  <dgutov@yandex.ru>
35686         * lisp/ffap.el (ffap-string-at-point-mode-alist): Support
35687         environment variable expansion in file names.  (Bug#19839)
35689 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
35691         Prefer double-quote to accent-grave in man pages
35693 2015-04-07  Stefan Monnier  <monnier@iro.umontreal.ca>
35695         (Bug#20257)
35696         * lisp/files.el (set-visited-file-name): Clear auto-save if nil.
35698 2015-04-07  Ivan Shmakov  <ivan@siamics.net>
35700         Update etc/PROBLEMS.
35701         * etc/PROBLEMS: Mention visible-cursor; a few more mentions of
35702         ~/.Xresources and xrdb(1); refer to 'GNU Coreutils' and
35703         'X Window System' or 'X' (were: 'GNU Fileutils' and 'X Windows',
35704         respectively); other minor updates and tweaks.  (Bug#20011)
35706 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
35708         Add doc strings for some Isearch state vars
35709         * lisp/misearch.el (multi-isearch-buffer-list)
35710         (multi-isearch-file-list): Add doc strings.
35711         (Bug#20232)
35713 2015-04-07  Alan Mackenzie  <acm@muc.de>
35715         Always mark "<" and ">" in #include directives with text properties.
35716         * lisp/progmodes/cc-fonts.el (c-cpp-matchers): Replace a font-lock
35717         "anchored matcher" with an invocation of
35718         c-make-font-lock-search-function to allow fontification when there's
35719         no trailing space on an "#include <..>" line.
35721 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
35723         Generate a ChangeLog file from commit logs
35724         * .gitignore: Add 'ChangeLog'.
35725         * build-aux/gitlog-to-changelog: New file, from Gnulib.
35726         * build-aux/gitlog-to-emacslog: New file.
35727         * CONTRIBUTE: Document the revised workflow.
35728         * Makefile.in (clean): Remove *.tmp and etc/*.tmp*
35729         instead of just special cases.
35730         (CHANGELOG_HISTORY_INDEX_MAX, CHANGELOG_N, gen_origin): New vars.
35731         (ChangeLog, unchanged-history-files, change-history)
35732         (change-history-commit): New rules.
35733         * admin/admin.el (make-manuals-dist--1):
35734         Don't worry about doc/ChangeLog.
35735         * admin/authors.el: Add a FIXME.
35736         * admin/make-tarball.txt:
35737         * lisp/calendar/icalendar.el:
35738         * lisp/gnus/deuglify.el:
35739         * lisp/obsolete/gulp.el:
35740         * lwlib/README:
35741         Adjust to renamed ChangeLog history files.
35742         * admin/merge-gnulib (GNULIB_MODULES): Add gitlog-to-changelog.
35743         * admin/notes/repo: Call it 'master' a la Git, not 'trunk' a la Bzr.
35744         Remove obsolete discussion of merging ChangeLog files.
35745         New section "Maintaining ChangeLog history".
35746         * build-aux/git-hooks/pre-commit:
35747         Reject attempts to commit files named 'ChangeLog'.
35748         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
35749         * make-dist: Make and distribute top-level ChangeLog if there's a
35750         .git directory.  Distribute the new ChangeLog history files
35751         instead of scattered ChangeLog files.  Distribute the new files
35752         gitlog-to-changelog and gitlog-to-emacslog.
35753         (Bug#19113)
35755         Rename ChangeLogs for gitlog-to-changelog
35756         This patch was implemented via the following shell commands:
35757         find * -name ChangeLog |
35758         sed 's,.*,git mv & &.1,
35759         s, lisp/ChangeLog\.1$, lisp/ChangeLog.17,
35760         s, lisp/erc/ChangeLog\.1$, lisp/erc/ChangeLog.09,
35761         s, lisp/gnus/ChangeLog\.1$, lisp/gnus/ChangeLog.3,
35762         s, lisp/mh-e/ChangeLog\.1$, lisp/mh-e/ChangeLog.2,
35763         s, src/ChangeLog\.1$, src/ChangeLog.13,' |
35764         sh
35765         git commit -am"[this commit message]"
35767 This file records repository revisions from
35768 commit 9d56a21e6a696ad19ac65c4b405aeca44785884a (exclusive) to
35769 commit 3a34412caae002accd0fc7a7fc0b718c2f34159b (inclusive).
35770 See ChangeLog.1 for earlier changes.
35772 ;; Local Variables:
35773 ;; coding: utf-8
35774 ;; End:
35776   Copyright (C) 2015-2017 Free Software Foundation, Inc.
35778   This file is part of GNU Emacs.
35780   GNU Emacs is free software: you can redistribute it and/or modify
35781   it under the terms of the GNU General Public License as published by
35782   the Free Software Foundation, either version 3 of the License, or
35783   (at your option) any later version.
35785   GNU Emacs is distributed in the hope that it will be useful,
35786   but WITHOUT ANY WARRANTY; without even the implied warranty of
35787   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
35788   GNU General Public License for more details.
35790   You should have received a copy of the GNU General Public License
35791   along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.