Allow 'browse-url-emacs' to fetch URL in the selected window
[emacs.git] / ChangeLog.2
blob71c792e40bc99962f8973b9773ef42e2d914dfd6
1 2017-09-11  Eli Zaretskii  <eliz@gnu.org>
3         * etc/NEWS: Document the vulnerability and its resolution.
4         Include a workaround.  Suggested by Charles A. Roelli
5         <charles@aurox.ch>.
7         * lisp/gnus/mm-view.el (mm-inline-text): Disable decoding of
8         "enriched" and "richtext" MIME objects.  Suggested by Lars
9         Ingebrigtsen <larsi@gnus.org>.
11         * lisp/textmodes/enriched.el (enriched-decode-display-prop):
12         Don't produce 'display' properties.  (Bug#28350)
15 2017-04-20  Nicolas Petton  <nicolas@petton.fr>
17         * Version 25.2 released.
19 2017-04-18  Eli Zaretskii  <eliz@gnu.org>
21         Fix a typo in indexing the user manual
23         * doc/emacs/cmdargs.texi (General Variables): Fix a horrible typo.
25 2017-04-12  Eli Zaretskii  <eliz@gnu.org>
27         * lisp/menu-bar.el (kill-this-buffer): Doc fix.  (Bug#26466)
29 2017-04-11  Eli Zaretskii  <eliz@gnu.org>
31         Document 'line-pixel-height'
33         * doc/lispref/display.texi (Size of Displayed Text): Document
34         line-pixel-height.  Suggested by Tak Kunihiro
35         <tkk@misasa.okayama-u.ac.jp>.  (Bug#26379)
37 2017-04-07  Hong Xu  <hong@topbug.net>
39         * src/search.c (Fre_search_forward, Fre_search_backward): Improve doc (Bug#25193).
41 2017-04-07  Noam Postavsky  <npostavs@gmail.com>
43         Mention that processes start in default-directory (Bug#18515)
45         * doc/lispref/processes.texi (Synchronous Processes):
46         (Asynchronous Processes):
47         * lisp/subr.el (start-process):
48         * src/callproc.c (call-process): Mention that the subprocess starts in
49         `default-directory' when local, suggest `start-file-process' and
50         `process-file' otherwise.
52 2017-04-07  Noam Postavsky  <npostavs@gmail.com>
54         * src/xdisp.c (vmessage, message): Clarify commentary.
56 2017-04-02  Glenn Morris  <rgm@gnu.org>
58         Belated fixes for admin.el's M-x make-manuals-dist
60         * admin/admin.el (make-manuals-dist-output-variables): Additions.
61         (make-manuals-dist--1): Also copy docstyle.texi.
63 2017-03-31  Tino Calancha  <tino.calancha@gmail.com>
65         default-directory: Remark that it must be a directory name
67         * src/buffer.c (default-directory): Update docstring (Bug#26272).
69 2017-03-31  Tino Calancha  <tino.calancha@gmail.com>
71         Delete confuse statement in manual
73         * doc/misc/cl.texi (For Clauses): Delete confuse statement
74         and its example (Bug#23550).
76 2017-03-31  Noam Postavsky  <npostavs@gmail.com>
78         Improve packaging documentation
80         * doc/lispref/package.texi (Packaging Basics):
81         * doc/lispref/tips.texi (Library Headers): Clarify some header
82         formats, relation between file headers and package
83         attributes (Bug#13281).
85 2017-03-27  Eric Abrahamsen  <eric@ericabrahamsen.net>
87         Expand manual section on quitting windows
89         * doc/lispref/windows.texi (Quitting Windows): Provide more
90           information about the elements of the quit-restore window parameter,
91           and how they affect the behavior of quit-restore-window.
93 2017-03-26  Noam Postavsky  <npostavs@gmail.com>
95         Fix docstring of dabbrev-abbrev-char-regexp
97         * lisp/dabbrev.el (dabbrev-abbrev-char-regexp): Using a value of nil
98         is equivalent to "\\sw\\|\\s_", and has no special behavior.  If the
99         previous character doesn't match, we search backwards for one that
100         does, not throw an error.  Replace Lisp example with C based one to
101         make it clear that "symbol" means a sequence of word and symbol
102         constituent characters, not a Lisp symbol (Bug#358).
104 2017-03-26  Johan Claesson  <johanclaesson@bredband.net>  (tiny change)
106         * doc/misc/cl.texi (Iteration Clauses): Clarify example (Bug#19515).
108 2017-03-25  Eli Zaretskii  <eliz@gnu.org>
110         ;* doc/misc/info.texi (Choose menu subtopic): Improve indexing.  (Bug#26236)
112 2017-03-21  Noam Postavsky  <npostavs@gmail.com>
114         Narrow scope of modification hook renabling in org-src fontification
116         Modification hooks should be enabled while modifying text in the
117         org-src temp buffer, but in 2017-01-29 "Call modification hooks in
118         org-src fontify buffers" the hooks were enabled also for modifications
119         to the original org buffer.  This causes fontification errors when
120         combined with certain packages, as reported in
121         https://lists.gnu.org/r/emacs-orgmode/2017-03/msg00420.html.
123         * lisp/org/org-src.el (org-src-font-lock-fontify-block): Reduce scope
124         of inhibit-modification-hooks let-binding.
126 2017-03-17  Eli Zaretskii  <eliz@gnu.org>
128         Improve documentation of interactive "r".
130         * doc/lispref/commands.texi (Interactive Codes): Mention that mark
131         must be set for "r" to work.
133 2017-03-17  Thien-Thi Nguyen  <ttn@gnu.org>
135         Fix bug: Range-check integer ‘alpha’ frame parm value
137         Typo introduced 2013-04-01, "Prefer < to >
138         in range checks such as 0 <= i && i < N".
140         * src/frame.c (x_set_alpha): Use ‘ialpha’, not ‘alpha’.
142 2017-03-17  Paul Eggert  <eggert@cs.ucla.edu>
144         * etc/PROBLEMS: Say that HP-UX cc doesn't work.
146 2017-03-14  Eli Zaretskii  <eliz@gnu.org>
148         Fix duplicate wording in Emacs manual
150         * doc/emacs/programs.texi (Which Function): Delete duplicate
151         wording.  (Bug#26098)
153 2017-03-14  Hong Xu  <hong@topbug.net>
155         * lisp/paren.el (show-paren--default, show-paren-function): Add docstring.
157 2017-03-13  Eli Zaretskii  <eliz@gnu.org>
159         Fix wording in Emacs manual
161         * doc/emacs/text.texi (Paragraphs): Fix a garbled sentence.
162         (Bug#26086)
164 2017-03-11  Eli Zaretskii  <eliz@gnu.org>
166         Document how to customize input methods
168         * doc/emacs/mule.texi (Input Methods): Document how to customize
169         input methods.
171 2017-03-11  Eli Zaretskii  <eliz@gnu.org>
173         * lisp/net/eww.el (eww-reload): Doc fix.  (Bug#25981)
175 2017-03-06  Noam Postavsky  <npostavs@gmail.com>
177         Fix warning message about native completion (Bug#25984)
179         * lisp/progmodes/python.el (python-shell-completion-native-turn-on-maybe):
180         The relevant variable is `python-shell-completion-native-enable'.
182 2017-03-04  Eli Zaretskii  <eliz@gnu.org>
184         Clarify documentation of 'raise' and 'height' display specs
186         * doc/lispref/display.texi (Other Display Specs): Clarify the
187         effect of 'height' display spec on the following 'raise'.
188         (Bug#25824)
190 2017-03-04  Eli Zaretskii  <eliz@gnu.org>
192         Mention problems with GPaste in PROBLEMS
194         * etc/PROBLEMS (GPaste): Mention the problem in yanking caused by
195         GPaste, and its solution.  (Bug#25902)
197 2017-02-25  Eli Zaretskii  <eliz@gnu.org>
199         Fix doc strings in info.el
201         * lisp/info.el (Info-selection-hook, Info-mode-hook)
202         (Info-edit-mode-hook): Doc fixes.  (Bug#25794)
204 2017-02-25  Eli Zaretskii  <eliz@gnu.org>
206         Fix doc string of 'posn-at-point'
208         * src/keyboard.c (Fposn_at_point): Clarify the doc string.
209         (Bug#25796)
211 2017-02-24  Tino Calancha  <tino.calancha@gmail.com>
213         Documentation fix in elisp reference manual
215         * doc/lispref/macros.texi (Defining Macros): Drop redundant mention
216         on 'declare' forms (Bug#25846).
218 2017-02-18  Noam Postavsky  <npostavs@gmail.com>
220         * lisp/woman.el (woman): Fix docstring prefix arg description.
222 2017-02-18  Eli Zaretskii  <eliz@gnu.org>
224         Mention "editor" in Emacs man page header
226         * doc/man/emacs.1.in: Mention "editor" in the header line.
227         (Bug#25771, Bug#25779)
229 2017-02-18  Eli Zaretskii  <eliz@gnu.org>
231         Document problems with nerd-fonts
233         * etc/PROBLEMS (fonts): Describe the potential problems with
234         nerd-fonts that cause slow display.  (Bug#25697)
236 2017-02-13  Stefan Monnier  <monnier@iro.umontreal.ca>
238         * doc/lispref/modes.texi (Derived Modes): Make example more idiomatic
240 2017-02-12  Eli Zaretskii  <eliz@gnu.org>
242         Clarify what is the "cursor"
244         * doc/lispref/windows.texi (Window Point): Clarify the notion of
245         "cursor".
247 2017-02-10  Eli Zaretskii  <eliz@gnu.org>
249         Improve commentary in lisp.h
251         * src/lisp.h: Explain in the comment why enlarging a Lisp_Misc
252         object is discouraged.
254 2017-02-08  Noam Postavsky  <npostavs@gmail.com>
256         Disable native completion for ipython (Bug#25067)
258         * lisp/progmodes/python.el:
259         (python-shell-completion-native-disabled-interpreters): Add "ipython".
261 2017-02-07  Eli Zaretskii  <eliz@gnu.org>
263         Fix a typo in ada-mode manual
265         * doc/misc/ada-mode.texi (Project file variables): Add a missing
266         right bracket.  Reported by Jean-Christophe Helary
267         <jean.christophe.helary@gmail.com>.
269 2017-02-05  Eli Zaretskii  <eliz@gnu.org>
271         Clarify documentation of 'bufferpos-to-filepos' and 'filepos-to-bufferpos'
273         * doc/lispref/nonascii.texi (Text Representations): Clarify that
274         'exact' value of QUALITY argument to 'bufferpos-to-filepos' and
275         'filepos-to-bufferpos' can lead to expensive and slow processing.
277         * lisp/international/mule-util.el (filepos-to-bufferpos)
278         (bufferpos-to-filepos): Doc fix.  (Bug#25626)
280 2017-02-03  Nicolas Petton  <nicolas@petton.fr>
282         Bump Emacs version to 25.2 RC1
284         * README:
285         * configure.ac:
286         * msdos/sed2v2.inp:
287         * nt/README.W32: Bump Emacs version.
288         * lisp/ldefs-boot.el: Update.
290 2017-02-03  Nicolas Petton  <nicolas@petton.fr>
292         * admin/make-tarball.txt: Add documentation regarding the release banner.
294 2017-02-03  Tino Calancha  <tino.calancha@gmail.com>
296         * CONTRIBUTE (Documenting your changes): Index new vars/commands in manual.
298 2017-01-31  Eli Zaretskii  <eliz@gnu.org>
300         Index byte-compile-debug
302         * doc/lispref/compile.texi (Compilation Functions): Index
303         byte-compile-debug.
305 2017-01-31  Philipp Stephani  <phst@google.com>
307         Document `byte-compile-debug' in the ELisp manual
309         * doc/lispref/compile.texi: Document variable `byte-compile-debug'.
311 2017-01-31  Philipp Stephani  <phst@google.com>
313         Document variable `byte-compile-debug'
315         * lisp/emacs-lisp/bytecomp.el (byte-compile-debug): Document variable.
317 2017-01-31  Noam Postavsky  <npostavs@gmail.com>
319         Fix call to debugger on assertion failure
321         * lisp/emacs-lisp/cl-preloaded.el (cl--assertion-failed): The first
322         argument must be `error', and the second is a list of arguments for
323         `signal'.
325 2017-01-29  Noam Postavsky  <npostavs@gmail.com>
327         Call modification hooks in org-src fontify buffers
329         * lisp/org/org-src.el (org-src-font-lock-fontify-block): Let-bind
330         `inhibit-modification-hooks' to nil, since this function can be called
331         from jit-lock-function which binds that variable to t (Bug#25132).
333 2017-01-28  Eli Zaretskii  <eliz@gnu.org>
335         Improve documentation of 'format' conversions
337         * src/editfns.c (Fformat): More accurate description of %g and
338         effects of the various flags on it.  More accurate description of
339         integer conversions.
341         * doc/lispref/strings.texi (Formatting Strings): More accurate
342         description of %g and effects of the various flags on it.  More
343         accurate description of integer conversions.  (Bug#25557)
345 2017-01-27  Vladimir Panteleev  <git@thecybershadow.net>  (tiny change)
347         Remove stale functions from ert manual
349         * doc/misc/ert.texi (Useful Techniques when Writing Tests):
350         Replace ert--mismatch references with its cl-lib replacement,
351         cl-mismatch.
353 2017-01-27  Eli Zaretskii  <eliz@gnu.org>
355         Fix a typo in Eshell manual
357         * doc/misc/eshell.texi (History): Fix a typo.  Reported by Mak
358         Kolybabi <mak@kolybabi.com>.
360 2017-01-20  Eli Zaretskii  <eliz@gnu.org>
362         Improve documentation of hooks related to saving buffers
364         * lisp/files.el (write-file-functions, write-contents-functions)
365         (before-save-hook, after-save-hook): Note that these are only used
366         by save-buffer.
368         * doc/lispref/backups.texi (Auto-Saving):
369         * doc/lispref/files.texi (Saving Buffers): Mention that
370         save-related hooks are not run by auto-saving.  (Bug#25460)
372 2017-01-20  Eli Zaretskii  <eliz@gnu.org>
374         Improve documentation of auto-save-visited-file-name
376         * doc/emacs/files.texi (Auto Save Files): Mention subtle
377         differences between saving the buffer and auto-saving with
378         auto-save-visited-file-name set non-nil.  (Bug#25478)
380 2017-01-18  Tom Tromey  <tom@tromey.com>
382         fix typo in mailcap-mime-extensions
384         * lisp/gnus/mailcap.el (mailcap-mime-extensions): Use "text/x-patch",
385         not "test/x-patch".  (Bug#25472)
387 2017-01-18  Lele Gaifax  <lele@metapensiero.it>  (tiny change)
389         Fix typos in flymake.el
391         * lisp/progmodes/flymake.el (flymake-check-patch-master-file-buffer):
392         Spelling fixes in the doc string.
394 2017-01-17  Glenn Morris  <rgm@gnu.org>
396         More NEWS checking for admin.el's set-version
398         * admin/admin.el (set-version): Warn if temporary NEWS markup
399         still present in release candidates.
401 2017-01-17  Michael Albinus  <michael.albinus@gmx.de>
403         Fix auto-save-file-name problem in Tramp on MS Windows. Do not merge
405         * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
406         Fix a problem when running on MS Windows.
408 2017-01-16  Ian Dunn  <dunni@gnu.org>  (tiny change)
410         * lisp/net/eww.el (eww-tag-meta): Handle single quoted URLs (Bug#25445).
412 2017-01-14  Stefan Monnier  <monnier@iro.umontreal.ca>
414         * lisp/progmodes/sql.el (sql-product-alist): Doc tweak
416         `:sqli-comint-func' does not have to be a symbol.
418 2017-01-14  Eli Zaretskii  <eliz@gnu.org>
420         * lisp/progmodes/sql.el (sql-product-alist): Doc fix.  (Bug#25440)
422 2017-01-13  Eli Zaretskii  <eliz@gnu.org>
424         Improve documentation of dabbrevs
426         * doc/emacs/abbrevs.texi (Dynamic Abbrevs): Add a cross reference
427         to "Dabbrev Customization".
428         (Dabbrev Customization): More details about the default value of
429         dabbrev-abbrev-char-regexp and use cases when it might not be good
430         enough.  (Bug#25432)
432 2017-01-12  Noam Postavsky  <npostavs@gmail.com>
434         Clarify that easy-menu-add is a nop (Bug#25382)
436         * lisp/emacs-lisp/easymenu.el (easy-menu-add): Make it into an alias of
437         `ignore', like `easy-menu-remove'.
439 2017-01-12  Glenn Morris  <rgm@gnu.org>
441         * lisp/textmodes/rst.el (rst-package-emacs-version-alist): Fix entry.
443 2017-01-11  Eli Zaretskii  <eliz@gnu.org>
445         Revert "Add DNS keywords and remove duplications"
447         This reverts commit 1cb9aa5b14867983d0013a61709b4d0af18364ff.
449 2017-01-11  Alexander Kuleshov  <kuleshovmail@gmail.com>
451         Add DNS keywords and remove duplications
453         * lisp/textmodes/dns-mode.el (dns-mode-types): Add two TLSA and
454         NSEC" DNS related keywords and remove duplication of "NSAP".
456 2017-01-10  Eli Zaretskii  <eliz@gnu.org>
458         Improve documentation of coding-systems
460         * doc/lispref/nonascii.texi (Coding System Basics): Mention
461         'prefer-utf-8'.  Index it and 'undecided'.
462         (Encoding and I/O): Fix a typo.
463         (User-Chosen Coding Systems): Improve the documentation of
464         ACCEPT-DEFAULT-P argument to select-safe-coding-system.  Document
465         select-safe-coding-system-function.
466         (Specifying Coding Systems): Document coding-system-require-warning.
468 2017-01-09  Eli Zaretskii  <eliz@gnu.org>
470         Improve definition of 'variable-pitch' face on MS-Windows
472         * lisp/faces.el (variable-pitch): Don't specify too many
473         attributes of the font, otherwise faces that request different
474         weight or slant or size will not get them.
476 2017-01-09  Eli Zaretskii  <eliz@gnu.org>
478         Fix an error message in python.el
480         * lisp/progmodes/python.el (python-shell-get-process-or-error):
481         Don't repeat the same key binding twice.  (Bug#25405)
483 2017-01-07  Noam Postavsky  <npostavs@gmail.com>
485         Clarify major mode switching
487         * doc/emacs/modes.texi (Major Modes):
488         * doc/lispref/modes.texi (Modes, Major Modes): Explictly say that each
489         buffer has exactly one major mode and can't be "turned off", only
490         switched away from (Bug#25357).
492 2017-01-07  Noam Postavsky  <npostavs@gmail.com>
494         Add helpful comment to compile-command's docstring
496         * lisp/progmodes/compile.el (compile-command): Mention trailing space in
497         docstring (Bug#25337).
499 2017-01-06  Eli Zaretskii  <eliz@gnu.org>
501         Fix ':version' of 'select-enable-primary'
503         * lisp/select.el (select-enable-primary): Fix a typo in
504         ':version'.  (Bug#25375)
506 2017-01-04  Glenn Morris  <rgm@gnu.org>
508         Update remaining copyright years with admin.el M-x set-copyright
510         * etc/refcards/ru-refcard.tex (cyear): Set to 2017.
512 2017-01-04  Glenn Morris  <rgm@gnu.org>
514         * lisp/ffap.el (ffap-lax-url): Bump :version after recent change.
516 2017-01-03  Philipp Stephani  <phst@google.com>
518         Document that functions in 'ffap-alist' can use the match data
520         * lisp/ffap.el (ffap-alist): Document that ffap sets the match data
521         while walking 'ffap-alist'.
523 2017-01-01  Paul Eggert  <eggert@cs.ucla.edu>
525         Fix copyright years by hand
527         These are dates that admin/update-copyright did not update, or
528         updated incorrectly.
530 2017-01-01  Paul Eggert  <eggert@cs.ucla.edu>
532         Update copyright year to 2017
534         Run admin/update-copyright.
536 2016-12-30  Nicolas Petton  <nicolas@petton.fr>
538         Bump Emacs version to 25.1.91
540         * README:
541         * configure.ac:
542         * msdos/sed2v2.inp:
543         * nt/README.W32: Bump Emacs version.
544         * lisp/ldefs-boot.el: Update.
546 2016-12-30  Alan Mackenzie  <acm@muc.de>
548         Backport: Remove an ambiguity from defvar's doc string.  Fixes bug #25292.
550         The ambiguity was whether INITVALUE is evaluated when it's not going to be
551         used to set SYMBOL's value.
553         * src/eval.c (defvar): Rewrite a paragraph of the doc string.
555         (cherry picked from commit 8295e97f18490a535d1188a3daf0b0fd1bf4fa0d)
557 2016-12-28  Stefan Monnier  <monnier@iro.umontreal.ca>
559         * lisp/emacs-lisp/inline.el: Fix apply-conversion (bug#25280)
561         (inline--dont-quote): Quote the function with #' when passing it to `apply'.
562         Cherry picked from commit e6161f648903d821865b9610b3b6aa0f82a5dcb7.
564 2016-12-26  Eli Zaretskii  <eliz@gnu.org>
566         Document 'default-toplevel-value' and 'set-default-toplevel-value'
568         * doc/lispref/variables.texi (Default Value): Document
569         'default-toplevel-value' and 'set-default-toplevel-value'.
571 2016-12-25  Leo Liu  <sdl.web@gmail.com>
573         Don't modify minibuffer variables globally
575         * lisp/files.el (cd): Use setq-local instead.  (Bug#25260)
577 2016-12-24  Eli Zaretskii  <eliz@gnu.org>
579         Revert to pre-25.1 behavior in ffap
581         * lisp/ffap.el (ffap-lax-url): Change the default to t, to produce
582         the same behavior as in Emacs 24.x.  (Bug#25264)
583         Explain the trade-offs of customizing this in the doc string.
585 2016-12-24  Noam Postavsky  <npostavs@gmail.com>
587         * lisp/ffap.el: Fix obsolete comment referencing ffap-bug.
589 2016-12-23  Eli Zaretskii  <eliz@gnu.org>
591         Attempt to fix 64-bit AIX build
593         * src/unexaix.c (make_hdr, copy_text_and_data, write_segment): Fix
594         type-casts that assumed 32-bit pointers.  (Bug#25141)
596 2016-12-23  Philipp Stephani  <phst@google.com>
598         Clarify usage of 'ediff-cleanup-hook' (Bug#24675)
600         * doc/misc/ediff.texi (Hooks): Clarify usage of 'ediff-cleanup-hook'
602 2016-12-23  Philipp Stephani  <phst@google.com>
604         Document that variable binding order is unspecified
606         * doc/lispref/variables.texi (Local Variables):
607         * doc/misc/cl.texi (Modify Macros): Document that binding order in 'let' and
608         'cl-letf' is unspecified.
610 2016-12-23  Eli Zaretskii  <eliz@gnu.org>
612         * lisp/desktop.el (desktop-buffers-not-to-save): Doc fix.
614 2016-12-23  Stefan Monnier  <monnier@IRO.UMontreal.CA>
616         Fix M-x hints on Mac port
618         * lisp/simple.el (execute-extended-command--shorter): Call
619         input-pending-p to trigger input processing on some systems, such
620         as Mac port.  (Bug#23002)
622 2016-12-22  Martin Rudalics  <rudalics@gmx.at>
624         Work around reporting a dpi change in apply_xft_settings
626         * src/xsettings.c (apply_xft_settings): Don't report a change
627         when dpi settings do not differ substantially.
629 2016-12-20  Alan Mackenzie  <acm@muc.de>
631         Amend the version number of CC Mode 5.33 -> 5.32.99.  Don't merge to trunk.
633         lisp/progmodes/cc-defs.el: Amend the version number.
634         etc/NEWS: Add an item explaining the change.
636 2016-12-20  Noam Postavsky  <npostavs@gmail.com>
638         Improve skeleton docstrings
640         * lisp/skeleton.el (skeleton-end-newline): Remove mention of
641         `skeleton-end-hook', its default code was moved into `skeleton-insert'.
642         (skeleton-insert): Mention `skeleton-end-newline' and move reference to
643         `skeleton-end-hook' above the explanation of skeleton syntax.
645 2016-12-19  Eli Zaretskii  <eliz@gnu.org>
647         Improve documentation of 'w32-scroll-lock-modifier'
649         * doc/emacs/msdos.texi (Windows Keyboard): Document how to set up
650         w32-scroll-lock-modifier so that Scroll Lock toggles the LED.
652         * src/w32fns.c (syms_of_w32fns) <w32-scroll-lock-modifier>: Doc
653         fix.  (Bug#25204)
655 2016-12-19  Eli Zaretskii  <eliz@gnu.org>
657         Document 'describe-fontset'
659         * doc/emacs/mule.texi (Fontsets): Document 'describe-fontset'.
660         (Bug#25216)
662 2016-12-19  Eli Zaretskii  <eliz@gnu.org>
664         Document 'describe-fontset'
666         * doc/emacs/mule.texi (Fontsets): Document 'describe-fontset'.
667         (Bug#25216)
669 2016-12-17  Eli Zaretskii  <eliz@gnu.org>
671         Repair desktop restoration on text terminals
673         * lisp/desktop.el (desktop-restoring-frameset-p): Test for the GUI
674         frame here, instead of in desktop-restoring-frameset.  That's
675         because desktop-read wants to know whether frameset will actually
676         be restored, and has fallback procedures up its sleeve when it
677         won't be; these fallbacks need to be invoked when the frameset is
678         not going to be restored.  (Bug#24298)
680 2016-12-17  Dmitry Gutov  <dgutov@yandex.ru>
682         Ignore forward-sexp-function in js-mode indentation code
684         * lisp/progmodes/js.el (js--multi-line-declaration-indentation)
685         (js--maybe-goto-declaration-keyword-end):
686         Bind forward-sexp-function to nil (bug#25215).
688 2016-12-16  Eli Zaretskii  <eliz@gnu.org>
690         Improve documentation of 'define-coding-system'
692         * lisp/international/mule.el (define-coding-system): Warn against
693         possible infinite recursion in pre-write-conversion and
694         post-read-conversion functions.  (Bug#25203)
696 2016-12-11  Michael Albinus  <michael.albinus@gmx.de>
698         Fix Bug#25162
700         * doc/emacs/files.texi (Reverting): Document
701         auto-revert-remote-files and auto-revert-verbose.
703         * lisp/autorevert.el (auto-revert-verbose, auto-revert-mode)
704         (auto-revert-tail-mode, global-auto-revert-mode): Fix docstring.
706 2016-12-11  Glenn Morris  <rgm@gnu.org>
708         Fix a typo in define-abbrev-table
710         * lisp/abbrev.el (define-abbrev-table): Fix typo in docstring handling.
712 2016-12-11  Glenn Morris  <rgm@gnu.org>
714         Bump makeinfo requirement from 4.7 to 4.13
716         * configure.ac: Bump makeinfo version requirement from 4.7 to 4.13.
717         We need at least 4.8, and that may be buggy, so go for the last
718         of the 4 series, which is 8 years old.  (Bug#25108)
720 2016-12-11  Glenn Morris  <rgm@gnu.org>
722         Fixes related to select-enable-clipboard
724         * lisp/menu-bar.el (clipboard-yank, clipboard-kill-ring-save)
725         (clipboard-kill-region):
726         * lisp/eshell/esh-io.el (eshell-virtual-targets)
727         (eshell-clipboard-append):
728         Replace option gui-select-enable-clipboard with
729         select-enable-clipboard; renamed October 2014.  (Bug#25145)
731 2016-12-10  Noam Postavsky  <npostavs@gmail.com>
733         Define struct predicate before acccesors
735         The accessor functions use the predicate function, which causes problems
736         when reloading after unload-feature: the compiler-macro property is
737         still present on the predicate symbol, and the compiler fails to find
738         the definition when trying to inline it into the accessor
739         function (Bug#25088).
741         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Move predicate definition
742         before field accessor definitions.
744 2016-12-08  Glenn Morris  <rgm@gnu.org>
746         Doc fix for vc-git
748         * lisp/vc/vc-git.el (vc-git-region-history): Add a doc string.
750 2016-12-08  Glenn Morris  <rgm@gnu.org>
752         Further improve make-dist checking
754         * make-dist: Print status messages when checking.
756 2016-12-08  Glenn Morris  <rgm@gnu.org>
758         Improve previous make-dist change
760         * make-dist: Let make check the info files more thoroughly.
762 2016-12-08  Glenn Morris  <rgm@gnu.org>
764         Make make-dist --snapshot do some sanity checks
766         * make-dist: Snapshot mode no longer disables checks.
767         Checks now includes checks for freshness.  (Bug#25084)
768         Checks now exits with an error if problems were found.
770 2016-12-07  Paul Eggert  <eggert@cs.ucla.edu>
772         Fix minor quoting problems in doc strings
774 2016-12-07  Philipp Stephani  <p.stephani2@gmail.com>
776         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode): Fix docstring
778         so that it matches the actual implementation.
779         See https://lists.gnu.org/r/help-gnu-emacs/2016-04/msg00071.html
781 2016-12-07  Noam Postavsky  <npostavs@gmail.com>
783         Don't assume window-point and point are the same
785         The function `cursor-sensor--detect' calls `bobp' to decide whether to
786         check properties at (1- (window-point)).  However, (window-point) may be
787         at beginning of buffer, even if (point) is not.  In this case an
788         `args-out-of-range' error will be signaled (Bug#25104).
790         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor--detect): Check the
791         value of (window-point) against (point-min), rather than (bobp) to
792         decide if (1- (window-point)) is accessible.
794 2016-12-02  Nicolas Petton  <nicolas@petton.fr>
796         Fix bug#25087
798         * etc/themes/manoj-dark-theme.el: Fix two typos.
800         (cherry picked from commit 66d6e7e9ecf5e481f8c2c3a4f88411f66c869a6e)
802 2016-12-02  Eli Zaretskii  <eliz@gnu.org>
804         * lisp/vc/ediff-util.el (ediff-janitor): Doc fix.  (Bug#25046)
806 2016-12-02  Eli Zaretskii  <eliz@gnu.org>
808         Improve indexing of 'man'
810         * doc/emacs/programs.texi (Man Page): Index 'man', not
811         'manual-entry', as the latter is an alias for the former.
812         Suggested by Hong Xu <hong@topbug.net>.  (Bug#25033)
814 2016-12-02  Paul Eggert  <eggert@cs.ucla.edu>
816         Port to Sun C 5.14
818         Backport from master.  Sun C 5.14 supports C11 but not GCC
819         extensions, and so refuses to compile Emacs without this patch.
820         * src/alloc.c (lmalloc, lrealloc): Don't use INT_ADD_WRAPV on
821         size_t, as in general this macro is restricted to signed types.
823 2016-12-02  Richard Stallman  <rms@gnu.org>
825         Fix mail-combine-fields
827         * lisp/mail/sendmail.el (mail-combine-fields): Call `save-excursion' to
828         avoid losing our place in the search loop.
830         (cherry picked from commit 5fbba6cceaf843cfca449eb000a0a65243b61808)
832 2016-12-01  Martin Rudalics  <rudalics@gmx.at>
834         Fix documentation of `window-combination-resize'
836         * src/window.c (Vwindow_combination_resize): Fix doc-string.
837         * doc/lispref/windows.texi (Recombining Windows): Fix
838         documentation of `window-combination-resize'.
840 2016-11-29  Bogdan Creanga  <bogdan.creanga@gmail.com>  (tiny change)
842         Typo fixes in elisp manual
844         * doc/lispref/sequences.texi: Add missing '4' in result (Bug#25047).
845         * doc/lispref/strings.texi (Text Comparison): Avoid duplicate
846         definitions of 'string-prefix-p' and 'string-suffix-p'.
847         * doc/lispref/symbols.texi (Definitions): Pluralize 'definitions'.
849 2016-11-28  Eli Zaretskii  <eliz@gnu.org>
851         Fix 'expand-file-name' during startup on MS-Windows
853         * src/w32.c (w32_init_file_name_codepage): New function, resets
854         file_name_codepage and w32_ansi_code_page to undo the values
855         recorded during dumping.
856         (codepage_for_filenames): Fix an embarrassing typo.  Ignore the
857         cached value of file-name encoding if it is nil, i.e. not
858         initialized yet.  Actually cache the last used file-name encoding
859         to avoid calling APIs when not necessary.
861         * src/w32.h (w32_init_file_name_codepage): Add prototype.
863         * src/w32term.c (syms_of_w32term): Set the value of
864         w32_unicode_filenames according to the OS version.  This avoids
865         resetting it during startup, which then causes temacs to run with
866         the incorrect value.
868         * src/emacs.c (main): Call w32_init_file_name_codepage early
869         during the startup.
871         * src/fileio.c (Fexpand_file_name) [WINDOWSNT]: Update 'newdir'
872         after converting $HOME to a UTF-8 string, so that 'newdirlim' is
873         consistent with it.  (Bug#25038)
875         * lisp/international/mule-cmds.el (set-locale-environment): Set
876         'default-file-name-coding-system' to the ANSI codepage even in
877         non-interactive sessions.
879         * lisp/files.el (directory-abbrev-alist, abbreviated-home-dir):
880         Doc fix.
881         (abbreviate-file-name): Decode 'abbreviated-home-dir' if it is a
882         unibyte string.
884         * doc/lispref/files.texi (Directory Names): Index
885         'directory-abbrev-alist'.
887 2016-11-28  Nicolas Petton  <nicolas@petton.fr>
889         * admin/authors.el (authors-renamed-files-alist): Addition.
891 2016-11-28  Glenn Morris  <rgm@gnu.org>
893         Tweak refcard note about documentation location
895         * etc/refcards/calccard.tex, etc/refcards/cs-dired-ref.tex:
896         * etc/refcards/cs-refcard.tex, etc/refcards/cs-survival.tex:
897         * etc/refcards/de-refcard.tex, etc/refcards/dired-ref.tex:
898         * etc/refcards/fr-dired-ref.tex, etc/refcards/fr-refcard.tex:
899         * etc/refcards/fr-survival.tex, etc/refcards/gnus-refcard.tex:
900         * etc/refcards/orgcard.tex, etc/refcards/pl-refcard.tex:
901         * etc/refcards/pt-br-refcard.tex, etc/refcards/refcard.tex:
902         * etc/refcards/ru-refcard.tex, etc/refcards/sk-dired-ref.tex:
903         * etc/refcards/sk-refcard.tex, etc/refcards/sk-survival.tex:
904         * etc/refcards/survival.tex, etc/refcards/vipcard.tex:
905         * etc/refcards/viperCard.tex: Tweak documentation url.
907 2016-11-28  Glenn Morris  <rgm@gnu.org>
909         Improve treatment of Fortran's "class is"
911         * lisp/progmodes/f90.el (f90-start-block-re, f90-no-block-limit):
912         Handle "class is".  (Bug#25039)
913         * test/automated/f90.el (f90-test-bug25039): New test.
915 2016-11-28  Nicolas Petton  <nicolas@petton.fr>
917         Bump Emacs version to 25.1.90
919         * README:
920         * configure.ac:
921         * msdos/sed2v2.inp:
922         * nt/README.W32: Bump Emacs version to 25.1.90
924 2016-11-27  Nicolas Petton  <nicolas@petton.fr>
926         Bump Emacs version
928         * README:
929         * configure.ac:
930         * etc/NEWS:
931         * msdos/sed2v2.inp:
932         * nt/README.W32: Bump Emacs version to 25.2.90
934 2016-11-26  Karl Fogel  <kfogel@red-bean.com>
936         Handle TeX comments when making new paragraph
938         * lisp/textmodes/tex-mode.el (tex-handle-newline): New function.
939           Handle comment case directly, and dispatch to `tex-terminate-paragraph'
940           for original behavior in non-comment case.
941           (tex-mode-map): Bind above to C-j, replacing `tex-terminate-paragraph'.
943 2016-11-25  Eli Zaretskii  <eliz@gnu.org>
945         Restore keystroke echo in 'C-q'
947         * lisp/simple.el (read-quoted-char): Use 'read-event' instead of
948         'read-key', to avoid losing the keystroke echo in 'C-q'.  (Bug#24635)
950 2016-11-25  Eli Zaretskii  <eliz@gnu.org>
952         Improve documentation of 'current-word'
954         * lisp/simple.el (current-word): Clarify and improve the doc
955         string.  (Bug#24979)
957 2016-11-25  Chunyang Xu  <mail@xuchunyang.me>
959         Fix a typo in an Eshell defcustom
961         * lisp/eshell/esh-mode.el (eshell-scroll-to-bottom-on-output): Fix
962         a typo in the 'others' standard value.  (Bug#24983)
964 2016-11-24  Hong Xu  <hong@topbug.net>  (tiny change)
966         Minor copyedits of electric-pair-mode
968         * doc/emacs/programs.texi (Matching): Add index entries.  Fix
969         typos.  (Bug#25012)
971 2016-11-24  Eli Zaretskii  <eliz@gnu.org>
973         Fix documentation of 'invocation-directory'
975         * doc/lispref/os.texi (System Environment): Fix wording of the
976         description of 'invocation-directory'.  (Bug#24999)
978 2016-11-23  Glenn Morris  <rgm@gnu.org>
980         * admin/authors.el (authors-aliases): Add an entry.
982 2016-11-22  Philipp Stephani  <phst@google.com>
984         Guard terminal parameter in XTerm mouse mode
986         It has been observed (in the HTerm terminal emulator) that the
987         event stored in the 'xterm-mouse-last-down' terminal parameter gets
988         overwritten during a mouse drag operation, causing Emacs to attempt to
989         synthesize the non-existing <drag-mouse-0> event.  Copy the event into
990         the terminal parameter to protect against such modifications.
992         * lisp/xt-mouse.el (xterm-mouse-translate-1): Guard against modification
993         of input event list.
995 2016-11-21  Nicolas Petton  <nicolas@petton.fr>
997         * etc/AUTHORS: Regenerate the AUTHORS file
999 2016-11-21  Nicolas Petton  <nicolas@petton.fr>
1001         Update ChangeLog files and authors.el
1003         * admin/authors.el (authors-renamed-files-alist): Add entries for
1004           obsolete files.
1005         * ChangeLog.2: Update.
1007 2016-11-21  Eli Zaretskii  <eliz@gnu.org>
1009         Fix menu bindings of Dired 'A' and 'Q' commands
1011         * lisp/dired.el (dired-mode-map): Rebind "Search Files" and "Query
1012         Replace in Files" menu items to 'dired-do-find-regexp' and
1013         'dired-do-find-regexp-and-replace', respectively.  (Bug#24977)
1015 2016-11-20  Eli Zaretskii  <eliz@gnu.org>
1017         Avoid errors in shr-pixel-column due to dedicated windows
1019         * lisp/net/shr.el (shr-pixel-column): If we are switching to
1020         another buffer in the selected window, make that window
1021         temporarily non-dedicated.  (Bug#24950)
1023 2016-11-20  Tino Calancha  <tino.calancha@gmail.com>
1025         Update format-time-string documentation
1027         * doc/lispref/os.texi (Time Parsing):
1028         Document %F, %g, %G, %u and %V.
1030 2016-11-19  Eli Zaretskii  <eliz@gnu.org>
1032         * admin/release-process: Update versions and blocking bug numbers.
1034 2016-11-18  Eli Zaretskii  <eliz@gnu.org>
1036         Improve documentation of functions that accept time values
1038         * doc/lispref/os.texi (Time Calculations): Mention the meaning of
1039         'nil' or a scalar number as the time-value argument.  Add a
1040         cross-reference to 'float-time' for computing a time difference as
1041         a scalar number of seconds.
1043         * src/editfns.c (Fformat_time_string, Ftime_less_p)
1044         (Ftime_subtract, Ftime_add, Fdecode_time, Fcurrent_time_string)
1045         (Fcurrent_time_zone): Mention in the doc strings the meaning of
1046         nil argument and the fact that a time value can be a scalar number
1047         of seconds since the epoch.
1048         (Ftime_subtract): Mention 'float-time'.
1050 2016-11-18  Daniel Colascione  <dancol@dancol.org>
1052         Speed up initialization by preferring /dev/urandom to GnuTLS
1054         * src/sysdep.c (init_random): Try /dev/urandom before GnuTLS.
1056         (cherry picked from commit a37eba849eddc41375ad73974f6fcb1258aa8eba)
1058 2016-11-18  Glenn Morris  <rgm@gnu.org>
1060         Add a comment in generated refcards about the source
1062         * etc/refcards/calccard.tex, etc/refcards/cs-dired-ref.tex:
1063         * etc/refcards/cs-refcard.tex, etc/refcards/cs-survival.tex:
1064         * etc/refcards/de-refcard.tex, etc/refcards/dired-ref.tex:
1065         * etc/refcards/fr-dired-ref.tex, etc/refcards/fr-refcard.tex:
1066         * etc/refcards/fr-survival.tex, etc/refcards/gnus-refcard.tex:
1067         * etc/refcards/orgcard.tex, etc/refcards/pl-refcard.tex:
1068         * etc/refcards/pt-br-refcard.tex, etc/refcards/refcard.tex:
1069         * etc/refcards/ru-refcard.tex, etc/refcards/sk-dired-ref.tex:
1070         * etc/refcards/sk-refcard.tex, etc/refcards/sk-survival.tex:
1071         * etc/refcards/survival.tex, etc/refcards/vipcard.tex:
1072         * etc/refcards/viperCard.tex: Add comment about the source.
1074 2016-11-17  Dmitry Gutov  <dgutov@yandex.ru>
1076         js-mode: Fix indent problem after a regexp
1078         * lisp/progmodes/js.el (js--looking-at-operator-p): Check that the
1079         slash is not ending a regexp (bug#24854).
1081 2016-11-16  Eli Zaretskii  <eliz@gnu.org>
1083         Fix sluggish display of symbols in UTF-8 language environment
1085         * lisp/international/fontset.el (setup-default-fontset): Make sure
1086         Symbola and FreeMono are set up in the default fontset as belonging
1087         to the "iso10646-1" registry.  In the UTF-8 locale, this avoids a
1088         long and futile search for a suitable font, whose side effect is a
1089         lot of consing, which then hits the font-cache compacting issue,
1090         and causes very sluggish redisplay of characters displayed by
1091         these fonts.  All this happens because the default for the
1092         registry is "iso8859-1".  (Bug#24953)
1094 2016-11-16  Glenn Morris  <rgm@gnu.org>
1096         Don't confuse how Texinfo outputs @var with the input
1098         * doc/emacs/rmail.texi (Movemail):
1099         * doc/lispref/control.texi (Pattern matching case statement):
1100         * doc/lispref/frames.texi (Size and Position):
1101         * doc/lispref/processes.texi (Asynchronous Processes):
1102         * doc/lispref/text.texi (Document Object Model):
1103         * doc/lispref/windows.texi (Coordinates and Windows):
1104         Do not upper-case the argument of @var.
1106 2016-11-16  Glenn Morris  <rgm@gnu.org>
1108         * doc/lispref/display.texi (Scroll Bars):
1109         * doc/lispref/frames.texi (Size and Position):
1110         * doc/lispref/windows.texi (Window Sizes): Fix arglist typos.
1112         * doc/emacs/cmdargs.texi (Initial Options): Copyedit for --daemon.
1114 2016-11-15  Eli Zaretskii  <eliz@gnu.org>
1116         More fixes in copyright notices in etc/refcards/
1118         * etc/refcards/calccard.tex:
1119         * etc/refcards/cs-dired-ref.tex:
1120         * etc/refcards/cs-refcard.tex:
1121         * etc/refcards/cs-survival.tex:
1122         * etc/refcards/de-refcard.tex:
1123         * etc/refcards/dired-ref.tex:
1124         * etc/refcards/fr-dired-ref.tex:
1125         * etc/refcards/fr-refcard.tex:
1126         * etc/refcards/fr-survival.tex:
1127         * etc/refcards/orgcard.tex:
1128         * etc/refcards/pl-refcard.tex:
1129         * etc/refcards/pt-br-refcard.tex:
1130         * etc/refcards/refcard.tex:
1131         * etc/refcards/ru-refcard.tex:
1132         * etc/refcards/sk-dired-ref.tex:
1133         * etc/refcards/sk-refcard.tex:
1134         * etc/refcards/sk-survival.tex:
1135         * etc/refcards/survival.tex:
1136         * etc/refcards/vipcard.tex:
1137         * etc/refcards/viperCard.tex: Change "GNU Emacs" to "this
1138         document" in copyright notices.  (Bug#24520)
1140 2016-11-13  Eli Zaretskii  <eliz@gnu.org>
1142         Update copyright text in refcards
1144         * etc/refcards/viperCard.tex:
1145         * etc/refcards/vipcard.tex:
1146         * etc/refcards/survival.tex:
1147         * etc/refcards/sk-survival.tex:
1148         * etc/refcards/sk-dired-ref.tex:
1149         * etc/refcards/sk-refcard.tex:
1150         * etc/refcards/ru-refcard.tex:
1151         * etc/refcards/refcard.tex:
1152         * etc/refcards/pt-br-refcard.tex:
1153         * etc/refcards/pl-refcard.tex:
1154         * etc/refcards/orgcard.tex:
1155         * etc/refcards/gnus-refcard.tex:
1156         * etc/refcards/fr-survival.tex:
1157         * etc/refcards/fr-refcard.tex:
1158         * etc/refcards/fr-dired-ref.tex:
1159         * etc/refcards/dired-ref.tex:
1160         * etc/refcards/de-refcard.tex:
1161         * etc/refcards/cs-survival.tex:
1162         * etc/refcards/cs-refcard.tex:
1163         * etc/refcards/cs-dired-ref.tex:
1164         * etc/refcards/calccard.tex: Update the copyright blurb.  (Bug#24520)
1166 2016-11-12  Eli Zaretskii  <eliz@gnu.org>
1168         Fix Outline command names
1170         * doc/emacs/text.texi (Foldout): Use the outline-* names instead
1171         of the obsolete aliases.  (Bug#24890)
1173 2016-11-10  Philipp Stephani  <phst@google.com>
1175         Send text received by bracketed paste to process
1177         See Bug#24639.
1179         * lisp/term.el (term--xterm-paste): New function.
1180         (term-raw-map): Use it.
1181         (xterm--pasted-text): Declare function from xterm.el.
1183 2016-11-10  Alan Mackenzie  <acm@muc.de>
1185         Correct the statement about programming modes always running prog-mode-hook.
1187         * doc/emacs/modes.texi (Major Modes): Amend the statement about programming
1188         modes running prog-mode-hook to say that it applies to many (not all) such
1189         modes, and specifying exactly which modes.
1191 2016-11-10  Eli Zaretskii  <eliz@gnu.org>
1193         Improve documentation of 'occur'
1195         * doc/emacs/search.texi (Other Repeating Search): Clarify how to
1196         use Occur with search strings from last Isearch.  (Bug#24890)
1198 2016-11-09  Noam Postavsky  <npostavs@gmail.com>
1200         Do call debugger on failed cl-assert
1202         "Don't call debug on failed cl-assert..." removed the call to `debug' in
1203         cl--assertion-failed because `debug' calls `kill-emacs' in batch mode,
1204         thus messing up ert test runs.  However, calling the debugger is useful
1205         because it allows catching failed assertions even inside
1206         `condition-case' calls.  The problem with ert can be avoided by calling
1207         `debugger' instead of `debug' directly, since ert installs its own
1208         debugger while running tests.
1210         * lisp/emacs-lisp/cl-preloaded.el (cl--assertion-failed): Call
1211         `debugger' if `debug-on-error' is non-nil.
1213 2016-11-09  Daniel Colascione  <dancol@dancol.org>
1215         Avoid infloop in python
1217         Fix bug#24905
1219         * lisp/progmodes/python.el (python-info-docstring-p): Improve
1220         infloop avoidance: replace (bobp) with generic test for
1221         forward progress.
1222         * test/automated/python-tests.el (python-bob-infloop-avoid): Add
1223         test for bug#24905
1225 2016-11-07  Eli Zaretskii  <eliz@gnu.org>
1227         Don't refer to obsolete FEATURE-unload-hook
1229         * doc/lispref/tips.texi (Coding Conventions): Refer to
1230         FEATURE-unload-function rather than its obsolete variant
1231         FEATURE-unload-hook.  (Bug#24890)
1233 2016-11-07  Eli Zaretskii  <eliz@gnu.org>
1235         Improve documentation of dabbrevs
1237         * lisp/dabbrev.el (dabbrev-expand): Doc fix.  (Bug#24890)
1239         * doc/emacs/abbrevs.texi (Dynamic Abbrevs): Mention
1240         'dabbrev-check-all-buffers', 'dabbrev-check-other-buffers', and
1241         'dabbrev-ignored-buffer-names' and their purpose.  (Bug#24890)
1243 2016-11-07  Eli Zaretskii  <eliz@gnu.org>
1245         * lisp/chistory.el (list-command-history): Doc fix.  (Bug#24890)
1247         * lisp/simple.el (set-mark-command): Doc fix.  (Bug#24890)
1249 2016-11-07  Eli Zaretskii  <eliz@gnu.org>
1251         Improve documentation of some Help commands
1253         * doc/emacs/help.texi (Help Mode): Fix mistake in key sequences.
1254         Mention the 'l' and 'r' keys.
1255         (Misc Help): Mention that 'C-h m' describes key bindings.
1256         (Bug#24890)
1258 2016-11-07  Eli Zaretskii  <eliz@gnu.org>
1260         Fix documentation of yes-or-no prompts
1262         * doc/emacs/mini.texi (Yes or No Prompts): Fix mistakes in key
1263         sequences.  (Bug#24890)
1265 2016-11-07  Eli Zaretskii  <eliz@gnu.org>
1267         Fix documentation of partial completion style
1269         * doc/emacs/mini.texi (Completion Styles): Fix the description of
1270         the wildcard '*'.  (Bug#24890)
1272 2016-11-07  Eli Zaretskii  <eliz@gnu.org>
1274         Fix documentation of the mode line on emacsclient frames
1276         * doc/emacs/screen.texi (Mode Line): Document the '@' indicator on
1277         emacsclient frames.
1279 2016-11-07  Eli Zaretskii  <eliz@gnu.org>
1281         Fix description of 'C-z' in User manual
1283         * doc/emacs/entering.texi (Exiting): 'C-z' is bound to
1284         'suspend-frame'.  (Bug#24890)
1286 2016-11-07  Eli Zaretskii  <eliz@gnu.org>
1288         Improve and clarify documentation of Outline Mode
1290         * doc/emacs/text.texi (Outline Visibility): Use the outline-*
1291         names instead of the obsolete aliases.  (Bug#24890)
1293         * lisp/outline.el (outline-hide-sublevels, outline-hide-other)
1294         (outline-hide-body): Doc fixes.  (Bug#24890)
1296 2016-11-06  Eli Zaretskii  <eliz@gnu.org>
1298         Add Emacs version number to nt/README.W32
1300         * nt/README.W32: Include the version number of the latest Emacs
1301         release.
1303         * admin/admin.el (set-version): Update the version in nt/README.W32.
1305 2016-11-06  Noam Postavsky  <npostavs@gmail.com>
1307         Fix python-mode hideshow regexp
1309         2015-02-07 "Fix hideshow integration[...]" changed the regexp added to
1310         `hs-special-modes-alist' so that it worked when not searching from the
1311         beginning of the line.  However, this allows matching tokens ending in
1312         "def" or "class", not just those keywords.  This results in an infinite
1313         loop in hs-hide-all (Bug #24815).
1315         * lisp/progmodes/python.el (python-mode): Add symbol boundaries around
1316         the def|class matching part of the regexp added to
1317         hs-special-modes-alist.
1319 2016-11-06  Paul Eggert  <eggert@cs.ucla.edu>
1321         Modernize usage of 'macOS' in doc and comments
1323         Apple changed the spelling of its operating system again, to "macOS",
1324         effective with macOS 10.12 Sierra (2016-09-20).  Change Emacs
1325         documentation and comments to match this.  Stick with older OS
1326         spellings ("OS X", "Mac OS X") when talking about older releases where
1327         the older names are more correct.
1329 2016-11-06  Paul Eggert  <eggert@cs.ucla.edu>
1331         Prefer comments /* like this */ in C code
1333         Emacs C code assumes C99 features, but has long used traditional
1334         comments /* like this */ instead of C99-style comments // like this.
1335         Stick with traditional comments for now, partly for style, partly as
1336         it may be safer with compilers that are not fully in C99 mode.
1338 2016-11-05  Noam Postavsky  <npostavs@gmail.com>
1340         * doc/lispref/loading.texi (Autoload): Better link (Bug#24845).
1342 2016-11-05  Eli Zaretskii  <eliz@gnu.org>
1344         Clarify documentation of face attribute functions
1346         * doc/lispref/display.texi (Attribute Functions): Make sure to
1347         document that an omitted FRAME argument means the same as nil.
1348         (Bug#24879)
1350 2016-11-05  Noam Postavsky  <npostavs@gmail.com>
1352         Don't call debug on failed cl-assert
1354         Doing this causes problems when running ert tests, for
1355         instance (Bug#24778).  The call to `debug` when `debug-on-error' is
1356         non-nil was introduced in 2015-02-14 "* lisp/emacs-lisp/cl*.el: Use
1357         define-inline and move some code...".
1359         * lisp/emacs-lisp/cl-preloaded.el (cl--assertion-failed): Don't call
1360         `debug' directly.
1362 2016-11-04  Phillip Lord  <phillip.lord@russet.org.uk>
1364         Update README for precompiled windows Emacs.
1366          * nt/README.W32: Describe 64 and 32-bit downloads, optional
1367            dependencies bundle. Remove old material on sourcing dependencies.
1368            Remove references to Windows 95. Update GUI references to recent
1369            Windows. Remove references to Usenet.
1371 2016-11-04  Hong Xu  <hong@topbug.net>
1373         Clarify documentation of 'vc-responsible-backend' wrt symlinks
1375         * lisp/vc/vc.el (vc-responsible-backend): Clarify that symlinks
1376         are not resolved when the VC backend is reported.
1378         * doc/lispref/files.texi (Truenames): Document
1379         'vc-responsible-backend'.  (Bug#23436)
1380         * doc/emacs/maintaining.texi (Version Control Systems): Fix a
1381         typo.
1383 2016-11-04  Eli Zaretskii  <eliz@gnu.org>
1385         Clarify doc string of 'transpose-sexps'
1387         * lisp/simple.el (transpose-sexps): Clarify the conditions for
1388         transposing sexps that are lists or strings.  Mention the effect
1389         of the prefix argument.  (Bug#24860)
1391 2016-11-04  Tibor Csögör  <tibi@tiborius.net>  (tiny change)
1393         Fix docstring of 'browse-url-firefox-new-window-is-tab'
1395         * lisp/net/browse-url.el (browse-url-firefox-new-window-is-tab):
1396         Remove obsolete note from docstring (obsoleted by previous commits).
1397         (Bug#24843)
1399 2016-11-04  Eli Zaretskii  <eliz@gnu.org>
1401         Improve documentation of 'font-lock-remove-keywords'
1403         * doc/lispref/modes.texi (Customizing Keywords): Clarify the
1404         'keywords' argument of 'font-lock-remove-keywords'.  Suggested by
1405         Hong Xu <hong@topbug.net>.  (Bug#24830)
1407 2016-11-04  Eli Zaretskii  <eliz@gnu.org>
1409         Fix documentation of the command summary key
1411         * doc/misc/info.texi (Help-^L, Help-Xref, Top): Emacs Info uses
1412         '?' for the summary of commands, whereas the stand-alone reader
1413         uses 'H'.  (Bug#24825)
1415 2016-11-04  Eli Zaretskii  <eliz@gnu.org>
1417         Mark relocation workarounds with REL_ALLOC
1419         * src/search.c (boyer_moore): Mark workarounds for ralloc.c
1420         relocation of buffer text with "#ifdef REL_ALLOC".
1422 2016-11-02  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
1424         Fix documentation for 'eudc-options-file'
1426         * doc/misc/eudc.texi (The Server Hotlist): Update the default
1427         value of 'eudc-options-file'.
1429         Backport:
1431         (cherry picked from commit 0575fd95d0b92a9a0ebff8df183a449190f74dbc)
1433 2016-11-02  Tibor Csögör  <tibi@tiborius.net>
1435         Fix documentation of 'eudc-inline-expansion-format'
1437         * doc/misc/eudc.texi (Inline Query Expansion): Fix the default value of
1438         'eudc-inline-expansion-format'. (Bug#24840)
1440         Backport:
1442         (cherry picked from commit 1fef1387c387d80f8ece326621539b89a6965702)
1444 2016-10-31  Clément Pit--Claudel  <clement.pitclaudel@live.com>
1446         python.el: Fix detection of native completion in Python 3 (bug #24401)
1448         With Python 3.5, (python-shell-completion-native-get-completions ... "")
1449         would return an empty list, causing python.el to think that native
1450         completion was unavailable (the difference between Python 2 and Python 3
1451         is due to https://bugs.python.org/issue25660).
1453         * lisp/progmodes/python.el (python-shell-completion-native-try): Use "_"
1454           to check whether native completion is available instead of "".
1456 2016-10-26  Glenn Morris  <rgm@gnu.org>
1458         * Makefile.in (install-arch-indep): Skip etc/refcards/emacsver.tex.in.
1460 2016-10-26  Stefan Monnier  <monnier@iro.umontreal.ca>
1462         * lisp/subr.el (set-transient-map): Exit for unbound events (bug#24755).
1464 2016-10-26  Eli Zaretskii  <eliz@gnu.org>
1466         Update category-table for Chinese characters
1468         * lisp/international/characters.el (standard-category-table):
1469         Update the ranges of Han and Chinese characters.  (Bug#24798)
1471 2016-10-26  Noam Postavsky  <npostavs@gmail.com>
1473         Inhibit buffer relocation during regex searches
1475         * src/search.c (looking_at_1, fast_looking_at, search_buffer): Prevent
1476         relocation of buffer contents during calls to re_search_2.  This ensures
1477         the pointers into buffer text won't be invalidated by
1478         r_alloc_sbrk (called from malloc with configurations where
1479         REL_ALLOC=yes).
1481 2016-10-26  Noam Postavsky  <npostavs@gmail.com>
1483         Revert fixes to allocation of regex matching
1485         The fix was not complete, and completing it was proving too complicated.
1487         - Revert "* src/regex.c (re_search_2): Make new code safe for
1488                   -Wjump-misses-init."
1489           This reverts commit c2a17924a57483d14692c8913edbe8ad24b5ffbb.
1490         - Revert "Port to GCC 6.2.1 + --enable-gcc-warnings"
1491           This reverts commit f6134bbda259c115c06d4a9a3ab5c39340a15949.
1492         - Revert "Fix handling of allocation in regex matching"
1493           This reverts commit ad66b3fadb7ae22a4cbb82bb1507c39ceadf3897.
1494         - Revert "Fix handling of buffer relocation in regex.c functions"
1495           This reverts commit ee04aedc723b035eedaf975422d4eb242894121b.
1497 2016-10-25  Eli Zaretskii  <eliz@gnu.org>
1499         Comment for bug#24793
1501         * lisp/info.el (Info-mode-font-lock-keywords): Add a comment
1502         explaining why `..' quoting is not fontified using the
1503         'Info-quoted' face.  (Bug#24793)
1505 2016-10-25  Paul Eggert  <eggert@cs.ucla.edu>
1507         Default REL_ALLOC to 'no'
1509         This should make ralloc-related bugs less likely on GNU/Linux
1510         systems with bleeding-edge glibc.  See the email thread containing:
1511         https://lists.gnu.org/r/emacs-devel/2016-10/msg00801.html
1512         Do not merge to master.
1513         * configure.ac (REL_ALLOC): Default to 'no' on all platforms, not
1514         merely on platforms with Doug Lea malloc.  Although bleeding-edge
1515         glibc no longer exports __malloc_initialize_hook and so longer
1516         passes the configure-time test for Doug Lea malloc, ralloc tickles
1517         longstanding bugs like Bug#24358 and Bug#24764 and Emacs is likely
1518         to be more reliable without it.  This patch is not needed on
1519         master, which uses hybrid malloc in this situation.
1521 2016-10-24  Eli Zaretskii  <eliz@gnu.org>
1523         Yet another fix for using pointers into buffer text
1525         * src/search.c (boyer_moore): Update pointers to buffer text
1526         after call to set_search_regs.  (Bug#24358)
1528 2016-10-24  Eli Zaretskii  <eliz@gnu.org>
1530         Another fix for using pointer to buffer text
1532         * src/search.c (Freplace_match): Move the call to BYTE_POS_ADDR
1533         after the call to xpalloc, to avoid the danger of buffer text
1534         relocation after its address was taken.  (Bug#24358)
1536 2016-10-24  Michael Albinus  <michael.albinus@gmx.de>
1538         Fix Bug#24478
1540         * lisp/net/tramp-sh.el (tramp-histfile-override): Change default value
1541         to "~/.tramp_history".
1542         (tramp-open-shell): Check proper HISTFILE setting.
1543         (tramp-maybe-open-connection): Cleanup also for errors.  (Bug#24478)
1545 2016-10-24  Paul Eggert  <eggert@cs.ucla.edu>
1547         Port --enable-gcc-warnings to bleeding-edge glibc
1549         Bleeding-edge glibc sets emacs_cv_var_doug_lea_malloc to 'no'.
1550         Do not merge to master.
1551         * configure.ac: Check for valloc decl when compiling gmalloc.c.
1552         * src/gmalloc.c (emacs_abort) [emacs]: Adjust decl to match
1553         what is in lisp.h.  Remove duplicate decl.
1554         (aligned_alloc): #undef before defining.
1555         (aligned_alloc, memalign) [!MSDOS]: Declare.
1556         (valloc) [HAVE_DECL_VALLOC]: Remove duplicate decl.
1558 2016-10-23  Eli Zaretskii  <eliz@gnu.org>
1560         Fix handling of buffer relocation in regex.c functions
1562         * src/search.c (search_buffer): Updated the base pointer to buffer
1563         text after the call to re_search_2.  (Bug#24358)
1565 2016-10-23  Eli Zaretskii  <eliz@gnu.org>
1567         Avoid relocating buffers while libxml2 reads its text
1569         * src/xml.c (parse_region) [REL_ALLOC]: Freeze the ralloc arena
1570         while libxml2 reads the current buffer's text.  (Bug#24764)
1572 2016-10-23  Eli Zaretskii  <eliz@gnu.org>
1574         Attempt to catch reads from a buffer that is relocated
1576         * src/xml.c (parse_region): Add assertion to ensure buffer text is
1577         not relocated while libxml2 is reading it.  (Bug#24764)
1579 2016-10-23  Eli Zaretskii  <eliz@gnu.org>
1581         Revert "* lisp/simple.el (process-menu-mode, list-processes--refresh):"
1583         This reverts commit a4285bcb1114e29200001f33af9b4802167d6140.
1584         Do not merge to master!
1586 2016-10-23  Eli Zaretskii  <eliz@gnu.org>
1588         Revert "* lisp/ibuf-ext.el (ibuffer-do-shell-command-file):"
1590         This reverts commit b0c447e4668116cecfda91d0203cb7cac2486d92.
1591         Do not merge to master!
1593 2016-10-23  Eli Zaretskii  <eliz@gnu.org>
1595         Revert "* lisp/ibuffer.el (ibuffer): Improve 'other-window' case.  (Bug#23617)"
1597         This reverts commit cf3c19b0298236293d9c56d5ba425af4f42c1f8e.
1598         Do not merge to master!
1600 2016-10-23  Eli Zaretskii  <eliz@gnu.org>
1602         ;* src/w32heap.c: Fix typo and wording of the comments.
1604 2016-10-23  Paul Eggert  <eggert@cs.ucla.edu>
1606         electric-quote mode no longer worries about coding
1608         * doc/emacs/text.texi (Quotation Marks), etc/NEWS: Document this.
1609         * lisp/electric.el (electric--insertable-p): Remove.
1610         All uses removed (Bug#24759).
1612 2016-10-23  Paul Eggert  <eggert@cs.ucla.edu>
1614         * src/regex.c (re_search_2): Make new code safe for -Wjump-misses-init.
1616 2016-10-23  Paul Eggert  <eggert@cs.ucla.edu>
1618         Port to GCC 6.2.1 + --enable-gcc-warnings
1620         * src/regex.c (ENSURE_FAIL_STACK, re_search_2):
1621         Redo recent regex changes to avoid complaints from GCC 6.2.1 when
1622         Emacs is configured with --enable-gcc-warnings.  Also, work around
1623         GCC bug 78081, which was uncovered by this new code.
1625 2016-10-22  Noam Postavsky  <npostavs@gmail.com>
1627         Explain how to debug emacsclient lisp errors
1629         * doc/lispref/debugging.texi (Error Debugging): Mention that
1630         debug-on-signal is useful for getting backtraces from
1631         emacsclient (Bug#24616).
1633 2016-10-22  Noam Postavsky  <npostavs@gmail.com>
1635         Let describe-function work for lambda again
1637         Since commit "* lisp/help-fns.el (describe-function): More type
1638         checking[...]", `describe-function' throws a user-error when given a
1639         non-symbol.  This prevents the [back] button in a *Help* buffer from
1640         working when the page it goes back to describes an anonymous
1641         function (e.g., the result of `describe-key' on a key which is bound to
1642         a lambda form).
1644         * lisp/help-fns.el (describe-function): Move the checks on FUNCTION
1645         being an fbound symbol into the `interactive' form.  This allows
1646         non-interactive calls to pass an anonymous function (Bug #24221).  Note
1647         that passing a non-bound symbol non-interactively will still trigger a
1648         `void-function' error from `describe-function-1'.
1650 2016-10-22  Noam Postavsky  <npostavs@gmail.com>
1652         Fix kill-line's docstring
1654         * lisp/simple.el (kill-line): The effect of show-trailing-whitespace is
1655         important lines with *no* nonblanks (Bug #16654).
1657 2016-10-22  Noam Postavsky  <npostavs@gmail.com>
1659         Fix handling of allocation in regex matching
1661         `re_match_2_internal' uses pointers to the lisp objects that it
1662         searches.  Since it may call malloc when growing the "fail stack", these
1663         pointers may be invalidated while searching, resulting in memory
1664         curruption (Bug #24358).
1666         To fix this, we check the pointer that the lisp object (as specified by
1667         re_match_object) points to before and after growing the stack, and
1668         update existing pointers accordingly.
1670         * src/regex.c (STR_BASE_PTR): New macro.
1671         (ENSURE_FAIL_STACK, re_search_2): Use it to convert pointers into
1672         offsets before possible malloc call, and back into pointers again
1673         afterwards.
1674         (POS_AS_IN_BUFFER): Add explanatory comment about punning trick.
1675         * src/search.c (search_buffer): Instead of storing search location as
1676         pointers, store them as pointers and recompute the corresponding address
1677         for each call to `re_search_2'.
1678         (string_match_1, fast_string_match_internal, fast_looking_at):
1679         * src/dired.c (directory_files_internal): Set `re_match_object' to Qnil
1680         after calling `re_search' or `re_match_2'.
1681         * src/regex.h (re_match_object): Mention new usage in commentary.
1683 2016-10-21  Paul Eggert  <eggert@cs.ucla.edu>
1685         * lisp/electric.el (electric-quote-mode): Improve doc (Bug#24759).
1687 2016-10-20  Tino Calancha  <tino.calancha@gmail.com>
1689         vc-region-history: Search just on lines intersecting the region
1691         * lisp/vc/vc.el (vc-region-history): If region ends in the beginning
1692         of a line, then exclude that line from the search (Bug#24725).
1694 2016-10-19  Eli Zaretskii  <eliz@gnu.org>
1696         Fix documentation of 'alist-get'
1698         * doc/lispref/lists.texi (Association Lists): Fix the signature of
1699         'alist-get'.  Fix the markup, the wording, and the punctuation in
1700         the description. (Bug#24740)
1702 2016-10-19  Eli Zaretskii  <eliz@gnu.org>
1704         * src/regex.h (re_match_object): Improve commentary.
1706 2016-10-19  Alan Third  <alan@idiocy.org>
1708         Fix cursor at bottom left of rectangle (bug#24364)
1710         * lisp/rect.el (rectangle--col-pos): Don't assume point at EOL doesn't
1711         require rectangle--point-crutches to be set.
1713 2016-10-19  Michael Albinus  <michael.albinus@gmx.de>
1715         Change Tramp version to "2.2.13.25.2"
1717         * doc/misc/trampver.texi:
1718         * lisp/net/trampver.el: Change version to "2.2.13.25.2".
1720 2016-10-19  Eli Zaretskii  <eliz@gnu.org>
1722         * lisp/emacs-lisp/autoload.el (update-directory-autoloads): Fix last change.
1724 2016-10-19  Eli Zaretskii  <eliz@gnu.org>
1726         Don't scan compiled module files for autoloads
1728         * lisp/emacs-lisp/autoload.el (update-directory-autoloads): Ignore
1729         compiled module files.  Make sure the extension really ends the
1730         file name.
1732 2016-10-18  Michael Albinus  <michael.albinus@gmx.de>
1734         Fix Bug#24698
1736         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
1737         Don't send "stty tab0" to *BSD and Darwin machines.  (Bug#24698)
1739 2016-10-18  Eli Zaretskii  <eliz@gnu.org>
1741         * lisp/subr.el (start-process): Doc fix.  (Bug#24693)
1743 2016-10-18  Göktuğ Kayaalp  <self@gkayaalp.com>
1745         Fix display of vc-dir CVS file statuses in subdirectories
1747         * lisp/vc/vc-cvs.el (vc-cvs-dir-status-files): Use 'cvs update'
1748         instead of 'cvs status'.  It's faster, easier to parse, and
1749         relieves us of the need to use vc-expand-dirs.  (Bug#24082)
1750         (vc-cvs-after-dir-status): Parse its output.
1752 2016-10-17  Eli Zaretskii  <eliz@gnu.org>
1754         Update URL of MS-Windows optional DLLs
1756         * nt/README.W32:
1757         * nt/INSTALL: Update the URL of the MS-Windows binaries of the
1758         optional libraries built with MSYS2/MinGW64 project tools.
1760 2016-10-17  Eli Zaretskii  <eliz@gnu.org>
1762         Fix time-related data types in 2 editfns.c functions
1764         * src/editfns.c (format_time_string, Fcurrent_time_zone): Pass a
1765         pointer to time_t value to emacs_localtime_rz and gmtime_r,
1766         instead of relying on struct timespec's tv_sec member to be of
1767         compatible type.
1769 2016-10-17  Tino Calancha  <f92capac@gmail.com>
1771         * lisp/simple.el (process-menu-mode, list-processes--refresh):
1772         Include PID.  (Bug#21725)
1774         (cherry picked from commit b7adc2f23787eb72015cd705b873e229db6a5049)
1776 2016-10-17  Tino Calancha  <f92capac@gmail.com>
1778         * lisp/ibuf-ext.el (ibuffer-do-shell-command-file):
1779         Fix non-file-visiting-buffer case.  (Bug#22678)
1781         (cherry picked from commit 738738259ba77fe17e433c64e0758ea59ab5bc75)
1783 2016-10-17  Tino Calancha  <f92capac@gmail.com>
1785         * lisp/ibuffer.el (ibuffer): Improve 'other-window' case.  (Bug#23617)
1787         (cherry picked from commit f4ef1a1fea15aa58fbb5e7a59bff260720658e49)
1789 2016-10-17  Paul Eggert  <eggert@cs.ucla.edu>
1791         Port to Ubuntu 16.10, which needs gcc -nopie
1793         * configure.ac (emacs_cv_prog_cc_no_pie): Rename from
1794         emacs_cv_prog_cc_nopie.  All usages changed.  Check for -no-pie in
1795         preference to -nopie (Bug#24682).  Backport from master.
1797 2016-10-17  Glenn Morris  <rgm@gnu.org>
1799         * lisp/cus-start.el (exec-path): Handle nil elements.  (Bug#24471)
1801 2016-10-16  Andreas Politz  <politza@hochschule-trier.de>
1803         Catch the imenu-unavailable error in sh-mode completion table
1805         * lisp/progmodes/sh-script.el (sh--cmd-completion-table):
1806         Catch the imenu-unavailable error (bug#24238).
1808 2016-10-16  Eli Zaretskii  <eliz@gnu.org>
1810         More char-width fixes
1812         * lisp/international/characters.el (char-width-table): More fixes
1813         according to the latest EastAsianWidth.txt.  (Bug#24705)
1815 2016-10-15  Eli Zaretskii  <eliz@gnu.org>
1817         Fix char-width-table values for some Emoji
1819         * lisp/international/characters.el (char-width-table): Add missing
1820         range U+1F400..U+1F43E.  (Bug#24699)
1822         * admin/notes/unicode: Mention the need to verify char-width-table
1823         setting against data in EastAsianWidth.txt.
1825 2016-10-15  Eli Zaretskii  <eliz@gnu.org>
1827         Keep point when switching from and to *terminal* buffer
1829         * lisp/term.el (term-reset-size): Don't reset the size if it
1830         didn't change.  If the size did change, restore point after
1831         adjusting the size.  (Bug#24465)
1833 2016-10-15  Michael Albinus  <michael.albinus@gmx.de>
1835         * INSTALL: Use correct Emacs release number 25.
1837 2016-10-14  Eli Zaretskii  <eliz@gnu.org>
1839         Avoid crashes due to objects read with the #n=object form
1841         * src/lread.c (read1): Use Fcons for 'placeholder', not AUTO_CONS,
1842         because elements of the list in 'read_objects' cannot be allocated
1843         off the stack.  (Bug#24640)
1845 2016-10-13  Eli Zaretskii  <eliz@gnu.org>
1847         Improve doc string of 'completion-at-point-functions'
1849         * lisp/minibuffer.el (completion-at-point-functions): Doc fix.
1850         (Bug#24663)
1852 2016-10-13  Philipp Stephani  <phst@google.com>
1854         Fix crash in evaluating functions
1856         See Bug#24673
1858         * src/eval.c (funcall_lambda): Fix crash for bogus functions such
1859         as (closure).
1861 2016-10-13  Paul Eggert  <eggert@cs.ucla.edu>
1863         * src/filelock.c (current_lock_owner): Update comment.
1865 2016-10-12  Paul Eggert  <eggert@cs.ucla.edu>
1867         Port --enable-gcc-warnings to GCC 6.2.1
1869         Backport from master.
1870         * src/conf_post.h (GNUC_PREREQ): New macro.
1871         * src/keyboard.c: Use it to work around GCC bug 54561.
1872         * src/process.c (would_block): New function.
1873         (server_accept_connection, wait_reading_process_output, send_process):
1874         Use it.
1876 2016-10-12  Paul Eggert  <eggert@cs.ucla.edu>
1878         Work around Samba bug with ':' in symlink contents
1880         * src/filelock.c (current_lock_owner): When reading the contents
1881         of a lock, treat the UTF-8 for U+F022 as if it were ':' (Bug#24656).
1882         Backport from master.
1884 2016-10-12  Paul Eggert  <eggert@cs.ucla.edu>
1886         Port last_marked change to full-program optimizers
1888         * src/alloc.c (last_marked): Now EXTERNALLY_VISIBLE.
1890 2016-10-12  Eli Zaretskii  <eliz@gnu.org>
1892         Adapt GDB scripts to '--enable-check-lisp-object-type' builds
1894         * etc/emacs-buffer.gdb <$qnil>: New variable.
1895         (ybuffer-list, yset-buffer): Use $qnil for comparing against
1896         'nil', as direct comparison with Qnil doesn't work in a build with
1897         '--enable-check-lisp-object-type'.
1899         * src/.gdbinit: Adapt commands of the temporary breakpoint in
1900         init_sys_modes to a build with '--enable-check-lisp-object-type'.
1902 2016-10-11  Eli Zaretskii  <eliz@gnu.org>
1904         Avoid optimizing out the last_marked[] array
1906         * src/alloc.c <last_marked>: No longer 'static', to avoid having
1907         it optimized out in optimized builds, which then makes debugging
1908         GC problems harder.
1910 2016-10-09  Alan Mackenzie  <acm@muc.de>
1912         CC Mode manual: remove reference to former Emacs variable last-command-char
1914         * doc/misc/cc-mode.texi (Hanging Semicolons and Commas): Replace reference to
1915         variable last-command-char by one to macro c-last-command-char.
1917 2016-10-08  Eli Zaretskii  <eliz@gnu.org>
1919         Allow to disable compaction of font caches
1921         * src/font.c (syms_of_font) <inhibit-compacting-font-caches>: New
1922         boolean variable.
1923         * src/alloc.c (compact_font_caches): Use it to bypass the call to
1924         compact_font_cache_entry.  (Bug#24634)  (Bug#24565)
1926         * etc/NEWS: Mention the new variable.
1928 2016-10-08  Eli Zaretskii  <eliz@gnu.org>
1930         Allow selection of font for symbols as in Emacs 24.x
1932         * src/fontset.c (syms_of_fontset) <use-default-font-for-symbols>:
1933         New boolean variable.
1934         (face_for_char): Use it to fall back to pre-Emacs 25.1 behavior
1935         when selecting fonts for displaying symbol and punctuation
1936         characters.  (Bug#24644)
1938         * etc/NEWS: Mention the new variable.
1940 2016-10-08  Eli Zaretskii  <eliz@gnu.org>
1942         Fix horizontal scrolling during Isearch
1944         * lisp/isearch.el (isearch-update): Compute the window's body
1945         width in a way that is correct when there are no fringes.
1946         (Bug#24584)
1948 2016-10-08  Eli Zaretskii  <eliz@gnu.org>
1950         Fix infloop in redisplay due to truncated lines and invisible text
1952         * src/xdisp.c (forward_to_next_line_start): Don't call
1953         'get_next_display_element' after finding the end of line.  This
1954         avoids setting the row's end position to the wrong value when the
1955         next screen line begins with invisible text; that wrong value
1956         caused set_cursor_from_row position the cursor in the wrong screen
1957         line, and eventually triggered bug#24109.
1959 2016-10-07  David Engster  <deng@randomsample.de>
1961         gitmerge: Add cherry pick to gitmerge-skip-regexp
1963         * admin/gitmerge.el (gitmerge-skip-regexp): Add "cherry picked
1964         from commit", which is the string appended by 'git cherry-pick
1965         -x'.
1967         (cherry picked from commit f648e4866981b142fca788372e1fd9013a0bb16a)
1969 2016-10-06  Eli Zaretskii  <eliz@gnu.org>
1971         Improve documentation of 'menu-bar-open'
1973         * lisp/term/w32-win.el (w32-menu-bar-open): Clarify that sometimes
1974         two ESC keypresses are needed to exit the menu.
1976         * doc/emacs/screen.texi (Menu Bar): Qualify the description of how
1977         to exit menus.  (Bug#24596)
1979 2016-10-06  Eli Zaretskii  <eliz@gnu.org>
1981         Fix compilation with MinGW runtime 3.22.2 and w32api 3.18.2
1983         * nt/inc/ms-w32.h (_WIN32_WINNT) [!MINGW_W64]: Undefine before
1984         defining to avoid redefinition warnings.
1986         * nt/inc/sys/stat.h (_SYS_STAT_H, _INC_STAT_H): Define, to avoid
1987         inclusion of sys/stat.h from the system headers, which could then
1988         lead to compilation errors due to redefinition of 'struct stat'
1989         etc.  This is needed because latest versions of MinGW runtime
1990         include sys/stat.h from wchar.h.
1992         * src/image.c (__MINGW_MAJOR_VERSION) [WINDOWSNT]: Temporarily
1993         redefine to 4 to avoid conflict between 2 definitions of
1994         MemoryBarrier.  (Bug#24613)
1996         Do not merge to master!
1998 2016-10-05  John Wiegley  <johnw@newartisans.com>
2000         Add documentation note from Alex
2002 2016-10-05  Aurelien Aptel  <aaptel@suse.com>
2004         * src/alloc.c: call only non-null finalizers
2006 2016-10-04  Karl Fogel  <kfogel@red-bean.com>
2008         Clarify that doc fixes are okay in feature freeze
2010         * CONTRIBUTE (branches): Explain that doc fixes are always safe, even
2011         on a release branch in feature freeze.  Tweak wording of paragraph
2012         after that to avoid a misleading contrast.
2014 2016-10-04  Eli Zaretskii  <eliz@gnu.org>
2016         Avoid crashes when setting the cursor
2018         * src/xdisp.c (display_and_set_cursor): Don't index glyphs of a
2019         glyph row if hpos is out of valid bounds.  This avoids crashes in
2020         some rare cases.  (Bug#24614)
2022 2016-10-04  Philippe Vaucher  <philippe.vaucher@gmail.com>
2024         Restore 'command-debug-status' functionality
2026         * src/callint.c (Fcall_interactively): Bind command-debug-status
2027         to nil.  This restores functionality inadvertently removed in
2028         Emacs 25.1.  (Bug#24555)
2030         * lisp/subr.el (command-debug-status): Declare obsolete.
2032         * doc/lispref/debugging.texi (Internals of Debugger): Document
2033         that 'command-debug-status' is obsolete.
2035 2016-10-03  Karl Fogel  <kfogel@red-bean.com>
2037         Document yank behavior in the right place
2039         * lisp/simple.el (yank): Document the handling of the
2040         `yank-handled-properties' and `yank-excluded-properties' variables,
2041         and the `yank-handler' text property.
2042         (yank-pop): Refer to `yank' now (bug#286)
2044         * lisp/subr.el (insert-for-yank): Refer to `yank' now.
2045         (insert-for-yank-1): Refer to `insert-for-yank' now.
2047         See this thread for discussion:
2049           https://lists.gnu.org/r/emacs-devel/2016-09/threads.html#00329
2050           From: Karl Fogel
2051           To: Emacs Devel
2052           Subject: Question about intended behavior of 'insert-for-yank-1'.
2053           Date: Mon, 12 Sep 2016 00:17:14 -0500
2054           Message-ID: <874m5lr92d.fsf@red-bean.com>
2056 2016-10-03  Philipp Stephani  <phst@google.com>
2058         Document nil args of compare-buffer-substrings
2060         * src/editfns.c (Fcompare_buffer_substrings): Document behavior when
2061         the arguments are nil.
2063 2016-10-03  Katsumi Yamaoka  <yamaoka@jpl.org>
2065         * doc/misc/message.texi (Bcc Warning): Fix markup.
2067         * doc/misc/message.texi (Bcc Warning):
2068         Document mml-secure-safe-bcc-list.
2070 2016-10-02  Noam Postavsky  <npostavs@gmail.com>
2072         Don't require isearch-update before isearch-done
2074         It is useful to be able to call `isearch-done' unconditionally to
2075         ensure a non-isearching state.
2077         * lisp/isearch.el (isearch-done): Check that `isearch--current-buffer'
2078         is a live buffer before using it (Bug #21091).
2079         * test/automated/isearch-tests.el (isearch--test-done): Test it.
2081         (cherry picked from commit 68f4b5292781bc331b040105c4079902b993835c)
2083 2016-10-02  Peder O. Klingenberg  <peder@klingenberg.no>
2085         Avoid error in icalendar--read-element
2087         * lisp/calendar/icalendar.el (icalendar--read-element): Avoid a regex
2088         stack overflow by not using regex to extract values from calendar
2089         events. (Bug#24315)
2091         (cherry picked from commit 55dde6c1a21a792d3d75c19e612c74dd054aaf1e)
2093 2016-10-02  Lars Ingebrigtsen  <larsi@gnus.org>
2095         Make a menu less ambiguous
2097         * doc/emacs/custom.texi (Key Bindings): The Modifier Keys node
2098         is about using modifier keys, not binding them (bug#10942).
2100         (cherry picked from commit 214f85a0a68b96a552ca605d601b33f6eef5c4ca)
2102 2016-10-02  Devon Sean McCullough  <Emacs-Hacker2012@jovi.net>
2104         Doc fix for url-http
2106         * lisp/url/url-http.el (url-http): Document better return values
2107           (bug#13187) (tiny change)
2109         (cherry picked from commit 344303c8d9cb03d4778a73940e80e966280aa694)
2111 2016-10-01  Eli Zaretskii  <eliz@gnu.org>
2113         * lisp/frame.el (blink-cursor-delay): Doc fix.  (Bug#24372)
2115 2016-09-30  Katsumi Yamaoka  <yamaoka@jpl.org>
2117         * lisp/gnus/gnus-art.el (gnus-button-handle-library): Fix typo.
2119 2016-09-27  Paul Eggert  <eggert@cs.ucla.edu>
2121         Regexp Functions doc minor fixes
2123         * doc/lispref/searching.texi (Regexp Functions):
2124         Fix misspelling of “matching”.  Use @table for table.
2125         Reformat code example to fit into info file width (Bug#17862).
2127 2016-09-27  Katsumi Yamaoka  <yamaoka@jpl.org>
2129         Backport mm-convert-shr-links fix from master (bug#23964)
2131         * lisp/gnus/mm-decode.el (mm-convert-shr-links):
2132         Preserve key bindings that shr adds (bug#23964).
2134 2016-09-26  Eli Zaretskii  <eliz@gnu.org>
2136         Improve documentation of 'expand-abbrev' and wrapper hooks
2138         * lisp/simple.el (filter-buffer-substring-functions)
2139         (buffer-substring--filter): Add a link to 'with-wrapper-hook' as
2140         the place to look for documentation of wrapper hooks.
2141         * lisp/minibuffer.el (completion-in-region-functions)
2142         (completion--in-region): Add a link to 'with-wrapper-hook' as the
2143         place to look for documentation of wrapper hooks.
2144         * lisp/abbrev.el (expand-abbrev, abbrev--default-expand): Clarify
2145         the doc strings.  (Bug#24540)
2147         * doc/lispref/text.texi (Buffer Contents): Mention
2148         'with-wrapper-hook's doc string as the place to learn about that
2149         obsolete facility.
2151 2016-09-25  Eli Zaretskii  <eliz@gnu.org>
2153         Minor copyedits of MS-Windows installation instructions
2155         * nt/INSTALL:
2156         * nt/README.W32: Add URL of Emacs dependencies on alpha.gnu.org.
2158 2016-09-23  Eli Zaretskii  <eliz@gnu.org>
2160         Fix display of cursor when 'blink-cursor-delay' has small value
2162         * lisp/frame.el (blink-cursor-check, blink-cursor-mode):
2163         Protect ourselves against too small values of blink-cursor-delay.
2164         This avoids erratic display of the cursor, or even failure to
2165         display it, when user types text at high speed or leans on a key
2166         to invoke the keyboard auto-repeat feature.  (Bug#24372)
2168 2016-09-23  Eli Zaretskii  <eliz@gnu.org>
2170         Improve the doc string of 'format'
2172         * src/editfns.c (Fformat): Fix ambiguity in the doc string's usage
2173         of a literal period.  (Bug#24407)
2175         This was backported from master
2176         (cherry picked from commit 7123896626b06c26c4e37839ab41e41980c8f433)
2178 2016-09-23  Eli Zaretskii  <eliz@gnu.org>
2180         Improve doc strings in whitespace.el
2182         * lisp/whitespace.el (whitespace-mode, whitespace-newline-mode)
2183         (global-whitespace-mode, global-whitespace-newline-mode): Improve
2184         the doc strings.  (Bug#24413)
2186         This was backported from master
2187         (cherry picked from commit 3462fe73351f3da5bc3ebf8296ee44dd2e6b1dbc)
2189 2016-09-23  Eli Zaretskii  <eliz@gnu.org>
2191         Improve detectability of 'next-logical-line' and 'previous-logical-line'
2193         * lisp/simple.el (next-line, previous-line): Mention
2194         'next-logical-line' and 'previous-logical-line' in the doc
2195         strings.  (Bug#24443)
2197         This was backported from master
2198         (cherry picked from commit e95d0d15bb1534803b0adb3c3a927c8beb7d4e79)
2200 2016-09-23  Martin Rudalics  <rudalics@gmx.at>
2202         Fix (next-frame nil t) crash (Bug#24281)
2204         * src/frame.c (candidate_frame): Check minibuf argument before
2205         comparing it to zero (Bug#24281).
2207         This was backported from master
2208         (cherry picked from commit dc491c3df305a73908fe8de20b7c428a5b38c846)
2210 2016-09-23  Noam Postavsky  <npostavs@gmail.com>
2212         Fix debugging of string-match-p errors
2214         * src/eval.c (call_debugger): Bind inhibit-changing-match-data to nil so
2215         that debugger code that needs to do regexp match won't break
2216         (Bug #23949, Bug #24166, Bug#16294).
2218         This was backported from master
2219         (cherry picked from commit 7fb75680b38fe0805c2ff7e9cca3bec8121ba984)
2221 2016-09-23  Eli Zaretskii  <eliz@gnu.org>
2223         Fix region display while dragging mouse
2225         * lisp/mouse.el (mouse-drag-track): Reset deactivate-mark in the
2226         buffer of the drag event, to allow mark to be set and the region
2227         be shown as we drag the mouse.  (Bug#24030)
2229         This was backported from master
2230         (cherry picked from commit 7d58b02f363ab02961faa950d1ba727df96f2f19)
2232 2016-09-23  Eli Zaretskii  <eliz@gnu.org>
2234         Fix 'vertical-motion' and 'posn-at-point' under 'visual-line-mode'
2236         * src/xdisp.c (move_it_in_display_line_to): Don't assume we can
2237         wrap on a whitespace character if it's followed by another
2238         whitespace character.  When returning under WORD_WRAP for a screen
2239         line that is continued, restore to wrap point when atpos/atx
2240         position would be displayed on the next screen line due to
2241         line-wrap.  (Bug#23570)
2243         This is backported from master
2244         (cherry picked from commit 99848b37d2c3e14c0af45fc6da437a806aa58a80)
2246 2016-09-23  Paul Eggert  <eggert@cs.ucla.edu>
2248         Improve display of tex-verbatim and Info quoted
2250         Problem reported by Glenn Morris (Bug#19889).
2251         * doc/emacs/display.texi (Standard Faces):
2252         * doc/lispref/display.texi (Basic Faces):
2253         * etc/NEWS: Mention fixed-pitch-serif.
2254         * lisp/faces.el (face-font-family-alternatives):
2255         New family alias Monospace Serif.
2256         (fixed-pitch-serif): New face, which uses the new family.
2257         * lisp/info.el (Info-quoted):
2258         * lisp/textmodes/tex-mode.el (tex-verbatim): Use the new face.
2259         * test/automated/font-parse-tests.el (font-parse-tests--data):
2260         Add test case for Monospace Serif.
2262         This is backport from master
2263         (cherry picked from commit 36906806ccfc0e53f1d8c365ab0d7151288b7833)
2265 2016-09-23  Lars Ingebrigtsen  <larsi@gnus.org>
2267         Document how to check for ImageMagick support
2269         * doc/lispref/display.texi (ImageMagick Images): Say how to
2270         check for ImageMagick support, which isn't quite obvious
2271         (bug#20702).
2273         This is backport from master
2274         (cherry picked from commit faf07d646575c78d6d956ce91820ebbf38308553)
2276 2016-09-23  Tino Calancha  <f92capac@gmail.com>
2278         Run find-function-after-hook after finding a symbol
2280         * lisp/emacs-lisp/find-func.el (find-library):
2281         * lisp/help-mode.el (help-function-def, help-variable-def):
2282         Run `find-function-after-hook' inside the help-function of the
2283         buttons (bug#22583).
2284         * etc/NEWS: Mention the change.
2286         This is a backport from master.
2287         (cherry picked from commit f069d854508946bcc03e4c77ceb430748e3ab6d7)
2289 2016-09-23  Eli Zaretskii  <eliz@gnu.org>
2291         Document 'timerp'
2293         * doc/lispref/os.texi (Timers): Document 'timerp'.  (Bug#24511)
2294         Improve indexing.
2296 2016-09-23  Eli Zaretskii  <eliz@gnu.org>
2298         Improve documentation of overlay priorities
2300         * doc/lispref/display.texi (Overlay Properties): Minor copyedits.
2301         By popular demand, mention the '(PRIMNARY . SECONDARY)' form of
2302         overlay properties used for the region.  (Bug#20253)
2304 2016-09-23  Eli Zaretskii  <eliz@gnu.org>
2306         Fix 'dired-compress-files'
2308         * lisp/dired-aux.el (dired-do-compress-to): Make sure the archive
2309         file name is fully expanded by running it through
2310         'expand-file-name'.  Suggested by Drew Adams <drew.adams@oracle.com>.
2311         (Bug#24486)  Doc fix.
2312         * lisp/dired.el: Regenerated changes in autoloads.
2314 2016-09-23  Eli Zaretskii  <eliz@gnu.org>
2316         Update commentary of STRING_CHAR and FETCH_MULTIBYTE_CHAR
2318         * src/character.h (STRING_CHAR):
2319         * src/buffer.h (FETCH_MULTIBYTE_CHAR): Update commentary: these
2320         two macros no longer do any character unification, so the caveats
2321         in those comments are no longer pertinent.
2323 2016-09-23  Eli Zaretskii  <eliz@gnu.org>
2325         Increment Emacs version to 25.1.50
2327         * README:
2328         * configure.ac:
2329         * etc/NEWS:
2330         * msdos/sed2v2.inp: Bump the version to 25.1.50.
2332 2016-09-21  Eli Zaretskii  <eliz@gnu.org>
2334         Document the optional zlib library in MS-Windows builds
2336         * nt/README.W32:
2337         * nt/INSTALL.W64:
2338         * nt/INSTALL: Mention the optional text decompression support and
2339         the zlib library.
2341 2016-09-21  Eli Zaretskii  <eliz@gnu.org>
2343         Fix tagging of DEFUN by etags
2345         * lib-src/etags.c (C_entries): Tag DEFUN twice: once with its C
2346         name, and then again with its Lisp name.  This restores the
2347         ability to find Lisp primitives by their C name, which was lost
2348         when the etags back-end was switched to a more strict search
2349         criteria.
2351         * test/etags/ETAGS.good_1:
2352         * test/etags/ETAGS.good_2:
2353         * test/etags/ETAGS.good_3:
2354         * test/etags/ETAGS.good_4:
2355         * test/etags/ETAGS.good_5:
2356         * test/etags/ETAGS.good_6:
2357         * test/etags/CTAGS.good: Adapt to the changes in etags.c wrt
2358         tagging DEFUN.
2360 2016-09-21  Eli Zaretskii  <eliz@gnu.org>
2362         Avoid resetting track-mouse by mouse clicks
2364         * lisp/mouse.el (mouse-drag-line, mouse-drag-track): Don't assume
2365         the previous value of track-mouse is nil; instead, save and
2366         restore the previous value.  (Bug#24480)
2368 2016-09-20  Eli Zaretskii  <eliz@gnu.org>
2370         Improve nt/README.W32 instructions
2372         * nt/README.W32: Add instructions for installing 64-bit builds of
2373         optional libraries.  (Bug#24470)
2375 2016-09-17  Eli Zaretskii  <eliz@gnu.org>
2377         Document that desktop file overrides frame parameters
2379         * doc/emacs/misc.texi (Saving Emacs Sessions):
2380         * doc/emacs/frames.texi (Frame Parameters): Document that frame
2381         parameters restored by desktop.el take precedence over the
2382         customizations in the init file, and explain how to countermand
2383         that.  For the details of the issue, see
2384         https://lists.gnu.org/r/emacs-devel/2016-09/msg00318.html.
2386 2016-09-15  Nicolas Petton  <nicolas@petton.fr>
2388         * etc/AUTHORS: Regenerate the AUTHORS file
2390 2016-09-16  Nicolas Petton  <nicolas@petton.fr>
2392         * Version 25.1 released.
2394 2016-09-15  Nicolas Petton  <nicolas@petton.fr>
2396         * etc/AUTHORS: Regenerate the AUTHORS file
2398 2016-09-15  Eli Zaretskii  <eliz@gnu.org>
2400         Update admin/authors.el
2402         * admin/authors.el (authors-fixed-entries): Add an entry for Bob
2403         Weiner.
2405 2016-09-14  Eli Zaretskii  <eliz@gnu.org>
2407         Update Antinews in ELisp manual
2409         * doc/lispref/anti.texi (Antinews): Update for Emacs 25.1.
2410         * doc/lispref/elisp.texi (Top): Update the main menu entry for
2411         Antinews.
2413 2016-09-11  Noam Postavsky  <npostavs@gmail.com>
2415         Fix comments on window height macros
2417         * src/window.h (WINDOW_MODE_LINE_HEIGHT, WINDOW_HEADER_LINE_HEIGHT): Fix
2418         confusing claim that "height is in pixels and in lines"; in fact it's in
2419         pixels.
2421 2016-09-10  Toke Høiland-Jørgensen  <toke@toke.dk>  (tiny change)
2423         Fix 'url-http-create-request' when cookies are used
2425         * lisp/url/url-http.el (url-http-create-request): Make sure the
2426         cookie headers are a unibyte string.  For the details, see
2427         https://lists.gnu.org/r/emacs-devel/2016-09/msg00202.html.
2429 2016-09-08  Martin Rudalics  <rudalics@gmx.at>
2431         Fix cross reference in frames.texi
2433         * doc/lispref/frames.texi (Minibuffers and Frames): Fix cross
2434         reference.
2436 2016-09-04  immerrr  <immerrr@gmail.com>
2438         Fix regexp-opt documentation (bug #17862)
2440         * lisp/emacs-lisp/regexp-opt.el (regexp-opt):
2441         * doc/lispref/searching.texi (Regexp Functions): Update PAREN doc.
2443 2016-08-31  Nicolas Richard  <youngfrog@members.fsf.org>
2445         * lisp/emacs-lisp/gv.el (gv-ref): Fix example of PLACE in docstring.
2447 2016-08-27  Noam Postavsky  <npostavs@gmail.com>
2449         Fix tags-query-replace docstring
2451         * lisp/progmodes/etags.el (tags-query-replace): Remove incorrect info
2452         regarding non-existent parameters.
2454 2016-08-26  Eli Zaretskii  <eliz@gnu.org>
2456         Clarify documentation of precision in format specs
2458         * doc/lispref/strings.texi (Formatting Strings): Be less
2459         definitive wrt what precision means in format specs other than
2460         floating-point, %s and %S.  (Bug#24314)
2462 2016-08-24  Eli Zaretskii  <eliz@gnu.org>
2464         Improve and clarify documentation of subprocesses
2466         * doc/lispref/processes.texi (Subprocess Creation, Shell Arguments):
2467         Mention 'make-process' rather than 'start-process'.  Update wrt
2468         standard destinations of standard output/error streams and due to
2469         different formats of arguments accepted by 'make-process'.
2470         (Processes): Mention process objects that represent connections.
2471         (Synchronous Processes): Minor clarifications.
2472         (Asynchronous Processes): Describe 'make-process' and
2473         'make-pipe-process' before 'start-process'.  Update and expand the
2474         documentation.
2475         (Deleting Processes, Process Information, Input to Processes)
2476         (Signals to Processes, Query Before Exit, Network): Update and
2477         expand the documentation, especially wrt process objects that
2478         represent connections.
2479         (Output from Processes): Mention the possibility of separating
2480         stderr via 'make-process'.
2481         (Filter Functions): Mention that stderr by default arrives at the
2482         filter function together with stdout.  (Bug#24287)
2484         * src/process.c (Fprocess_id, Fprocess_command)
2485         (Fprocess_contact, Fprocess_type, Fstop_process): Doc fixes for
2486         process objects that represent connections.
2488 2016-08-23  Paul Eggert  <eggert@cs.ucla.edu>
2490         * etc/PROBLEMS: Mention gnutls-cli 3.5.3 (Bug#24247).
2492 2016-08-21  Nicolas Petton  <nicolas@petton.fr>
2494         * etc/AUTHORS: Update the AUTHORS file
2496 2016-08-20  Philipp Stephani  <phst@google.com>
2498         Some assorted documentation clarifications
2500         * src/fileio.c (Fwrite_region): Clarify that END is ignored if
2501         START is nil.
2502         * src/editfns.c (Fbuffer_size): Add short discussion about
2503         narrowing.
2504         * src/callproc.c (Fcall_process_region): Discuss behavior when
2505         START and END are not buffer positions.
2507 2016-08-18  Eli Zaretskii  <eliz@gnu.org>
2509         Improve commentary in src/character.h
2511         * src/character.h (BYTES_BY_CHAR_HEAD, MULTIBYTE_LENGTH)
2512         (MULTIBYTE_LENGTH_NO_CHECK, STRING_CHAR_AND_LENGTH): Remove stale
2513         info from commentary and improve it.
2515 2016-08-17  Dmitry Gutov  <dgutov@yandex.ru>
2517         * etc/NEWS: Mention the change in json-encode-string.
2519         The change was made to fix bug#20154, and came up again in bug#24239.
2521 2016-08-16  Eli Zaretskii  <eliz@gnu.org>
2523         * src/doc.c (Fsubstitute_command_keys): Another fix for smart quotes.
2525         (Bug#24206)
2527 2016-08-16  Eli Zaretskii  <eliz@gnu.org>
2529         Avoid segfaults due to quoting in 'substitute-command-keys'
2531         * src/doc.c (Fsubstitute_command_keys): Correct character counts
2532         when the input string is unibyte.  (Bug#24206)
2534 2016-08-16  Martin Rudalics  <rudalics@gmx.at>
2536         In NEWS describe new handling of window margins (Bug#24193)
2538         * etc/NEWS: Describe new handling of margins when splitting or
2539         resizing windows (Bug#24193).
2541 2016-08-16  Martin Rudalics  <rudalics@gmx.at>
2543         Facultatively ignore margins when splitting and resizing windows (Bug#24193)
2545         Provide a new window parameter 'min-margins' which allows to
2546         ignore the actual widths of a window's margins when splitting or
2547         resizing that window horizontally.  This should serve as a
2548         workaround for handling the problems raised by Bug#24193.
2550         * lisp/window.el (window--min-size-1): Handle new window
2551         parameter 'min-margins'.
2552         (split-window): Fix text of error messages.
2553         * doc/lispref/windows.texi (Window Parameters): Describe new
2554         parameter 'min-margins'.
2556 2016-08-14  Noam Postavsky  <npostavs@gmail.com>
2558         Document CATEGORY arg to modify-category-entry
2560         * src/category.c (Fmodify_category_entry): Document CATEGORY argument.
2562 2016-08-13  Noam Postavsky  <npostavs@gmail.com>
2564         Document char-script-table's effect on word motion
2566         * doc/lispref/positions.texi (Word Motion): Talk about
2567         char-script-table (Bug #10494).
2569 2016-08-13  Eli Zaretskii  <eliz@gnu.org>
2571         Further fix for 'url-http-create-request' and multibyte strings
2573         * lisp/url/url-http.el (url-http-create-request): Run
2574         url-mime-charset-string through url-http--encode-string.
2575         (Bug#24117)
2577 2016-08-13  Noam Postavsky  <npostavs@gmail.com>
2579         Fix docstring of eval-expression
2581         * lisp/simple.el (eval-expression): Fix the docstring to reflect the
2582         fact that the prefix argument does not affect formatting for
2583         integers (Bug #20691).
2585 2016-08-11  Eli Zaretskii  <eliz@gnu.org>
2587         Clarify when 'cursor' property is in effect
2589         * doc/lispref/text.texi (Special Properties): Minor copyedits.
2590         (Bug#24179)
2592 2016-08-11  Dmitry Gutov  <dgutov@yandex.ru>
2594         Convert the remaining strings to unibyte before concatenating
2596         * lisp/url/url-http.el (url-http--encode-string): New function.
2597         (url-http-create-request): Use it to convert ASCII to unibyte.
2598         (Bug#24117)
2600 2016-08-11  Eli Zaretskii  <eliz@gnu.org>
2602         Fix bug with handling the bidi cache
2604         * src/xdisp.c (redisplay_window): Save and restore the state of
2605         the bidi cache before reusing the iterator after calls to
2606         try_window and try_window_reusing_current_matrix.
2608 2016-08-10  Eli Zaretskii  <eliz@gnu.org>
2610         * doc/lispref/text.texi (Change Hooks): Minor copyedits.
2612 2016-08-09  Eli Zaretskii  <eliz@gnu.org>
2614         Clarify documentation of before/after-change-functions
2616         * doc/lispref/text.texi (Change Hooks): Clarify that the hooks are
2617         not called in balanced pairs.
2619 2016-08-06  Noam Postavsky  <npostavs@gmail.com>
2621         Document use of vectors in keymaps
2623         * doc/lispref/keymaps.texi (Format of Keymaps): Mention vector
2624         format (Bug #14797).
2626 2016-08-03  Alan Third  <alan@idiocy.org>
2628         Post AppDefined events from the main thread ONLY (bug#23934)
2630         * src/nsterm.h: Make nextappdefined var not just GNUStep.
2631         * src/nsterm.m (ns_send_appdefined, sendFromMainThread): Remove GNUStep
2633 2016-08-03  John Wiegley  <johnw@newartisans.com>
2635         Update to the AUTHORS file for Bob Weiner
2637                 * etc/AUTHORS: Update the packages attributed to Bob Weiner
2639 2016-08-02  John Wiegley  <johnw@newartisans.com>
2641         Revert "Fix local printer set to left aligned string formatter."
2643         This reverts commit 8a38e948b039516e70176ebe20c5349e2ade6ac5.
2645 2016-08-02  John Wiegley  <johnw@newartisans.com>
2647         Revert "Fix ses-delete-blanks to delete only blanks + documentation."
2649         This reverts commit 3c97b0f7589e06aeb1ab0147f0ee32974c32926d.
2651 2016-08-02  John Wiegley  <johnw@newartisans.com>
2653         Revert "Fix English."
2655         This reverts commit b275cc76f0c5ab49e81445fcc3420c8772aefd42.
2657 2016-08-01  Eli Zaretskii  <eliz@gnu.org>
2659         Improve doc strings of 'gud-gdb' and 'gdb'
2661         * lisp/progmodes/gdb-mi.el (gdb):
2662         * lisp/progmodes/gud.el (gud-gdb): Doc fix.  (Bug#24125)
2664 2016-08-01  Eli Zaretskii  <eliz@gnu.org>
2666         Fix doc string of 'minibuffer-message-timeout'
2668         * src/keyboard.c (syms_of_keyboard) <minibuffer-message-timeout>:
2669         Doc fix.  (Bug#24123)
2671 2016-07-29  Vincent Belaïche  <vincentb1@users.sourceforge.net>
2673         Fix English.
2675         * doc/misc/ses.texi (Nonrelocatable references): Fix grammatically
2676           incorrect English.
2678 2016-07-29  Vincent Belaïche  <vincentb1@users.sourceforge.net>
2680         Fix ses-delete-blanks to delete only blanks + documentation.
2682         * doc/misc/ses.texi (Quick Tutorial): Mention the '!'
2683         'ses-range' modifier as an alternative to 'ses+'.
2684         (Advanced Features): Add a refernce to node 'Nonrelocatable
2685         references' concerning function 'ses-rename-cell'.
2686         (Standard formula functions): Mention the '!' 'ses-range'
2687         modifier as an alternative to 'ses-delete-blanks'.
2688         (More on cell printing): Fix fallback printer
2689         definition.  Minor editorial formatting changes.
2690         (Nonrelocatable references): Document the use of
2691         'ses-rename-cell' as a better way to make cell reference
2692         non-relocatable.
2693         (The data area): Document the presence of local printer
2694         definitions in the data area.
2696         * lisp/ses.el (ses-delete-blanks): Do not remove
2697         *error*.  Any error in an argument should propagate into the
2698         using formula rather than being silently hidden !
2700 2016-07-29  Noam Postavsky  <npostavs@gmail.com>
2702         profiler: document prefix arg for tree expansion
2704         * doc/lispref/debugging.texi (Profiling):
2705         * lisp/profiler.el (profiler-report-toggle-entry): Document use of
2706         prefix argument to expand whole call trees.
2708 2016-07-29  Noam Postavsky  <npostavs@gmail.com>
2710         Clarify usage of eshell-visual-options
2712         * lisp/eshell/em-term.el (eshell-visual-options): Add second option to
2713         example usage (Bug #19627).
2715 2016-07-29  Noam Postavsky  <npostavs@gmail.com>
2717         Fix comment in files-in-below-directory
2719         * doc/lispintro/emacs-lisp-intro.texi (Files List): Comment should not
2720         say append, since the code is adding to front of list (Bug #21589).
2722 2016-07-28  Vincent Belaïche  <vincentb1@users.sourceforge.net>
2724         Fix local printer set to left aligned string formatter.
2726         * lisp/ses.el (ses-local-printer-compile): Add missing case
2727         for left-aligned string formatter.
2729 2016-07-24  Nicolas Petton  <nicolas@petton.fr>
2731         Bump Emacs version to 25.1 for the first RC
2733         * README:
2734         * configure.ac:
2735         * lisp/ldefs-boot.el:
2736         * msdos/sed2v2.inp: Bump Emacs version to 25.1.
2738 2016-07-24  Nicolas Petton  <nicolas@petton.fr>
2740         * etc/AUTHORS: Update the AUTHORS file
2742         ;; * ChangeLog.2: ChangeLog update.
2744 2016-07-24  Nicolas Petton  <nicolas@petton.fr>
2746         * admin/authors.el (authors-valid-file-names): Addition.
2748 2016-07-23  Eli Zaretskii  <eliz@gnu.org>
2750         Warn about Cairo-related problems
2752         * etc/NEWS: Warn about known problems in the Cairo build.
2753         (Bug#23925)
2755 2016-07-23  Paul Pogonyshev  <pogonyshev@gmail.com>
2757         Don't let completion break `declare' handling
2759         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point): Fix to not alter
2760         `defun-declarations-alist' by side effect (Bug #23648).
2762 2016-07-23  Noam Postavsky  <npostavs@gmail.com>
2764         Adjust match data before calling after-change-funs
2766         It's important to adjust the match data in between calling
2767         before-change-functions and after-change-functions, so that buffer
2768         change hooks will always see match-data consistent with buffer content.
2769         (Bug #23917)
2771         * src/insdel.c (replace_range): Add new parameter ADJUST_MATCH_DATA, if
2772         true call update_search_regs.  Update all callers (except
2773         Freplace_match) to pass 0 for the new parameter.
2774         * src/search.c (update_search_regs): New function, extracted from
2775         Freplace_match.
2776         (Freplace_match): Remove match data adjustment code, pass 1 for
2777         ADJUST_MATCH_DATA to replace_range instead.
2779 2016-07-21  Mark Oteiza  <mvoteiza@udel.edu>
2781         Do not show string-rectangle preview if minibuffer is empty
2783         * lisp/rect.el (rectangle--string-preview): Remove condition that sets
2784         preview string to the default replacement string.
2786 2016-07-21  Achim Gratz  <Stromeko@nexgo.de>
2788         * etc/PROBLEMS: Add entry about selection problems under Plasma 5.
2790         Bug#24013
2792 2016-07-21  Paul Eggert  <eggert@cs.ucla.edu>
2794         Port to glibc 2.24 (pre-release) + ppc64
2796         Backport from master (Bug#24033).
2797         Inspired by a suggestion by Florian Weimer in:
2798         https://sourceware.org/ml/libc-alpha/2016-07/msg00425.html
2799         * src/emacs.c (main) [__PPC64__]:
2800         Special case for __PPC64__, which needs ASLR disabled in
2801         dumped Emacs too.
2803 2016-07-21  Katsumi Yamaoka  <yamaoka@jpl.org>
2805         * lisp/net/shr.el (shr-fill-line): Withdraw the last commit (4157159).
2807         * lisp/net/shr.el (shr-fill-line):
2808         Preserve text properties in folded lines (bug#24034).
2810 2016-07-17  Robert Cochran  <robert-git@cochranmail.com>  (tiny change)
2812         Expand FIXME near definition of fboundp
2814         This expansion of the FIXME is so that future developers are aware of
2815         the potential problems of aliasing fboundp to symbol-function without
2816         taking backwards compatibility into account.
2818         * src/data.c (fboundp): Note potential backwards compatibility issues in
2819         FIXME.
2821 2016-07-17  Noam Postavsky  <npostavs@gmail.com>
2823         kill-rectangle should mention killed-rectangle
2825         * lisp/rect.el (kill-rectangle): Mention `killed-rectangle' in docstring
2826         and warning message, rather than kill ring (Bug#19773).
2828 2016-07-16  Eli Zaretskii  <eliz@gnu.org>
2830         Avoid assertion violations in nhexl-mode
2832         * src/bidi.c (bidi_resolve_neutral): Convert an assertion to real
2833         code executed in all builds.  (Bug#24001)
2835 2016-07-15  Fredrik Bergroth  <fbergroth@gmail.com>  (tiny change)
2837         Use memmove instead of memcpy on overlapping regions
2839         * src/editfns.c (Ftranspose_regions): Regions may overlap, so
2840         use memmove instead of memcpy (bug#19213).
2843         This is a backport from trunk.
2844         (cherry picked from commit 354f9f0fc6cc05ed98883447f9b2f37943d79160)
2846 2016-07-15  Noam Postavsky  <npostavs@gmail.com>
2848         Document buffer-swap-text+save-excursion interaction
2850         * doc/lispref/buffers.texi (Swapping Text):
2851         * src/buffer.c (Fbuffer_swap_text): Add warning about interaction of
2852         `buffer-swap-text' and `save-excursion' (Bug #4655).
2854 2016-07-14  Stefan Monnier  <monnier@iro.umontreal.ca>
2856         Fix eieio vs cl-generic incompatibilities found in Rudel (bug#23947)
2858         * lisp/emacs-lisp/cl-generic.el (cl-generic-apply): New function.
2859         * lisp/emacs-lisp/eieio-compat.el (eieio--defmethod): Fix incorrect
2860         mapping between cl-no-applicable-method and EIEIO's no-applicable-method.
2861         * lisp/emacs-lisp/eieio-core.el (eieio--class-precedence-c3):
2862         `class' is not a symbol but a class object.
2864 2016-07-14  Stefan Monnier  <monnier@iro.umontreal.ca>
2866         Include cl-generic in package--builtin-versions (bug#22817)
2868         * lisp/emacs-lisp/cl-generic.el (package--builtin-versions):
2869         Add ourselves manually.  Don't merge since there's a better fix on master.
2871 2016-07-14  Michael Albinus  <michael.albinus@gmx.de>
2873         Improve timing in `tramp-test29-environment-variables'
2875         * test/automated/tramp-tests.el
2876         (tramp-test--shell-command-to-string-asynchronously):
2877         Add additional `accept-process-output' call.
2878         (tramp-test29-environment-variables): Remove additional sleep calls.
2880 2016-07-14  Michael Albinus  <michael.albinus@gmx.de>
2882         Add test for handling environment variables in Tramp
2884         * test/automated/tramp-tests.el
2885         (tramp-test--shell-command-to-string-asynchronously): New defun.
2886         (tramp-test29-environment-variables): New test.
2887         (tramp-test30-vc-registered)
2888         (tramp-test31-make-auto-save-file-name)
2889         (tramp-test32-special-characters)
2890         (tramp-test32-special-characters-with-stat)
2891         (tramp-test32-special-characters-with-perl)
2892         (tramp-test32-special-characters-with-ls, tramp-test33-utf8)
2893         (tramp-test33-utf8-with-stat, tramp-test33-utf8-with-perl)
2894         (tramp-test33-utf8-with-ls)
2895         (tramp-test34-asynchronous-requests)
2896         (tramp-test35-recursive-load, tramp-test36-unload): Rename.
2898 2016-07-13  Glenn Morris  <rgm@gnu.org>
2900         * lisp/emacs-lisp/package.el (describe-package-1)
2901         (package-status-external): Fix face references.  (Bug#23927)
2903 2016-07-12  Stephen Berman  <stephen.berman@gmx.net>
2905         Improve documentation of search functions
2907         Make the documentation of the search functions more accurate,
2908         complete, and uniform; in particular, extend the description of
2909         the effect when the 'count' parameter is a negative number to all
2910         of these functions.
2912         * src/search.c (Fsearch_backward, Fsearch_forward)
2913         (Fre_search_backward, Fre_search_forward)
2914         (Fposix_search_backward, Fposix_search_forward):
2915         * lisp/isearch.el (word-search-backward, word-search-forward)
2916         (word-search-backward-lax, word-search-forward-lax): Improve doc
2917         strings as described above.
2919         * doc/lispref/searching.texi (String Search, Regexp Search)
2920         (POSIX Regexps): Use 'count' instead of 'repeat' as the name of
2921         the fourth parameter of the *-search-{forward,backward} functions
2922         and improve documentation as described above.
2924 2016-07-12  Michael Albinus  <michael.albinus@gmx.de>
2926         Delete environment variables in Tramp when needed
2928         * lisp/net/tramp-sh.el (tramp-get-env-with-u-option): New defun.
2929         (tramp-sh-handle-start-file-process)
2930         (tramp-sh-handle-process-file, ): Use it.  (Bug#23952)
2932 2016-07-12  Eli Zaretskii  <eliz@gnu.org>
2934         Add "New in Emacs 25" section to the FAQ
2936         * doc/misc/efaq.texi (Latest version of Emacs): Update for later
2937         versions.
2938         (New in Emacs 25): New node.
2939         (Status of Emacs): Add it to the menu.
2941 2016-07-10  Eli Zaretskii  <eliz@gnu.org>
2943         Fix 'vertical-motion' in non-interactive sessions
2945         * src/indent.c (Fvertical_motion): Don't return uninitialized
2946         value in non-interactive session.  This fixes random errors in
2947         batch mode, see
2948         https://lists.gnu.org/r/emacs-devel/2016-06/msg00609.html
2949         and
2950         https://lists.gnu.org/r/emacs-devel/2016-07/msg00500.html
2951         for the details.
2953 2016-07-10  Andreas Schwab  <schwab@linux-m68k.org>
2955         Fix memory leak in imagemagick-types
2957         * src/image.c (Fimagemagick_types): Use AcquireExceptionInfo to
2958         avoid memory leak.
2960 2016-07-10  Eli Zaretskii  <eliz@gnu.org>
2962         Update ELisp manual to match 'string-collate-equalp' doc string
2964         * doc/lispref/strings.texi (Text Comparison): Remove reference to
2965         sorting from the description of 'string-collate-equalp'.  (Bug#23902)
2967 2016-07-09  Noam Postavsky  <npostavs@gmail.com>
2969         Clarify docstring of find-feature-regexp
2971         * lisp/emacs-lisp/find-func.el (find-feature-regexp): Explain that `%s'
2972         is optional (Bug #23520).
2974 2016-07-09  Noam Postavsky  <npostavs@gmail.com>
2976         Add details to cl-lib defining macros' docstrings
2978         * lisp/emacs-lisp/cl-macs.el (cl-defun, cl-defmacro): Add terse summary
2979         of supported arglist forms (Bug #22462).
2981 2016-07-09  Eli Zaretskii  <eliz@gnu.org>
2983         Clarify doc string of 'save-buffer'
2985         * lisp/files.el (save-buffer): Clarify that backups might not be
2986         made even if this command is invoked with 2 or 3 "C-u"s.
2987         (Bug#3702)
2989 2016-07-08  Eli Zaretskii  <eliz@gnu.org>
2991         Un-confuse doc string of 'string-collate-equalp'
2993         * src/fns.c (Fstring_collate_equalp): Remove confusing text from
2994         doc string.  (Bug#23902)
2996 2016-07-07  Eli Zaretskii  <eliz@gnu.org>
2998         Clarify documentation of 'mouse-on-link-p'
3000         * lisp/mouse.el (mouse-on-link-p): Clarify the form of the POS
3001         argument.  (Bug#23899)
3003 2016-07-06  Phillip Lord  <phillip.lord@russet.org.uk>
3005         Fix missing undo-boundary on revert-buffer.
3007         * lisp/simple.el (undo-auto--undoable-change-no-timer): New function.
3008         * src/fileio.c (insert-buffer-contents): Call
3009           undo-auto--undoably-changed-buffers before changes.
3011         Addresses Bug#23785.
3013         Do not merge to master as c98bc98 also addresses the same bug.
3015 2016-07-06  Martin Rudalics  <rudalics@gmx.at>
3017         Amend last addition to etc/PROBLEMS
3019         * etc/PROBLEMS: Mention GTK+ problem with unexpected frame widenings
3021 2016-07-06  Paul Eggert  <eggert@cs.ucla.edu>
3023         Fix open-network-stream responsiveness
3025         Problem reported by Christer Ekholm (Bug#23864).
3026         Backport from master.
3027         * src/process.c (wait_reading_process_output):
3028         Fix typo introduced in 2015-07-06T02:19:13Z!eggert@cs.ucla.edu
3029         when wait == INFINITY and got_output_end_time is invalid.
3030         In this case the code should break, not continue.
3032 2016-07-05  Phillip Lord  <phillip.lord@russet.org.uk>
3034         Fix missing point information in undo
3036         * src/undo.c (record_insert): Use record_point instead of
3037           prepare_record, and do so unconditionally.
3038           (prepare_record): Do not record first change.
3039           (record_point): Now conditional on state before the last command.
3040           (record_delete): Call record_point unconditionally.
3041           (record_property_change): Use prepare_record.
3042           (record_marker_adjustments): Use prepare_record.
3044         Addresses Bug# 21722
3046 2016-07-04  Eli Zaretskii  <eliz@gnu.org>
3048         Avoid crashes when buffer modification hooks clobber match data
3050         * src/search.c (Freplace_match): Error out if buffer modification
3051         hooks triggered by buffer changes in replace_range, upcase-region,
3052         and upcase-initials-region clobber the match data needed to be
3053         adjusted for the replacement.  (Bug#23869)
3055 2016-07-03  Noam Postavsky  <npostavs@gmail.com>
3057         Note combine-and-quote-strings doesn't shell quote
3059         * doc/lispref/processes.texi (Shell Arguments):
3060         * lisp/subr.el (combine-and-quote-strings): Add a note that
3061         combine-and-quote-strings doesn't protect arguments against shell
3062         evaluation (Bug #20333).
3064 2016-07-03  Noam Postavsky  <npostavs@gmail.com>
3066         Explain when package-initialize isn't called
3068         * doc/lispref/os.texi (Startup Summary): Explain that package-initialize
3069         is not called when options -q, -Q, or --batch were passed (Bug #19151).
3071 2016-07-03  Noam Postavsky  <npostavs@gmail.com>
3073         Fix escaping in sh-indent-after-continuation docstr
3075         * lisp/progmodes/sh-script.el (sh-indent-after-continuation): Properly
3076         escape backslashes in docstring (Bug#23046).
3078 2016-07-02  Eli Zaretskii  <eliz@gnu.org>
3080         Clarify the documentation of back-references in replacements
3082         * doc/emacs/search.texi (Regexp Replace): Clarify that \D starts
3083         with \1, not \0.
3085         * lisp/replace.el (query-replace-regexp)
3086         (query-replace-regexp-eval, replace-regexp): Doc fix (Bug#23884)
3088 2016-07-01  Noam Postavsky  <npostavs@gmail.com>
3090         Clarify lexical binding with symbol args behavior
3092         * doc/lispref/variables.texi (Lexical Binding): Clarify that symbol
3093         arguments always refer to dynamic values (Bug #23781).  Remove mention
3094         of obsolete restriction regarding lexical binding for defun and
3095         defmacro, this no longer applies since 61b108cc 2012-05-29 "*
3096         lisp/emacs-lisp/byte-run.el (defmacro, defun): Move from C...".
3098 2016-06-30  Michael Albinus  <michael.albinus@gmx.de>
3100         * lisp/net/tramp-sh.el (tramp-remote-path): Doc fix.
3102 2016-06-29  Eli Zaretskii  <eliz@gnu.org>
3104         * lisp/net/tramp-sh.el (tramp-remote-path): Doc fix.  (Bug#23865)
3106 2016-06-29  Eli Zaretskii  <eliz@gnu.org>
3108         Avoid assertion violations when rendering some fonts
3110         * src/dispextern.h (FONT_TOO_HIGH): Don't consider a font "too
3111         high" if its pixel_size value is zero.  This avoids assertion
3112         violations at the end of x_produce_glyphs.
3114 2016-06-28  Noam Postavsky  <npostavs@gmail.com>
3116         Document more details of package activation
3118         * doc/emacs/package.texi (Package Installation): Explain that package
3119         activation adds to load-path (Bug #21704).
3121 2016-06-28  Noam Postavsky  <npostavs@gmail.com>
3123         Fixup warning message regarding HOME a bit more
3125         * src/w32.c (init_environment): The manual section title is "Windows
3126         HOME" (Bug #11612).  Move newline so warning fits in 80 character lines.
3128 2016-06-27  Eli Zaretskii  <eliz@gnu.org>
3130         * lisp/leim/quail/indian.el ("bengali-probhat"): Change indicator to BngPB.
3132 2016-06-27  Michael Albinus  <michael.albinus@gmx.de>
3134         Fix input method "probhat" for Bengali
3136         Author: উৎসব রায় <uroybd@gmail.com>
3138         * lisp/leim/quail/indian.el ("bengali-probhat"): Fix entry.
3140 2016-06-27  Noam Postavsky  <npostavs@gmail.com>
3142         Add to elisp-completion-at-point's docstring
3144         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point): Document
3145         position dependent behavior (Bug #19854).
3147 2016-06-27  Noam Postavsky  <npostavs@gmail.com>
3148             Eli Zaretskii  <eliz@gnu.org>
3150         Give more helpful warning about setting HOME
3152         * src/w32.c (init_environment): Improve warning message that pops when
3153         Emacs sets HOME according to existence of C:\.emacs (Bug #11612).
3155 2016-06-26  Eli Zaretskii  <eliz@gnu.org>
3157         Fix slow redisplay in term-mode
3159         * lisp/term.el (term-mode): Move the setting of
3160         bidi-paragraph-direction from 'ansi-term' to here, since term-mode
3161         is also affected.  Do not merge to master, since there the problem
3162         is solved in bidi.c by changing the regexps that delimit a
3163         paragraph.  (Bug#23801)
3165 2016-06-26  উৎসব রায়  <uroybd@gmail.com>
3167         New input method "probhat" for Bengali
3169         * lisp/leim/quail/indian.el ("probhat"): New input method.
3170         (Bug#23822)
3172         * etc/NEWS: Mention the new input method.
3174 2016-06-25  Noam Postavsky  <npostavs@gmail.com>
3175             Drew Adams  <drew.adams@oracle.com>
3177         Update docs for `customize-mode'
3179         * lisp/cus-edit.el (customize-mode): This function works with both major
3180         and minor modes, make docstring and prompt reflect that (Bug #23649).
3182         * doc/lispref/modes.texi (Derived Modes): Remove note about
3183         customize-mode being experimental; it has been around since Emacs
3184         22 (Bug #11299).
3186 2016-06-23  Eli Zaretskii  <eliz@gnu.org>
3188         Fix documentation of 'assoc-string' and 'compare-strings'
3190         * src/minibuf.c (Fassoc_string): Clarify how CASE-FOLD affects the
3191         string comparison.  (Bug#23833)
3192         * src/fns.c (Fcompare_strings): Fix the description of how
3193         IGNORE-CASE affects the comparison.
3195         * doc/lispref/strings.texi (Text Comparison): Clarify how
3196         CASE-FOLD affects the string comparison in 'assoc-string'.  Fix
3197         the description of how IGNORE-CASE affects the comparison in
3198         'compare-strings'.
3200 2016-06-22  Dmitry Gutov  <dgutov@yandex.ru>
3202         Error on multibyte characters in HTTP request
3204         * lisp/url/url-http.el (url-http-create-request): Check the
3205         constructed request in the end to verify that it does not contain
3206         multibyte characters (bug#23750).
3208 2016-06-22  Katsumi Yamaoka  <yamaoka@jpl.org>
3210         * lisp/gnus/mm-decode.el (mm-convert-shr-links):
3211         Mask keys that launch `widget-button-click' (bug#22157).
3213 2016-06-22  Dmitry Gutov  <dgutov@yandex.ru>
3215         Unset GIT_DIR when calling Git commands
3217         * lisp/vc/vc-git.el (vc-git--call, vc-git-command):
3218         Unset GIT_DIR (bug#23769).
3220 2016-06-21  Phillip Lord  <phillip.lord@russet.org.uk>
3222         Ensure undo-boundary after insert-file-contents.
3224         * src/fileio.c: Record undoable change during insert-file-contents.
3226         Addresses Bug #23785.
3228 2016-06-21  Eli Zaretskii  <eliz@gnu.org>
3230         Clarify documentation of 'line-spacing' and 'line-height'
3232         * doc/lispref/display.texi (Line Height): Clarify how the line
3233         height is determined via variables and text properties.  (Bug#23806)
3235 2016-06-20  Eli Zaretskii  <eliz@gnu.org>
3237         Fix removal of variables from process-environment
3239         * src/callproc.c (add_env): Fix comparison of a variable with a
3240         value against the same variable without a value.  (Bug#23779)
3242 2016-06-20  Glenn Morris  <rgm@gnu.org>
3244         * admin/authors.el (authors-ignored-files, authors-valid-file-names)
3245         (authors-renamed-files-alist): Additions.
3247         * admin/authors.el (authors-aliases, authors-fixed-case): Additions.
3249 2016-06-18  Noam Postavsky  <npostavs@gmail.com>
3251         Fix documentation of completion functions
3253         So that the described behavior matches the code (and docstrings).
3255         * doc/lispref/minibuf.texi (Basic Completion): Symbol keys of hash table
3256         collections are used like string keys, not ignored (Bug #10416).
3258 2016-06-18  Eli Zaretskii  <eliz@gnu.org>
3260         Clarify documentation of 'font-lock-maximum-decoration'
3262         * doc/emacs/display.texi (Font Lock): Explain how to make the
3263         customization of 'font-lock-maximum-decoration' effective for an
3264         existing buffer.  (Bug#23783)
3266 2016-06-17  Glenn Morris  <rgm@gnu.org>
3268         * doc/misc/cl.texi (Usage): Add some more details.
3270 2016-06-17  Noam Postavsky  <npostavs@gmail.com>
3272         Fbackward_prefix_chars: stay within buffer bounds
3274         The commit 1fd3172d "(Fbackward_prefix_chars): Set point properly while
3275         scanning" (1998-03-18), moved the check against of the position against the
3276         buffer beginning out the loop condition so that we might end up checking
3277         the syntax of characters before the beginning of the buffer.  This can
3278         cause segfaults or trigger a "Point before start of properties" error in
3279         `update_interval' (called indirectly from `char_quoted').
3281         * src/syntax.c (Fbackward_prefix_chars): Stop the loop when beginning of
3282         buffer is reached (Bug #3552, Bug #17132, Bug #19379).
3284 2016-06-16  Paul Eggert  <eggert@cs.ucla.edu>
3286         Fix ifdef-vs-if typo with RANDR13_LIBRARY
3288         * src/xfns.c (x_get_monitor_attributes_xrandr): Use #if, not #ifdef.
3289         This ports to systems that predate xrandr 1.3. See Christian Lynbech in:
3290         https://lists.gnu.org/r/emacs-devel/2016-06/msg00198.html
3292         (cherry picked from commit dce99f222f1ca33265cd56ddb157817be1dc078e)
3294 2016-06-16  Stephen Berman  <stephen.berman@gmx.net>
3296         Fix last todo-mode change
3298         * lisp/calendar/todo-mode.el (todo-read-category): Return the
3299         keymap in order to use its defined key bindings.
3301 2016-06-15  Stephen Berman  <stephen.berman@gmx.net>
3303         Improve last todo-mode fix
3305         * lisp/calendar/todo-mode.el (todo-read-category): Use
3306         set-keymap-parent instead of copy-keymap, and default (as
3307         previously) to the global binding (for rationale, see
3308         https://lists.gnu.org/r/emacs-devel/2016-06/msg00217.html).
3310 2016-06-14  Stephen Berman  <stephen.berman@gmx.net>
3312         Fix todo-mode use of minibuffer completion keymap (bug#23695).
3314         * lisp/calendar/todo-mode.el (todo-read-category): Don't
3315         override minibuffer-local-completion-map globally (bug#23695).
3316         Bind <SPC> key to self-insert-command.
3318 2016-06-14  Glenn Morris  <rgm@gnu.org>
3320         * src/alloc.c (ALIGN): Avoid error on DragonFly BSD.  (Bug#23764)
3322         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
3323         Avoid mangling autoloads with unspecified arguments.  (Bug#21299)
3325 2016-06-13  Glenn Morris  <rgm@gnu.org>
3327         * lisp/help-fns.el (describe-function-1): Avoid reporting advised
3328         autoloads as aliases.  (Bug#21299)
3330 2016-06-13  Stephen Berman  <stephen.berman@gmx.net>
3332         Minor grammar fix (bug#23746)
3334         * doc/lispref/processes.texi (Synchronous Processes):
3335         Another minor grammar fix (bug#23746).
3337 2016-06-13  Stephen Berman  <stephen.berman@gmx.net>
3339         Doc fixes for grammar and typos (bug#23746)
3341         * doc/emacs/files.texi (Customize Save):
3342         * doc/emacs/frames.texi (Window Dividers):
3343         * doc/emacs/misc.texi (Printing):
3344         * doc/lispref/compile.texi (Compiler Errors):
3345         * doc/lispref/keymaps.texi (Changing Key Bindings):
3346         * doc/lispref/loading.texi (Named Features):
3347         * doc/lispref/markers.texi (Marker Insertion Types):
3348         * doc/lispref/modes.texi (Mode Hooks):
3349         * doc/lispref/text.texi (Undo):
3350         * src/floatfns.c (Fldexp):
3351         * src/xfaces.c (syms_of_xfaces):
3352         Minor doc fixes for grammar and typos (bug#23746).
3354 2016-06-13  Eli Zaretskii  <eliz@gnu.org>
3356         * doc/lispref/processes.texi (Process Buffers): Minor rewording.  (Bug#23446)
3358 2016-06-13  Eli Zaretskii  <eliz@gnu.org>
3360         Add cross-reference to ELisp manual
3362         * doc/lispref/commands.texi (Classifying Events): Add
3363         cross-reference to "Motion Events".  (Bug#23756)
3365 2016-06-11  Stefan Monnier  <monnier@iro.umontreal.ca>
3367         * lisp/emacs-lisp/macroexp.el (macroexp--expand-all): Fix (bug#19704)
3369         Don't rewrite (funcall 'f ...) to (f ...).
3371 2016-06-11  Phillip Lord  <phillip.lord@russet.org.uk>
3373         Restore initial undo boundary with viper
3375         * lisp/emulation/viper-cmd.el (viper-adjust-undo): Add back last undo
3376           boundary if it has been removed.
3378         Addresses Bug#22295.
3380 2016-06-11  Phillip Lord  <phillip.lord@russet.org.uk>
3382         Revert "Fix viper undo breakage from undo-boundary changes"
3384         This reverts commit c0139e32f1f3bb287b04e02a69a7848d6a040003.
3386 2016-06-11  Ken Brown  <kbrown@cornell.edu>
3388         Fix dbus crash on 32-bit Cygwin
3390         * src/dbusbind.c (Fdbus__init_bus): Use make_save_pointer to store
3391         connection address.  (Bug#23741)
3392         (xd_lisp_dbus_to_dbus): Use XSAVE_POINTER to retrieve connection
3393         address.
3395 2016-06-10  Nicolas Petton  <nicolas@petton.fr>
3397         Bump version to 25.0.95
3399         * README:
3400         * configure.ac:
3401         * lisp/ldefs-boot.el:
3402         * msdos/sed2v2.inp: Bump Emacs version to 25.0.95.
3404 2016-06-10  Nicolas Petton  <nicolas@petton.fr>
3406         * etc/AUTHORS: Update the AUTHORS file
3408 2016-06-10  Nicolas Petton  <nicolas@petton.fr>
3410         add entries to authors.el
3412         * admin/authors.el (authors-renamed-files-alist): Add char-fold files.
3414 2016-06-10  Jules Tamagnan  <jtamagnan@gmail.com>
3416         Fix eldoc-related freezes in python mode
3418         * lisp/progmodes/python.el (python-eldoc-get-doc): New defvar.
3419         (python-eldoc-function-timeout)
3420         (python-eldoc-function-timeout-permanent): New defcustoms.
3421         (python-eldoc-function): If python-eldoc--get-doc-at-point times
3422         out, effectively turn off ElDoc in current buffer.  (Bug#23609)
3424 2016-06-09  Martin Rudalics  <rudalics@gmx.at>
3426         Handle mouse leaving initial window in `mouse-set-region' (Bug#23707)
3428         * lisp/mouse.el (mouse-set-region): If the mouse ends up in
3429         another window or on the menu bar, use `window-point' of
3430         selected window instead of `posn-point' of the event end
3431         (Bug#23707).
3433 2016-06-08  Marco Wahl  <marcowahlsoft@gmail.com>
3435         org.el: Fix bindings of < and > for calendar scrolling
3437         [This patch taken from upstream Org repo with 8b63dc9 dated
3438         2014-10-20 (Bug#23725).]
3439         * lisp/org/org.el (org-read-date-minibuffer-local-map):
3440         Switch to the current calendar API for scrolling the calendar.
3442 2016-06-08  Phillip Lord  <phillip.lord@russet.org.uk>
3444         Fix undo boundary in recursive edit (Bug#23632)
3446          * src/keyboard.c (recursive_edit_1): specbind
3447            undo-auto--undoably-changed-buffers.
3448          * lisp/simple.el (undo-auto--undoably-changed-buffers):
3449            fix docstring.
3451 2016-06-07  Glenn Morris  <rgm@gnu.org>
3453         Doc fixes re alist-get.  (Bug#23548)
3455         * lisp/subr.el (alist-get): Doc fix.
3456         * doc/lispref/lists.texi (Association Lists): Improve alist-get.
3458 2016-06-07  Glenn Morris  <rgm@gnu.org>
3460         * lisp/progmodes/python.el (inferior-python-mode):
3461         Avoid tabs.  (Bug#23616)
3463         * src/syntax.c (syms_of_syntax) <comment-end-can-be-escaped>: Doc fix.
3465 2016-06-07  Tino Calancha  <f92capac@gmail.com>
3467         * lisp/help-fns.el (describe-function-1):
3468         Fix handling of file name for aliases.  (Bug#21950)
3470         * lisp/emacs-lisp/cl-macs.el (cl-loop): Doc fix re "by".
3472         * doc/misc/cl.texi (Mapping over Sequences): Fix cl-notevery.
3474 2016-06-07  Paul Eggert  <eggert@cs.ucla.edu>
3476         Fix crash in syntax.c after GC
3478         Problem reported by Vincent Belaïche (Bug#23704).
3479         * src/syntax.c (skip_chars): Recompute pointers into the
3480         buffer after every call to update_syntax_table_forward,
3481         as it can GC.
3483 2016-06-06  Dmitry Gutov  <dgutov@yandex.ru>
3485         Improve squiggly heredoc support in non-SMIE Ruby mode
3487         * lisp/progmodes/ruby-mode.el (ruby-parse-partial): Support
3488         squiggly heredocs here, too (port from upstream).
3490 2016-06-06  Stephen Berman  <stephen.berman@gmx.net>
3492         Fix doc string quoting
3494         * lisp/files.el (shell-quote-wildcard-pattern):
3495         * lisp/progmodes/vhdl-mode.el (vhdl-mode):
3496         * lisp/subr.el (replace-regexp-in-string):
3497         * lisp/view.el (view-mode):
3498         * src/nsfns.m (syms_of_nsfns):
3499         * src/syntax.c (Fbackward_prefix_chars):
3500         Fix quoting problems in doc strings (Bug#23696).
3502 2016-06-05  Martin Rudalics  <rudalics@gmx.at>
3504         Fix mouse dragging of vertical dividers with scroll bars on left (Bug#23690)
3506         * lisp/mouse.el (mouse-drag-line): With scroll bars on the left
3507         adjust trailing edge of window on the left when dragging the
3508         vertical divider of the mode line.  (Bug#23690)
3510 2016-06-04  Eli Zaretskii  <eliz@gnu.org>
3512         * etc/PROBLEMS: Mention the link-time problems on FreeBSD 11.
3514         (Bug#23641)
3516 2016-05-31  Glenn Morris  <rgm@gnu.org>
3518         * test/automated/viper-tests.el (viper-test-undo-kmacro):
3519         Delete temp-file at end.
3521         * lisp/mail/footnote.el (footnote-mode): Fix doc typo.
3523         * doc/misc/smtpmail.texi (Encryption): Fix 2012-12-22 typo.
3525         * lisp/emacs-lisp/lisp-mode.el (lisp--mode-syntax-table):
3526         Fix typo.  (Bug#23654)
3528 2016-05-30  Stefan Monnier  <monnier@iro.umontreal.ca>
3530         * lisp/recentf.el (recentf-dialog-mode-map): Remove follow-link (bug#22434)
3532 2016-05-30  Bill Wohler  <wohler@newt.com>
3534         Correct cl-flet usage (Bug#22317)
3536         * lisp/mh-e/mh-compat.el: Rename mh-cl-flet to mh-flet and convert alias to
3537         macro using patch from Katsumi Yamaoka <yamaoka@jpl.org>.
3538         * lisp/mh-e/mh-thread.el (mh-thread-set-tables):
3539         * lisp/mh-e/mh-show.el (mh-gnus-article-highlight-citation):
3540         * lisp/mh-e/mh-mime.el (mh-display-with-external-viewer):
3541         (mh-mime-display, mh-press-button, mh-push-button):
3542         (mh-display-emphasis): Call mh-flet instead of mh-cl-flet.
3544 2016-05-30  Bill Wohler  <wohler@newt.com>
3546         Release MH-E manual version 8.6
3548         * doc/misc/mh-e.texi (VERSION, EDITION, UPDATED, UPDATE-MONTH):
3549         Update for release 8.6.
3551 2016-05-30  Mike Kupfer  <m.kupfer@acm.org>
3553         Update MH-E's documentation about HTML renderers
3555         * doc/misc/mh-e.texi (HTML): Remove the footnote with the minimum Gnus
3556         version (we are no longer trying to support multiple Emacs
3557         releases). Sort the table of HTML renderers by name (the previous
3558         ordering was based on a 10-year-old survey). Add shr and gnus-w3m to
3559         the table. Remove the entry for w3 (no longer available).  Update
3560         existing entries so that they are more consistent about what features
3561         are discussed, and to reflect recent testing (Debian 8). Small tweaks
3562         to existing text.
3564 2016-05-30  Dmitry Gutov  <dgutov@yandex.ru>
3566         Fx the we->the typo
3568         * doc/emacs/trouble.texi (Sending Patches):
3569         Fix the typo (bug#23657).
3571 2016-05-30  Paul Eggert  <eggert@cs.ucla.edu>
3573         Restore frames into the current display by default
3575         * lisp/desktop.el (desktop-restore-in-current-display):
3576         Default to t, not nil (Bug#23604).
3577         * etc/NEWS: Mention the change.
3579 2016-05-29  Stefan Monnier  <monnier@iro.umontreal.ca>
3581         * lisp/recentf.el (recentf-open-files-item): Quick fix for (bug#22434).
3583         etc/TODO: Remove out-of-place issue
3585 2016-05-29  Eli Zaretskii  <eliz@gnu.org>
3587         Clarify doc string of 'file-name-sans-extension'
3589         * lisp/files.el (file-name-sans-extension, file-name-extension):
3590         Clarify in the doc strings what is the extension, and which
3591         leading period doesn't count.  (Bug#23643)
3593 2016-05-28  Eli Zaretskii  <eliz@gnu.org>
3595         Fix the MSDOS build
3597         * msdos/sed1v2.inp (PAXCTL_dumped, PAXCTL_notdumped): Define to
3598         empty, and remove the lines which use them in recipes, as that
3599         causes weird error message from Make and breaks the MSDOS build.
3601 2016-05-28  Andreas Schwab  <schwab@linux-m68k.org>
3603         * lisp/progmodes/elisp-mode.el (elisp-function-argstring): Call
3604         substitute-command-keys to undo help--docstring-quote. (Bug#23634)
3606 2016-05-27  Eli Zaretskii  <eliz@gnu.org>
3608         * src/dired.c (Ffile_name_all_completions): Doc fix.  (Bug#23631)
3610 2016-05-27  Eli Zaretskii  <eliz@gnu.org>
3612         Fix infloop in 'number-sequence'
3614         * lisp/subr.el (number-sequence): Avoid overflow leading to an
3615         infloop.  (Bug#23627)
3617         * test/automated/subr-tests.el (number-sequence-test): New test.
3619 2016-05-26  Glenn Morris  <rgm@gnu.org>
3621         * lisp/emacs-lisp/find-func.el (find-function-library):
3623         Update for symbol-function no longer erroring.  (Bug#23626)
3625 2016-05-26  Glenn Morris  <rgm@gnu.org>
3627         * lisp/w32-fns.el (set-message-beep, w32-get-locale-info)
3628         (w32-get-valid-locale-ids): Improve declarations.
3630 2016-05-26  Vincent Belaïche  <vincentb1@users.sourceforge.net>
3632         Correct old cell name unbinding when renaming cell.
3634         Bug is to unbind old cell names when renaming a cell with
3635         'makunbound'. when the old cell name is of A1 type, then
3636         'kill-local-variable' must be used instead, so that only the current
3637         spreadsheet is affected. When the old cell name is a renamed cell,
3638         then 'ses--unbind-cell-name' must be used in order to remove the old
3639         name from the name hashmap.
3641         * lisp/ses.el (ses-rename-cell): check consistency of cell symbol from
3642         text-property and from array object. Instead of 'makunbound', use
3643         either 'ses--unbind-cell-name' or 'kill-local-variable' depending on
3644         whether the cell old name is a named cell or an A1 type cell
3646 2016-05-25  Vincent Belaïche  <vincentb1@users.sourceforge.net>
3648         Document problem: slow screen refresh on missing font.
3650         See discussion of bug#22519 for more on this.
3652 2016-05-25  Glenn Morris  <rgm@gnu.org>
3654         * admin/admin.el (add-release-logs): Basic check of existing ChangeLog.
3656 2016-05-25  Glenn Morris  <rgm@gnu.org>
3658         * build-aux/gitlog-to-emacslog: Handle empty generated ChangeLog.
3660         This is relevant for M-x add-release-logs right after M-x authors.
3662 2016-05-25  Glenn Morris  <rgm@gnu.org>
3664         * admin/admin.el (add-release-logs): Generate ChangeLog if needed.
3666 2016-05-25  Paul Eggert  <eggert@cs.ucla.edu>
3668         * doc/misc/texinfo.tex: Revert previous change (Bug#23611).
3670 2016-05-25  Glenn Morris  <rgm@gnu.org>
3672         * admin/authors.el (authors): First update the ChangeLog.
3674         * admin/make-tarball.txt: Related updates.
3676 2016-05-24  Dmitry Gutov  <dgutov@yandex.ru>
3678         Rename vc-stay-local back to vc-cvs-stay-local
3680         * lisp/vc/vc-cvs.el (vc-cvs-stay-local): Rename back from
3681         vc-stay-local (bug#19548).  Improve the docstring.
3682         (vc-cvs-stay-local-p): Update accordingly.
3684 2016-05-24  Glenn Morris  <rgm@gnu.org>
3686         * doc/emacs/files.texi (Comparing Files):
3687         * doc/emacs/trouble.texi (Sending Patches): Fix external xrefs.
3689         * doc/misc/eww.texi (Advanced): Fix xref.
3691 2016-05-24  Eli Zaretskii  <eliz@gnu.org>
3693         Fix cross-references between manuals
3695         * doc/misc/viper.texi (Viper Specials):
3696         * doc/misc/url.texi (Tramp):
3697         * doc/misc/sem-user.texi (Smart Jump):
3698         * doc/lispintro/emacs-lisp-intro.texi (Finding More):
3699         * doc/misc/efaq.texi (Replacing text across multiple files): Fix
3700         cross-references between manuals.  (Bug#23612)
3701         * doc/lispintro/emacs-lisp-intro.texi (etags): Node deleted: no
3702         longer relevant to Emacs Lisp programming.
3704 2016-05-24  Glenn Morris  <rgm@gnu.org>
3706         * doc/misc/vhdl-mode.texi (Sample Init File): Rename node to avoid ".".
3708         * admin/admin.el (add-release-logs): Also update etc/HISTORY.
3710 2016-05-24  Eli Zaretskii  <eliz@gnu.org>
3712         Avoid aborting due to errors in arguments of 'set-face-attribute'
3714         * src/xfaces.c (Finternal_set_lisp_face_attribute): Check the
3715         FRAME argument before using it.  This avoids gratuitous aborts in
3716         Emacs built with --enable-checking when the luser was unlucky
3717         enough to get the argument list in wrong order.
3719 2016-05-23  Phillip Lord  <phillip.lord@russet.org.uk>
3721         Add automated test for viper-tests.el
3723 2016-05-23  Phillip Lord  <phillip.lord@russet.org.uk>
3725         Fix viper undo breakage from undo-boundary changes
3727         * lisp/simple.el (undo-auto-disable-boundaries): New variable
3728         * lisp/emulation/viper-init.el (viper-undo-in-complex-command,
3729           viper-undo-needs-adjustment): Rename
3730           variable to reflect new purpose,
3731           (viper-buffer-undo-list-mark): Remove
3732         * lisp/emulation/viper-cmd.el (viper-set-complex-command-for-undo):
3733           Add undo using `undo-boundary', disable default undo-boundary
3734           addition.
3735         * lisp/emulation/viper-cmd.el
3736           (viper-complete-complex-command-for-undo,viper-adjust-undo):
3737           Change function name, remove old undo list manipulation.
3738         * lisp/emulation/viper-cmd.el (viper-undo,viper-repeat,
3739           viper-change-state-to-vi,viper-change-state):
3740           Update for function name change.
3742         Addresses Bug #22295
3744 2016-05-22  Kaushal Modi  <kaushal.modi@gmail.com>
3746         Fix reference to obsolete fn ps-eval-switch
3748         lpr-eval-switch is functionally the same as ps-eval-switch,
3749         which was obsoleted in 2cdeb903c57126d3ad5f0cbd72e182584b76ee29.
3750         So use that instead (Bug#19717).
3751         * lisp/printing.el (pr-switches): Use lpr-eval-switch instead of
3752         ps-eval-switch.
3754 2016-05-22  Paul Eggert  <eggert@cs.ucla.edu>
3756         Do not trash symlinks to init file
3758         If the user’s init file is a symbolic link, do not break the link
3759         when initializing the package system.  Problem reported by Jackson
3760         Hamilton (Bug#23050).
3761         * lisp/emacs-lisp/package.el (package--ensure-init-file):
3762         Bind find-file-visit-truename when visiting the init file, and
3763         save and restore the buffer name the way cus-edit does in a
3764         similar situation (Bug#454).
3766 2016-05-22  Alan Mackenzie  <acm@muc.de>
3768         Don't print the "decomposition" line for control chars in what-cursor-position
3770         This is a temporary workaround for bug #23594, where the decomposition line
3771         for linefeed corrupted the display on a Linux virtual terminal.
3773         * lisp/descr-text.el (describe-char): Remove `decomposition' from the list of
3774         character code properties printed for control characters.
3776 2016-05-22  Paul Eggert  <eggert@cs.ucla.edu>
3778         Bring back xterm pasting with middle mouse
3780         Problem reported by Jan Synáček.
3781         Solution suggested by Stefan Monnier (Bug#23519).
3782         * lisp/isearch.el (isearch-mode-map): Add a binding for xterm-paste.
3783         (xterm--pasted-text): New decl.
3784         (isearch-xterm-paste): New function.
3785         * lisp/term/xterm.el (xterm--pasted-text): New function,
3786         taken from xterm-paste internals.
3787         (xterm-paste): Use it.
3789 2016-05-22  Eli Zaretskii  <eliz@gnu.org>
3791         Provide workaround for xftfont rendering problem
3793         * src/xftfont.c (syms_of_xftfont) <xft-font-ascent-descent-override>:
3794         New variable.
3795         (xftfont_open): Use it to work around problems with rendering some
3796         fonts.  (Bug#23360)
3798 2016-05-21  Jun Hao  <jun_hao@aol.com>
3800         * lisp/desktop.el: Disable restore frameset if in non-graphic display.
3802         (Bug#17693)
3804 2016-05-21  Eli Zaretskii  <eliz@gnu.org>
3806         Mention GTK+ problems in etc/PROBLEMS
3808         * etc/PROBLEMS (GDK_SCALE, GDK_DPI_SCALE): Mention the possible
3809         problems this could create and the workaround.  (Bug#23587)
3811 2016-05-20  Artur Malabarba  <bruce.connor.am@gmail.com>
3813         * lisp/emacs-lisp/package.el (package-refresh-contents):
3815         Don't change the value of `package-check-signature'.
3816         (package-check-signature): Use `epg-find-configuration'
3817         instead of `executable-find'.
3819 2016-05-20  Daiki Ueno  <ueno@gnu.org>
3821         Revert "epg: Add a way to detect gpg1 executable for tests"
3823         This reverts commit d4ae6d7033b34e8b75c59aaf1584131e439ef2d5.
3825 2016-05-19  Eli Zaretskii  <eliz@gnu.org>
3827         Avoid errors with Czech and Slovak input methods
3829         * lisp/leim/quail/slovak.el (slovak, slovak-prog-1, slovak-prog-2)
3830         (slovak-prog-3): Remove the kp-* key bindings, they are not needed
3831         and cause errors in "C-u C-x =".
3832         * lisp/leim/quail/czech.el (czech, czech-qwerty, czech-prog-1)
3833         (czech-prog-2, czech-prog-3): Remove the kp-* key bindings.
3834         (Bug#23559)
3836 2016-05-19  Daiki Ueno  <ueno@gnu.org>
3838         epg: Add a way to detect gpg1 executable for tests
3840         Fixes bug#23561.
3842         * test/automated/epg-tests.el
3843         (epg-tests-program-alist-for-passphrase-callback): New
3844         constant.
3845         (epg-tests-find-usable-gpg-configuration): New function,
3846         renamed from `epg-tests-gpg-usable'.  All callers changed.
3847         (epg-tests-gpg-usable): Remove.
3849         * lisp/epg-config.el (epg-config--program-alist): Factor out
3850         constructor element to...
3851         (epg-config--configuration-constructor-alist): ...here.
3852         (epg-find-configuration): Rename FORCE argument to NO-CACHE,
3853         and add PROGRAM-ALIST argument.
3855 2016-05-18  Artur Malabarba  <bruce.connor.am@gmail.com>
3857         * lisp/emacs-lisp/package.el: Fix free variable warnings.
3859         (package--with-response-buffer): Replace two usages of
3860         `macroexp-let2*' with `let'.
3862 2016-05-18  Artur Malabarba  <bruce.connor.am@gmail.com>
3864         * lisp/emacs-lisp/package.el (package--with-response-buffer):
3866         Fix some macro locals leaking into body.  (Bug#22440)
3868         * test/automated/package-test.el (package-test-signed):
3869         Manually check all possible values of `package-check-signature'.
3871 2016-05-18  Eli Zaretskii  <eliz@gnu.org>
3873         Improve documentation of 'server-name'
3875         * doc/emacs/misc.texi (Emacs Server): Fix example of setting
3876         'server-name'.  Mention how to do that with daemon sessions.
3877         (Bug#23576)
3879 2016-05-18  Paul Eggert  <eggert@cs.ucla.edu>
3881         Modernize ASLR advice in etc/PROBLEMS
3883         * etc/PROBLEMS (Segfault during 'make'): Modernize advice for
3884         seccomp, Docker, and NetBSD (Bug#23529).
3886 2016-05-17  Juri Linkov  <juri@linkov.net>
3888         * lisp/char-fold.el: Rename from character-fold.el.
3890         * lisp/replace.el (replace-char-fold): Rename from replace-character-fold.
3891         * test/automated/char-fold-tests.el: Rename from character-fold-tests.el.
3892         https://lists.gnu.org/r/emacs-devel/2015-12/msg00529.html
3894 2016-05-17  Nicolas Petton  <nicolas@petton.fr>
3896         Bump version to 25.0.94
3898         * README:
3899         * configure.ac:
3900         * msdos/sed2v2.inp: Bump Emacs version to 25.0.94.
3902 2016-05-17  Nicolas Petton  <nicolas@petton.fr>
3904         etc/AUTHORS: Update the AUTHORS file
3906 2016-05-16  Alan Third  <alan@idiocy.org>
3908         Fix bug#23462: Crash when iconifying frame on OS X.
3910         * src/nsterm.m (x_iconify_frame): Block input while miniaturize is
3911         running.
3913 2016-05-16  Paul Eggert  <eggert@cs.ucla.edu>
3915         Avoid shrinking windows with Gtk+ 3.20.3
3917         Problem reported by Matthias Clasen (Bug#23144).
3918         This was fixed in a different way in master.
3919         Do not merge to master.
3920         * src/xterm.c (handle_one_xevent) [GTK_CHECK_VERSION (3, 20, 3)]:
3921         Do not call xg_frame_resized in the MapNotify case.
3923 2016-05-16  Eli Zaretskii  <eliz@gnu.org>
3925         Fix bug in default setting of 'ps-paper-type'
3927         * lisp/international/mule-cmds.el (set-locale-environment): Don't
3928         inherit the value of locale from previous examination of different
3929         environment variables, which didn't look at LC_PAPER, and so using
3930         that value would effectively ignore the setting of LC_PAPER.
3931         (Bug#23544)
3933 2016-05-13  Paul Eggert  <eggert@cs.ucla.edu>  (tiny change)
3935         Properly reject malformed or empty package sigs
3937         Problem report and fix by Lizzie Dixon (Bug#23513).
3938         * lisp/emacs-lisp/package.el (package--check-signature-content):
3939         Report an error if no good signatures OR if a fatal error.  Not AND.
3941 2016-05-13  Paul Eggert  <eggert@cs.ucla.edu>
3943         Remove buggy non-native image scrolling
3945         This never worked, and could cause infinite recursion.
3946         Problem reported by Glenn Morris (Bug#22465).
3947         * lisp/xwidget.el (xwidget-webkit-scroll-behavior): Remove.
3948         All uses removed.
3950 2016-05-13  Paul Eggert  <eggert@cs.ucla.edu>
3952         * doc/misc/texinfo.tex: Sync from gnulib.
3954 2016-05-12  Glenn Morris  <rgm@gnu.org>
3956         * lisp/emacs-lisp/find-func.el (find-feature-regexp)
3957         (find-alias-regexp): Fix :version.
3959 2016-05-11  Dmitry Gutov  <dgutov@yandex.ru>
3961         Do not mistake colon at the end of regexp for slash symbol
3963         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize):
3964         Check the parse state in the "Symbols with special characters"
3965         rule (bug#23515).
3967 2016-05-11  Dmitry Gutov  <dgutov@yandex.ru>
3969         Make package-install-from-buffer not move point
3971         * lisp/emacs-lisp/package.el (package-install-from-buffer):
3972         Use save-excursion here (bug#22616).
3974 2016-05-11  Dmitry Gutov  <dgutov@yandex.ru>
3976         Redo the fix for bug#21839
3978         * lisp/help.el (help-add-fundoc-usage): Undo the previous change.
3979         (help--make-usage-docstring): Escape newlines when printing.
3981         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
3982         Ditto (bug#21839).
3984 2016-05-10  Dmitry Gutov  <dgutov@yandex.ru>
3986         Don't treat JS spread as contination method call
3988         * lisp/progmodes/js.el (js--indent-operator-re):
3989         Allow only one dot (bug#23492).
3991         * test/indent/js.js (default): Add a corresponding example.
3993 2016-05-09  Dmitry Gutov  <dgutov@yandex.ru>
3995         Allow newlines inside cl function arglists
3997         * lisp/help.el (help-add-fundoc-usage): Allow newlines inside
3998         ARGLIST (bug#21839).
4000 2016-05-09  Dmitry Gutov  <dgutov@yandex.ru>
4002         Publicize cl--generic-all-functions
4004         * lisp/emacs-lisp/cl-generic.el (cl-generic-all-functions):
4005         Rename from cl--generic-all-functions.  Update both callers.
4007         * lisp/cedet/semantic/db-el.el
4008         (semanticdb-find-tags-external-children-of-type-method):
4009         And use it here (bug#23042).
4011 2016-05-09  Alan Mackenzie  <acm@muc.de>
4013         Add some "safe-local-variable" declarations for compatibility with master.
4015         These enable C files from the master repository to be visited in Emacs 25
4016         without generating irritating questions about configuration variable safety.
4018         * lisp/progmodes/cc-vars.el: (c-string-list-p, c-string-or-string-list-p): New
4019         functions.
4020         (c-noise-macro-names, c-noise-macro-with-parens-names): give the
4021         safe-local-variable property c-string-list-p.
4022         (c-macro-names-with-semicolon): give the safe-local-variable property
4023         c-string-or-string-list-p.
4025 2016-05-09  Lars Ingebrigtsen  <larsi@gnus.org>
4027         Fix doc string in `insert'
4029         * src/editfns.c (Finsert_and_inherit): The before-insertion
4030         markers do not move.
4031         (Finsert): Ditto.
4033 2016-05-08  Paul Eggert  <eggert@cs.ucla.edu>
4035         * doc/misc/emacs-mime.texi (time-date): Document now-builtins better.
4037 2016-05-07  Dmitry Gutov  <dgutov@yandex.ru>
4039         Say 'All results processed' at the end
4041         * lisp/progmodes/xref.el (xref--query-replace-1):
4042         Say 'All results processed' at the end if the user hadn't
4043         cancelled the process (bug#23284).
4045 2016-05-07  Eli Zaretskii  <eliz@gnu.org>
4047         Document automatic adjustment of process' logical window dimensions
4049         * doc/lispref/processes.texi (Process Buffers): Document
4050         'set-process-window-size' and
4051         'window-adjust-process-window-size-function'.
4053         * etc/NEWS: Mention the new functionality and variable.
4055         * src/process.c (Fset_process_window_size): Improve the doc string.
4057 2016-05-06  Michael Albinus  <michael.albinus@gmx.de>
4059         tramp-sh.el: Work around a stat bug (backport from master)
4061         * lisp/net/tramp-sh.el (tramp-get-remote-stat): Do not use
4062         stat versions which produce shell quoted output.  See also
4063         coreutils Bug#23422.
4065         (cherry picked from commit 6aad36ace9953b9672b13be68416d205532d5e59)
4067 2016-05-05  Paul Eggert  <eggert@cs.ucla.edu>
4069         Doc fixes for fclist and grep
4071         A newline is needed between two fc-list calls.
4072         egrep and fgrep have been withdrawn from POSIX,
4073         so document grep -E and grep -F instead.
4075 2016-05-05  Paul Eggert  <eggert@cs.ucla.edu>
4077         Minor doc fixes for quoting
4079         * doc/lispref/control.texi (Signaling Errors):
4080         * doc/lispref/display.texi (Displaying Messages):
4081         Don’t say that formats “generate”.  Try to word more clearly.
4082         * etc/NEWS: Coalesce near-duplicate entries.
4084 2016-05-05  Dmitry Gutov  <dgutov@yandex.ru>
4086         `nreverse' the marker pairs list
4088         * lisp/progmodes/xref.el (xref--buf-pairs-iterator): `nreverse'
4089         the marker pairs list for each buffer before returning.
4091 2016-05-04  Dmitry Gutov  <dgutov@yandex.ru>
4093         Use save-excursion in xref-location-marker more
4095         * lisp/progmodes/elisp-mode.el (xref-location-marker): Use
4096         save-excursion, in order not to alter the value of point if the
4097         buffer is currently open in the background (problem reported by
4098         Robert Weiner).
4100         * lisp/progmodes/etags.el (xref-location-marker): Same.
4102 2016-05-04  Dmitry Gutov  <dgutov@yandex.ru>
4104         shell-quote-argument DIR when appropriate
4106         * lisp/progmodes/project.el (project-file-completion-table):
4107         `shell-quote-argument' DIR as well.
4109         * lisp/progmodes/xref.el (xref--rgrep-command): Pass DIR through
4110         `shell-quote-argument' (bug#23453).  Thanks for Kaushal Modi for
4111         pointing out the problem.  Assert that DIR doesn't start with `~'.
4113 2016-05-04  Dmitry Gutov  <dgutov@yandex.ru>
4115         Rework xref-query-replace-in-results
4117         * lisp/progmodes/xref.el (xref-query-replace-in-results): Collect
4118         all xrefs from the buffer first, then delegate most of the
4119         processing to the value returned by xref--buf-pairs-iterator.
4120         (xref--buf-pairs-iterator): New function.  Return an "iterator"
4121         which partitions returned markers into buffers, and only processes
4122         markers from one buffer at a time.  When an xref is out of date,
4123         skip it with a message instead of signaling error (bug#23284).
4124         (xref--outdated-p): Extract from xref--buf-pairs-iterator.  Trim
4125         CR from both strings before comparing.
4126         (xref--query-replace-1): Remove the variable current-buf, no need
4127         to track it anymore.  Simplify the filter-predicate and search
4128         functions accordingly.  Iterate over buffer-markers pairs returned
4129         by the iterator, and call `perform-replace' for each of them.  Use
4130         multi-query-replace-map (bug#23284).  Use `switch-to-buffer' every
4131         time after the first, in order not to jump between windows.
4133         * test/automated/xref-tests.el
4134         (xref--buf-pairs-iterator-groups-markers-by-buffers-1)
4135         (xref--buf-pairs-iterator-groups-markers-by-buffers-2)
4136         (xref--buf-pairs-iterator-cleans-up-markers): New tests.
4138 2016-05-04  Juri Linkov  <juri@linkov.net>
4140         * lisp/replace.el (query-replace-read-from): Use minibuffer-with-setup-hook
4142         to set minibuffer-local value of text-property-default-nonsticky.
4143         (Bug#23418, bug#23127)
4145 2016-05-04  Stephen Berman  <stephen.berman@gmx.net>
4147         Fix todo-mode bug involving archived items (bug#23447)
4149         * lisp/calendar/todo-mode.el (todo-jump-to-category): When jumping
4150         from Todo Categories mode to a category with only archived items
4151         and todo-skip-archived-categories is non-nil, make sure the
4152         archive file buffer is in Todo Archive mode to prevent
4153         todo-category-select from raising an error, and don't set
4154         todo-current-todo-file, since that makes todo-show display the
4155         archived category.  Remove a no-op call to kill-buffer, which is
4156         already called in todo-insert-category-line.
4158 2016-05-03  Dmitry Gutov  <dgutov@yandex.ru>
4160         Handle "empty line" regexp in xref searches
4162         * lisp/progmodes/xref.el (xref--collect-matches-1): Stop after one
4163         match if re-search-forward doesn't move point (bug#23426).
4165         * test/automated/xref-tests.el
4166         (xref-collect-matches-finds-an-empty-line-regexp-match):
4167         Uncomment test.
4169 2016-05-03  Dmitry Gutov  <dgutov@yandex.ru>
4171         Add tests for xref-collect-matches
4173         * test/automated/xref-tests.el: New file.  Add tests for
4174         xref-collect-matches.
4176 2016-05-03  Dmitry Gutov  <dgutov@yandex.ru>
4178         Use grep-find-ignored-directories instead of vc-directory-exclusion-list
4180         * lisp/dired-aux.el (dired-do-find-regexp):
4181         Use grep-find-ignored-directories instead of
4182         vc-directory-exclusion-list.  The result should be functionally
4183         similar (the former uses the latter as the default value), but it
4184         should be more consistent and appropriate WRT user
4185         customizations.
4186         (dired-do-find-regexp-and-replace): Update the docstring.
4188         * lisp/dired.el: Update the corresponding autoloads.
4190         * doc/emacs/dired.texi (Operating on Files): Update the
4191         documentation accordingly.
4193 2016-05-03  Dmitry Gutov  <dgutov@yandex.ru>
4195         Clear buffer-undo-list when showing xrefs
4197         * lisp/progmodes/xref.el (xref--show-xref-buffer): Clear
4198         buffer-undo-list and temporarily bind it to t while rendering the
4199         buffer contents.
4201 2016-05-03  Alan Mackenzie  <acm@muc.de>
4203         Note the quote translation in `message' in section "incompatible changes".
4205         * etc/NEWS: Note that `message' translates quotes, that the translation
4206         cannot be disabled, and that `format' can be used to get the old
4207         behavior back.
4209 2016-05-03  Paul Eggert  <eggert@cs.ucla.edu>
4211         * etc/NEWS: Mention (message "%s" (format ...)).
4213 2016-05-03  Lars Ingebrigtsen  <larsi@gnus.org>
4215         (Common Keywords): Correct what missing :group means
4217         * doc/lispref/customize.texi (Common Keywords): Correct what
4218         missing :group means.
4220 2016-05-03  Eli Zaretskii  <eliz@gnu.org>
4222         Improve documentation of Dired's 'A' and 'Q' commands
4224         * lisp/dired-aux.el (dired-do-find-regexp)
4225         (dired-do-find-regexp-and-replace): Mention
4226         'grep-find-ignored-files' and 'vc-directory-exclusion-list', and
4227         also the fact that REGEXP should be palatable by Grep.  (Bug#23426)
4228         * lisp/dired.el: Update the corresponding autoload forms.
4230         * doc/emacs/dired.texi (Operating on Files): Mention
4231         'grep-find-ignored-files' and 'vc-directory-exclusion-list'.
4232         (Bug#23429)
4234 2016-05-03  Paul Eggert  <eggert@cs.ucla.edu>
4236         Doc fixes for quoting
4238         * doc/emacs/text.texi, doc/lispintro/emacs-lisp-intro.texi:
4239         * doc/lispref/control.texi, doc/lispref/display.texi:
4240         * doc/lispref/help.texi, doc/lispref/strings.texi, lisp/subr.el:
4241         * src/callint.c, src/doprnt.c, src/editfns.c:
4242         Document quoting a bit more systematically.
4243         Problem reported by Alan Mackenzie (Bug#23425).
4245 2016-05-02  Lars Ingebrigtsen  <larsi@gnus.org>
4247         posnp doc clarification
4249         * lisp/subr.el (posnp): Mention that a posn object is returned
4250         from `event-start' (bug#18211).
4252 2016-05-02  Lars Ingebrigtsen  <larsi@gnus.org>
4254         Mention what a missing :group does
4256         * doc/lispref/customize.texi (Common Keywords): Document that
4257         a missing :group reuses the group from the preceding item (bug#21601).
4259 2016-05-02  Eli Zaretskii  <eliz@gnu.org>
4261         Fix documentation of dired-aux search/replace commands
4263         * lisp/dired-aux.el (dired-do-find-regexp)
4264         (dired-do-find-regexp-and-replace): Doc fixes.  (Bug#23429)
4265         * lisp/dired.el: Update the corresponding autoload forms.
4267 2016-05-02  Paul Eggert  <eggert@cs.ucla.edu>
4269         Fix quoting problem in cc-engine debug message
4271         * lisp/progmodes/cc-engine.el (c-replay-parse-state-state):
4272         Use "%s" format to pass through ‘'’ unscathed (Bug#23425), and
4273         likewise for ‘`’, and ‘%’.
4275 2016-05-02  Philipp Stephani  <phst@google.com>
4277         Add electric-quote-string unit test
4279         * test/automated/electric-tests.el (electric-quote-string): New test.
4281 2016-05-02  Paul Eggert  <eggert@cs.ucla.edu>
4283         Don’t electrically quote ‘'’ in Python
4285         Problem reported by Philipp Stephani (Bug#23387).
4286         * lisp/electric.el (electric-quote-post-self-insert-function):
4287         Do not requote a string starter or ender.
4289 2016-05-02  Dmitry Gutov  <dgutov@yandex.ru>
4291         `nreverse' Grep hits before passing them to xref--convert-hits
4293         * lisp/progmodes/xref.el (xref-collect-matches): `nreverse' hits
4294         before passing them to xref--convert-hits.  Fixes a regression
4295         from cc0b7132.
4297 2016-05-01  Paul Eggert  <eggert@cs.ucla.edu>
4299         * doc/misc/texinfo.tex: Sync from gnulib.
4301 2016-05-01  Juri Linkov  <juri@linkov.net>
4303         * lisp/isearch.el (isearch-forward-symbol-at-point): Add isearch-push-state.
4305         (Bug#23410)
4307 2016-05-01  Michael Albinus  <michael.albinus@gmx.de>
4309         tramp.texi: Revert last change due to backward compatibility
4311         (cherry picked from commit 910f9a0a936aacbffe9b9b790d7f698dfd287aac)
4313 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4315         cua-prefix-override-inhibit-delay doc fix
4317         * lisp/emulation/cua-base.el
4318         (cua-prefix-override-inhibit-delay): Typo fix in doc string
4319         (bug#23401).
4321         (cherry picked from commit 2b4c099822811ede787fc6e575bfbb17b3cc0681)
4323 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4325         global-eldoc-mode doc fix
4327         * lisp/emacs-lisp/eldoc.el (global-eldoc-mode): Be more
4328         specific about what "applicable" means (bug#23071).
4330         (cherry picked from commit 25e95b5dd8cd92e03788e589bf99a4b399f03114)
4332 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4334         normal-top-level-add-subdirs-to-load-path doc fix
4336         * lisp/startup.el (normal-top-level-add-subdirs-to-load-path):
4337         Doc fix (bug#21962).
4339         (cherry picked from commit 28aaa6d20586e3330a23b017a65e56dd6461c003)
4341 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4343         isearch-search-fun-function doc tweak
4345         * lisp/isearch.el (isearch-search-fun-function): Mention what
4346         the STRING parameter is (bug#21552).
4348         (cherry picked from commit cafc2a5940cdc523cfea6dcf1cf540f48367c62a)
4350 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4352         Fill some imenu--index-alist doc lines
4354         * lisp/imenu.el (imenu--index-alist): Fill some doc lines (bug#21269).
4356         (cherry picked from commit 4b7bb8f596550628eaa83b82c0f7eabe59a84964)
4358 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4360         Fmarker_position doc string clarification
4362         * src/marker.c (Fmarker_position): Clarify the doc string
4363         (bug#21231).
4365         (cherry picked from commit eeac7c57273cec3f9408b18392dd2bafe3be4450)
4367 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4369         Further define-obsolete-* doc fixups
4371         * lisp/emacs-lisp/byte-run.el (define-obsolete-face-alias):
4372         Fix up last change.
4373         (define-obsolete-variable-alias): Ditto.
4375         (cherry picked from commit 28e9f4390d8391c2c36be4ef515cf3a2c679a5a5)
4377 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4379         Describe WHEN in all the define-obsolete- macros
4381         * lisp/emacs-lisp/byte-run.el (define-obsolete-face-alias):
4382         Say more verbosely what WHEN is (bug#21225).
4383         (define-obsolete-function-alias): Describe the WHEN parameter.
4384         (define-obsolete-variable-alias): Ditto.
4386         (cherry picked from commit 247c388f160581d207e41ca5926990bbf69d4a0f)
4388 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4390         Mention with-silent-modifications in the lispref manual
4392         * doc/lispref/text.texi (Changing Properties): Document
4393         with-silent-modifications (bug#21171).
4395         (cherry picked from commit fcd0d854eef6e439d51e8f07cf734d5e34e502b3)
4397 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4399         with-silent-modifications doc clarification
4401         * lisp/subr.el (with-silent-modifications): Rearrange the doc
4402         string a bit so that the most pertinent information is at the
4403         top (bug#21171).
4405         (cherry picked from commit e0e70f030e69d9696a963a86f5f7caaff4df06eb)
4407 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4409         clear-visited-file-modtime doc string fix
4411         * lisp/files.el (clear-visited-file-modtime): Fix possibly
4412         confusing doc string wording (bug#21169).
4414         (cherry picked from commit 1aaeaf1450756a71c9254a2a5b174c72084ca67a)
4416 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4418         Document mode line variables
4420         * doc/lispref/modes.texi (Mode Line Variables): Document
4421         `mode-line-front-space, `mode-line-misc-info',
4422         `mode-line-end-spaces' (bug#21014).
4424         (cherry picked from commit bf7a630b0a5d3900f2afb0e7a881ce62e2b9f935)
4426 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4428         Add a cross ref to Optional Mode Line
4430         * doc/lispref/modes.texi (Mode Line Variables): Add a cross
4431         reference to the Emacs mode line node that explains things
4432         like `display-time-string' (bug#21002).
4434         (cherry picked from commit a3151a28789f413af73b14fbba557b2a587fca53)
4436 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4438         Add a doc string to display-time-string
4440         * lisp/time.el: Add a doc string to `display-time-string',
4441         because it's referred to in the manual, and is too mysterious
4442         otherwise (bug#21002).
4444         (cherry picked from commit 45559c584e5a4ddeed1539b028b50b95baa372f8)
4446 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4448         custom-buffer-style doc fix
4450         * lisp/cus-edit.el (custom-buffer-style): Document the `tree'
4451         value (bug#20724).
4453         (cherry picked from commit bcf0291d0cd02095b0809b1eb91f1e5c5c2ac5e3)
4455 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4457         Rearrange the doc of query-replace slightly
4459         * lisp/replace.el (query-replace): Move the mention of the
4460         interactive prefix arg earlier so that users can find it
4461         (bug#20654).
4463         (cherry picked from commit bcc10761c3b968fa4534718116a0a601ed7da389)
4465 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4467         apropos-print doc fix
4469         * lisp/apropos.el (apropos-print): Document the undocumented
4470         parameters (bug#20520).
4472         (cherry picked from commit 0714d7387812a151f59993ac77c7321724ef79b1)
4474 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4476         completion-table-with-predicate doc string fix
4478         * lisp/minibuffer.el (completion-table-with-predicate): t ->
4479         non-nil in the doc string (bug#20460).
4481         (cherry picked from commit b6a4d162208f239bc7804696d611ae52c686f138)
4483 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4485         Fill the completion-table-with-predicate doc string
4487         * lisp/minibuffer.el (completion-table-with-predicate): Fill
4488         the doc string (bug#20460).
4490         (cherry picked from commit 207a31432c1ed8b548003a3e4af32c49aa3441e9)
4492 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4494         replace-match-maybe-edit doc clarification
4496         * lisp/replace.el (replace-match-maybe-edit): Say what
4497         MATCH-DATA is (bug#20304).
4499         (cherry picked from commit 139874ba53c2e2de9868f8e5234d6ea2bcb97af8)
4501 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4503         add-timeout doc fix
4505         * lisp/emacs-lisp/timer.el (add-timeout): Mention the return
4506         value (bug#20181).
4508         (cherry picked from commit 921b40476f597c84d7c34aa289cd43caeb389c4a)
4510 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4512         Extremely minor doc fix in Choosing Window
4514         * doc/lispref/windows.texi (Choosing Window): There's only one
4515         action alist, I think (bug#20158).
4517         (cherry picked from commit 6c7e7f421d02d9290d6d1d85320737371160aef7)
4519 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4521         Transform mentions of `eval-after-load' to `with-eval-after-load'
4523         * doc/lispref/loading.texi (Hooks for Loading): Update text to
4524         not mention `eval-after-load' (bug#20038).
4526         (cherry picked from commit 9392193be56eebdfac702a0bbb5e954088371c7a)
4528 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4530         cursor-type doc fix
4532         * src/buffer.c (syms_of_buffer): Mention that cursor-type's
4533         WIDHT/HEIGHT can't exceed the frame char size (bug#19215).
4535         (cherry picked from commit 77c5f4554ebb3b7c7d49bc881e45a550f6c93987)
4537 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4539         Add a link from Tool Bar to Images
4541         * doc/lispref/keymaps.texi (Tool Bar): Add a link to the
4542         Images node (bug#19722).
4544         (cherry picked from commit da5d0786163a91400eced4fddba4a92b652458d1)
4546 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4548         (default-mode-line-format): More explicit obsolete info
4550         * lisp/subr.el (default-mode-line-format): Be more explicit in
4551         how default values are now handled (bug#19424).
4553         (cherry picked from commit 9dc5f6d830e72420dc4d41c8f6ca1ca6b28609c0)
4555 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4557         Fcompare_buffer_substrings doc string clarification
4559         * src/editfns.c (Fcompare_buffer_substrings): Extremely minor
4560         doc string clarification (bug#19255).
4562         (cherry picked from commit aa692acbb598a1cc8219ed7a87dde25fd7626ba5)
4564 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4566         insert-file-contents-literally doc fix
4568         * lisp/files.el (insert-file-contents-literally): Say that the
4569         parameters are explained in the other function (bug#18317).
4571         (cherry picked from commit b6481b19bc9592492b1f70dfecb4de6256f537fe)
4573 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4575         Fix custom types for cursor-in-non-selected-windows
4577         * lisp/cus-start.el (standard): Use the same custom types for
4578         cursor-in-non-selected-windows as for cursor-type (bug#19214).
4580         (cherry picked from commit b66bc0cced786e0320e1c3b0758bd3c434d4e8b5)
4582 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4584         Doc clarification to mwheel-scroll
4586         * lisp/mwheel.el (mwheel-scroll): Mention that the restriction
4587         does not apply to Windows (bug#19209).
4589         (cherry picked from commit 696052b5fdfbc5c25dff3c6b081aebe70f6d06c7)
4591 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4593         Clarify the doc of eval-expression-print-format
4595         * lisp/simple.el (eval-expression-print-format): Doc
4596         clarification (bug#19114).
4598         (cherry picked from commit cd193a871f5a8e1c81ba86fc398ac382fa814383)
4600 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4602         Explictly explain that package-initialize loads the packages
4604         * lisp/emacs-lisp/package.el (package-initialize): Be explicit
4605         in saying that `package-initialize' obviates adjusting the
4606         path or requiring the packages, as this is a question that
4607         apparently comes up now and then (bug#18829).
4609         (cherry picked from commit 619e0aedb2f3dbfe6821ac34e2d25b4e5c181117)
4611 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4613         Have the doc strings of `load-path' and `require' mention each other
4615         * src/fns.c (Frequire): Mention `load-path' and fill the doc
4616         string (bug#18829).
4618         * src/lread.c (syms_of_lread): Mention that `require' uses
4619         `load-path'.
4621         (cherry picked from commit 3eca9a03816f95da0030665223c0b5262f223ba7)
4623 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4625         Doc fix for insert-pair-alist
4627         * lisp/emacs-lisp/lisp.el (insert-pair-alist): Say what
4628         COMMAND-CHAR is (bug#18809).
4630         (cherry picked from commit 2824c587e9749a8f350f1d3dddd65176b4561dcb)
4632 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4634         Move doc of backup-directory-alist to the Backup node
4636         * doc/emacs/files.texi (Backup): Move the documentation of
4637         `backup-directory-alist' here from the "Single or Numbered
4638         Backups" node, because it doesn't seem to have much to do with
4639         numbering (bug#18692).
4641         (cherry picked from commit e77b8d84b4161f2cf8720dec2bf44a3e50134398)
4643 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4645         Tiny doc clarification for create-fontset-from-fontset-spec
4647         * lisp/international/fontset.el (create-fontset-from-fontset-spec):
4648         Clarify what the optional part is (bug#18686).
4650         (cherry picked from commit c05d186455ce9907eeb6b21ea4227e453996c681)
4652 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4654         Fill the doc string of font-lock-keywords
4656         * lisp/font-lock.el (font-lock-keywords): Fill the lines and
4657         reorganize some explanations (bug#21427).
4659         (cherry picked from commit c05716d3a26ea7518b89eacfccaf70c9d0731df7)
4661 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4663         Doc fix for font-lock-remove-keywords
4665         * lisp/font-lock.el (font-lock-remove-keywords): Add a link to
4666         `font-lock-add-keywords' to describe KEYWORDS (bug#18634).
4668         (cherry picked from commit bc00dcf12983cd399127d0eea39647f29778eb02)
4670 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4672         Clarify whitespace-style doc string
4674         * lisp/whitespace.el (whitespace-style): Doc clarification
4675         (bug#18296).
4677         (cherry picked from commit d96c720d0cca7c9ffbb4c712ad315bb707d6625c)
4679 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4681         Doc fixed for next-error-buffer-p
4683         * lisp/simple.el (next-error-buffer-p): Clarify doc string
4684         (bug#18202).
4686         (cherry picked from commit a10eb168cc96db9f0dab2d75550cbd8f08be2363)
4688 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4690         Tiny doc fix
4692         * src/fileio.c (Ffile_accessible_directory_p): Tiny doc fix
4693         (and fill) (bug#18201).
4695         (cherry picked from commit 2ef0040e2363a669d9b93df935d31c98fa130132)
4697 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4699         Doc fix
4701         * src/keymap.c (Fdefine_prefix_command): Clarify doc string
4702         slightly (bug#18092).
4704         (cherry picked from commit 6b769c81d024f7eeb90b167e7df6f87d859614d4)
4706 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4708         delsel doc touch ups
4710         * lisp/delsel.el (delete-selection-helper): Use non-nil
4711         instead of t and clarify function return values (bug#18089).
4713         (cherry picked from commit d7a5b5be9a5869bcd233434ec3103dd1976d7df7)
4715 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4717         Doc fixes for menu-bar.el
4719         * lisp/menu-bar.el (clipboard-kill-ring-save): Describe the
4720         REGION parameter (bug#18028).
4721         (clipboard-kill-region): Ditto.
4723         (cherry picked from commit 33d2c67bff0992ecbc0fe38556683242b9d1a4ae)
4725 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4727         Doc fix
4729         * lisp/rect.el (delete-whitespace-rectangle): Doc fix (bug#18026).
4731         (cherry picked from commit 6baca4911ec901579749dbf7596011d90fea3781)
4733 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4735         Minor doc clarification
4737         * lisp/subr.el (y-or-n-p): Document the return value from "n"
4738         (bug#18024).
4740         (cherry picked from commit 5d1f3192d484edee92caa46cd7d699da3e920259)
4742 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4744         Fill font-lock-mode doc string
4746         * lisp/font-core.el (font-lock-mode): Fill the text to make it
4747         narrower (bug#18008).
4749         (cherry picked from commit 27abf372836532c57be2e9e3ed23413729cc07fc)
4751 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4753         Wrap the auto-generated doc string
4755         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode): Wrap a
4756         string to make it less likely that we get overlong lines
4757         (bug#17999).
4759         (cherry picked from commit 323b69664914d687fd4b48593479cea223dfbcb4)
4761 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4763         Clarify hi-lock-find-patterns
4765         * lisp/hi-lock.el (hi-lock-find-patterns): Doc clarification
4766         (bug#17989).
4768         (cherry picked from commit 552e90ce7dff3a7107243fdf71c4de3af443e13a)
4770 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4772         Add a doc string to `winner-mode'
4774         * lisp/winner.el (winner-mode): Add a doc string based on the
4775         comments in the file (bug#17716).
4777         (cherry picked from commit 2c3ab9b6e39a3d600e7d82deacc24effaec051bb)
4779 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4781         Doc fix for align-newline-and-indent
4783         * lisp/align.el (align-newline-and-indent): Mention that
4784         alignment is done by `align' (bug#17707).
4786         (cherry picked from commit 340a224ec3e01706112a07164da9a9f3f369a5aa)
4788 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4790         Doc fix for `kbd'
4792         * lisp/subr.el (kbd): Describe more fully the format of the
4793         parameter (bug#17039).
4795         (cherry picked from commit 3a33afe25d8518f194fa4706eaccdb2a786a0348)
4797 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4799         Doc tweak
4801         * lisp/simple.el (use-empty-active-region): Doc tweak.
4802         There's only one region (bug#16513).
4804         (cherry picked from commit 35fb7897f161d5e5a87e039dc1e427094640b0c8)
4806 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4808         Link from (emacs)Exiting to (lisp)Killing Emacs
4810         * doc/emacs/entering.texi (Exiting): Link to the lispref
4811         manual for further customizations (bug#15445).
4813         (cherry picked from commit bc5f27aa099cdde02ca66e71501b89300685ab28)
4815 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4817         find-lisp doc touchups
4819         * lisp/find-lisp.el (find-lisp-format): Copy over the doc
4820         string (bug#15047).
4821         (find-lisp-find-files): Clarify doc.
4823         (cherry picked from commit e4c7657b0d1a31d64ca24bc64b5480cd7687e332)
4825 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4827         Don't have the manual claim that it lists all CL incompatibilities
4829         * doc/misc/cl.texi (Common Lisp Compatibility): The list of
4830         incompatibilities isn't exhaustive, so don't say that it is
4831         (bug#15171).
4833         (cherry picked from commit fb685bc91a72508c97ce7e30f970d4157677f371)
4835 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4837         Change all occurrences of "Mouse-[0-9]" to "mouse-[0-9]"
4839         * doc/emacs/*.texi: Change all occurrences of "Mouse-[0-9]" to
4840         "mouse-[0-9]".  These are case sensitive, and the keys are lower case
4841         (bug#14554).
4843         (cherry picked from commit e4c26271f2c2fe08f8490e25c63a436ab2a804ca)
4845 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4847         Doc string change to enable-recursive-minibuffers
4849         * src/minibuf.c (syms_of_minibuf): Mention
4850         minibuffer-depth-indicator-mode in the doc string to
4851         enable-recursive-minibuffers (bug#14147).
4853         (cherry picked from commit 23ba488a5e8290c4de91e0ff4161641efa364c0d)
4855 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4857         Clarify the `interactive' doc string slightly
4859         * src/callint.c (Finteractive): Clarify the doc string slightly
4860           (bug#14577).
4862         (cherry picked from commit cd993be60da2d12db0d390001373d486c1091c47)
4864 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4866         Clarify some doc strings
4868         * lisp/emacs-lisp/syntax.el (syntax-propertize-via-font-lock):
4869         Clarify doc string (bug#8693).
4870         (syntax-propertize): Clarify doc string.
4872         (cherry picked from commit ad3ef417f3c40f086de9c547d6272e5685595e42)
4874 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4876         Add some concept index entries for custom types
4878         * doc/lispref/customize.texi (Composite Types): Add concept
4879         index entries for restricted-sexp, radio and choice (bug#7385).
4881         (cherry picked from commit 388bb723fa078158d3148de05e942f9c01e95dd8)
4883 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4885         Mention `lisp-indent-function' in the lispref manual
4887         * doc/lispref/macros.texi (Indenting Macros): Mention
4888         `lisp-indent-function' (bug#3393).
4890         (cherry picked from commit a1627691a896b2afaa264f93534178bc763564c9)
4892 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4894         Clarify doc string of internal compilation function
4896         * lisp/progmodes/compile.el (compilation-get-file-structure):
4897         Clarify doc string (bug#3137).
4899         (cherry picked from commit 123191decb7428db3b32a6c01631fa755088393a)
4901 2016-05-01  Paul Eggert  <eggert@cs.ucla.edu>
4903         Use ‘T *restrict’ proto, not ‘T[restrict]’
4905         * src/fns.c (sort_vector_copy): Use a different way to attempt to
4906         work around GCC 3.0-and-earlier incompatibility with C99, one that
4907         does not have problems with modern non-GCC compilers.
4909 2016-05-01  Eli Zaretskii  <eliz@gnu.org>
4911         Fix documentation of 'url-retrieve-synchronously'
4913         * doc/misc/url.texi (Retrieving URLs): Update argument list of
4914         'url-retrieve-synchronously'.  (Bug#23411)
4916 2016-05-01  Eli Zaretskii  <eliz@gnu.org>
4918         * lisp/url/url.el (url-retrieve-synchronously): Doc fix.  (Bug#23411)
4920 2016-04-30  Leo Liu  <sdl.web@gmail.com>
4922         Fix last change to isearch-update (bug#23406)
4924         * lisp/isearch.el (isearch-update): Remove (setq cursor-sensor-inhibit
4925           nil) ie remove the original (unless (boundp 'cursor-sensor-inhibit)
4926           ...) form.
4928 2016-04-30  Leo Liu  <sdl.web@gmail.com>
4930         Autoload cursor-sensor-inhibit (bug#23406)
4932         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor-inhibit): Autoload.
4933         * lisp/isearch.el (isearch-update): Remove boundp check.
4935 2016-04-30  Phillip Lord  <phillip.lord@newcastle.ac.uk>
4937         org-map-entries: Fix org-agenda-prepare-buffers call
4939         * lisp/org/org.el (org-map-entries): Check that buffer-file-name is non-nil
4940           before passing to org-agenda-prepare-buffers.
4942         This is a backport of commit 44c8cd7136e3fcd1e6bfa08895cac437b7a691fa
4943         from upstream org-mode. Addresses bug #23365.
4945 2016-04-30  Eli Zaretskii  <eliz@gnu.org>
4947         Followup for last commit in the user manual
4949         * doc/emacs/basic.texi (Moving Point): Clarify that
4950         set-goal-column has buffer-local effect.  (Bug#23405)
4952 2016-04-30  Eli Zaretskii  <eliz@gnu.org>
4954         Improve doc string of 'set-goal-column'
4956         * lisp/simple.el (set-goal-column): Doc fix.  (Bug#23405)
4958 2016-04-30  Eli Zaretskii  <eliz@gnu.org>
4960         Fix the MSDOS build
4962         * config.bat:
4963         * msdos/sedlisp.inp:
4964         * msdos/sedlibmk.inp:
4965         * msdos/sedleim.inp:
4966         * msdos/sedadmin.inp:
4967         * msdos/sed6.inp:
4968         * msdos/sed3v2.inp:
4969         * msdos/sed2v2.inp:
4970         * msdos/sed1v2.inp: Adapt to Emacs 25.
4972         * src/process.c (remove_slash_colon): Move out of "#ifdef
4973         subprocesses" block, as it its called unconditionally.  Move
4974         ADD_SUBFEATURE calls into "#ifdef subprocesses" block, as they
4975         reference variables only defined in that block.
4976         * src/msdos.h: Provide prototypes for IT_set_frame_parameters,
4977         faccessat, msdos_fatal_signal, syms_of_msdos, pthread_sigmask,
4978         dos_keysns, dos_keyread, run_msdos_command, and
4979         syms_of_win16select, to avoid compiler warnings.
4980         * src/msdos.c (SYS_ENVIRON): Define to either '_environ' or
4981         'environ', depending on the DJGPP version.
4982         Remove declarations of externally-visible Lisp objects, like
4983         Qbackground_color and Qreverse.
4984         (run_msdos_command): First argument is not signed, not unsigned.
4985         Use SYS_ENVIRON.
4986         (sys_select): Use 'timespec_cmp' instead of 'timespec_sign', as
4987         the latter doesn't work when 'time_t' is an unsigned data type.
4988         This caused idle timers to behave incorrectly: they only fired
4989         after a keyboard input event.
4990         * src/frame.c (adjust_frame_size) [MSDOS]: Account for
4991         FRAME_TOP_MARGIN that isn't counted in the frame's number of
4992         lines, but dos_set_window_size needs it to be added.
4993         * src/lread.c (INFINITY, NAN) [DJGPP < 2.05]: Provide definitions.
4994         * src/fns.c (sort_vector_copy) [__GNUC__ < 4]: Provide a prototype
4995         that works around compilation errors with older GCC versions.
4996         * src/w16select.c: Don't declare QCLIPBOARD and QPRIMARY as Lisp
4997         Objects.
4998         * src/filelock.c [MSDOS]: Ifdef away most of the code.  Provide
4999         no-op implementations for 'lock_file' and 'unlock_file'.
5000         (Ffile_locked_p) [MSDOS]: Always return nil.  This avoids multiple
5001         ifdefs in all users of filelock.c functionality.
5002         * src/conf_post.h (EOVERFLOW, SIZE_MAX) [DJGPP < 2.04]: Define.
5003         * src/emacs.c [MSDOS]: Include dosfns.h, to avoid compiler
5004         warnings.
5005         * src/dosfns.h: Provide prototypes for dos_cleanup,
5006         syms_of_dosfns, and init_dosfns.
5007         * src/deps.mk (atimer.o): Depend on msdos.h.
5008         (emacs.o): Depend on dosfns.h.
5009         * src/atimer.c [MSDOS]: Include msdos.h, to avoid compiler
5010         warnings.
5012         * lisp/window.el (window--adjust-process-windows): Skip the body
5013         if 'process-list' is not available.  This avoids failure to start
5014         up on MS-DOS.
5015         * lisp/vc/diff.el (diff-no-select): Test 'make-process', not
5016         'start-process', as the latter is now available on all platforms.
5017         * lisp/textmodes/ispell.el (ispell-async-processp): Replace
5018         'start-process' with 'make-process' in a comment.
5019         * lisp/term/internal.el (IT-unicode-translations): Modify and add
5020         a few translations to display Info files with Unicode markup.  Fix
5021         an ancient off-by-one mismatch error with Unicode codepoints.
5022         * lisp/progmodes/compile.el (compilation-start): Test
5023         'make-process', not 'start-process', as the latter is now
5024         available on all platforms.
5025         * lisp/man.el (Man-build-man-command, Man-getpage-in-background):
5026         Test 'make-process', not 'start-process', as the latter is now
5027         available on all platforms.
5028         * lisp/international/mule-cmds.el (set-coding-system-map): Test
5029         'make-process', not 'start-process', as the latter is now
5030         available on all platforms.
5031         * lisp/eshell/esh-cmd.el (eshell-do-pipelines-synchronously): Doc
5032         fix.
5033         (eshell-execute-pipeline): Test 'make-process', not
5034         'start-process', as the latter is now available on all platforms.
5036 2016-04-30  Andreas Schwab  <schwab@linux-m68k.org>
5038         Remove \= from format string (bug#18190)
5040         * lisp/emacs-lisp/eieio.el (defclass): Remove \= from format
5041         string.
5043 2016-04-30  Eli Zaretskii  <eliz@gnu.org>
5045         Fix variable-pitch font on MS-Windows
5047         * lisp/faces.el (variable-pitch) [w32]: Name a variable-pitch font
5048         explicitly, to avoid Emacs picking up a bold-italic variant on
5049         some MS-Windows systems.  See this thread for details:
5050         https://lists.gnu.org/r/emacs-devel/2016-04/msg00746.html.
5052 2016-04-29  Alan Mackenzie  <acm@muc.de>
5054         Restore follow-scroll-up/down to scrolling by the combined size of all windows
5056         Also rename the current follow-scroll-up/down functions to
5057         follow-scroll-up-window and follow-scroll-down-window.  These scroll by the
5058         height of the current window.
5060         This fixes bug #23347.
5062         * lisp/follow.el (follow-mode): Tweak the doc string.
5063         (follow-scroll-up-arg, follow-scroll-down-arg): new functions, extracted from
5064         follow-scroll-up/down.
5065         (follow-scroll-up-window, follow-scroll-down-window): Functions renamed from
5066         follow-scroll-up/down.
5067         (follow-scroll-up, follow-scroll-down): Restore the historic functionality.
5069 2016-04-29  Alan Mackenzie  <acm@muc.de>
5071         Revert unneeded change which harms syntactic parsing.  This fixes bug #23308.
5073         * lisp/progmodes/cc-engine.el (c-invalidate-state-cache): User
5074         c-state-old-cpp-end as an argument to c-with-all-but-one-cpps-commented-out
5075         regardless of the value of `here'.
5077 2016-04-29  Alan Mackenzie  <acm@muc.de>
5079         Correct indentation of ids in a C++ enum after a protection keyword.
5081         Also correct the misfontification of the last enum identifier.
5083         * lisp/progmodes/cc-engine.el (c-forward-keyword-prefixed-id): setq
5084         c-last-identifier-range to nil to ensure that only types recognized by this
5085         macro are set for fontification as types.
5086         (c-backward-typed-enum-colon): Function renamed from
5087         c-backward-colon-prefixed-type.  On finding a colon in the backward search,
5088         check it is preceded by an identifier rather than a keyword.
5090 2016-04-27  Glenn Morris  <rgm@gnu.org>
5092         * lisp/window.el (window--process-window-list): No-op if no processes.
5094         This avoids an issue with save-selected-window (from walk-windows)
5095         failing if frame.el is not loaded, eg if the terminal is resized
5096         during startup of a -nw CANNOT_DUMP build.  (Bug#23369).
5098 2016-04-27  Paul Eggert  <eggert@penguin.cs.ucla.edu>
5100         Port dumping to NetBSD with PaX
5102         Problem reported by Thomas Klausner (Bug#23371).
5103         * configure.ac (PAXCTL_dumped, PAXCTL_notdumped): New vars.
5104         Set them to setfattr and/or paxctl commands appropriate for
5105         GNU/Linux and/or NetBSD; the latter prefers paxctl +a.  Search
5106         for paxctl only if setfattr is not found.
5107         * src/Makefile.in (PAXCTL_dumped, PAXCTL_notdumped):
5108         New vars, replacing PAXCTL_if_present and SETFATTR_if_present.
5109         All uses changed.
5111 2016-04-27  Dmitry Gutov  <dgutov@yandex.ru>
5113         Don't mistake `for' inside a function for a part of array comprehension
5115         * lisp/progmodes/js.el (js--indent-in-array-comp): Also check the
5116         depth in parens between the bracket and `for' (bug#23391).
5118         * test/indent/js.js: Add a corresponding example.
5120 2016-04-27  Anders Lindgren  <andlind@gmail.com>
5122         Fix bug#22891: wrong terminal width when a fringe width is zero.
5124         When either fringe width is zero, Emacs reserved one column for a
5125         continuation glyph. Terminal windows does not take this into
5126         account when the frame is resized.
5128         * lisp/window.el (window-adjust-process-window-size): Use
5129         `window-max-chars-per-line' instead of `window-body-width'.
5130         * lisp/term.el (term-window-width): Remove function. (It does the
5131         same as `window-max-chars-per-line' but without recent bug fixes.)
5132         (term-mode): Use `window-max-chars-per-line' instead of
5133         `term-window-width'.
5135         Backport
5137         (cherry picked from commit 5b5403289888efe8783ae6a405845b925f544ec1)
5139 2016-04-27  Leo Liu  <sdl.web@gmail.com>
5141         Improve last change to vc-git-mode-line-string
5143         * lisp/vc/vc-git.el (vc-git-mode-line-string): Better fix that caches
5144           the result.
5146 2016-04-27  Stephen Berman  <stephen.berman@gmx.net>
5148         Todo mode doc bug fix
5150         * lisp/calendar/todo-mode.el (todo-show): Correct obsolete and no
5151         longer correct information in doc string.
5153 2016-04-27  Leo Liu  <sdl.web@gmail.com>
5155         Fix revision calculation in vc-git-mode-line-string
5157         * lisp/vc/vc-git.el (vc-git-mode-line-string): Use
5158           vc-git-working-revision because vc-working-revision needs to decide
5159           the backend and may return nil.
5161 2016-04-26  Jorgen Schaefer  <contact@jorgenschaefer.de>
5163         Add Python 3.5 keyword "await"
5165         * lisp/progmodes/python.el (python-font-lock-keywords): Add await as
5166         keyword.
5168 2016-04-26  Lele Gaifax  <lele@metapensiero.it>
5170         Add new keywords of Python 3.5
5172         Python 3.5, released in mid September 2015, introduced a few new
5173         keywords to better support asynchronous code, "async" and "await"
5174         in particular. See https://www.python.org/dev/peps/pep-0492/ for
5175         details. (Bug#21783)
5176         * lisp/progmodes/python.el (python-rx-constituents): Add async
5177         def/for/with as block-start and async def as defun.
5178         * lisp/progmodes/python.el (python-font-lock-keywords): Add async
5179         def/for/with as keyword.
5180         * test/automated/python-tests.el (python-indent-after-async-block-1,
5181         python-indent-after-async-block-2, python-indent-after-async-block-3,
5182         python-nav-beginning-of-defun-3): New tests to test indentation and
5183         navigation for the async keyword.
5185 2016-04-26  Mark Oteiza  <mvoteiza@udel.edu>
5187         Partially revert previous change.
5189         This commit partially reverts 0f332848cdb2ed6d46771914a911cbca194cd51a.
5190         * lisp/rect.el (rectangle--highlight-for-redisplay): Use region face.
5191         This function is for rectangle-mark-mode, not string-rectangle.
5193 2016-04-25  Paul Eggert  <eggert@penguin.cs.ucla.edu>
5195         Say why text-quoting-style is not a user option
5197         * doc/lispref/help.texi (Keys in Documentation):
5198         * etc/NEWS: Document why text-quoting-style is not a
5199         customizable variable (Bug#23372).
5201 2016-04-25  Glenn Morris  <rgm@gnu.org>
5203         * lisp/emacs-lisp/autoload.el (update-directory-autoloads):
5204         Future-proof against non-time-values.
5206 2016-04-25  Eli Zaretskii  <eliz@gnu.org>
5208         Don't mention ~/.emacs.bmk literally in doc strings
5210         * lisp/bookmark.el (bookmark-save-flag, bookmark-load): Don't
5211         mention "~/.emacs.bmk" explicitly as the default bookmark file in
5212         the doc strings.  (Bug#23350)
5214 2016-04-25  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
5216         * etc/NEWS: Explain why multicolor font display is disabled on OS X Cocoa.
5218 2016-04-24  Paul Eggert  <eggert@cs.ucla.edu>
5220         Port to Ubuntu 16.04 --enable-gcc-warnings
5222         * src/image.c (gif_load) [HAVE_GIF]: Fix pointer signedness problem.
5224 2016-04-24  Paul Eggert  <eggert@cs.ucla.edu>
5226         * etc/NEWS: Improve wording of vc-git-log-output-coding-system etc.
5228 2016-04-24  Tino Calancha  <f92capac@gmail.com>
5230         Don't kill ~/ if it's the top level directory
5232         * lisp/dired-aux.el (dired-kill-subdir): Don't kill ~/ if it's
5233         the top level directory (bug#23017).
5235 2016-04-23  Tino Calancha  <f92capac@gmail.com>  (tiny change)
5237         describe-char: fix insert char documentation
5239         * lisp/descr-text.el (describe-char):
5240         Only 'ucs-names' entries can be inserted by unicode name (Bug#23325).
5242 2016-04-23  Dmitry Gutov  <dgutov@yandex.ru>
5244         (vc-git-mode-line-string): Don't use `replace-regexp-in-string'
5246         * lisp/vc/vc-git.el (vc-git-mode-line-string): Use `substring'
5247         instead of `replace-regexp-in-string', because REV can be nil
5248         (e.g. when FILE is a directory, bug#23344), and we actually know
5249         we only need the first 4 characters.
5251 2016-04-22  Nicolas Petton  <nicolas@petton.fr>
5253         Bump version to 25.0.93
5255         * README:
5256         * configure.ac:
5257         * msdos/sed2v2.inp: Bump Emacs version to 25.0.93.
5259 2016-04-22  Nicolas Petton  <nicolas@petton.fr>
5261         * etc/AUTHORS: Update the AUTHORS file
5263         * admin/update_autogen: Use #!/usr/bin/env bash
5265         * admin/authors.el (authors-ignored-files): Additions.
5267 2016-04-22  Martin Rudalics  <rudalics@gmx.at>
5269         In x_set_window_size restore do_pending_window_change calls
5271         * src/xterm.c (x_set_window_size):
5272         * src/w32term.c (x_set_window_size): Restore
5273         do_pending_window_change calls after their stupid removal on
5274         2015-08-31.
5276 2016-04-21  Ilya Zakharevich  <ilya@math.berkeley.edu>
5278         Fix Alt-modified keys on some European MS-Windows keyboards
5280         * src/w32fns.c (deliver_wm_chars): If the reported character is
5281         ASCII, AND Meta modifier is a candidate, behave as if Meta is
5282         present, i.e. fall back to the legacy code.  (Bug#23251)
5284 2016-04-20  Eli Zaretskii  <eliz@gnu.org>
5286         Document 'help-go-forward'
5288         * doc/emacs/help.texi (Help Mode): Document and index
5289         'help-go-forward'.  (Bug#23323)
5291 2016-04-20  Eli Zaretskii  <eliz@gnu.org>
5293         Revert "Allow to customize names of executables used by grep.el"
5295         This reverts commit c93ae7a1e5a94541189a8f36984014344d561ffc.
5297 2016-04-20  Eli Zaretskii  <eliz@gnu.org>
5299         Revert "Don't use 'find-program'"
5301         This reverts commit 10597c977d55cbf9304b51c3b364ce58199384a0.
5303 2016-04-20  Eli Zaretskii  <eliz@gnu.org>
5305         Revert "Use 'grep-find-program' in check-declare.el"
5307         This reverts commit 33bef6e90bfd20609d044b8a076c1570c627684a.
5309 2016-04-20  Eli Zaretskii  <eliz@gnu.org>
5311         Clarify documentation of 'dired-mark-files-containing-regexp'
5313         * doc/emacs/dired.texi (Marks vs Flags): Clarify that for files
5314         visited in buffers, 'dired-mark-files-containing-regexp' searches
5315         the buffer rather than the file on disk.  (Bug#22694)
5317         * lisp/dired.el (dired-mark-files-containing-regexp): Clarify that
5318         for files visited in buffers, 'dired-mark-files-containing-regexp'
5319         searches the buffer rather than the file on disk.  (Bug#22694)
5321 2016-04-19  Eli Zaretskii  <eliz@gnu.org>
5323         Make tmm-menubar work in correct order again
5325         * lisp/tmm.el (tmm-prompt): Don't reverse 'tmm-km-list' right at the
5326         beginning; instead, pass a reversed copy to 'tmm--completion-table'.
5327         (Bug#23309)
5328         (tmm-menubar): Fix an off-by-one error in determining the menu
5329         item when the function is called with a non-nil 'x-position'
5330         argument.
5332 2016-04-18  Dmitry Gutov  <dgutov@yandex.ru>
5334         Remove the Meta-CVS VC backend
5336         * lisp/obsolete/vc-mcvs.el: Remove the file (bug#20475).
5338         * lisp/vc/log-view.el (log-view-extract-comment): Remove the MCVS
5339         reference.
5341         * doc/misc/efaq-w32.texi (Version control): Same.
5343 2016-04-18  Michael Albinus  <michael.albinus@gmx.de>
5345         Fix Bug#23276
5347         * lisp/autorevert.el (auto-revert-handler): Ignore errors
5348         coming from `revert-buffer'.  (Bug#23276)
5350 2016-04-17  Reto Zimmermann  <reto@gnu.org>
5352         Sync with upstream vhdl mode v3.38.1.
5354         * lisp/progmodes/vhdl-mode.el (vhdl-version, vhdl-time-stamp): Update.
5355         (vhdl-mode): No longer set comment-padding.
5356         (vhdl-begin-p): Handle missing space between keyword and parenthesis.
5357         (vhdl-beginning-of-statement-1): Fix indentation for "else generate".
5358         (vhdl-template-else, vhdl-template-elsif): Support generate statement.
5359         (vhdl-re-search-forward, vhdl-re-search-backward): Save match data.
5361 2016-04-16  Paul Eggert  <eggert@cs.ucla.edu>
5363         Tweak configure.ac syntax in recent module patch
5365         * configure.ac: Use proper Autoconf parenthesization in
5366         recent HAVE_MODULES patch.  Although this doesn’t fix any bugs,
5367         the previous syntax was confusing.
5369 2016-04-16  Paul Eggert  <eggert@cs.ucla.edu>
5371         Port to GCC 5.3.1 20160406 (Red Hat 5.3.1-6)
5373         * src/indent.c (Fvertical_motion): Pacify --enable-gcc-warnings
5374         when using the April 6 Fedora patch to GCC.
5376 2016-04-16  Mark Oteiza  <mvoteiza@udel.edu>
5378         Make sh-electric-here-document-mode accessible in sh-mode-hook. (Bug#3226)
5380         * lisp/progmodes/sh-script.el (sh-mode-hook): Add
5381         sh-electric-here-document-mode as an option and the default value.
5382         (sh-mode): Mention sh-mode-hook in docstring.
5383         (sh-mode): Remove sh-electric-here-document-mode invocation.
5385 2016-04-16  Glenn Morris  <rgm@gnu.org>
5387         * configure.ac (HAVE_MODULES): Exclude gnu-kfreebsd from previous.
5389 2016-04-16  Mark Oteiza  <mvoteiza@udel.edu>
5391         Make use of rectangle-preview custom variable.
5393         lisp/rect.el (rectangle--string-preview): Only create a preview if
5394         rectangle-preview is non-nil (Bug#23248).
5396 2016-04-16  Mark Oteiza  <mvoteiza@udel.edu>
5398         Make use of rectangle-preview face.
5400         * lisp/rect.el (rectangle--string-preview):
5401         (rectangle--highlight-for-redisplay): Replace 'region with
5402         'rectangle-preview (Bug#23248).
5404 2016-04-16  Eli Zaretskii  <eliz@gnu.org>
5406         Use 'grep-find-program' in check-declare.el
5408         * lisp/emacs-lisp/check-declare.el (check-declare-directory): Use
5409         'grep-find-program', not 'find-program'.
5411 2016-04-16  Eli Zaretskii  <eliz@gnu.org>
5413         Improve "C-h S" for cl-lib symbols
5415         * lisp/info-look.el: Add cl.info lookup to emacs-lisp-mode related
5416         manuals.  (Bug#23289)
5418 2016-04-16  Eli Zaretskii  <eliz@gnu.org>
5420         Fix minor issues with removing left or right fringes
5422         * lisp/window.el (window-max-chars-per-line): Account for
5423         'left-fringe-width' and 'right-fringe-width' variables.
5425         * doc/lispref/windows.texi (Window Sizes): Document the effect on
5426         window text width when setting the width of one or both fringes to
5427         zero.
5428         * doc/emacs/display.texi (Fringes): Document the effect on window
5429         text width when setting the width of one or both fringes to zero.
5430         (Bug#22891)
5432 2016-04-16  Eli Zaretskii  <eliz@gnu.org>
5434         Speed up redisplay in ansi-term mode
5436         * lisp/term.el (ansi-term): Force L2R 'bidi-paragraph-direction'.
5437         (Bug#20611)
5439 2016-04-16  Philipp Stephani  <phst@google.com>
5441         Simplify 8-bit character handling by terminal for 'raw-text'
5443         * lisp/international/mule.el (set-keyboard-coding-system): Treat
5444         'raw-text' as another coding type that requires 8-bit characters.
5445         * lisp/xt-mouse.el (xterm-mouse--read-coordinate): Use 'no-conversion'
5446         instead of 'latin-1'.
5448 2016-04-15  Glenn Morris  <rgm@gnu.org>
5450         * configure.ac (HAVE_MODULES): Treat gnu like gnu-linux.  (Bug#22722)
5452 2016-04-15  Eli Zaretskii  <eliz@gnu.org>
5454         Fix w32 memory-management problem when extending buffer text
5456         * src/w32heap.c (mmap_realloc): Only attempt extending a region if
5457         the following region has the same allocation base.  Also, use the
5458         original allocation base and enlarged size to commit reserved
5459         memory, to ensure that the allocation base stays at its original
5460         value.  This fixes several hard-to-debug problems whereby part of
5461         buffer text was overwritten with binary nulls, because
5462         mmap_realloc copied only part of buffer text when extending it.
5463         See
5464         https://lists.gnu.org/r/emacs-devel/2016-04/msg00325.html
5465         and https://debbugs.gnu.org/cgi/bugreport.cgi?bug=23223#55 for two
5466         examples of the related problems.
5468 2016-04-14  Michael Albinus  <michael.albinus@gmx.de>
5470         Fix Bug#20637.  Do not merge to master
5472         * lisp/vc/vc-hooks.el (vc-state, vc-working-revision):
5473         Use `vc-backend' instead of `vc-responsible-backend'.  (Bug#20637)
5475         * test/automated/vc-tests.el (vc-test--state)
5476         (vc-test--working-revision): Deactivate now failing checks.
5478 2016-04-14  Paul Eggert  <eggert@cs.ucla.edu>
5480         substitute-command-keys keeps quotes’ text props
5482         Problem reported by Clément Pit--Claudel (Bug#23254).
5483         * src/doc.c: Include intervals.h.
5484         (Fsubstitute_command_keys): If the only substitutions are for
5485         quotes, copy the source string’s text properties too, since no
5486         substring lengths have changed.
5488 2016-04-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
5490         * src/xwidget.c (x_draw_xwidget_glyph_string): More clipping fixes.
5492 2016-04-12  Dmitry Gutov  <dgutov@yandex.ru>
5494         Add semantic-symref-filepattern-alist entry for lisp-interaction-mode
5496         * lisp/cedet/semantic/symref/grep.el
5497         (semantic-symref-filepattern-alist):
5498         Add entry for lisp-interaction-mode
5499         (https://debbugs.gnu.org/cgi/bugreport.cgi?bug=23223#47)
5501 2016-04-12  Dmitry Gutov  <dgutov@yandex.ru>
5503         Perform xref searches without visiting unopened files
5505         * lisp/progmodes/xref.el (xref-collect-references): Instead of
5506         calling `semantic-symref-find-references-by-name', use
5507         `semantic-symref-instantiate' and `semantic-symref-perform-search'
5508         directly.  Ask for `line-and-text' results (bug#23223).
5509         (xref-collect-matches): Include the line text in the "hit"
5510         structure.
5511         (xref--convert-hits): New function, split off from
5512         `xref-collect-references' and `xref-collect-matches', to convert
5513         "hits" to xref instance list.  Create a temporary buffer here, to
5514         use it for post-processing all hit lines.
5515         (xref--collect-matches): Use a different approach for non-visited
5516         files.  Insert the line text into the temp buffer, apply the
5517         file's major mode the best we can without reading its whole
5518         contents, syntax-propertize, and search in the result.
5519         (xref--collect-matches-1): Extract, to handle the common logic
5520         between two cases.
5521         (xref--find-buffer-visiting): New function, a wrapper around
5522         `find-buffer-visiting' to amortize its cost.
5524         * lisp/cedet/semantic/symref/idutils.el
5525         (semantic-symref-idutils--line-re): New constant.
5526         (semantic-symref-parse-tool-output-one-line): Support result type
5527         `line-and-text'.
5529         * lisp/cedet/semantic/symref/grep.el
5530         (semantic-symref-grep--line-re)
5531         (semantic-symref-parse-tool-output-one-line): Same.
5533         * lisp/cedet/semantic/symref/cscope.el
5534         (semantic-symref-cscope--line-re)
5535         (semantic-symref-parse-tool-output-one-line): Same.
5537         * lisp/cedet/semantic/symref/global.el
5538         (semantic-symref-global--line-re)
5539         (semantic-symref-parse-tool-output-one-line): Same.
5541 2016-04-12  Phillip Lord  <phillip.lord@newcastle.ac.uk>
5543         Revert "Prevent bootstrap autoload backup files"
5545         This reverts commit c23c965bb9d0a4bcc1b6158833ff99aa20fd53e9.
5547 2016-04-12  Paul Eggert  <eggert@cs.ucla.edu>
5549         Improve time zone documentation
5551         * doc/lispref/os.texi (Time Zone Rules):
5552         New section, mostly with material moved here from other sections.
5553         * doc/emacs/cmdargs.texi (General Variables):
5554         * doc/lispref/os.texi (Time Conversion, Time Parsing):
5555         Xref new section.
5556         * etc/NEWS, etc/PROBLEMS:
5557         * lisp/org/org.el (org-timestamp-format):
5558         * src/editfns.c (Fformat_time_string, Fdecode_time)
5559         (Fencode_time, Fcurrent_time_string, Fcurrent_time_zone)
5560         (Fset_time_zone_rule):
5561         When documenting time zone rule strings, mention the TZ
5562         environment variable in preference to mentioning the
5563         sort-of-internal function set-time-zone-rule.
5565 2016-04-12  Phillip Lord  <phillip.lord@russet.org.uk>
5567         Prevent bootstrap autoload backup files
5569          * lisp/emacs-lisp/autoload.el (autoload-find-generated-file): Suppress
5570            backups in newly created file.
5572           (autoload-ensure-default-file): Function split into two.
5573           (autoload-ensure-file-writeable): New function from split.
5575           (Bug#23203)
5577 2016-04-11  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
5579         Disable multicolor fonts on OS X since they are not supported on free systems
5581         * src/macfont.m (macfont_list): Don't use color bitmap fonts.
5583 2016-04-11  Paul Eggert  <eggert@cs.ucla.edu>
5585         Capitalize “Universal Time” in documentation
5587         It’s a proper noun.
5588         * lisp/vc/add-log.el (add-log-time-zone-rule): Also, fix typo by
5589         mentioning ‘format-time-string’ instead of ‘set-time-zone-rule’.
5591 2016-04-11  Eli Zaretskii  <eliz@gnu.org>
5593         Don't use 'find-program'
5595         * lisp/progmodes/project.el (project-file-completion-table): Use
5596         'grep-find-program', rather than the obsolete 'find-program'.
5598 2016-04-11  Paul Eggert  <eggert@cs.ucla.edu>
5600         Sync with gnulib
5602         This is for picky compilers whose stdint.h fails our C11 tests.
5603         Problem reported for clang by Philipp Stephani (Bug#23261).
5604         This incorporates:
5605         2016-04-11 stdint: port to strict C11 left shift
5606         * doc/misc/texinfo.tex, lib/stdint.in.h: Copy from gnulib.
5608 2016-04-11  Leo Liu  <sdl.web@gmail.com>
5610         Fix last change on 2016-01-02
5612         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2): Move
5613           `cl-errs-re' before `lisp--el-match-keyword'; don't use `prepend'
5614           which highlights `cl-errs-re' even in comments or strings.
5616 2016-04-11  Paul Eggert  <eggert@cs.ucla.edu>
5618         Port run-prolog EMACS to SWI-Prolog 7.2.3
5620         * lisp/progmodes/prolog.el (prolog-ensure-process):
5621         Work around incompatibility of SWI-Prolog 7.2.3 and earlier
5622         with the new way of dealing with the EMACS and INSIDE_EMACS
5623         environment variables.
5625 2016-04-10  Eli Zaretskii  <eliz@gnu.org>
5627         Avoid crashes due to unreasonably large or small text scaling
5629         * lisp/face-remap.el (text-scale-min-amount)
5630         (text-scale-max-amount): New functions.
5631         (text-scale-set, text-scale-increase): Use them to limit the text
5632         scaling to a reasonable range of values.  (Bug#23259)
5634 2016-04-10  Eli Zaretskii  <eliz@gnu.org>
5636         Improve documentation of 'with-eval-after-load'
5638         * lisp/subr.el (with-eval-after-load): Doc fix.  (Bug#23258)
5640 2016-04-10  Eli Zaretskii  <eliz@gnu.org>
5642         Improve handling of non-ASCII characters in Git log messages
5644         * lisp/vc/vc-git.el (vc-git-commits-coding-system): Now a defcustom.
5645         (vc-git-log-output-coding-system): New defcustom.
5646         (vc-git-print-log, vc-git-command, vc-git--call): Use
5647         'vc-git-log-output-coding-system' for reading stuff from Git.
5648         Don't override values of 'coding-system-for-read/write' if they
5649         are bound by caller -- this allows the user to force an encoding
5650         via "C-x RET c".
5651         (vc-git-checkin): On MS-Windows, pass the log message via a
5652         temporary file, to work around the limitations on passing
5653         non-ASCII characters via command-line arguments.  Force using the
5654         'locale-coding-system' for Git command-line arguments.  This fixes
5655         problems with non-ASCII commit log messages on MS-Windows.
5656         (Bug#23076)
5658         * etc/NEWS: Mention the new vc-git related defcustoms.
5660 2016-04-09  Philipp Stephani  <phst@google.com>
5662         Remove undefined behavior in OS X dumper.
5664         Found by Address Sanitizer.
5666         * src/unexmacosx.c (unexec_write): Use Mach virtual memory API to
5667         avoid undefined behavior when reading arbitrary memory.
5669 2016-04-09  Joakim Verona  <joakim@verona.se>
5671         Fix clipping of xwidgets
5673         * src/xwidget.c (x_draw_xwidget_glyph_string): Use window_box
5674         instead of calculating the clipping borders manually.  Suggested
5675         by YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>.
5677 2016-04-09  Eli Zaretskii  <eliz@gnu.org>
5679         Improve Lisp-level documentation of tooltips
5681         * doc/lispref/display.texi (Tooltips): New section.  (Bug#23246)
5682         (Display): Update the chapter menu.
5683         * doc/lispref/text.texi (Special Properties): Make the "tooltip"
5684         index entry more concrete.  Change the cross-reference to point to
5685         "Tooltips" in the ELisp manual.
5686         * doc/lispref/elisp.texi (Top): Update the master menu.
5687         * doc/emacs/frames.texi (Tooltips): Include more customization
5688         variables.  Add a cross-reference to the ELisp manual.
5690 2016-04-08  Glenn Morris  <rgm@gnu.org>
5692         Faces names should not end in "-face".
5694         * lisp/rect.el (rectangle-preview): Rename from rectangle-preview-face.
5695         * lisp/vc/vc-hooks.el (vc-state-base): Rename from vc-state-base-face.
5697 2016-04-08  Paul Eggert  <eggert@cs.ucla.edu>
5699         * src/xsmfns.c (syms_of_xsmfns): Remove stray "s in doc strings.
5701 2016-04-08  Paul Eggert  <eggert@cs.ucla.edu>
5703         Comint and compile no longer set EMACS
5705         This mostly restores the change that I reverted on March 23,
5706         fixing most of Bug#20202.  The only part of the change that is
5707         still reverted is the change to M-x term, where compatibility with
5708         current Bash constrains us from moving too quickly (Bug#20484).
5709         Problem reported by Phillip Lord in: https://bugs.gnu.org/20484#108
5710         * etc/NEWS: Document this.
5711         * lisp/comint.el (comint-exec-1):
5712         * lisp/net/tramp-sh.el (tramp-remote-process-environment):
5713         * lisp/progmodes/compile.el (compilation-start):
5714         Don’t set EMACS=t in the subsidiary process.
5716 2016-04-08  Stefan Monnier  <monnier@iro.umontreal.ca>
5718         * lisp/subr.el (read-key): Don't let the prompt linger (bug#22714)
5720 2016-04-08  Eli Zaretskii  <eliz@gnu.org>
5722         Allow to customize names of executables used by grep.el
5724         * lisp/progmodes/grep.el (grep-find-program): Renamed from
5725         'find-program', which was a variable.  All uses changed.
5726         (grep-xargs-program): Renamed from 'xargs-program', which was a
5727         variable.  All uses changed.
5728         (grep-program): Now a defcustom rather than a simple variable.
5729         (Bug#23219)
5731 2016-04-08  Alan Third  <alan@idiocy.org>
5733         Set locale encoding to UTF-8 when run from OS X GUI.
5735         * src/nsterm.m (ns_init_locale): Append .UTF-8 when setting LANG.
5737 2016-04-08  Eli Zaretskii  <eliz@gnu.org>
5739         Avoid signaling errors in 'M-n' at the 'C-x C-f' prompt
5741         * lisp/ffap.el (ffap-guess-file-name-at-point): Ignore errors
5742         while 'ffap-guesser' runs.  (Bug#23218)
5744 2016-04-08  Marcin Borkowski  <mbork@mbork.pl>
5746         Avoid infinite loop in 'studlify-word'
5748         * lisp/play/studly.el (studlify-region): Call
5749         'forward-word-strictly' and 'backward-word-strictly' instead of
5750         'forward-word' and 'backward-word'.  (Bug#19940)
5752 2016-04-07  Paul Eggert  <eggert@cs.ucla.edu>
5754         Don’t recommend obsolete EMACS env var
5756         * doc/misc/efaq.texi (Escape sequences in shell output):
5757         Remove long-obsolete (and now-confusing) notes about
5758         the EMACS environment variable in Emacs 21.1 and earlier.
5759         * doc/misc/efaq.texi (^M in the shell buffer):
5760         * etc/PROBLEMS:
5761         Remove obsolescent recommendation to consult the EMACS environment
5762         variable.
5764 2016-04-07  Glenn Morris  <rgm@gnu.org>
5766         * lisp/emacs-lisp/package.el: Change from a few days ago needs seq.
5768         * lisp/emacs-lisp/seq.el: Load cl-lib, not cl-extra.
5770 2016-04-07  Leo Liu  <sdl.web@gmail.com>
5772         Fix "Beginning of buffer" error in forward-page
5774         * lisp/textmodes/page.el (forward-page): Check before move to prevent
5775           "Beginning of buffer" error.
5777 2016-04-06  Dmitry Gutov  <dgutov@yandex.ru>
5779         Add a `transient' project type
5781         * lisp/progmodes/project.el (project-roots): Implement for the
5782         `transient' project type (bug#23224).
5783         (project-current): Instead of signaling an error, return a
5784         transient project instance rooted in the chosen directory.
5786 2016-04-06  Lars Magne Ingebrigtsen  <larsi@gnus.org>
5788         Revert "Backport HTTPS proxy fix"
5790         This reverts commit 2d1a6054b161bd1055d4feb11c8c5ac95543f5db.
5792         It's too late in the Emacs 25 release cycle to add things like this to
5793         Emacs 25.1.  It's border line new feature.
5795 2016-04-06  Tao Fang  <fangtao0901@gmail.com>
5797         Backport HTTPS proxy fix
5799         Cherry-picked from 3c623c26ae7d695746e05d8a2e16a67a6256b024
5801         Backport:
5803 2016-04-06  Paul Eggert  <eggert@cs.ucla.edu>
5805         Fix stability confusion in sort-tests
5807         Problem reported by Philipp Stephani (Bug#23205).
5808         * test/automated/sort-tests.el:
5809         (sort-tests--insert-words-sort-and-compare):
5810         Don’t assume that reversing a sorted list is the same
5811         as sorting with the reverse predicate.  This is not true
5812         for stable sorts when items compare equal.
5814 2016-04-05  Paul Eggert  <eggert@cs.ucla.edu>
5816         Avoid describe-key error with lambdas
5818         Problem reported by Sho Takemori (Bug#22716).
5819         * lisp/cedet/mode-local.el (describe-mode-local-overload)
5820         (xref-mode-local-overload): Use function-overload-p instead
5821         of assuming the argument is a symbol.
5823 2016-04-04  Artur Malabarba  <bruce.connor.am@gmail.com>
5825         * lisp/emacs-lisp/package.el (package-install-selected-packages):
5827         Skip unavailable packages.
5829 2016-04-04  Paul Eggert  <eggert@cs.ucla.edu>
5831         Sync with gnulib
5833         This incorporates:
5834         2016-04-03 stdint: detect good enough pre-C++11 stdint.h in C++ mode
5835         2016-04-01 stddef: support configuring with g++
5836         * doc/misc/texinfo.tex, lib/stddef.in.h, m4/stdint.m4:
5837         Copy from gnulib.
5839 2016-04-03  Paul Eggert  <eggert@cs.ucla.edu>
5841         Fix doc for Universal Time
5843         * doc/lispref/os.texi (Time of Day, Time Conversion):
5844         Be more careful about distinguishing UTC (which is not valid for
5845         pre-1961 time stamps) and UT (which is).
5846         (Time Parsing): Remove stray obsolete paragraph about a
5847         UNIVERSAL argument for ‘format-time-string’.
5849 2016-04-03  Michael Albinus  <michael.albinus@gmx.de>
5851         Handle Bug#23186
5853         * lisp/net/tramp.el (tramp-encoding-command-switch)
5854         (tramp-encoding-command-interactive):
5855         * lisp/net/tramp-sh.el (tramp-maybe-open-connection):
5856         `tramp-encoding-shell' could be nil.  (Bug#23186)
5858 2016-04-03  Paul Eggert  <eggert@cs.ucla.edu>
5860         More format-time-string change fixups
5862         * lisp/net/tramp-sh.el (tramp-sh-handle-set-file-times):
5863         * lisp/org/org.el (org-timestamp-format):
5864         Fix doc to match new format-time-string behavior.
5865         * lisp/org/ox-icalendar.el (org-icalendar-convert-timestamp):
5866         Use (not (not X)) to treat non-nil values of utc arg as UTC.
5868 2016-04-02  Paul Eggert  <eggert@cs.ucla.edu>
5870         make-xwidget unused arg cleanup
5872         * doc/lispref/display.texi (Xwidgets): Remove stray refs.
5873         * src/xwidget.c (syms_of_xwidget): Qwebkit, not Qwebkit_osr.
5875 2016-04-02  Joakim Verona  <joakim@verona.se>
5877         Remove unused arguments from make-xwidget
5879         The arguments BEG and END were unused, and are now removed.
5881         * doc/emacs/display.texi (Xwidgets): Document the change
5882         * lisp/xwidget.el (make-xwidget, xwidget-insert)
5883         (xwidget-webkit-new-session): Reflect changed arguments
5884         * src/xwidget.c (Fmake_xwidget, syms_of_xwidget): Reflect changed arguments
5886 2016-04-02  Eli Zaretskii  <eliz@gnu.org>
5888         Document incompatible changes in 'format-time-string'
5890         * etc/NEWS: Mention the incompatible change in the interpretation
5891         of the 3rd argument to 'format-time-string'.  (Bug#21943)
5893 2016-04-02  Eli Zaretskii  <eliz@gnu.org>
5895         Improve documentation of byte-code objects
5897         * doc/lispref/compile.texi (Byte-Code Objects): Document the
5898         integer format of the argument descriptor.  (Bug#23061)
5900 2016-04-02  Eli Zaretskii  <eliz@gnu.org>
5902         Adapt calls to 'format-time-string' to changes in Emacs 25
5904         * lisp/vc/pcvs-info.el (cvs-fileinfo-from-entries): Use t as the
5905         last argument to format-time-string.  (Bug#23128)
5906         * lisp/gnus/gmm-utils.el (gmm-format-time-string): Use t as the
5907         last argument to format-time-string, when the TZ argument is not a
5908         number, per the doc string.
5910 2016-04-02  Eli Zaretskii  <eliz@gnu.org>
5912         Improve vc-diff with Git backend
5914         * lisp/vc/vc-git.el (vc-git-command): Don't override
5915         coding-system-for-read/write if they are already bound.
5916         Suggested by joaotavora@gmail.com (João Távora).  (Bug#20892)
5917         (vc-git-print-log): Don't override coding-system-for-read if it's
5918         already bound.
5920 2016-04-01  Dmitry Gutov  <dgutov@yandex.ru>
5922         (js--continued-expression-p): Special-case unary plus and minus
5924         * lisp/progmodes/js.el (js--continued-expression-p): Make an
5925         effort to recognize unary plus and minus, in the contexts where
5926         they make sense (https://github.com/mooz/js2-mode/issues/322).
5928 2016-04-01  Alan Mackenzie  <acm@muc.de>
5930         Prevent C++ Mode wrongly fontifying some identifiers near templates as types
5932         This fixes debbugs #7917.
5934         * lisp/progmodes/cc-engine.el (c-forward-keyword-prefixed-id): Accept 'maybe
5935         (from c-forward-type) as sufficient to record an id.  Record type id as well
5936         as ref ids.
5937         (c-forward-name): Bind c-last-identifier-range around the call to
5938         c-forward-<>-arglist to prevent it getting corrupted.  Don't automatically
5939         assume an identifier is a type when a template ">" is followed by a "(".
5940         (c-forward-type): Don't automatically assume an identifier is a type when a
5941         template ">" is followed by a "(".
5943         * lisp/progmodes/cc-fonts.el (c-font-lock-<>-arglists): Don't fontify an
5944         identifier as a type when its associated ">" is followed by a "(".
5946 2016-04-01  Eli Zaretskii  <eliz@gnu.org>
5948         Avoid crashes due to insanely large columns in tabulated-list-format
5950         * src/xdisp.c (append_stretch_glyph, produce_xwidget_glyph)
5951         (produce_image_glyph): Limit the pixel width of the produced glyph
5952         to SHRT_MAX.  (Bug#23178)
5953         (append_composite_glyph, append_glyph, append_glyphless_glyph):
5954         Add assertions to verify that the pixel width of the glyph will
5955         never overflow a 'short'.
5956         * src/term.c (append_composite_glyph): Add assertion to verify
5957         that the pixel width of the glyph will never overflow a 'short'.
5959 2016-03-31  Mark Oteiza  <mvoteiza@udel.edu>
5961         Teach M-x disassemble a default argument.
5963         Adopts default argument in the same way as `describe-function'.
5964         * lisp/emacs-lisp/disass.el (disassemble): Default to function at point,
5965         if any.
5967 2016-03-31  Eli Zaretskii  <eliz@gnu.org>
5969         Fix EOL decoding in vc-annotate with SVN back-end on MS-Windows
5971         * lisp/vc/vc-annotate.el (vc-annotate): Force DOS EOL decoding on
5972         MS-Windows and MS-DOS, when processing the output of "svn annotate".
5974 2016-03-31  Michael Albinus  <michael.albinus@gmx.de>
5976         Fix OS X specific settings in tramp-tests
5978         * lisp/net/tramp-sh.el (tramp-maybe-open-connection): Use it.
5980         * lisp/net/tramp.el (tramp-get-local-locale): New defun.
5982         * test/automated/tramp-tests.el (tramp--test-darwin-p): Remove.
5983         (tramp--test-utf8): Improve settings of coding systems.
5984         Do not use `tramp--test-darwin-p' anymore.  (Bug#22145)
5986 2016-03-30  Alan Mackenzie  <acm@muc.de>
5988         Finish fixing a cacheing bug in CC Mode (see 2016-03-09)
5990         * lisp/progmodes/cc-cmds.el: (c-beginning-of-defun, c-end-of-defun): Remove
5991         superfluous invocations of c-self-bind-state-cache.
5993         * lisp/progmodes/cc-defs.el: (c-self-bind-state-cache): Copy and terminate
5994         markers correctly.
5996         * lisp/progmodes/cc-engine.el (c-record-parse-state-state): Terminate stale
5997         markers.
5999 2016-03-29  Xue Fuqiao  <xfq.free@gmail.com>
6001         * doc/lispref/text.texi (Columns): Remove a nonexistent reference.
6003         The example was removed by Chong Yidong on Mar 5, 2012.
6005 2016-03-29  Paul Eggert  <eggert@cs.ucla.edu>
6007         * doc/man/emacsclient.1: Document +line:column option.
6009 2016-03-29  Eli Zaretskii  <eliz@gnu.org>
6011         Fix rare problems with echo-area display and multiple frames
6013         * src/xdisp.c (redisplay_window): Bind inhibit-redisplay non-nil
6014         around the call to x_consider_frame_title, to prevent
6015         resize_mini_window from undoing echo-area display.  (Bug#23124)
6017 2016-03-29  Alan Mackenzie  <acm@muc.de>
6019         In M-%, avoid making buffer-local binding of text-property-default-nonsticky
6021         This would happen when that variable already has a buffer local binding.  Such
6022         a binding would not be seen by read-from-minibuffer.  This fixes bug #23127.
6024         * lisp/replace.el (query-replace-read-from): Move the binding of
6025         text-property-default-nonsticky to inside of a new with-current-buffer buffer
6026         form with the minibuffer as argument.
6028 2016-03-27  Dmitry Gutov  <dgutov@yandex.ru>
6030         Remove prog-indentation-context
6032         * lisp/progmodes/prog-mode.el: (prog-indentation-context)
6033         (prog-first-column, prog-widen): Remove, as discussed in
6034         https://lists.gnu.org/r/emacs-devel/2016-03/msg01425.html.
6036         * doc/lispref/text.texi (Mode-Specific Indent): Remove references
6037         to them.
6039         * etc/NEWS: Ditto.
6041         * lisp/progmodes/python.el: (prog-widen, prog-first-column):
6042         Remove the compatibility aliases and all uses.
6044         Do not merge to master.
6046 2016-03-27  Paul Eggert  <eggert@cs.ucla.edu>
6048         * src/font.c (QCuser_spec): Add missing colon to :user-spec.
6050 2016-03-27  Eli Zaretskii  <eliz@gnu.org>
6052         Don't start the 'midnight' timer twice
6054         * lisp/midnight.el (midnight-mode): Avoid starting the midnight
6055         timer twice when activating the mode the first time.  (Bug#23123)
6057 2016-03-27  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
6059         * src/xwidget.c (Fxwidget_resize): Fix inappropriate use of XFASTINT.
6061 2016-03-26  Stephen Berman  <stephen.berman@gmx.net>
6063         Fix todo-mode category movement
6065         * lisp/calendar/todo-mode.el (todo-move-category): Use moved
6066         category's existing categories sexp instead of invoking
6067         todo-update-categories-sexp in file moved to, in order to take
6068         archived items into account.  If the moved category has archived
6069         items, handle the source archive buffer properly.  Remove
6070         superfluous code.
6072 2016-03-26  Glenn Morris  <rgm@gnu.org>
6074         * lisp/xt-mouse.el (xterm-mouse-utf-8): Add :version.
6076 2016-03-26  Eli Zaretskii  <eliz@gnu.org>
6078         Ignore non-nil. non-cons values of unread-command-events
6080         * src/keyboard.c (requeued_events_pending_p, read_char)
6081         (Finput_pending_p): Use CONSP instead of !NILP to see if there are
6082         unread command events to be processed.  (Bug#22976)
6084 2016-03-26  Eli Zaretskii  <eliz@gnu.org>
6086         Improve documentatuon of 'truncate-partial-width-windows'
6088         * src/xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>:
6089         Clarify in the doc string how the width of partial-width windows
6090         is computed for the purposes of truncation decision.  (Bug#4338)
6092         * doc/emacs/windows.texi (Split Window): Clarify how the width of
6093         windows is calculated for the purposes of truncation decision.
6094         * doc/emacs/display.texi (Line Truncation): Remove a redundant
6095         index entry.
6097 2016-03-25  Paul Eggert  <eggert@cs.ucla.edu>
6099         * src/ftfont.c (ftfont_shape_by_flt): Parenthesize as per GNU style.
6101 2016-03-25  Eli Zaretskii  <eliz@gnu.org>
6103         Fix 'dired-goto-file' in Dired buffers produced by find-dired
6105         * lisp/dired.el (dired-goto-file): Try looking for the file as a
6106         relative name with leading sub-directories, before looking for the
6107         basename alone.  (Bug#23089)
6109 2016-03-25  Nicolas Petton  <nicolas@petton.fr>
6111         Fix map-put and map-delete for alists (Bug#23105)
6113         * lisp/emacs-lisp/map.el (map-put): Do not bind the evaluated place
6114         expression to a new symbol.
6115         * test/automated/map-tests.el: Add a regression test.
6117 2016-03-25  Eli Zaretskii  <eliz@gnu.org>
6119         Minor copyedits of documentation for temporary displays
6121         * doc/emacs/windows.texi (Temporary Displays): Improve indexing.
6122         Minor changes in wording.
6123         (Window Choice, Displaying Buffers, Pop Up Window): Disambiguate
6124         index entries for 'display-buffer'.
6126         * etc/NEWS: Minor rewording of the entry about temporary displays.
6128 2016-03-25  Philipp Stephani  <phst@google.com>
6130         Add customization option for using UTF-8 coordinates in xt-mouse
6132         * lisp/xt-mouse.el (xterm-mouse-utf-8): New customization option.
6133         (xterm-mouse--read-coordinate): New function to replace
6134         `xterm-mouse--read-utf8-char'; uses UTF-8 only if enabled.
6135         (xterm-mouse--read-number-from-terminal): Adapt to new name.
6136         (xterm-mouse-tracking-enable-sequence)
6137         (xterm-mouse-tracking-disable-sequence): Replace constants with
6138         functions, mark constants as obsolete.
6139         (xterm-mouse--tracking-sequence): New helper function.
6140         (turn-on-xterm-mouse-tracking-on-terminal): Use new functions;
6141         enable UTF-8 only if customization option says so; store UTF-8
6142         flag in terminal parameter.  (Bug#23009)
6144         * test/automated/xt-mouse-tests.el: Add tests for xt-mouse.el.
6146 2016-03-25  Eli Zaretskii  <eliz@gnu.org>
6148         Minor doc string fixes in replace.el
6150         * lisp/replace.el (query-replace, query-replace-regexp)
6151         (query-replace-regexp-eval, map-query-replace-regexp)
6152         (replace-string, replace-regexp): Clarify in doc strings that
6153         these commands operate from point to the end of the buffer's
6154         accessible portion.  (Bug#23067)
6156 2016-03-25  Eli Zaretskii  <eliz@gnu.org>
6158         Fix scrolling upwards with 'xwidget-webkit-browse-url'
6160         * src/xwidget.c (Fxwidget_set_adjustment): Use CHECK_NUMBER instead
6161         of CHECK_NATNUM.  Suggested by Shayan Pirani <shayanpirani@gmail.com>.
6162         (Bug#22918)
6164 2016-03-25  K. Handa  <handa@gnu.org>
6166         Fix display of Indic scripts
6168         * src/ftfont.c (ftfont_shape_by_flt): For combining characters out
6169         of the range U+300...U+36F, use the "combining" FLT only with
6170         non-OTF fonts.
6172 2016-03-25  Eli Zaretskii  <eliz@gnu.org>
6174         Fix splash screen display at startup
6176         * src/frame.c (DEFAULT_ROWS): Enlarge to 36, so that the initial
6177         window displayed by "emacs -q" has enough space to show the whole
6178         text even if it includes 2 lines talking about recovering crashes
6179         sessions.  (Bug#23074)
6181         * lisp/startup.el (use-fancy-splash-screens-p): Fix off-by-one
6182         error when computing the window-height from frame-height.
6184         * etc/NEWS: Mention the change.
6186 2016-03-25  Martin Rudalics  <rudalics@gmx.at>
6188         Describe temporary displays in Emacs manual
6190         * doc/emacs/emacs.texi (Temporary Displays): New subsubsection.
6191         * doc/emacs/windows.texi (Window Choice): Minor fixes.
6192         (Temporary Displays): New subsubsection describing display of
6193         temporary buffers and `temp-buffer-resize-mode'.
6195 2016-03-24  Paul Eggert  <eggert@cs.ucla.edu>
6197         Avoid stray As next to IDLW icons
6199         * lisp/progmodes/idlw-toolbar.el (idlwave-toolbar-add-everywhere):
6200         Use "" for empty labels, not "a", as the latter now displays stray
6201         "A"s (Bug#18997).
6203 2016-03-24  Paul Eggert  <eggert@cs.ucla.edu>
6205         Avoid GTK 3 crash with icons and masks
6207         Problem reported by Mosè Giordano (Bug#18997).
6208         * src/gtkutil.c (xg_get_pixbuf_from_pixmap): Remove.
6209         (xg_get_pixbuf_from_pix_and_mask): Do not use
6210         xg_get_pixbuf_from_pixmap, as it is poorly documented.  Instead,
6211         invoke XGetPixel directly.  This is slow but speed is not
6212         important here.  Also, fail for unusual situations (not TrueColor,
6213         or images that are not 8 bits per sample) instead of displaying
6214         junk or crashing.
6216 2016-03-24  Juri Linkov  <juri@linkov.net>
6218         * lisp/minibuffer.el (minibuffer-completion-help): Use fit-window-to-buffer
6220         instead of shrink-window-if-larger-than-buffer.  (Bug#23092)
6222 2016-03-24  Eli Zaretskii  <eliz@gnu.org>
6224         Define make_save_ptr_ptr unconditionally
6226         * src/alloc.c (make_save_ptr_ptr): Remove the !(defined
6227         USE_X_TOOLKIT || defined USE_GTK) conditional.  Reported by
6228         Philipp Stephani <phst@google.com>.  (Bug#23101)
6230 2016-03-24  Eli Zaretskii  <eliz@gnu.org>
6232         Preserve current buffer when popping up TTY menus
6234         * src/term.c (tty_menu_show): Be sure to save and restore the
6235         current buffer around TTY menu pop-ups.  (Bug#23101)
6237 2016-03-24  Eli Zaretskii  <eliz@gnu.org>
6239         Improve font selection by family on MS-Windows
6241         * src/w32font.c (w32font_list_internal): Allow 'ascii-0' charset,
6242         in addition to 'iso10646-1', 'unicode-bmp', and 'unicode-sip'.
6243         This avoids rejecting many font families whose members are shown
6244         by 'font-family-list', in particular 'courier' requested by
6245         info.el.  Without this change, many values of ':family' attribute
6246         of a face have no effect on MS-Windows, because they are rejected
6247         due to bogus mismatch of the charset.
6249 2016-03-23  Paul Eggert  <eggert@penguin.cs.ucla.edu>
6251         Comint, term, and compile now set EMACS
6253         This fixes directory tracking in ansi-term, at the expense of
6254         breaking some usages of 'configure'.  Setting EMACS is meant to be
6255         a somewhat temporary measure, until Bash 4.4 comes out and is
6256         common.  (Bug#20484).
6257         * etc/NEWS: Document this.
6258         * lisp/comint.el (comint-exec-1):
6259         * lisp/net/tramp-sh.el (tramp-remote-process-environment):
6260         * lisp/progmodes/compile.el (compilation-start):
6261         * lisp/term.el (term-exec-1):
6262         Go back to setting the EMACS environment variable, for backward
6263         compatibility to Bash 4.3 and earlier.
6265 2016-03-23  Paul Eggert  <eggert@penguin.cs.ucla.edu>
6267         Ignore more merges when generating ChangeLog
6269         * build-aux/gitlog-to-emacslog: Ignore all merges from gnu.org,
6270         not merely those from master and emacs-NN.  The ChangeLog entries
6271         they generate are not that useful.
6273 2016-03-23  Paul Eggert  <eggert@cs.ucla.edu>
6275         Sync with gnulib
6277         This incorporates:
6278         2016-03-22 gitlog-to-changelog: suppress ignored chatter
6279         2016-03-21 sys_select: port to new Cygwin
6280         * build-aux/gitlog-to-changelog, doc/misc/texinfo.tex:
6281         * lib/sys_select.in.h: Copy from gnulib.
6283 2016-03-23  Paul Eggert  <eggert@cs.ucla.edu>
6285         Resurrect GNUS-NEWS autogeneration
6287         * doc/misc/gnus-coding.texi (Gnus Maintenance Guide): Update
6288         GNUS-NEWS section to match current file locations and procedure.
6289         * etc/GNUS-NEWS: Regenerate by using new procedure.
6290         * lisp/Makefile.in (update-gnus-news): New rule, containing a
6291         procedure for building GNUS-NEWS.  The old procedure got lost
6292         somehow when Gnus was merged into Emacs.
6294 2016-03-22  Anders Lindgren  <andlind@gmail.com>
6296         Make `toggle-frame-maximized' respect the dock on OS X (bug#22988).
6298         * src/nsterm.m (ns_screen_margins): New function.
6299         (ns_screen_margins_ignoring_hidden_dock): New function.
6300         (ns_menu_bar_height): Reimplement in terms of `ns_screen_margins'.
6301         ([EmacsWindow zoom:]): Take all screen margins (except those
6302         originating from a hidden dock) into account.
6304 2016-03-22  Eli Zaretskii  <eliz@gnu.org>
6306         Fix bug in displaying header line with a box face
6308         * src/xdisp.c (get_next_display_element): Handle the case when a
6309         display string acquires the box face from an underlying string,
6310         not from the buffer.  (Bug#23091)
6312 2016-03-21  Kaushal Modi  <kaushal.modi@gmail.com>
6314         Fix an Isearch var to be a string (Bug#23038)
6316         * lisp/isearch.el (isearch--describe-regexp-mode): The `description' var
6317           needs to always be a string.  Add the missing default case for the
6318           cond form that ensures that.
6320         Before this bug fix, for the events when `regexp-function' and
6321         `search-default-mode' both were nil, `description' also stayed nil.  So
6322         when `space-before' was non-nil, the "non-string" `description'
6323         (with a value of nil) got passed as an argument to
6324         `replace-regexp-in-string' (where a string was expected).  That caused
6325         the error described in Bug#23038.
6327 2016-03-21  Leo Liu  <sdl.web@gmail.com>
6329         Fix (args-out-of-range 1) error in cursor-sensor--detect
6331         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor--detect): Don't
6332           hard-code (point-min) as 1 which fails in narrowed buffers.
6334 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
6336         Render empty <ul><li><ul> correctly
6338         * lisp/net/shr.el (shr-tag-ul): Render empty <ul><li><ul>
6339         correctly (bug#22964).
6340         (cherry picked from commit 4f6ea3988b66cf132c67fd0cc26d12eb9a300ba1)
6342         Backport:
6344 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
6346         Ignore invalid base64 encoded embedded images
6348         * lisp/net/shr.el (shr-image-from-data): Ignore invalid base64
6349         encoded embedded images (bug#22928).
6350         (cherry picked from commit f2da80d0e1ccd121c4891e869a45aeb9c6b1795d)
6352         Backport:
6354 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
6356         Fix <p> and <div> newlines with or without <li> in shr
6358         * lisp/net/shr.el (shr-ensure-newline): Respect that we're in
6359         a <li>, if we are, and don't insert newlines there.
6360         (shr-ensure-paragraph): When mixing newlines and paragraph
6361         ensurements, don't insert too many blank lines.
6362         (shr-tag-div): A <div> shouldn't introduce a paragraph, but a
6363         new line.
6364         (cherry picked from commit 292921facaff2f02ac4e8602c1f7ecbdcfe7ef45)
6366         Backport:
6368 2016-03-19  Eli Zaretskii  <eliz@gnu.org>
6370         Avoid errors in 'newline'
6372         * lisp/simple.el (newline): Don't barf if invoked with
6373         non-positive argument in the middle of a line.  (Bug#22490)
6375 2016-03-19  Michael Albinus  <michael.albinus@gmx.de>
6377         Fix Bug#23032
6379         * doc/misc/eshell.texi (Arguments): Mention the pipe symbol in
6380         remote file names.  (Bug#23032)
6382 2016-03-19  Eli Zaretskii  <eliz@gnu.org>
6384         Adjudicate review comments in abbrevs.texi
6386         * doc/lispref/abbrevs.texi (Abbrev Files, Abbrev Expansion):
6387         * doc/emacs/abbrevs.texi (Dabbrev Customization): State the
6388         default values of variables.  Suggested by Steve Byrne
6389         <sbb@penguinis.org>.  (Bug#23016)
6391         * admin/release-process (Check manuals): Mark files reviewed by
6392         Steve Byrne.
6394 2016-03-18  Dmitry Gutov  <dgutov@yandex.ru>
6396         Fixup the "normal" matcher; highlight global var symbols, too
6398         * lisp/progmodes/ruby-mode.el (ruby-font-lock-keywords): Highlight
6399         operator name symbols with the "normal" matcher (it actually
6400         needed updating).  Highlight global variable symbols, too.
6402 2016-03-18  Marcin Borkowski  <mbork@mbork.pl>
6404         Honor prefix arg in doc-view-next-line-or-next-page
6406         * lisp/doc-view.el (doc-view-next-line-or-next-page): Take the
6407         prefix argument into consideration when continuous scrolling is
6408         not in effect (i.e., by default) (bug#19559).
6410 2016-03-18  Paul Eggert  <eggert@cs.ucla.edu>
6412         Port to strict C99 offsetof
6414         * src/bidi.c (bidi_copy_it):
6415         * src/lisp.h (CHAR_TABLE_EXTRA_SLOTS):
6416         Use only a single identifier as the second argument of offsetof.
6417         Found by using clang -pedantic.
6419 2016-03-18  Paul Eggert  <eggert@cs.ucla.edu>
6421         Port to GTK with strict C11 compiler
6423         * src/gtkutil.c (xg_create_frame_widgets, xg_toggle_notify_cb):
6424         Cast from function type to void * where the C standard requires this.
6425         This works around a problem in the prototypes for
6426         g_signal_handler_find and g_signal_handlers_block_by_func, which
6427         use gpointer instead of GCallback.  Found by using gcc -pedantic.
6429 2016-03-18  Paul Eggert  <eggert@cs.ucla.edu>
6431         Port to GTK with strict C99 compiler
6433         * src/emacsgtkfixed.c: Use workaround for GNOME bug 683906 only
6434         in glib 2.35.6 and earlier, since the bug is fixed in 2.35.7.
6435         * src/emacsgtkfixed.c (EmacsFixedPrivate):
6436         * src/emacsgtkfixed.h (EmacsFixedClass):
6437         Remove duplicate typedef, which strict C99 does not allow (Bug#23003).
6439 2016-03-17  Anders Lindgren  <andlind@gmail.com>
6441         Avoid screen artifacts with new OS X visible bell after scrolling
6443         * src/nsterm.m (EmacsBell): Save NSView when displaying the
6444         visible bell and set `needsDisplay' when removed.
6445         (hide_bell): Trace.
6446         (ns_copy_bits): Trace.
6448 2016-03-17  Michael Albinus  <michael.albinus@gmx.de>
6450         Suppress some Tramp tests for OSX, do not merge with master
6452         * test/automated/tramp-tests.el (tramp--test-darwin-p): New defun.
6453         (tramp--test-utf8): Use it.  (Bug#22145)
6455 2016-03-17  Glenn Morris  <rgm@gnu.org>
6457         * lisp/progmodes/xref.el (xref-buffer-name, xref--window):
6458         Move definitions before use.
6460         * lisp/gnus/mm-decode.el (gnus-format-message): Autoload it.
6462         * lisp/mail/rmail.el (rmail-mime-entity-truncated): Declare.
6464 2016-03-17  Glenn Morris  <rgm@gnu.org>
6466         Address compilation warnings due to 2016-01-03 mml refactoring.
6468         * lisp/gnus/mml-sec.el (password-cache, mm-encode): Require.
6469         (message-options-get): Autoload.
6470         (message-options-set): Declare.
6471         (mml-secure-cache-passphrase, mml-secure-passphrase-cache-expiry):
6472         Simplify default value.
6473         * lisp/gnus/mml-smime.el (message-options-set): Remove declaration.
6474         * lisp/gnus/mml1991.el, lisp/gnus/mml2015.el:
6475         No longer a need for password-cache.
6477 2016-03-16  Stefan Monnier  <monnier@iro.umontreal.ca>
6479         * lisp/emacs-lisp/smie.el (smie-indent-keyword): Don't burp in strings
6481         (bug#22960).
6483 2016-03-16  Glenn Morris  <rgm@gnu.org>
6485         * lisp/dired-x.el (dired-omit-here-always): Correct error message
6486         for 2016-01-25 change.
6488         * lisp/dired-x.el (dired-omit-here-always): Replace undefined function
6489         removed 2016-01-30.
6491         * lisp/xml.el (xml-parse-tag-1): Replace undefined function.
6493 2016-03-16  Eli Zaretskii  <eliz@gnu.org>
6495         Avoid segfaults due to frame image cache being absent
6497         * src/image.c (cache_image): If the frame doesn't have an image
6498         cache, create it.  (Bug#23028)
6500 2016-03-16  Eli Zaretskii  <eliz@gnu.org>
6502         Improve documentation of glyphless-character display
6504         * doc/emacs/display.texi (Text Display): Document and index the
6505         'glyphless-char' face.
6507 2016-03-16  Dmitry Gutov  <dgutov@yandex.ru>
6509         Support safe navigation operator in non-SMIE indentation code
6511         * lisp/progmodes/ruby-mode.el (ruby-calculate-indent):
6512         Support safe navigation operator in non-SMIE indentation code.
6513         Cherry-picked from
6514         https://github.com/ruby/ruby/commit/68e16ddd7961b86e5013e62ae2954e88638de058.
6516 2016-03-16  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
6518         Move xsd:base64Binary decoding fix to debbugs.el 0.9.1
6520         * lisp/net/soap-client.el (soap-encode-xs-basic-type): Do not
6521         assume xsd:base64Binary values are UTF-8 strings.
6522         (soap-decode-xs-basic-type): Likewise.
6523         (soap-invoke): Document xsd:base64Binary handling.
6525 2016-03-15  Dmitry Gutov  <dgutov@yandex.ru>
6527         Fix Ruby's operator precedence
6529         * lisp/progmodes/ruby-mode.el (ruby-smie-grammar):
6530         Rearrange the smie-precs->prec2 form.
6532 2016-03-15  Dmitry Gutov  <dgutov@yandex.ru>
6534         (ruby-interpolation-inside-another-interpolation): New failing test
6536         * test/automated/ruby-mode-tests.el
6537         (ruby-interpolation-inside-another-interpolation):
6538         New failing test.
6540 2016-03-15  Paul Eggert  <eggert@cs.ucla.edu>
6542         Port to clang 3.7.0 on x86-64
6544         * configure.ac: Use AS_IF so that gl_WARN_ADD’s prerequisites are
6545         not done conditionally.  This helps clang, which needs
6546         -Wunknown-warning-option later when configured with warnings.
6547         * src/editfns.c (invalid_time): Now _Noreturn, since clang isn’t
6548         smart enough to figure this out on its own if warnings are enabled.
6549         (lisp_time_struct): Redo for clarity, and to pacify clang.
6550         * src/xfns.c (x_real_pos_and_offsets) [USE_XCB]: Don’t use
6551         uninitialized locals.  This avoids undefined behavior and pacifies
6552         clang.
6554 2016-03-15  Glenn Morris  <rgm@gnu.org>
6556         * test/automated/package-test.el (package-test-signed): Tweak skip
6557         condition, for hydra.
6559 2016-03-15  Paul Eggert  <eggert@cs.ucla.edu>
6561         Sync with gnulib
6563         This incorporates:
6564         2016-03-15 time_rz: port to clang -Wunused-const-variable
6565         2016-03-15 select: port more to Intel 2016.1.150 compiler
6566         * lib/sys_select.in.h, lib/time_rz.c: Copy from gnulib.
6568 2016-03-15  Eli Zaretskii  <eliz@gnu.org>
6570         Fix startup of "emacs -nw" on systems that CANNOT_DUMP
6572         * src/xdisp.c (syms_of_xdisp) <resize-mini-windows>: Initialize to
6573         nil.
6575         * lisp/loadup.el <resize-mini-windows>: Set to 'grow-only' after
6576         loading window.el.  (Bug#22975)
6578 2016-03-14  Dmitry Gutov  <dgutov@yandex.ru>
6580         Do not tokenize a comment before continuation as ';'
6582         * lisp/progmodes/ruby-mode.el (ruby-smie--implicit-semi-p):
6583         Account for a comment right after point.
6585 2016-03-14  Dmitry Gutov  <dgutov@yandex.ru>
6587         Don't misindent arguments of a method call inside continuation
6589         * lisp/progmodes/ruby-mode.el (ruby-smie-rules):
6590         Use smie-indent-virtual instead of smie-rule-parent (bug#23015).
6591         Simplify the traversal loop.
6593 2016-03-14  Stefan Monnier  <monnier@iro.umontreal.ca>
6595         * src/keyboard.c (echo_keystrokes_p): Don't test cursor_in_echo_area
6597         (read_key_sequence): Test it here, as before.
6598         (bug#22825).
6600 2016-03-14  Paul Eggert  <eggert@cs.ucla.edu>
6602         ASCII-only etc/NEWS etc.
6604         * etc/NEWS, nextstep/README: Revert the recently-added curved
6605         quotes, and stick to ASCII.  This typically involves replacing
6606         curved with straight quotes.  Since etc/NEWS is viewed so often by
6607         UTF-8-ignorant tools, rewrite its non-ASCII text to spell out
6608         Unicode, e.g., replace ‘‒’ with ‘U+2012 (FIGURE DASH)’.
6610 2016-03-14  Alan Mackenzie  <acm@muc.de>
6612         Fix a cacheing bug, which led to inordinately slow c-beginning-of-defun.
6614         * lisp/progmodes/cc-defs.el (c-self-bind-state-cache): New macro.
6616         * lisp/progmodes/cc-engine.el (c-ssb-lit-begin): Always call c-parse-state
6617         rather than just using the cache variable c-state-cache.
6618         (c-syntactic-skip-backward): Invoke c-self-bind-state-cache to isolate calls
6619         to c-parse-state from other uses of the parse state cache.
6621         * lisp/progmodes/cc-cmds.el (c-beginning-of-defun, c-end-of-defun): Invoke
6622         c-self-bind-state-cache around the processing, replacing flawed bindings of
6623         c-state-cache.
6625 2016-03-14  Alan Mackenzie  <acm@muc.de>
6627         Fix a cacheing bug, which led to inordinately slow c-beginning-of-defun.
6629         * lisp/progmodes/cc-defs.el (c-self-bind-state-cache): New macro.
6631         * lisp/progmodes/cc-engine.el (c-ssb-lit-begin): Always call c-parse-state
6632         rather than just using the cache variable c-state-cache.
6633         (c-syntactic-skip-backward): Invoke c-self-bind-state-cache to isolate calls
6634         to c-parse-state from other uses of the parse state cache.
6636         * lisp/progmodes/cc-cmds.el (c-beginning-of-defun, c-end-of-defun): Invoke
6637         c-self-bind-state-cache around the processing, replacing flawed bindings of
6638         c-state-cache.
6640 2016-03-14  Kaushal Modi  <kaushal.modi@gmail.com>
6642         Fix Isearch prompt when invoked with an argument
6644         * lisp/isearch.el (isearch--describe-regexp-mode): With
6645         `search-default-mode' set to nil, if user does C-u C-s, the minibuffer
6646         now displays "Regexp I-search: " again.  But if the user has set
6647         `search-default-mode' to t, and then does C-s, the minibuffer now
6648         displays "I-search: " because the default search mode is now regexp
6649         mode.  Comments have been added to explain the priority of conditions
6650         in the `cond' form.  (Bug#22991)
6652 2016-03-14  Cesar Quiroz  <cesar.quiroz@gmail.com>  (tiny change)
6654         Fix a typo in the Emacs manual
6656         * doc/emacs/maintaining.texi (VC Directory Commands): Fix a typo
6657         in a command name.
6659 2016-03-14  Paul Eggert  <eggert@cs.ucla.edu>
6661         Curved quotes in etc/NEWS etc.
6663         * etc/NEWS, nextstep/README: Prefer curved quotes in the
6664         recently-changed text documentation.  See:
6665         https://lists.gnu.org/r/emacs-devel/2016-03/msg00860.html
6667 2016-03-14  Paul Eggert  <eggert@cs.ucla.edu>
6669         Fix some single quotes in documentation
6671         * doc/emacs/anti.texi (Antinews): Avoid confusion in info and PDF
6672         when documenting quoting styles.
6673         * etc/NEWS, nextstep/README: In these plain text files, quote
6674         'like this' consistently, rather than also (sometimes) ‘like this’
6675         or (more often) `like this'.
6677 2016-03-13  Dmitry Gutov  <dgutov@yandex.ru>
6679         Make lisp-completion-at-point's argument optional
6681         * lisp/progmodes/elisp-mode.el (lisp-completion-at-point): Make
6682         the argument optional, like it was before the rename.
6684 2016-03-13  Dmitry Gutov  <dgutov@yandex.ru>
6686         Tweak the left precedence of '=>'
6688         * lisp/progmodes/ruby-mode.el (ruby-smie-grammar): Tweak the left
6689         precedence of '=>', to improve indentation and sexp navigation.
6691 2016-03-13  Dmitry Gutov  <dgutov@yandex.ru>
6693         Indent '.' relative to the first sibling expression
6695         * lisp/progmodes/ruby-mode.el (ruby-smie-rules):
6696         Indent '.' relative to the first sibling expression, instead of the
6697         parent token (bug#17213).
6699 2016-03-13  Dmitry Gutov  <dgutov@yandex.ru>
6701         Make '.' associative, for easier sexp navigation
6703         * lisp/progmodes/ruby-mode.el (ruby-smie-grammar):
6704         Make '.' associative, for easier sexp navigation.
6706 2016-03-13  Phillip Lord  <phillip.lord@russet.org.uk>
6708         Revert "Simplify "Visit New File" to "New File""
6710         This reverts commit d457fd9dc782465e1547f74021390c9d5951d6af.
6712 2016-03-12  Phillip Lord  <phillip.lord@russet.org.uk>
6714         Simplify "Visit New File" to "New File"
6716         * doc/emacs/files.texi, lisp/menu-bar.el (menu-bar-file-menu),
6717           lisp/startup.el(normal-mouse-start-screen,
6718           normal-no-mouse-startup-screen): Change label "Visit New File" to "New
6719           File".
6721 2016-03-12  Eli Zaretskii  <eliz@gnu.org>
6723         Update Unicode notes for importing a new Unicode version
6725         * admin/notes/unicode: Mention the need to update otf-script-alist
6726         in fontset.el when importing data files from a new Unicode
6727         version.
6729 2016-03-12  Eli Zaretskii  <eliz@gnu.org>
6731         Import new data files from Unicode 9.0.0beta
6733         * admin/unidata/UnicodeData.txt:
6734         * admin/unidata/Blocks.txt:
6735         * admin/unidata/BidiMirroring.txt:
6736         * admin/unidata/BidiBrackets.txt: Update from Unicode 9.0.0beta.
6737         * admin/unidata/unidata-gen.el (unidata-gen-files): Bind
6738         'coding-system-for-read' to 'utf-8, as various Unicode data files
6739         now actually use non-ASCII characters.
6740         (unidata-setup-list, unidata-get-name): Support the new Tangut
6741         Ideographs block.
6743         * lisp/international/characters.el (standard-case-table): Add new
6744         characters from Unicode 9.0.0.
6745         (standard-category-table): Add Arabic block u+08A0..u+08FF.  Add
6746         Cyrillic Extended-C block.
6747         (char-width-table): Update ranges per Unicode 9.0.0.
6748         * lisp/international/fontset.el (script-representative-chars): Add
6749         new scripts defined by Unicode 9.0.0.
6750         (otf-script-alist): Add new OTF script tags.
6751         * lisp/international/mule-cmds.el (ucs-names): Update ranges per
6752         Unicode 9.0.0 additions.
6754 2016-03-12  Eli Zaretskii  <eliz@gnu.org>
6756         Avoid errors in forms-mode when default major mode is text
6758         * lisp/forms.el (forms-mode): Bind
6759         change-major-mode-with-file-name to nil when calling
6760         set-visited-file-name.  (Bug#22982)
6762 2016-03-12  Eli Zaretskii  <eliz@gnu.org>
6764         Avoid crashes at startup on systems that CANNOT_DUMP
6766         * src/xdisp.c (syms_of_xdisp) <redisplay--inhibit-bidi>: New
6767         boolean variable.
6768         (init_iterator, reseat_to_string)
6769         (Fcurrent_bidi_paragraph_direction)
6770         (Fbidi_find_overridden_directionality): Use
6771         redisplay--inhibit-bidi instead of purify-flag, to determine when
6772         it's safe to reorder bidirectional text.
6774         * lisp/loadup.el (redisplay--inhibit-bidi): Set to t at the
6775         beginning of the file.  Reset to nil when charprop.el is
6776         successfully loaded, or when we are going to dump, whichever
6777         happens last.  (Bug#22975)
6779 2016-03-12  Eli Zaretskii  <eliz@gnu.org>
6781         Fix documentation of seq.el functions
6783         * doc/lispref/sequences.texi (Sequence Functions): Fix typos.  Add
6784         cross-references.  Fix formatting.  (Bug#22992)
6786 2016-03-11  Dmitry Gutov  <dgutov@yandex.ru>
6788         Support Ruby 2.3.0's safe navigation operator
6790         * lisp/progmodes/ruby-mode.el (ruby-smie--forward-token)
6791         (ruby-smie--backward-token): Tokenize '&.' as '.'.
6792         (ruby-smie--implicit-semi-p): Check for possible '&' before '.'.
6794         * test/indent/ruby.rb: Add an example using safe navigation
6795         operator.  Fix a syntax error in existing example.
6797 2016-03-11  John Wiegley  <johnw@newartisans.com>
6799         Update Emacs manual section related to character folding
6801         * doc/emacs/search.texi: Character folding is not on by default.
6803 2016-03-11  Eli Zaretskii  <eliz@gnu.org>
6805         Update admin/notes/unicode
6807         * admin/notes/unicode: Update the list of files from the UCD we
6808         are using.  Mention the possible need to change 'ucs-names' when
6809         importing a new version of the Unicode Standard.
6811 2016-03-10  Dmitry Gutov  <dgutov@yandex.ru>
6813         Add symref-filepattern entries for c?perl-mode
6815         * lisp/cedet/semantic/symref/grep.el
6816         (semantic-symref-filepattern-alist): Add entries for perl-mode and
6817         cperl-mode.
6819 2016-03-10  Ken Raeburn  <raeburn@raeburn.org>
6821         Don't use XRANDR 1.3 extensions if the server doesn't support them.
6823         * src/xterm.h (struct x_display_info): Add fields to save XRANDR
6824         version number.
6825         * src/xfns.c (x_get_monitor_attributes): Save the version numbers
6826         after querying the X server.
6827         (x_get_monitor_attributes_xrandr): Don't use XRRGetOutputPrimary or
6828         XRRGetScreenResourcesCurrent if the server doesn't support at least
6829         RANDR version 1.3.  Conditionalize the code blocks on compiling
6830         against library version 1.3 or better, rather than feature tests for
6831         each function.
6832         * configure.ac: Stop testing for those two functions.
6834 2016-03-10  Paul Eggert  <eggert@cs.ucla.edu>
6836         Sync with gnulib
6838         This incorporates:
6839         2016-03-08 intprops: make .h file license match module
6840         2016-03-08 acl: fix missing return on Cygwin
6841         2016-03-05 extern-inline: port to PGI CC
6842         * doc/misc/texinfo.tex, lib/intprops.h, lib/set-permissions.c:
6843         * m4/extern-inline.m4:
6844         Copy from gnulib.
6846 2016-03-10  Paul Eggert  <eggert@cs.ucla.edu>
6848         Rework C source files to avoid ^(
6850         Work around Bug#22884 by rewording comments and strings to avoid ‘(’
6851         at the start of a line unless it starts a function.  This change
6852         is a short-term hack; in the longer run we plan to fix cc-mode’s
6853         performance for C files that have ‘(’ at the start of a line in a
6854         comment or string.
6856 2016-03-10  Eli Zaretskii  <eliz@gnu.org>
6858         By default, etags produces unqualified Perl tag names
6860         * lib-src/etags.c (Perl_functions): Produce unqualified names,
6861         unless -Q was specified.
6862         (print_help): Update the description of -Q.
6864         * doc/man/etags.1: Update the documentation of -Q.
6866         * test/etags/ETAGS.good_1:
6867         * test/etags/ETAGS.good_2:
6868         * test/etags/ETAGS.good_3:
6869         * test/etags/ETAGS.good_4:
6870         * test/etags/ETAGS.good_5:
6871         * test/etags/CTAGS.good: Adapt the expected test results to the
6872         changed Perl functionality.
6874 2016-03-10  Dmitry Gutov  <dgutov@yandex.ru>
6876         Indent methods with keyword names correctly
6878         * lisp/progmodes/ruby-mode.el (ruby-smie--at-dot-call):
6879         Rename to ruby-smie--before-method-name.  Now also check if we're
6880         after a 'def' keyword.  Update both callers.
6882 2016-03-10  Dmitry Gutov  <dgutov@yandex.ru>
6884         Propertize character literals and special global variables differently
6886         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize): Propertize
6887         character literals and global variables with special names with
6888         prefix and symbol syntax classes, for SMIE to tokenize them
6889         together automatically.
6890         (ruby-font-lock-keywords): Fix an old regression in highlighting
6891         character literals.
6893 2016-03-09  John Wiegley  <johnw@newartisans.com>
6895         Change how /etc/NEWS presents character folding
6897         * NEWS: Note that character folding is no longer the default.
6899 2016-03-09  John Wiegley  <johnw@newartisans.com>
6901         Revert "Revert "Backport: * lisp/isearch.el: Turn char-folding off by default""
6903         This reverts commit a91b4b51ddf2575d821adb8b84fdf32cff83886e.
6905 2016-03-09  Andreas Schwab  <schwab@linux-m68k.org>
6907         Properly handle lambda as read function (bug 22961)
6909         * src/lread.c (readchar): Be more strict about checking for
6910         string in cons for read_vector.
6911         (unreadchar): Likewise.
6913 2016-03-09  Dmitry Gutov  <dgutov@yandex.ru>
6915         Propertize operator symbol names with symbol syntax class
6917         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize):
6918         Do it here.
6919         (ruby-font-lock-keywords): Instead of handling them here.  Leave
6920         highlighting them to the "normal" matcher, because now we can.
6921         (ruby-smie--forward-token, ruby-smie--backward-token):
6922         Likewise, don't special-case operator symbols anymore.
6923         (ruby-smie--args-separator-p): Simplify the regexp, match operator
6924         names with \s_.
6925         (ruby-smie--implicit-semi-p): Handle the special cases of ? and =
6926         at EOL the same way: check if the character has been assigned the
6927         symbol syntax class by syntax-propertize.
6929 2016-03-09  Dmitry Gutov  <dgutov@yandex.ru>
6931         Stop recognizing :#{} as symbol in ruby-mode
6933         * lisp/progmodes/ruby-mode.el (ruby-font-lock-keywords): Remove
6934         the weird part that recognized colon followed by interpolation
6935         construct without quotes (e.g. ':#{abc}') as symbol, which is just a
6936         syntax error in any modern version of Ruby.  Fix nearby bug reference.
6938 2016-03-09  Dmitry Gutov  <dgutov@yandex.ru>
6940         Allow using the left shift operator without spaces on both sides
6942         * lisp/progmodes/ruby-mode.el (ruby-singleton-class-p): Rename to
6943         ruby-verify-heredoc, reverse the meaning of the return value, and
6944         short-circuit if preceded by a symbol not separated by whitespace.
6946         * test/automated/ruby-mode-tests.el (ruby-no-heredoc-left-shift)
6947         (ruby-no-heredoc-class-self): New tests.
6949 2016-03-08  Andreas Schwab  <schwab@linux-m68k.org>
6951         Properly handle unquoting in wdired (bug 22938)
6953         The recorded old names are not quoted, don't unquote them.
6955         * lisp/wdired.el (wdired-normalize-filename): Add argument
6956         unquotep, only unquote if non-nil.
6957         (wdired-get-filename): Don't unquote the old file name.
6958         (wdired-get-previous-link): Always unquote.
6960 2016-03-06  Dmitry Gutov  <dgutov@yandex.ru>
6962         Allow splat operator before percent literal
6964         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize):
6965         Allow splat operator before percent literal.
6967 2016-03-06  Dmitry Gutov  <dgutov@yandex.ru>
6969         Don't apply the return value of goto-char as syntax class
6971         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize): Don't
6972         apply the return value of goto-char as syntax class.
6974 2016-03-06  Dmitry Gutov  <dgutov@yandex.ru>
6976         Guard against nested percent literals
6978         * lisp/progmodes/ruby-mode.el
6979         (ruby-syntax-propertize-percent-literal):
6980         Don't check the syntax status.
6981         (ruby-syntax-propertize): Check it here.  And also guard against
6982         being in a larger percent literal.
6984         * test/automated/ruby-mode-tests.el
6985         (ruby-no-nested-percent-literals): New test.
6987 2016-03-06  Dmitry Gutov  <dgutov@yandex.ru>
6989         Recognize iuwu-mod after an escaped newline
6991         * lisp/progmodes/ruby-mode.el (ruby-smie--bosp): Check if the
6992         newline is escaped.
6993         (ruby-smie-rules): Indent iuwu-mod after an escaped newline
6994         correctly.
6996 2016-03-06  Andreas Schwab  <schwab@linux-m68k.org>
6998         Fix symbolic mode string conversion for s and t
7000         * lisp/files.el (file-modes-char-to-right): Fix values for ?s and
7001         ?t.
7002         (file-modes-symbolic-to-number): Default to a for ts permissions.
7004 2016-03-06  Eli Zaretskii  <eliz@gnu.org>
7006         Update 'ucs-names' database
7008         * lisp/international/mule-cmds.el (ucs-names): Update used and
7009         unused ranges from the latest UnicodeData.txt.
7011 2016-03-06  Eli Zaretskii  <eliz@gnu.org>
7013         Improve doc string of 'shell-command'
7015         * lisp/simple.el (shell-command): Mention that COMMAND is prompted
7016         for.  (Bug#22926)
7018 2016-03-06  Eli Zaretskii  <eliz@gnu.org>
7020         Make the code in movemail_strftime more general
7022         * lib-src/movemail.c (movemail_strftime): Transform the format
7023         string passed by the caller instead of using a separate format
7024         string.
7026 2016-03-06  Eli Zaretskii  <eliz@gnu.org>
7028         Speed up redisplay of binary files with long series of nulls
7030         * src/bidi.c (bidi_resolve_weak): Avoid entering a loop searching
7031         for a character needed for resolving the type of a series of BN
7032         and ET characters, as required by rule W5 of UAX#9, if the results
7033         of the resolution are known in advance, because we are at level
7034         zero, and the previous strong character was L.
7035         (bidi_resolve_neutral): Partially resurrect the optimization for a
7036         long series of control characters in an otherwise strictly L2R
7037         text.
7038         (bidi_level_of_next_char): Don't enter the loop that searches for
7039         a paragraph separator if the current character is already at base
7040         embedding level.  (Bug#22739)
7042 2016-03-05  Dmitry Gutov  <dgutov@yandex.ru>
7044         Remove the highlighting support for quoting 'like this' inside Lisp docstrings
7046         Remove the highlighting support for quoting 'like this' inside
7047         Lisp docstrings.  This part of
7048         c4151ebe15479de4c2e511b068cdf9af6a4576cf seems to have been
7049         unintentional, considering substitute-command-keys gives wrong
7050         output for such usage.
7051         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2)
7052         (lisp-cl-font-lock-keywords-2): Do not highlight text between two
7053         straight quotes as symbol.
7055 2016-03-05  Paul Eggert  <eggert@cs.ucla.edu>
7057         Restore leading space in movemail pop output
7059         * lib-src/movemail.c (movemail_strftime) [WINDOWSNT]: New function.
7060         (strftime) [WINDOWSNT]: New macro.
7061         (mbx_delimit_begin): Go back to previous version of this code,
7062         now that there’s a special-purpose WINDOWSNT implementation
7063         that should do the right thing.  That way, the output continues
7064         to use leading space rather than leading zero for day of month.
7066 2016-03-05  Eli Zaretskii  <eliz@gnu.org>
7068         Fix bidi-paragraph-direction in Rmail view buffer
7070         * lisp/mail/rmail.el (rmail-show-message-1): Reset
7071         bidi-paragraph-direction to nil before formatting the message for
7072         display.
7074 2016-03-05  Dmitry Gutov  <dgutov@yandex.ru>
7076         Don't misindent computed property generator methods
7078         * lisp/progmodes/js.el (js--looking-at-operator-p):
7079         Don't misindent computed property generator methods
7080         (https://github.com/mooz/js2-mode/issues/317).
7082 2016-03-05  Eli Zaretskii  <eliz@gnu.org>
7084         Fix mbox files produced by movemail on MS-Windows
7086         * lib-src/movemail.c (mbx_delimit_begin): Use portable strftime
7087         format specifiers, as at least the MS-Windows version of strftime
7088         doesn't support %e and %T.
7090 2016-03-04  Paul Eggert  <eggert@cs.ucla.edu>
7092         doc string file descriptor exhaustion fix
7094         * src/doc.c (get_doc_string): Move newly-added check to a better
7095         location (Bug#22814).
7097 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
7099         Fix Bug#22814
7101         * src/doc.c (get_doc_string): Raise an error in case too many
7102         files are open.  (Bug#22814)
7104 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
7106         Fix insertion of edited servers in the dribble file
7108         * lisp/gnus/gnus-srvr.el (gnus-server-update-server): Don't
7109         insert explicit newlines, because they're quoted (bug#22903).
7111         Backport:
7113         (cherry picked from commit ca4e30058eba0531f38fff75f14734acffab84ea)
7115 2016-03-04  Martin Rudalics  <rudalics@gmx.at>
7117         Fix previous fix of enlarge-/shrink-window
7119         * lisp/window.el (enlarge-window, shrink-window): Consistently
7120         signal user-error instead of error.  Resize minibuffer window by
7121         delta lines instead of pixels.  When a window cannot be resized,
7122         signal an error only when this function was invoked by a command
7123         in the enlarge-/shrink-window group (this restores the behavior
7124         before the fix of bug#22723 for the non-interactive case).
7126 2016-03-03  Artur Malabarba  <bruce.connor.am@gmail.com>
7128         * lisp/isearch.el (isearch-define-mode-toggle): Fix toggling logic
7130 2016-03-03  Mark Oteiza  <mvoteiza@udel.edu>
7132         Complete temperature units in calc-convert-temperature
7134         * lisp/calc/calc-units.el (calc-convert-temperature): Complete with
7135         temperature units in math-standard-units.
7137 2016-03-02  Dmitry Gutov  <dgutov@yandex.ru>
7139         Make sure to use case-sensitive search
7141         * lisp/progmodes/xref.el (xref-collect-references): Make sure to
7142         use case-sensitive search.
7144 2016-03-02  Ulf Jasper  <ulf.jasper@web.de>
7146         Prevent infinite loop on not-well-formed xml. (Bug#16344)
7148         * lisp/xml.el (xml-parse-tag-1): Prevent inifinite loop. (Bug#16344)
7149         * test/automated/xml-parse-tests.el (xml-parse-tests--bad-data): Add
7150           test cases for Bug#16344.
7152 2016-03-02  Alan Third  <alan@idiocy.org>
7154         Add the missing test case for the previous patch
7156         lisp/dabbrev.el (dabbrev--substitute-expansion): Return EXPANSION after
7157         any processing.
7158         lisp/dabbrev.el (dabbrev-expand): Set EXPANSION to the return value of
7159         DABBREV--SUBSTITUTE-EXPANSION.
7160         test/automated/dabbrev-tests.el (dabbrev-expand-test): Test for bug#1948.
7162 2016-03-02  Alan Third  <alan@idiocy.org>
7164         Use the correct dabbrev expansion
7166         lisp/dabbrev.el (dabbrev--substitute-expansion): Return EXPANSION after
7167         any processing.
7168         lisp/dabbrev.el (dabbrev-expand): Set EXPANSION to the return value of
7169         DABBREV--SUBSTITUTE-EXPANSION.
7170         test/automated/dabbrev-tests.el (dabbrev-expand-test): Test for bug#1948.
7172 2016-03-02  Nicolas Petton  <nicolas@petton.fr>
7174         Bump version to 25.0.92
7176         * README:
7177         * configure.ac:
7178         * msdos/sed2v2.inp: Bump version to 25.0.92.
7180 2016-03-02  Nicolas Petton  <nicolas@petton.fr>
7182         * etc/AUTHORS: Update the AUTHORS file
7184 2016-03-02  Nicolas Petton  <nicolas@petton.fr>
7186         authors.el updates
7188         * admin/authors.el (authors-ignored-files): Addition.
7190 2016-03-02  Michael Albinus  <michael.albinus@gmx.de>
7192         Fix Bug#22859
7194         * lisp/filenotify.el (file-notify-callback): Return a `deleted'
7195         event in case of kqueue and file1 is nil.  (Bug#22859)
7197 2016-03-01  Eli Zaretskii  <eliz@gnu.org>
7199         Fix reordering of bidi text in an isolate inside an override
7201         * src/bidi.c (bidi_resolve_explicit): Override the orig_type value
7202         of FSI with either LRI or RLI, as determined by the first strong
7203         directional character in the isolate.  This prevents failure to
7204         isolate when the FSI...PDI text is inside a directional override.
7205         (Bug#22786)
7207 2016-03-01  Alan Mackenzie  <acm@muc.de>
7209         Document c-guess-basic-syntax in the CC Mode manual.
7211         * doc/misc/cc-mode.texi (Syntactic Analysis): Document the function, adding
7212         pxrefs to Custom Line-Up and Other Indentation.
7213         (Custom Line-Up): Add a note on using c-guess-basic-syntax with a pxref to
7214         Syntactic Analysis.
7216 2016-03-01  Michael Albinus  <michael.albinus@gmx.de>
7218         Fix targets in test/automated/Makefile.in
7220         * test/automated/Makefile.in: Use $(SELECTOR_DEFAULT) also for
7221         empty target and target all.
7223 2016-03-01  Leo Liu  <sdl.web@gmail.com>
7225         Comment on last change to define-derived-mode
7227         * lisp/emacs-lisp/derived.el (define-derived-mode): Add comment.
7229 2016-03-01  Lars Ingebrigtsen  <larsi@gnus.org>
7231         Allow binding `url-mime-accept-string'
7233         * lisp/url/url-http.el (url-http): Allow binding
7234         `url-mime-accept-string' (bug#22855).
7236         Backport:
7238         (cherry picked from commit 144bb0cf322b9756d29def3e27a42303e2edce43)
7240 2016-03-01  Lars Ingebrigtsen  <larsi@gnus.org>
7242         Also allow setting the paragraph direction to nil
7244         * lisp/net/eww.el (eww-toggle-paragraph-direction): Also allow
7245         setting the paragraph direction to nil ("auto").
7247 2016-02-29  Anders Lindgren  <andlind@gmail.com>
7249         Made the new OS X visible bell more visible.
7251         * src/nsterm.m: (EmacsBell:init:) Scaled up the visible bell
7252           "caution" image five times, as the image in its original size
7253           was hard to see.
7255 2016-02-29  Lars Ingebrigtsen  <larsi@gnus.org>
7257         Use the correct background color when filling nested <divs>
7259         * lisp/net/shr.el (shr-face-background): Return the first
7260         background, because that's the one that's visible (bug#22680).
7262         Backport:
7264         (cherry picked from commit cad0bc70558f9c28c808711c5295dec9fc5ad6e5)
7266 2016-02-29  Lars Ingebrigtsen  <larsi@gnus.org>
7268         Make <div> in <li> not insert extra newlines
7270         * lisp/net/shr.el (shr-tag-div): Make <div> in <li> not insert
7271         extra newlines (bug#19587).
7273         Backport:
7275         (cherry picked from commit 379a846b8548dc32a9019ef0a37c02f62cd9bad1)
7277 2016-02-29  Dmitry Gutov  <dgutov@yandex.ru>
7279         Uncomment the next-error-function integration in xref
7281         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
7282         Uncomment the next-error-function integration
7283         (https://debbugs.gnu.org/cgi/bugreport.cgi?bug=20489#110).
7285 2016-02-29  Dmitry Gutov  <dgutov@yandex.ru>
7287         Remove the word "valid", to avoid ambiguity
7289         * doc/emacs/maintaining.texi (Identifier Search)
7290         (Looking Up Identifiers): Remove the word "valid" (bug#22692).
7292 2016-02-28  Michael Albinus  <michael.albinus@gmx.de>
7294         Set auto-revert-use-notify to nil in global-auto-revert-mode.  (Bug#22814)
7296         * etc/NEWS:
7297         * etc/PROBLEMS: Mention this.
7299         * lisp/autorevert.el (global-auto-revert-mode): Set
7300         `auto-revert-use-notify' to nil.  (Bug#22814)
7302 2016-02-28  Paul Eggert  <eggert@cs.ucla.edu>
7304         * etc/TODO: Minor quoting and grammar fixes.
7306 2016-02-28  Friedrich Beckmann  <friedrich.beckmann@gmx.de>  (tiny change)
7308         Fix ModelSim error parsing
7310         * lisp/progmodes/vhdl-mode.el (vhdl-compiler-alist): Fix
7311         ModelSim error parsing (bug#5768).
7313 2016-02-28  Lars Ingebrigtsen  <larsi@gnus.org>
7315         Make parse-time-string-chars faster
7317         * lisp/calendar/parse-time.el (parse-time-string-chars): Clean
7318         up the code (backport:).
7320 2016-02-28  Lars Ingebrigtsen  <larsi@gnus.org>
7322         Add a eww command to toggle paragraph direction
7324         * lisp/net/eww.el (eww-toggle-paragraph-direction): New
7325         command and keystroke.
7327         * doc/misc/eww.texi (Advanced): Mention the `D' command.
7329 2016-02-27  Glenn Morris  <rgm@gnu.org>
7331         * nextstep/WISHLIST: Merge into etc/TODO and remove.
7333         * etc/TODO: Merge in items from nextstep/WISHLIST.
7334         * nextstep/README: Update for this change.
7336 2016-02-27  Andreas Schwab  <schwab@linux-m68k.org>
7338         Fix char signedness issue in bidi code
7340         * src/dispextern.h (struct bidi_t): Change type of resolved_level
7341         and isolate_level to signed char.  (Bug#22830)
7343 2016-02-27  Andreas Schwab  <schwab@linux-m68k.org>
7345         * lib-src/pop.c (socket_connection): Fix format string.
7347 2016-02-27  Eli Zaretskii  <eliz@gnu.org>
7349         Avoid inflooping in thing-at-point-looking-at
7351         * lisp/thingatpt.el (thing-at-point-looking-at): Avoid inflooping
7352         with regular expressions whose matching doesn't move point.
7353         (Bug#22756)
7354         Describe the argument DISTANCE in the doc string.
7356 2016-02-27  Leo Liu  <sdl.web@gmail.com>
7358         * lisp/emacs-lisp/derived.el (define-derived-mode): Revert indent change.
7360 2016-02-26  Michael Albinus  <michael.albinus@gmx.de>
7362         etc/PROBLEMS: Mention problems with using file descriptors
7364         * etc/PROBLEMS: Mention problems with using file descriptors
7365         of kqueue file notification library.
7367 2016-02-26  Kaushal Modi  <kaushal.modi@gmail.com>
7369         * lisp/apropos.el (apropos-variable): Doc fix.  (Bug#22813).
7371 2016-02-25  Eli Zaretskii  <eliz@gnu.org>
7373         Remove unneeded workaround in xftfont.c
7375         * src/xftfont.c (xftfont_open): Remove "dirty workaround" for
7376         XftTextExtents8 behavior, as it is no longer needed.  Suggested by
7377         Fangwen Yu <yynyygy@gmail.com>.  (Bug#22383)
7379 2016-02-25  Stefan Monnier  <monnier@iro.umontreal.ca>
7381         * lisp/saveplace.el (save-place-local-mode): New minor mode
7383         (toggle-save-place): Define as obsolete alias.
7384         (save-place--setup-hooks): New function.
7385         (save-place-mode): Use it.
7387 2016-02-25  Eli Zaretskii  <eliz@gnu.org>
7389         Fix redisplay on a TTY after 'make-frame'
7391         * src/xdisp.c (clear_garbaged_frames): Don't clear/redraw a
7392         garbaged TTY frame if it is not the selected frame.  (Bug#22794)
7394 2016-02-25  Alan Mackenzie  <acm@muc.de>
7396         Make double-click-1 work with unbalanced parens in CC Mode.  Fixes bug#5560.
7398         * lisp/mouse.el (mouse-start-end): check the syntax of alleged parens with
7399         `syntax-after' to ensure syntax-table text properties are respected.
7401 2016-02-25  Magnus Henoch  <magnus.henoch@gmail.com>
7403         Input method polish-slash should not use keyboard translation
7405         * lisp/leim/quail/latin-pre.el ("polish-slash"): Input method
7406         polish-slash should not use keyboard translation (bug#19081).
7408 2016-02-25  Chris Feng  <chris.w.feng@gmail.com>
7410         Fix an assertion
7412         * src/dispnew.c (clear_glyph_matrix_rows): Test matrix->nrows == 0 (which
7413         implies start == 0) separately.
7415 2016-02-24  Eli Zaretskii  <eliz@gnu.org>
7417         Fix 'toggle-save-place'
7419         * lisp/saveplace.el (toggle-save-place): Set up hooks necessary to
7420         support save-place in the buffer.  Autoload the command.
7422 2016-02-24  Stefan Monnier  <monnier@iro.umontreal.ca>
7424         * src/keyboard.c: Don't inadvertently set immediate_echo (bug#22581)
7426         * src/keyboard.c (read_key_sequence): Don't inadvertently set
7427         immediate_echo when we don't want any echo-keystrokes.
7428         (echo_keystrokes_p): Move earlier.
7430 2016-02-24  Chris Zheng  <chriszheng99@gmail.com>  (tiny change)
7432         Minor fixes in calculator.el
7434         * lisp/calculator.el (calculator-mode-map): Bind `E' for
7435         `calculator-exp'.
7436         (calculator-last-input): Fix a bug with pressing F1.
7437         (Bug#20764)
7439 2016-02-24  Anders Lindgren  <andlind@gmail.com>
7441         Update HISTORY section in readme for the NextStep interface.
7443         * nextstep/README: Update HISTORY after suggestion
7444         from former maintainer Adrian Robert.
7446 2016-02-24  Eli Zaretskii  <eliz@gnu.org>
7448         Improve documentation of 'save-place-mode'
7450         * lisp/saveplace.el (toggle-save-place): Update the doc string wrt
7451         turning on 'save-place-mode' globally.
7453         * etc/NEWS: Mention the need to call 'save-place-mode' for turning
7454         on the mode in all buffers.
7456 2016-02-24  Chris Feng  <chris.w.feng@gmail.com>  (tiny change)
7458         Allocate glyph matrices for the initial frame
7460         * src/frame.c (make_initial_frame): Allocate glyph matrices (Bug#22787).
7462         * src/dispnew.c (clear_glyph_matrix_rows): matrix->nrows can be 0.
7464 2016-02-24  Lars Ingebrigtsen  <larsi@gnus.org>
7466         Fix white space in last checkin
7468 2016-02-24  Dima Kogan  <gnuplot@dima.secretsauce.net>
7470         Make `insert-pair' always leave the cursor where documented
7472         * lisp/emacs-lisp/lisp.el (insert-pair): The docstring of
7473         insert-pair states that after insertion, the point ends up
7474         after the opening character. This was not true if the pair was
7475         inserted to surround a region (bug#16949).
7477 2016-02-24  Kaushal Modi  <kaushal.modi@gmail.com>
7479         etc/NEWS: Mention the new second parameter to `package-install'
7481         * etc/NEWS: Mention the new second parameter to
7482         `package-install' (bug#22784).
7484 2016-02-24  John F. Trudeau  <JFTrudeau@aetna.com>  (tiny change)
7486         Highlight assignments in Makefiles more correctly
7488         * lisp/progmodes/make-mode.el (makefile-macroassign-regex):
7489         Highlight assignments preceded by a TAB character correctly
7490         (bug#20787).
7493         Backport:
7495         (cherry picked from commit bbd86c5642bd62c43d72391669f28eaa14459fd5)
7497 2016-02-23  Eli Zaretskii  <eliz@gnu.org>
7499         Improve documentation of focus-related hooks
7501         * doc/lispref/commands.texi (Focus Events): Mention focus-related
7502         hooks.  (Bug#21728)
7504 2016-02-23  Eli Zaretskii  <eliz@gnu.org>
7506         Further improve doc string of 'disable-point-adjustment'
7508         * src/keyboard.c (syms_of_keyboard): <disable-point-adjustment>
7509         <global-disable-point-adjustment>: Clarify doc strings.  (Bug#22771)
7511 2016-02-23  Michael Albinus  <michael.albinus@gmx.de>
7513         Further adaptions in file-notify-tests.el for w32notify
7515         * test/automated/file-notify-tests.el
7516         (file-notify--test-read-event-timeout, file-notify--test-timeout):
7517         Decrease values.
7518         (file-notify-test03-autorevert)
7519         (file-notify-test04-file-validity)
7520         (file-notify-test05-dir-validity): Run tests also for w32notify.
7521         (file-notify-test08-watched-file-in-watched-dir):
7522         Adapt expected events for w32notify.
7524 2016-02-23  Jan Tatarik  <jan.tatarik@gmail.com>
7526         Don't bug out on localized dates in gnus-icalendar
7528         * lisp/gnus/gnus-icalendar.el
7529         (gnus-icalendar-event:org-timestamp): Don't bug out on
7530         localized dates.
7532 2016-02-23  Drew Adams  <drew.adams@oracle.com>
7534         (ls-lisp-insert-directory): Make -B work
7536         * lisp/ls-lisp.el (ls-lisp-insert-directory): Make -B work
7537         (bug#20776).
7539         Backport:
7541         (cherry picked from commit ef52e66efd78aac4c4e5bd5e11870e5ba3b37a1e)
7543 2016-02-23  Vaidheeswaran C  <vaidheeswaran.chinnaraju@gmail.com>
7545         Make buttons in header lines work
7547         * lisp/help-mode.el (help-button-action): `help-xref-button' in
7548         header line doesn't work (bug#21024).
7550         Backport:
7552         (cherry picked from commit c11e565a6b6d09fa39d4c3ef65bef08190eaecc1)
7554 2016-02-23  Christopher Wellons  <wellons@nullprogram.com>
7556         Make setf for frame-height/width work again
7558         * lisp/emacs-lisp/cl-lib.el (frame-height): Make setf for
7559         frame-height/width work again (bug#21979).
7561 2016-02-23  Łukasz Stelmach  <stlman@poczta.fm>
7563         Encode header strings before printing
7565         * lisp/ps-print.el (ps-generate-header-line): Encode the
7566         header strings to avoid problems with non-ASCII headers
7567         (bug#22611).
7569         Backport:
7571         (cherry picked from commit 3cedbdcc71ebefc12bd20ec84f74251fe99ee7d0)
7573 2016-02-23  Nicolas Richard  <youngfrog@members.fsf.org>
7575         (cl-union): Do not ignore :test argument when lists are equal.
7577         * lisp/emacs-lisp/cl-seq.el (cl-union): Do not ignore :test argument when lists are equal.
7579         * test/automated/cl-seq-tests.el: New file (bug#22729).
7581 2016-02-23  Lars Ingebrigtsen  <larsi@gnus.org>
7583         Add `isearch' to `basic-faces'
7585         * doc/lispref/display.texi (Basic Faces): Mention the isearch
7586         and lazy-highlight faces.
7588         * lisp/replace.el (match): Add `isearch' to the `basic-faces'
7589         group, too (bug#22760).
7591 2016-02-23  Dmitry Gutov  <dgutov@yandex.ru>
7593         Make $, : and @ "prefix characters" in ruby-mode
7595         * lisp/progmodes/ruby-mode.el (ruby-mode-syntax-table): Change the
7596         syntax classes of $, : and @ to "prefix character"
7597         (https://lists.gnu.org/r/emacs-devel/2016-01/msg00272.html).
7598         (ruby-syntax-propertize): Undo that specifically for colons
7599         followed by an opening paren or bracket.
7600         (ruby-font-lock-keyword-beg-re): Include colon character.
7601         (ruby-font-lock-keywords): Adjust the constants matcher for `:'
7602         not being a symbol constituent anymore.
7604 2016-02-23  Dmitry Gutov  <dgutov@yandex.ru>
7606         Make find-tag-default-bounds more strict
7608         * lisp/subr.el (find-tag-default-bounds): Delegate to
7609         bounds-of-thing-at-point (bug#22692).
7611 2016-02-22  Michael Albinus  <michael.albinus@gmx.de>
7613         Minor fixes in filenotify.el
7615         * lisp/filenotify.el (top): Require 'cl-lib.
7616         (file-notify--rm-descriptor)
7617         (file-notify--event-watched-file): Use cl-caadr.
7618         (file-notify-callback): Handle also `ignore' events from inotify.
7620 2016-02-22  Michael Albinus  <michael.albinus@gmx.de>
7622         Additional fixes for file notification
7624         * lisp/filenotify.el (top): Require 'cl when compiling.
7625         (file-notify--event-watched-file): New defun.
7626         (file-notify--rm-descriptor, file-notify-callback):
7627         Handle case of several monitors running in parallel.
7629         * test/automated/file-notify-tests.el
7630         (file-notify--test-event-test): Simplify test.
7631         (file-notify--test-with-events): Get rid of outer definition.
7632         Check also results of tests performed in callbacks.
7633         (file-notify-test02-events): No wrapping when calling
7634         `file-notify-rm-watch'.  No special checking for callback tests.
7635         (file-notify-test07-backup): Adapt expected events for gfilenotify.
7636         (file-notify-test08-watched-file-in-watched-dir): Improve.
7638 2016-02-22  Eli Zaretskii  <eliz@gnu.org>
7640         Fix documentation of 'global-disable-point-adjustment'
7642         * src/keyboard.c (syms_of_keyboard) <disable-point-adjustment>
7643         <global-disable-point-adjustment>: Doc fixes.  (Bug#22771)
7645 2016-02-22  Daiki Ueno  <ueno@gnu.org>
7647         Set file modes of pinentry socket for extra safety
7649         * lisp/net/pinentry.el: Require 'cl-lib for `cl-letf'.
7650         (pinentry-start): Change the file modes of the socket file to 0700.
7651         This is just for extra safety since the parent directory is already
7652         protected with `server-ensure-safe-dir'.
7654 2016-02-22  Daiki Ueno  <ueno@gnu.org>
7656         Clarify GnuPG version compatibility chapter
7658         * doc/misc/epa.texi (GnuPG version compatibility): Make the gpg-agent
7659         description a bit clearer.
7661 2016-02-22  Daiki Ueno  <ueno@gnu.org>
7663         Revert "Change the default socket location for pinentry"
7665         This reverts commit e34fbdee8aca84b98393b06b2450837d175999ca.
7666         It turned out that the address is fixed in Pinentry itself.
7668 2016-02-21  Dmitry Gutov  <dgutov@yandex.ru>
7670         Kill off xref--display-history
7672         Now that the core workflow keeps the xref window visible, there's
7673         less value in storing this history.  And it never was
7674         comprehensive enough to undo scrolling changes.
7675         * lisp/progmodes/xref.el (xref--display-history)
7676         (xref--save-to-history, xref-quit): Remove.
7677         (xref--show-pos-in-buf): Update accordingly.
7678         (xref--xref-buffer-mode-map): Remove xref-quit binding.
7680 2016-02-21  Dmitry Gutov  <dgutov@yandex.ru>
7682         Keep the xref buffer visible until the user quits it explicitly
7684         * lisp/progmodes/xref.el (xref--pop-to-location):
7685         Rename WINDOW argument to ACTION.
7686         (xref--with-dedicated-window): New macro.
7687         (xref--show-pos-in-buf): Rename from `xref--display-position'.
7688         Add and handle new argument, SELECTED.  Use the above macro.
7689         (xref--show-location): Add SELECTED argument.
7690         (xref-show-location-at-point): Make an effort to avoid the
7691         original window when showing the location.
7692         (xref-goto-xref): Don't quit the xref window (bug#20487 and
7693         https://lists.gnu.org/r/emacs-devel/2016-01/msg01133.html).
7694         (xref--query-replace-1): Use xref--with-dedicated-window as well.
7695         (xref--next-error-function): Call xref--show-location instead of
7696         xref--pop-to-location.
7697         (xref--show-xrefs): Rename WINDOW argument to DISPLAY-ACTION.
7698         Only pass that value to xref--pop-to-location.  Pass the current
7699         selected window to xref-show-xrefs-function as the `window'
7700         property.
7701         (xref--find-xrefs, xref--find-definitions): Rename WINDOW argument
7702         to DISPLAY-ACTION as well.
7704 2016-02-21  Daiki Ueno  <ueno@gnu.org>
7706         Change the default socket location for pinentry
7708         * lisp/net/pinentry.el: Require 'cl-lib for `cl-letf'.
7709         (pinentry--socket-dir): Change the default from /tmp/emacsXXX to
7710         ~/.emacs.d/pinentry.
7711         (pinentry-start): Change the file modes of the socket file to 0700.
7712         This is just for extra safety since the parent directory is already
7713         protected with `server-ensure-safe-dir'.
7715 2016-02-21  Daiki Ueno  <ueno@gnu.org>
7717         Mention how to enable pinentry feature
7719         * etc/NEWS: Mention "gpgconf --reload gpg-agent".
7720         * lisp/net/pinentry.el: Likewise.
7722 2016-02-21  Paul Eggert  <eggert@cs.ucla.edu>
7724         Sync with gnulib
7726         This incorporates:
7727         2016-02-10 stdalign: port to older HP and IBM cc
7728         * doc/misc/texinfo.tex, lib/stdalign.in.h: Copy from gnulib.
7730 2016-02-21  David Engster  <deng@randomsample.de>
7732         Remove `semanticdb-save-all-db-idle' from `auto-save-hook'
7734         * lisp/cedet/semantic/db-mode.el (semanticdb-hooks): Do not put
7735           `semanticdb-save-all-db-idle' into `auto-save-hook'. The latter is
7736           not an idle hook, so it's not appropriate to call it there. It will
7737           already be called in the `semantic-idle-work-core-handler', which
7738           runs when Emacs is actually idle.
7740 2016-02-21  David Engster  <deng@randomsample.de>
7742         Restore point when writing semantic table to disk
7744         * lisp/cedet/semantic/db-file.el (object-write): Wrap call to
7745           `semantic-fetch-tags' in `save-excursion', since it might move point
7746           in current buffer. (Bug #22287)
7748 2016-02-21  Daiki Ueno  <ueno@gnu.org>
7750         Mention pinentry.el in epa manual
7752         * doc/misc/epa.texi (GnuPG version compatibility): New chapter,
7753         describing the differences between three GnuPG branches, and how
7754         to enable pinentry.el.
7755         (Caching Passphrases): Add xref to the compatibility chapter.
7757 2016-02-21  Michael Albinus  <michael.albinus@gmx.de>
7759         Fix Bug#22736
7761         * lisp/filenotify.el (file-notify-callback): Use the proper
7762         descriptor when calling the callback.  (Bug#22736)
7764         * test/automated/file-notify-tests.el
7765         (file-notify--test-event-handler): Deactivate trace.
7766         (file-notify-test08-watched-file-in-watched-dir): Bind
7767         `file-notify--test-tmpfile' temporarily in `dir-callback'.
7769 2016-02-21  Wieland Hoffmann  <themineo@gmail.com>  (tiny change)
7771         Grammar fix in doc string
7773         * lisp/custom.el (defgroup): Grammar fix in doc string.
7775 2016-02-20  Daiki Ueno  <ueno@gnu.org>
7777         Naming fix for consistency
7779         * lisp/epg-config.el (epg-find-configuration): Rename from
7780         `epg-configuration-find' to be consistent with other epg-* functions.
7781         Change all callers.
7783 2016-02-20  Daiki Ueno  <ueno@gnu.org>
7785         Prefer customized value for GnuPG executable
7787         * lisp/epg-config.el (epg-configuration-find): Don't check GPG
7788         configuration if it is already set with custom.  (Bug#22747)
7790 2016-02-20  Eli Zaretskii  <eliz@gnu.org>
7792         Fix memory reservation on MS-Windows
7794         * src/w32heap.c (mmap_alloc): Reserve memory in 64KB granular
7795         units.  This avoids leaving gaps in reserved memory regions that
7796         no one can use, since memory reservation must produce 64KB-aligned
7797         addresses.  (Bug#22526)
7799 2016-02-20  Anders Lindgren  <andlind@gmail.com>
7801         Update NextStep readme and add wish list.
7803         * nextstep/README: Rewritten from scratch. New sections on
7804         "History", "Overview of Cocoa and Objective-C", "Guidelines",
7805         "Tracing Support", and "GNUStep". Expanded the "See Also" section.
7806         * nextstep/WISHLIST: New file containing list of issues and ideas
7807         associated with the NS port of Emacs.
7809 2016-02-20  Michael Albinus  <michael.albinus@gmx.de>
7811         Report also result in `file-notify--test-event-handler'
7813 2016-02-20  Michael Albinus  <michael.albinus@gmx.de>
7815         Improve file-notify-test08-watched-file-in-watched-dir
7817         * test/automated/file-notify-tests.el (file-notify--test-desc2):
7818         New variable.
7819         (file-notify--test-cleanup): Use it.
7820         (file-notify--test-event-handler): Enable trace.
7821         (file-notify-test08-watched-file-in-watched-dir): Tag it as
7822         :expensive-test.  Rewrite callbacks to use
7823         `file-notify--test-event-handler'.  Read events in loop.  Check
7824         `file-notify--test-results'.
7825         (file-notify-test08-watched-file-in-watched-dir): Fix docstring.
7827 2016-02-20  Stephen Berman  <stephen.berman@gmx.net>
7829         Fix todo-mode item date editing bugs
7831         * lisp/calendar/todo-mode.el (todo-edit-item--header): Prevent out of
7832         range error by making sure the value of the numerical month date
7833         component cannot be nil.  Prevent wrong type error on trying to edit
7834         day number in February by making sure numerical instead of string
7835         value of the year component is passed to todo-read-date.
7836         (todo-read-date): When using the numerical month date component make
7837         sure to use `*' for an arbitrary month instead of its numerical value.
7839 2016-02-20  Eli Zaretskii  <eliz@gnu.org>
7841         Fix "[:upper:]" for non-ASCII characters
7843         * src/regex.c (re_match_2_internal): Support [:upper:] and
7844         [:lower:] for non-ASCII characters.  (Bug#18150)
7846 2016-02-20  Lars Ingebrigtsen  <larsi@gnus.org>
7848         Allow customizing the article mode cursor behavior
7850         * doc/misc/gnus.texi (HTML): Mention gnus-article-show-cursor.
7852         * lisp/gnus/gnus-art.el (gnus-article-show-cursor): New variable.
7853         (gnus-article-mode): Use it.
7855 2016-02-20  Ari Roponen  <ari.roponen@gmail.com>
7857         Use pop-to-buffer-same-window in woman.el
7859         * lisp/woman.el (woman-really-find-file): Work around going to
7860         the wrong buffer by using `pop-to-buffer-same-window' (bug#22332).
7861         (WoMan-find-buffer): Ditto.
7863 2016-02-20  Tassilo Horn  <tsdh@gnu.org>
7865         New filenotify test for bug#22736
7867         * test/automated/file-notify-tests.el
7868         (file-notify-test08-watched-file-in-watched-dir):
7869         (file-notify--test-desc1): New filenotify test for bug#22736
7871 2016-02-20  Marcin Borkowski  <mbork@mbork.pl>
7873         Report critical battery errors
7875         * lisp/battery.el (battery-pmset): Report critical battery
7876         errors (bug#18157).
7878 2016-02-19  Kaushal Modi  <kaushal.modi@gmail.com>  (tiny change)
7880         Make eww message toggling message clearer
7882         * lisp/net/eww.el (eww-toggle-fonts): Make the message
7883         clearer.
7885 2016-02-19  Mark Oteiza  <mvoteiza@udel.edu>
7887         * lisp/calc/calc-units.el (math-standard-units): Update to 2014 CODATA adjustment.
7889 2016-02-18  Martin Rudalics  <rudalics@gmx.at>
7891         Fix bugs in window resizing code
7893         * lisp/window.el (adjust-window-trailing-edge): Fix mismatched
7894         parenthesis.
7895         (shrink-window, enlarge-window): Fix bug#22723 where windows
7896         with preserved size would not get resized.  Also now signal an
7897         error when the window cannot be shrunk or enlarged as requested.
7899 2016-02-17  Eli Zaretskii  <eliz@gnu.org>
7901         Fix decoding DOS EOL in a unibyte buffer
7903         * src/coding.c (decode_eol): Loop over bytes, not characters.
7904         (Bug#5251)
7906 2016-02-17  Alan Mackenzie  <acm@muc.de>
7908         Correct c-parse-state cache manipulation error.
7910         * lisp/progmodes/cc-engine.el (c-invalidate-state-cache-1): Correct a
7911         comparison bound.  Amend comments.
7913 2016-02-17  Daiki Ueno  <ueno@gnu.org>
7915         Take advantage of new GnuPG version check function
7917         * lisp/emacs-lisp/package.el (epg-configuration-find): Declare.
7918         (package-refresh-contents): Use `epg-configuration-find' to check if EPG
7919         is usable.
7921 2016-02-17  Daiki Ueno  <ueno@gnu.org>
7923         Make GnuPG version check robuster
7925         We changed the default gpg program to "gpg2" from "gpg" in the commit
7926         f93d669a16bd3cb3f43f0c8cfd22fe18b627a6a1.  However, there are two
7927         maintained branches (2.0 and 2.1) and Emacs doesn't work well with 2.0
7928         series.  Check the actual version of "gpg2" at run time, and properly
7929         divert to "gpg" if necessary.
7930         * lisp/epg-config.el: Require 'cl-lib for `cl-destructuring-bind'.
7931         (epg-config--program-alist): New variable.
7932         (epg--configurations): New variable.
7933         (epg-configuration-find): New function.
7934         (epg-config--make-gpg-configuration): New function.
7935         (epg-config--make-gpgsm-configuration): New function.
7936         (epg-configuration): Mark as obsolete.
7937         * lisp/epg.el (epg-context): Use `epg-configuration-find'.
7939 2016-02-17  Paul Eggert  <eggert@cs.ucla.edu>
7941         Fix x-load-color-file pointer signedness
7943         * src/xfaces.c (Fx_load_color_file) [!HAVE_X_WINDOWS]:
7944         For sscanf and int *, use %d, not %u.
7945         Problem found on Ubuntu 15.10 x32, which lacks X support.
7947 2016-02-17  Paul Eggert  <eggert@cs.ucla.edu>
7949         * lisp/time-stamp.el (time-stamp-time-zone): Fix doc string punct.
7951 2016-02-16  Mark Oteiza  <mvoteiza@udel.edu>
7953         Follow convention for greek letter constants.
7955         * lisp/calc/calc-units.el (math-standard-units):
7956         Add "sigma" and alias σ to it.
7958 2016-02-16  Mark Oteiza  <mvoteiza@udel.edu>
7960         Add Stefan-Boltzmann constant to calc units table.
7962         * lisp/calc/calc-units.el (math-standard-units):
7963         Add Stefan-Boltzmann constant.
7965 2016-02-16  Mark Oteiza  <mvoteiza@udel.edu>
7967         * lisp/calc/calc-units.el (math-build-units-table-buffer): Use special-mode.
7969 2016-02-16  Glenn Morris  <rgm@gnu.org>
7971         Avoid loading cl-lib for term/xterm.elc, eg in -Q -nw.  (Bug#22669)
7973         * lisp/emacs-lisp/cl-generic.el (cl--generic-dispatchers):
7974         Prefill with relevant elements for term/xterm.
7976 2016-02-16  Tassilo Horn  <tsdh@gnu.org>
7978         Fix soffice UserInstallation-URL for Windows
7980         * lisp/doc-view.el (doc-view-odf->pdf-converter-soffice): Fix
7981         UserInstallation-URL when calling soffice on Windows.
7983 2016-02-16  Lars Ingebrigtsen  <larsi@gnus.org>
7985         Fix display of <pre> elements
7987         * lisp/net/eww.el (eww-display-html): Remove CRLF before
7988         parsing so that <pre> elements don't render with ^M at the end
7989         of the lines.
7991 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
7993         Minor fixes in global-auto-composition-mode
7995         * lisp/emacs-lisp/easy-mmode.el (easy-mmode-pretty-mode-name):
7996         Produce prettier names of globalized minor modes.
7997         * lisp/composite.el (global-auto-composition-mode): Make it a
7998         globalized mode.  (Bug#22682)
8000 2016-02-15  Alan Mackenzie  <acm@muc.de>
8002         Allow arithmetic operators inside C++ template constructs.
8004         Fixes debbugs #22486.  This corrects the previous patch with this message
8005         which was empty.
8007         * lisp/progmodes/cc-langs.el (c-multichar->-op-not->>-regexp): New language
8008         variable.
8009         (c-<>-notable-chars-re): New language variable.
8011         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur): User
8012         c-<>-notable-chars-re in place of the former fixed string in searching for
8013         places to stop and examine.
8014         Use c-multichar->-op-not->>-regexp to check that a found ">" is not part of a
8015         multichar operator in place of the former c->-op-without->-cont-regexp.
8016         Add code to skip forwards over a balanced parenthesized expression.
8018 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
8020         Avoid crashes in semi-malformed 'condition-case'
8022         * src/eval.c (internal_lisp_condition_case): Treat a handler
8023         '(nil)' as if it were '(nil nil)'.  (Bug#22675)
8025 2016-02-15  Alan Mackenzie  <acm@muc.de>
8027         Allow arithmetic operators inside C++ template constructs.
8029         Fixes debbugs #22486.
8031         * lisp/progmodes/cc-langs.el (c-multichar->-op-not->>-regexp): New language
8032         variable.
8033         (c-<>-notable-chars-re): New language variable.
8035         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur): User
8036         c-<>-notable-chars-re in place of the former fixed string in searching for
8037         places to stop and examine.
8038         Use c-multichar->-op-not->>-regexp to check that a found ">" is not part of a
8039         multichar operator in place of the former c->-op-without->-cont-regexp.
8040         Add code to skip forwards over a balanced parenthesized expression.
8042 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
8044         Fix regression with 'recent-keys' and keyboard macros
8046         * src/keyboard.c (record_char): Don't record in 'recent_keys'
8047         events that come from executing keyboard macros.  (Bug#22674)
8049 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
8051         Fix wording in a doc-view.el comment
8053         * lisp/doc-view.el (doc-view--current-cache-dir): Don't use
8054         "illegal" for something that is not against the law.
8056 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
8058         CONTRIBUTE cleanups and updates
8060         * CONTRIBUTE: Mention URLs and info nodes more consistently,
8061         avoiding possibly-confusing punctuation adjacent to a URL, and
8062         giving full shell commands for 'info'.  Start with a brief but
8063         complete how-to, for people who want to get started right away.
8064         Then briefly discuss how to join the development process in the
8065         typical order.  Omit needless words.  Update some of the
8066         now-obsolete file names, info node names, and quoting styles.
8067         Better document emacs-NN branches and how they are merged.
8068         * admin/notes/git-workflow: Change emacs-24 to emacs-25,
8069         and trunk to master.  This file still needs work.
8071 2016-02-14  Paul Eggert  <eggert@cs.ucla.edu>
8073         Port USE_STACK_LISP_OBJECTS fix to Clang
8075         * src/lisp.h (USE_STACK_LISP_OBJECTS): Default to false for Clang.
8076         Recent versions of Clang claim to be GCC 4.2.1 but do not have
8077         the GCC bug.
8079 2016-02-14  Paul Eggert  <eggert@cs.ucla.edu>
8081         Port to x86 GCC 4.3.1 and earlier
8083         This tries to port to x86 FreeBSD 9, where Emacs dumps core (Bug#22065).
8084         * src/lisp.h (USE_STACK_LISP_OBJECTS): Default to false
8085         for GCC 4.3.1 and earlier.
8087 2016-02-14  Eli Zaretskii  <eliz@gnu.org>
8089         Fix point movement under 'scroll-conservatively'
8091         * src/xdisp.c (redisplay_window): Correct a typo in computing the
8092         effective number of text lines in a window.  (Bug#22637)
8094 2016-02-14  Thomas Plass  <thomas.plass@arcor.de>
8096         Replace colon in file name (not legal on Windows)
8098         * lisp/doc-view.el (doc-view--current-cache-dir): Replace colon in file
8099         name (not legal on Windows). [tiny change]
8101 2016-02-14  Eli Zaretskii  <eliz@gnu.org>
8103         Fix a typo in edt.texi
8105         * doc/misc/edt.texi: Fix a typo in an email address.  Reported by
8106         "Herbert J. Skuhra" <herbert@mailbox.org>.
8108 2016-02-14  Eli Zaretskii  <eliz@gnu.org>
8110         Make 'mmap_realloc' on MS-Windows more reliable
8112         * src/w32heap.c (mmap_alloc): If reserving memory succeeds, but
8113         committing fails, return NULL.  Don't call GetLastError twice for
8114         the same API error.
8115         (mmap_realloc): Zero out MEMORY_BASIC_INFORMATION structures
8116         before calling VirtualQuery, to avoid using garbled values if the
8117         call fails.  If committing more pages from the same block fails,
8118         fall back on mmap_alloc + CopyMemory.  Enhance debugging printouts
8119         if the call to VirtualAlloc to commit more pages fails.
8120         (Bug#22526)
8122 2016-02-14  Oscar Fuentes  <ofv@wanadoo.es>
8124         Grep alias `all' shall not match parent directory
8126         * lisp/progmodes/grep.el (grep-files-aliases): Don't match parent
8127           directory for `all'. Fixes bug#22577
8129 2016-02-13  Nicolas Petton  <nicolas@petton.fr>
8131         Bump version to 25.0.91
8133         * README:
8134         * configure.ac:
8135         * msdos/sed2v2.inp: Bump version to 25.0.91.
8137 2016-02-13  Nicolas Petton  <nicolas@petton.fr>
8139         * etc/AUTHORS: Update the AUTHORS file
8141 2016-02-13  Glenn Morris  <rgm@gnu.org>
8143         * lisp/dired-aux.el: Require cl-lib.  (Bug#22613)
8145 2016-02-13  Eli Zaretskii  <eliz@gnu.org>
8147         Index tilde characters in names of backup files
8149         * doc/emacs/files.texi (Backup Names): Improve indexing.
8150         (Bug#22625)
8152 2016-02-13  Eli Zaretskii  <eliz@gnu.org>
8154         Document deprecation of hi-lock-mode's 'C-x w' bindings
8156         * doc/emacs/display.texi (Highlight Interactively): Deprecate the
8157         "C-x w" bindings of hi-lock-mode.
8159         * etc/NEWS: Mark the deprecation entry as documented.
8161 2016-02-13  Stefan Monnier  <monnier@iro.umontreal.ca>
8163         Announce that the `C-x w' bindings are deprecated
8165 2016-02-13  Paul Eggert  <eggert@cs.ucla.edu>
8167         Suppress GNUstep hardening
8169         Fedora 23 normally hardens GNUstep applications, which causes
8170         ‘./configure --with-ns’ to break Emacs’s funky way of undumping.
8171         Fix this by eliding the hardening options (Bug#22518).
8172         * src/Makefile.in (LIBS_GNUSTEP): Omit options like
8173         ‘-specs=/usr/lib/rpm/redhat/redhat-hardened-ld’.
8174         (GNU_OBJC_CFLAGS): Omit options like
8175         ‘-specs=/usr/lib/rpm/redhat/redhat-hardened-cc1’.
8177 2016-02-12  Eli Zaretskii  <eliz@gnu.org>
8179         Fix redisplay after a large insertion
8181         * src/xdisp.c (redisplay_internal): Don't accept the results of
8182         "optimization 3" if the cursor ends up in a partially visible
8183         glyph row.  (Bug22637)
8185 2016-02-12  Andreas Schwab  <schwab@linux-m68k.org>
8187         Revert "Fix gnus-group-get-new-news-this-group on group with closed server"
8189         This reverts commit 9dc77e37aa84c6df9b3ddb4609f3c09201b0580e.
8191                 * lisp/gnus/nnimap.el (nnimap-change-group): Revert last
8192                 change.  (Bug#22634)
8194 2016-02-11  Paul Eggert  <eggert@cs.ucla.edu>
8196         * lib-src/make-docfile.c: Include stdarg.h.
8198 2016-02-11  Alan Mackenzie  <acm@muc.de>
8200         Extend gpm-mouse-mode's doc string and doc to point out limitations.
8202         * lisp/t-mouse.el (gpm-mouse-mode): Extend doc string to indicate the
8203         inability to transfer text between Emacs and other programs which use GPM.
8205         * doc/emacs/frames.texi (Text-Only Mouse): Note the inability to transfer text
8206         between Emacs and other progrmas which use GPM.
8208 2016-02-11  Eli Zaretskii  <eliz@gnu.org>
8210         Revert "Backport: * lisp/isearch.el: Turn char-folding off by default"
8212         * lisp/isearch.el: Turn char-folding back oon by default.
8214         This reverts commit 12c50e82c9b432b2fc31f8fb2215f43ceea80822.
8216 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
8218         Revert "Support integer image rotation and respect EXIF rotations"
8220         This reverts commit 0f600496050bf435f55dc81056e06fcd45992dc8.
8222         This change does not work on Fedora.
8224 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
8226         Revert "Document EXIF image rotation"
8228         This reverts commit 10b8ed27ec91ff52f93eb0297dcc3abb214931aa.
8230         This change does not work on Fedora, for instance.
8232 2016-02-11  Paul Eggert  <eggert@cs.ucla.edu>
8234         Document OS X LANG default
8236         * doc/emacs/cmdargs.texi (General Variables):
8237         Document OS X Language and Region system preference.
8238         Suggested by Alan Third.
8240 2016-02-11  Alan Third  <alan@idiocy.org>
8242         Set locale when run from OS X GUI
8244         * src/emacs.c (main): Call ns_init_locale.
8245         * src/nsterm.m (ns_init_locale): Get locale from OS and set LANG.
8246         * src/nsterm.h: Include ns_init_locale.
8248 2016-02-10  Paul Eggert  <eggert@cs.ucla.edu>
8250         make-docfile cleanup for I/O, etc.
8252         * lib-src/make-docfile.c (progname, generate_globals, num_globals)
8253         (num_globals_allocated, globals): Now static.
8254         (generate_globals, struct rcsoc_state, read_c_string_or_comment):
8255         (write_c_args, scan_c_stream, search_lisp_doc_at_eol, scan_lisp_file):
8256         Use bool for boolean.
8257         (verror): New function.
8258         (fatal, error): Use it.  API is now like printf.  All callers changed.
8259         (main): Remove err_count local that was always 0.
8260         (main, scan_c_stream, scan_lisp_file): Check for I/O error.
8261         (scan_file, scan_c_file, scan_c_stream, scan_lisp_file):
8262         Return void, not 0.
8263         (put_char, scan_keyword_or_put_char, scan_c_file): Use char for byte.
8264         (scan_keyword_or_put_char): Check for missing ( and unexpected EOF.
8265         (close_emacs_globals): Use ptrdiff_t for index, not int.
8266         (scan_c_file, scan_lisp_file): Exit with failure if file cannot be
8267         opened, rather than diagnosing but exiting with status 0.
8268         (search_lisp_doc_at_eol): Don't worry about ungetc of EOF; it's
8269         portable now.
8271 2016-02-10  Paul Eggert  <eggert@cs.ucla.edu>
8273         Memory-management cleanup in make-docfile
8275         I compiled it with -fsanitize=address and fixed the leaks it detected.
8276         Also, I changed it to prefer signed to unsigned integer types,
8277         and to check for integer overflow.
8278         * lib-src/make-docfile.c:
8279         Include <stddef.h>, <stdint.h>, <intprops.h>, <min-max.h>.
8280         (memory_exhausted): New function.
8281         (xmalloc, xrealloc): Use it.
8282         (xmalloc, xrealloc, scan_file, struct rcsoc_state, write_c_args)
8283         (uncompiled, scan_lisp_file):
8284         Prefer signed integer types to unsigned.
8285         (xstrdup): Remove.  All uses removed.
8286         (num_globals, num_globals_allocated, write_globals, scan_c_stream):
8287         Use ptrdiff_t, not int, for indexes that in theory could exceed INT_MAX.
8288         (add_global): Use const to pacify --enable-gcc-warnings.
8289         Make a copy here, rather than relying on strdup calls later.
8290         (add_global, write_globals, scan_c_stream):
8291         Avoid integer overflow when calculating sizes.
8292         (write_globals, scan_c_stream, scan_lisp_file): Avoid memory leak.
8293         (scan_c_stream): Check for add_global failure.
8295 2016-02-10  Kevin Gallagher  <Kevin.Gallagher@boeing.com>
8297         Kevin Gallagher has new email address
8299         * lisp/emulation/edt.el:
8300         * lisp/emulation/edt-lk201.el:
8301         * lisp/emulation/edt-mapper.el:
8302         * lisp/emulation/edt-pc.el:
8303         * lisp/emulation/edt-vt100.el:
8304         * etc/edt-user.el:
8305         * doc/misc/edt.texi: Update Kevin Gallagher's email address.
8307 2016-02-10  Eli Zaretskii  <eliz@gnu.org>
8309         Improve doc strings of 'forward/backward-word-strictly'
8311         * lisp/simple.el (backward-word): Refer to 'backward-word-strictly'
8312         in the doc string.  Suggested by Glenn Morris <rgm@gnu.org>.
8313         * lisp/subr.el (forward-word-strictly, backward-word-strictly):
8314         Mention 'subword-mode' in the doc strings.
8316         * src/syntax.c (Fforward_word): Refer to 'forward-word-strictly'
8317         in the doc string.  (Bug#22560)
8319 2016-02-10  Michael Albinus  <michael.albinus@gmx.de>
8321         Describe Makefile test targets in test/README
8323         * CONTRIBUTE: Move Makefile test targets to test/README.
8325         * Makefile.in:
8326         * test/README: Describe Makefile test targets.
8328 2016-02-10  Artur Malabarba  <bruce.connor.am@gmail.com>
8330         Backport: * lisp/isearch.el: Turn char-folding off by default
8332         (search-default-mode): Set default value to nil.
8334 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
8336         Document EXIF image rotation
8338         * doc/lispref/display.texi (ImageMagick Images): Mention EXIF rotation.
8340 2016-02-10  Dima Kogan  <dima@secretsauce.net>
8342         Support integer image rotation and respect EXIF rotations
8344         * src/image.c (imagemagick_load_image): Allow integer rotations in
8345         addition to floating point rotations (bug#22591).
8346         * src/image.c (imagemagick_load_image): Images that have an
8347         orientation given in EXIF and have no explicit :rotation tag are now
8348         pre-rotated.  All information such as width/height is reported for the
8349         rotated image.
8351 2016-02-10  Matthew Carter  <m@ahungry.com>
8353         Quote table names for postgres listings (sql-mode)
8355         * lisp/progmodes/sql.el (sql-postgres-completion-object): Avoid passing
8356           unquoted table names to the completion list.
8358 2016-02-10  Juri Linkov  <juri@linkov.net>
8360         * lisp/replace.el (replace-match-maybe-edit): Make arg `backward' optional.
8362         Doc fix.
8363         (replace-search, replace-highlight): Make arg `backward' optional.
8364         (Bug#18388)
8366 2016-02-10  Juri Linkov  <juri@linkov.net>
8368         * lisp/simple.el (next-line-or-history-element): Reset temporary-goal-column.
8370         (previous-line-or-history-element): Reset temporary-goal-column.
8371         Use end-of-visual-line instead of line-end-position.  (Bug#22544)
8373 2016-02-10  Paul Eggert  <eggert@cs.ucla.edu>
8375         Suppress ACL ops if configured with --disable-acl
8377         Without this patch, some ACL operations were suppressed, but not all.
8378         * src/fileio.c [!USE_ACL]: Do not include sys/acl.h.
8379         (Ffile_acl, Fset_file_acl) [!USE_ACL]: Return nil in this case.
8381 2016-02-09  Katsumi Yamaoka  <yamaoka@jpl.org>
8383         Mention web bugs
8385         * doc/misc/emacs-mime.texi (Display Customization):
8386         Mention web bugs in the mm-html-blocked-images section.
8388 2016-02-09  Katsumi Yamaoka  <yamaoka@jpl.org>
8390         Make mm-html-blocked-images default to "" again
8392         * lisp/gnus/mm-decode.el (mm-html-blocked-images):
8393         Default to "" that blocks all external images.
8395         * doc/misc/emacs-mime.texi (Display Customization):
8396         Mention that mm-html-blocked-images defaults to "".
8398 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
8400         Minor alignas cleanup
8402         * src/lisp.h (alignas): Remove now-redundant #ifdef that was left
8403         over from the old way of doing things, before Bug#20862 was fixed.
8405 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
8407         Add lmalloc commentary and tweak laligned
8409         * src/alloc.c (laligned): Help compiler in a tiny way by putting
8410         the more-commonly-failing disjunct first.
8412 2016-02-09  Eli Zaretskii  <eliz@gnu.org>
8414         Clarify documentation of key binding conventions
8416         * doc/lispref/tips.texi (Key Binding Conventions): Clarify which
8417         "punctuation characters" are reserved after "C-c".  (Bug#22604)
8419 2016-02-09  Oscar Fuentes  <ofv@wanadoo.es>
8421         * etc/NEWS: mention the `vc-faces' customization group
8423 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
8425         Sync with gnulib
8427         This incorporates:
8428         2016-02-09 stdalign: port to clang 3.7.0
8429         2016-02-06 misc: port better to gcc -fsanitize=address
8430         * doc/misc/texinfo.tex, lib/stdalign.in.h, m4/acl.m4, m4/getgroups.m4:
8431         Copy from gnulib.
8433 2016-02-09  Michael Albinus  <michael.albinus@gmx.de>
8435         * CONTRIBUTE: Add more examples for $(SELECTOR) make variable.
8437 2016-02-09  Katsumi Yamaoka  <yamaoka@jpl.org>
8439         Make mm-html-inhibit-images and mm-html-blocked-images default to nil
8441         * lisp/gnus/mm-decode.el (mm-html-inhibit-images)
8442         (mm-html-blocked-images): Default to nil.
8444         * doc/misc/emacs-mime.texi (Display Customization): Mention that
8445         mm-html-inhibit-images and mm-html-blocked-images default to nil.
8447         * etc/NEWS (Gnus): Document mm-html-inhibit-images and
8448         mm-html-blocked-images.
8450 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
8452         Increase success rate of fallback lmalloc
8454         * src/alloc.c (lmalloc, lrealloc): Reallocate with (typically)
8455         larger and larger sizes, to increase the probability that
8456         the allocator will return a Lisp-aligned pointer.
8458 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
8460         Make backgrounds extend to the end of the lines in shr
8462         * lisp/net/shr.el (shr-face-background): Faces can also be on
8463         the form `(:background "#fff)' (bug#22547).
8465 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
8467         Make the `R' command get the correct relative <img>s
8469         * lisp/net/eww.el (eww-readable): Preserve the base URL so
8470         that image expansions are fetched from the right place (bug#22605).
8472         (cherry picked from commit 8722e849f75ceafb82a1c17105e8ab76077a8ebc)
8474         Backport:
8476 2016-02-09  Mike Kupfer  <m.kupfer@acm.org>
8478         Fix typos in emacs-mime.texi and gnus.texi
8480         * doc/misc/emacs-mime.texi (Display Customization):
8481         * doc/misc/gnus.texi (HTML): Fix typo.
8483 2016-02-09  Katsumi Yamaoka  <yamaoka@jpl.org>
8485         * doc/misc/emacs-mime.texi (Display Customization):
8486         Doc fix for mm-html-inhibit-images.
8488 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
8490         Fix message-cross-post-followup-to group names
8492         * lisp/gnus/message.el (message-cross-post-followup-to): Don't
8493         insert group names like "nntp+foo:zot", because those aren't valid.
8495 2016-02-09  David Edmondson  <dme@dme.org>
8497         Compare recipient and keys case-insensitively
8499         * lisp/gnus/mml2015.el: (mml-secure-check-user-id): When comparing a
8500         recipient address with that from a key, do so in a case insensitive
8501         manner (bug#22603).
8503 2016-02-08  Glenn Morris  <rgm@gnu.org>
8505         * lisp/gnus/mm-decode.el (mm-alist-to-plist): Doc fix.
8507 2016-02-08  Katsumi Yamaoka  <yamaoka@jpl.org>
8509         Refactor HTML images handling of Gnus and mm-* (a part of bug#21650)
8511         * doc/misc/emacs-mime.texi (Display Customization):
8512         Remove mm-inline-text-html-with-images; add documentations for
8513         mm-html-inhibit-images and mm-html-blocked-images.
8515         * lisp/gnus/gnus-art.el (gnus-article-show-images):
8516         No need to bind mm-inline-text-html-with-images.
8517         (gnus-bind-safe-url-regexp): Rename to gnus-bind-mm-vars.
8518         (gnus-bind-mm-vars): Rename from gnus-bind-safe-url-regexp;
8519         bind mm-html-inhibit-images and mm-html-blocked-images.
8520         (gnus-mime-view-all-parts, gnus-mime-view-part-internally)
8521         (gnus-mm-display-part, gnus-mime-display-single)
8522         (gnus-mime-display-alternative): Use gnus-bind-mm-vars.
8524         * lisp/gnus/mm-decode.el (mm-inline-text-html-with-images): Remove.
8525         (mm-html-inhibit-images, mm-html-blocked-images): New user options.
8526         (mm-shr): Bind shr-inhibit-images and shr-blocked-images with
8527         mm-html-inhibit-images and mm-html-blocked-images respectively
8528         instead of gnus-inhibit-images and gnus-blocked-images.
8530         * lisp/gnus/mm-view.el (mm-setup-w3m): Use mm-html-inhibit-images
8531         instead of mm-inline-text-html-with-images.
8533 2016-02-08  Paul Eggert  <eggert@cs.ucla.edu>
8535         Port to FreeBSD 11-CURRENT i386
8537         Problem reported by Herbert J. Skuhra in:
8538         https://lists.gnu.org/r/emacs-devel/2016-02/msg00354.html
8539         Instead of trying
8540         * src/alloc.c (lmalloc, lrealloc, laligned): New functions.
8541         (xmalloc, xzalloc, xrealloc, lisp_malloc): Use them.
8542         (__alignof__) [!__GNUC__ && !__alignof__]: New macro.
8543         (MALLOC_IS_GC_ALIGNED): New macro.
8544         * src/lisp.h (NONPOINTER_BITS): Remove.  All uses removed.
8545         No longer needed now that alloc.c uses lmalloc and lrealloc.
8547 2016-02-08  Michael Albinus  <michael.albinus@gmx.de>
8549         Some fixes in file-notify-tests.el
8551         * test/automated/file-notify-tests.el
8552         (file-notify--test-with-events-check)
8553         (file-notify--test-with-events-explainer): New defuns.
8554         (file-notify--test-with-events): Use it.
8555         (file-notify-test07-backup): Fix docstring.  Some of the
8556         backends fire two `changed' events.  Backup by rename doesn't
8557         work for kqueue.
8559 2016-02-07  Michael Albinus  <michael.albinus@gmx.de>
8561         Fix Bug#22557
8563         * lisp/filenotify.el (file-notify-callback): Do not send a
8564         `stopped' event in case of backup by renaming.  (Bug#22557)
8566         * test/automated/Makefile.in: Use $(SELECTOR_EXPENSIVE) for
8567         all targets but check and check-maybe.
8569         * test/automated/file-notify-tests.el
8570         (file-notify--test-read-event-timeout): New defconst.
8571         (file-notify--deftest-remote, file-notify--wait-for-events)
8572         (file-notify-test02-events)
8573         (file-notify-test04-file-validity)
8574         (file-notify-test06-many-events): Use it.
8575         (file-notify--test-cleanup): Make it more robust.  Delete also
8576         backup file.
8577         (file-notify-test07-backup): New test.
8579 2016-02-07  Paul Eggert  <eggert@cs.ucla.edu>
8581         Fix test for dladdr
8583         Problem reported by Andreas Schwab in:
8584         https://lists.gnu.org/r/emacs-devel/2016-02/msg00327.html
8585         * configure.ac (dladdr): Link with LIBMODULES when checking for
8586         this function.
8588 2016-02-07  Andreas Schwab  <schwab@linux-m68k.org>
8590         Fix gnus-group-get-new-news-this-group on group with closed server
8592         * lisp/gnus/nnimap.el (nnimap-change-group): Lookup server
8593         method and pass to nnimap-open-server.
8595 2016-02-07  Artur Malabarba  <bruce.connor.am@gmail.com>
8597         * lisp/comint.el (comint-prompt-read-only): Clean tabs in docstring
8599         While tabs in code are mostly fine because the Emacs sources have a
8600         .dir-locals file specifying tab-width, the same is not true of tabs in
8601         code examples inside docstrings.  The docstring is printed on a *Help*
8602         buffer, which can be created on any directory and won't necessarily have
8603         the same tab-width set.
8605 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
8607         Don't inloop gnus-uu-mark-thread on the last thread
8609         * lisp/gnus/gnus-uu.el (gnus-uu-mark-thread): Don't infloop on the
8610         final thread in the summary buffer (bug#16666).
8612 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
8614         Display non-ASCII group names better in prompts
8616         * lisp/gnus/gnus-sum.el (gnus-articles-to-read): To decode the
8617         group name, we have to do that before we remove the prefix.
8619 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
8621         Default to gpg2 instead of gpg
8623         * lisp/epg-config.el (epg-gpg-program): Prefer gpg2 over gpg, if
8624         it exists.  This fixes many problems with using the GPG
8625         authentication agent.
8627 2016-02-06  David Edmondson  <dme@dme.org>
8629         src/process.c Correctly convert AF_INET6 addresses
8631         * src/process.c (conv_lisp_to_sockaddr): AF_INET6 addresses are
8632         converted to a list of 16 bit quantities by
8633         conv_sockaddr_to_lisp(). conv_lisp_to_sockaddr() should follow the
8634         same scheme rather than expecting a (longer) list of 8 bit
8635         quantities.
8637         Backport:
8639         (cherry picked from commit 55ce3c30d617c38eb086d5ad4ffbd881c20c559c)
8641 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
8643         * lisp/isearch.el (isearch-define-mode-toggle): Improve logic
8645 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
8647         * lisp/menu-bar.el (menu-bar-options-menu): New search submenu
8649         (menu-bar-search-options-menu): New variable
8651 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
8653         * lisp/isearch.el (search-default-mode)
8655         (isearch-regexp-function): Improve docstrings.
8657 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
8659         * lisp/isearch.el: Rename search-default-regexp-mode to search-default-mode
8661         (search-default-mode): New variable.
8662         (isearch-mode, isearch-define-mode-toggle)
8663         (isearch--describe-regexp-mode): Update accordingly.
8664         * lisp/menu-bar.el (nonincremental-search-forward): Update accordingly.
8665         * etc/NEWS: Update accordingly.
8666         * doc/emacs/search.texi: Update accordingly.
8668 2016-02-06  Oscar Fuentes  <ofv@wanadoo.es>
8670         Use monitor's resolution for positioning tooltips
8672         * src/xfns.c (compute_tip_xy): Use the resolution of the monitor where
8673           the mouse pointer is to avoid placing the tooltip over the border of
8674           the monitor on multi-head displays. Fixes bug#22549.
8676 2016-02-06  Eli Zaretskii  <eliz@gnu.org>
8678         Fix file-notify-test on MS-Windows
8680         * test/automated/file-notify-tests.el (file-notify--test-timeout):
8681         Reduce w32notify timeout to 10 sec.
8682         (file-notify-test06-many-events): Call read-event after each
8683         rename, to keep the w32notify backend happy in batch mode.
8684         (Bug#22534)
8686 2016-02-06  Eli Zaretskii  <eliz@gnu.org>
8688         Fix issues found by auditing w32notify code
8690         * src/w32inevt.c (handle_file_notifications): Count the number of
8691         events to be returned.
8692         * src/w32notify.c (send_notifications): Don't copy to the file
8693         notification buffer more than it can hold.  (Bug#22534)
8695 2016-02-06  Eli Zaretskii  <eliz@gnu.org>
8697         Extend etags Ruby support for accessors
8699         * lib-src/etags.c (Ruby_functions): Support accessors defined with
8700         parentheses.  (Bug#22563)
8702         * test/etags/ruby-src/test1.ru (A::B): Add tests for accessors
8703         defined with parentheses.
8704         * test/etags/ETAGS.good_1:
8705         * test/etags/ETAGS.good_2:
8706         * test/etags/ETAGS.good_3:
8707         * test/etags/ETAGS.good_4:
8708         * test/etags/ETAGS.good_5:
8709         * test/etags/ETAGS.good_6:
8710         * test/etags/CTAGS.good: Adapt to changes in Ruby tests.
8712 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
8714         Update publicsuffix.txt.
8716         * etc/publicsuffix.txt: Updated from
8717         https://publicsuffix.org/list/public_suffix_list.dat.
8719 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
8721         Ensure that Gnus dribble handling allows removing entries
8723         * lisp/gnus/gnus-start.el (gnus-dribble-enter): Ensure that each
8724         entry is on a single line.
8726 2016-02-05  OGAWA Hirofumi  <hirofumi@mail.parknet.co.jp>  (tiny change)
8728         Be consistent when using encoded strings in nnimap data
8730         * lisp/gnus/nnimap.el (nnimap-encode-gnus-group): New function
8731         (nnimap-request-list): Use it.
8732         (nnimap-request-newgroups): Ditto.
8734 2016-02-05  OGAWA Hirofumi  <hirofumi@mail.parknet.co.jp>  (tiny change)
8736         Display the decoded Gnus group name
8738         * lisp/gnus/gnus-sum.el (gnus-summary-read-group-1): Use the
8739         decoded group name in the message.
8741 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
8743         Use completion-ignore-case instead of defining command
8745         * lisp/erc/erc.el (erc-mode): Set completion-ignore-case so
8746         that we get case-insensitive completion.
8747         (erc-completion-at-point): Remove.
8749 2016-02-05  Michael Albinus  <michael.albinus@gmx.de>
8751         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
8753         Reduce the number of iterations to 250 in case of w32notify.
8755 2016-02-05  Eli Zaretskii  <eliz@gnu.org>
8757         Fix problems caused by new implementation of sub-word mode
8759         * lisp/subr.el (forward-word-strictly, backward-word-strictly):
8760         New functions.
8761         (word-move-empty-char-table): New variable.
8763         * etc/NEWS: Mention 'forward-word-strictly' and
8764         'backward-word-strictly'.
8766         * doc/lispref/positions.texi (Word Motion): Document
8767         'find-word-boundary-function-table', 'forward-word-strictly', and
8768         'backward-word-strictly'.  (Bug#22560)
8770         * src/syntax.c (syms_of_syntax)
8771         <find-word-boundary-function-table>: Doc fix.
8773         * lisp/wdired.el (wdired-xcase-word):
8774         * lisp/textmodes/texnfo-upd.el (texinfo-copy-node-name)
8775         (texinfo-copy-section-title, texinfo-start-menu-description)
8776         (texinfo-copy-menu-title, texinfo-specific-section-type)
8777         (texinfo-insert-node-lines, texinfo-copy-next-section-title):
8778         * lisp/textmodes/texinfo.el (texinfo-clone-environment)
8779         (texinfo-insert-@end):
8780         * lisp/textmodes/texinfmt.el (texinfo-format-scan)
8781         (texinfo-anchor, texinfo-multitable-widths)
8782         (texinfo-multitable-item):
8783         * lisp/textmodes/tex-mode.el (latex-env-before-change):
8784         * lisp/textmodes/flyspell.el (texinfo-mode-flyspell-verify):
8785         * lisp/skeleton.el (skeleton-insert):
8786         * lisp/simple.el (count-words):
8787         * lisp/progmodes/vhdl-mode.el (vhdl-beginning-of-libunit)
8788         (vhdl-beginning-of-defun, vhdl-beginning-of-statement-1)
8789         (vhdl-update-sensitivity-list, vhdl-template-block)
8790         (vhdl-template-break, vhdl-template-case, vhdl-template-default)
8791         (vhdl-template-default-indent, vhdl-template-for-loop)
8792         (vhdl-template-if-then-use, vhdl-template-bare-loop)
8793         (vhdl-template-nature, vhdl-template-procedural)
8794         (vhdl-template-process, vhdl-template-selected-signal-asst)
8795         (vhdl-template-type, vhdl-template-variable)
8796         (vhdl-template-while-loop, vhdl-beginning-of-block)
8797         (vhdl-hooked-abbrev, vhdl-port-copy, vhdl-hs-forward-sexp-func):
8798         * lisp/progmodes/verilog-mode.el (verilog-backward-sexp)
8799         (verilog-forward-sexp, verilog-beg-of-statement)
8800         (verilog-set-auto-endcomments, verilog-backward-token)
8801         (verilog-do-indent):
8802         * lisp/progmodes/vera-mode.el (vera-guess-basic-syntax)
8803         (vera-indent-block-closing):
8804         * lisp/progmodes/simula.el (simula-context)
8805         (simula-backward-up-level, simula-forward-down-level)
8806         (simula-previous-statement, simula-next-statement)
8807         (simula-skip-comment-backward, simula-calculate-indent)
8808         (simula-find-if, simula-electric-keyword):
8809         * lisp/progmodes/sh-script.el (sh-smie--rc-newline-semi-p):
8810         * lisp/progmodes/ruby-mode.el (ruby-smie--redundant-do-p)
8811         (ruby-smie--forward-token, ruby-smie--backward-token)
8812         (ruby-singleton-class-p, ruby-calculate-indent)
8813         (ruby-forward-sexp, ruby-backward-sexp):
8814         * lisp/progmodes/ps-mode.el (ps-run-goto-error):
8815         * lisp/progmodes/perl-mode.el (perl-syntax-propertize-function)
8816         (perl-syntax-propertize-special-constructs)
8817         (perl-backward-to-start-of-continued-exp):
8818         * lisp/progmodes/pascal.el (pascal-indent-declaration):
8819         * lisp/progmodes/octave.el (octave-function-file-p):
8820         * lisp/progmodes/mantemp.el (mantemp-insert-cxx-syntax):
8821         * lisp/progmodes/js.el (js--forward-function-decl):
8822         * lisp/progmodes/idlwave.el (idlwave-show-begin-check)
8823         (idlwave-beginning-of-block, idlwave-end-of-block)
8824         (idlwave-block-jump-out, idlwave-determine-class):
8825         * lisp/progmodes/icon.el (icon-is-continuation-line)
8826         (icon-backward-to-start-of-continued-exp, end-of-icon-defun):
8827         * lisp/progmodes/hideif.el (hide-ifdef-define):
8828         * lisp/progmodes/f90.el (f90-change-keywords):
8829         * lisp/progmodes/cperl-mode.el (cperl-electric-pod)
8830         (cperl-linefeed, cperl-electric-terminator)
8831         (cperl-find-pods-heres, cperl-fix-line-spacing)
8832         (cperl-invert-if-unless):
8833         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur):
8834         * lisp/progmodes/cc-align.el (c-lineup-java-inher):
8835         * lisp/progmodes/ada-mode.el (ada-compile-goto-error)
8836         (ada-adjust-case-skeleton, ada-create-case-exception)
8837         (ada-create-case-exception-substring)
8838         (ada-case-read-exceptions-from-file, ada-after-keyword-p)
8839         (ada-scan-paramlist, ada-get-current-indent, ada-get-indent-end)
8840         (ada-get-indent-if, ada-get-indent-block-start)
8841         (ada-get-indent-loop, ada-get-indent-type)
8842         (ada-search-prev-end-stmt, ada-check-defun-name)
8843         (ada-goto-decl-start, ada-goto-matching-start)
8844         (ada-goto-matching-end, ada-looking-at-semi-or)
8845         (ada-looking-at-semi-private, ada-in-paramlist-p)
8846         (ada-search-ignore-complex-boolean, ada-move-to-start)
8847         (ada-move-to-end, ada-which-function, ada-gen-treat-proc):
8848         * lisp/net/quickurl.el (quickurl-grab-url):
8849         * lisp/mail/sendmail.el (mail-do-fcc):
8850         * lisp/mail/rmail.el (rmail-resend):
8851         * lisp/mail/mailabbrev.el (mail-abbrev-complete-alias):
8852         * lisp/mail/mail-extr.el (mail-extract-address-components):
8853         * lisp/json.el (json-read-keyword):
8854         * lisp/files.el (insert-directory):
8855         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
8856         * lisp/completion.el (symbol-under-point, symbol-before-point)
8857         (symbol-before-point-for-complete, next-cdabbrev)
8858         (add-completions-from-c-buffer):
8859         * lisp/cedet/semantic/texi.el (semantic-up-context)
8860         (semantic-beginning-of-context):
8861         * lisp/cedet/semantic/bovine/el.el (semantic-get-local-variables):
8862         use 'forward-word-strictly' and 'backward-word-strictly' instead
8863         of 'forward-word' and 'backward-word'.
8865 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
8867         Fix doc string of tls-program
8869         * lisp/net/tls.el (tls-program): Document the %t parameter (bug#22559).
8871 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
8873         Restore window conf in nsm
8875         * lisp/net/nsm.el (nsm-query-user): Restore the window configuration.
8877         Backport:
8879 2016-02-05  Mark Oteiza  <mvoteiza@udel.edu>
8881         * etc/NEWS: Document new mpc.el features
8883 2016-02-04  Leo Liu  <sdl.web@gmail.com>
8885         * lisp/custom.el (defface): Revert indentation change.  (Bug#22524)
8887 2016-02-04  Alan Mackenzie  <acm@muc.de>
8889         Correctly fontify C++ initializations which "look like" functions.
8891         Fixes bug#7579.
8893         lisp/progmodes/cc-engine.el (c-forward-declarator): Add extra optional
8894         parameter to enable handling of "anonymous" declarators in declarations.
8896         lisp/progmodes/cc-fonts.el (c-font-lock-declarators): Check more rigorously
8897         whether a "(" opens a parameter list of a function, or an initialization of a
8898         variable.
8900 2016-02-04  Ulf Jasper  <ulf.jasper@web.de>
8902         Improve newsticker-treeview-selection-face
8904         * lisp/net/newst-treeview.el (newsticker-treeview-selection-face): Improve
8905         readability for dark background.
8907 2016-02-04  Eli Zaretskii  <eliz@gnu.org>
8909         Minor fix in tagging Ruby accessors by etags
8911         * lib-src/etags.c (Ruby_functions): Don't tag accessors whose
8912         names are not literal symbols.  (Bug#22241)
8914 2016-02-04  Paul Eggert  <eggert@cs.ucla.edu>
8916         Spelling fixes
8918 2016-02-04  Dmitry Gutov  <dgutov@yandex.ru>
8920         Remove 'def X' from the example
8922         * test/etags/ruby-src/test1.ru (A::B): Remove 'def X'
8923         (https://lists.gnu.org/r/emacs-devel/2016-02/msg00167.html).
8924         * test/etags/CTAGS.good:
8925         * test/etags/ETAGS.good_1:
8926         * test/etags/ETAGS.good_2:
8927         * test/etags/ETAGS.good_3:
8928         * test/etags/ETAGS.good_4:
8929         * test/etags/ETAGS.good_5:
8930         * test/etags/ETAGS.good_6: Adjust accordingly.
8932 2016-02-04  Vasilij Schneidermann  <v.schneidermann@gmail.com>  (tiny change)
8934         Allow sending empty hidden values in eww
8936         * lisp/net/eww.el (eww-tag-input): Allow sending empty hidden
8937         values (bug#22388).
8939         (cherry picked from commit 5898da8210af7953e638ddf7821c05260979c3f0)
8941         Backport:
8943 2016-02-04  David Edmondson  <dme@dme.org>
8945         Make erc work better when encountering unknown prefix chars
8947         * lisp/erc/erc.el (erc-channel-receive-names): Output a warning
8948         instead of erroring out on unknown prefix chars (bug#22380).
8950 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
8952         Make erc completion case-insensitive again
8954         * lisp/erc/erc.el (erc-completion-at-point): Make erc completion
8955         case-insensitive again (bug#11360).
8957 2016-02-04  Carlos Pita  <carlosjosepita@gmail.com>  (tiny change)
8959         Make complection in erc use consistent casing
8961         * lisp/erc/erc-pcomplete.el (pcomplete-erc-all-nicks): Make
8962         case in the complection consistent (bug#18509).
8964 2016-02-04  Francis Litterio  <flitterio@gmail.com>
8966         Make /QUIT in erc more robust
8968         * lisp/erc/erc.el (erc-kill-query-buffers): Don't bug out if we're
8969         issuing /QUIT to disconnected servers (bug#22099).
8971 2016-02-04  Kevin Brubeck Unhammer  <unhammer@fsfe.org>  (tiny change)
8973         Make tracking faces in Emacs work more reliably
8975         * lisp/erc/erc-track.el (erc-faces-in): Always return lists of
8976         faces to avoid later ambiguity (bug#22424).
8978 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
8980         Make shr not bug out on images on non-graphical displays
8982         * lisp/net/shr.el (shr-put-image): Don't bug out on alt-less
8983         images on non-graphical displays (bug#22327).
8985 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
8987         Fix bookmark display widths
8989         * lisp/net/eww.el (eww-list-bookmarks): Pop to the buffer before
8990         preparing it so that the widths are computed correctly (bug#22328).
8992 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
8994         Fix typo in eww-make-unique-file-name
8996         * lisp/net/eww.el (eww-make-unique-file-name): Make this function
8997         actually work.
8999 2016-02-03  Lars Ingebrigtsen  <larsi@gnus.org>
9001         Make it possible to TAB to input fields
9003         * lisp/net/eww.el (eww-tag-input): Make it possible to TAB to
9004         input fields (bug#22540).
9006 2016-02-03  Lars Ingebrigtsen  <larsi@gnus.org>
9008         Insert complete alt texts when images are disabled
9010         * lisp/net/shr.el (shr-tag-img): When images are disabled, insert
9011         the complete alt/title string (bug#22293).
9013 2016-02-03  Lars Ingebrigtsen  <larsi@gnus.org>
9015         Allow eww text fields to grow
9017         * lisp/net/eww.el (eww-process-text-input): Allow text fields to
9018         grow when typing in stuff that's longer than the original width.
9020 2016-02-03  Dima Kogan  <dima@secretsauce.net>
9022         Make erc work when subword-mode is switched on
9024         * lisp/erc/erc-backend.el (erc-forward-word, erc-word-at-arg-p)
9025         (erc-bounds-of-word-at-point): New functions to do word-based
9026         things when subword-mode is switched on.
9028         * lisp/erc/erc-button.el (erc-button-add-nickname-buttons): Use them
9029         (bug#17558).
9031 2016-02-03  Teemu Likonen  <tlikonen@iki.fi>
9033         Fix IMAP doc example
9035         * doc/misc/gnus.texi (Client-Side IMAP Splitting): Fix example.
9037 2016-02-03  Paul Eggert  <eggert@cs.ucla.edu>
9039         Quoting fixes in doc strings and diagnostics
9041         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq, byte-compile-funcall):
9042         * lisp/gnus/mml-smime.el (mml-smime-get-dns-cert)
9043         (mml-smime-get-ldap-cert):
9044         Follow user style preference when quoting diagnostics.
9046 2016-02-03  Noam Postavsky  <npostavs@gmail.com>
9048         Fix warning message in hack-local-variables
9050         * lisp/files.el (hack-local-variables): use 'thisbuf' to reference
9051         the original buffer name in the warning message.  (Bug#21681)
9053 2016-02-03  Eli Zaretskii  <eliz@gnu.org>
9055         Etags: yet another improvement in Ruby tags
9057         * lib-src/etags.c (Ruby_functions): Handle continuation lines in
9058         Ruby accessor definitions.  (Bug#22241)
9060         * test/etags/ruby-src/test1.ru (A::B#X): Add some more tests for
9061         accessors and multiline definitions.
9062         * test/etags/ETAGS.good_1:
9063         * test/etags/ETAGS.good_2:
9064         * test/etags/ETAGS.good_3:
9065         * test/etags/ETAGS.good_4:
9066         * test/etags/ETAGS.good_5:
9067         * test/etags/ETAGS.good_6:
9068         * test/etags/CTAGS.good: Adapt to changes in Ruby tags.
9070 2016-02-03  Eli Zaretskii  <eliz@gnu.org>
9072         Fix x-popup-menu on TTYs without a mouse
9074         * src/menu.c (Fx_popup_menu): Be sure to initialize 'x' and 'y'
9075         for the TTY case without a mouse.  (Bug#22538)
9077 2016-02-03  Nicolas Petton  <nicolas@petton.fr>
9079         * lisp/emacs-lisp/map.el: Improvements to the docstring of the pcase macro
9081 2016-02-02  Lars Ingebrigtsen  <larsi@gnus.org>
9083         Use pop-to-buffer-same-window in eww
9085         * lisp/net/eww.el: pop-to-buffer-same-window throughout instead of
9086         switch-to-buffer (bug#22244).
9088 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
9090         * autogen.sh: Revert all recent changes.
9092 2016-02-02  Glenn Morris  <rgm@gnu.org>
9094         * make-dist: Updates related to nt/.
9096         * make-dist: Add modules/.
9098         * make-dist: Update for super-special file that can't live in etc/.
9100 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
9102         Fix failure to compile ns-win.el in parallel builds
9104         * src/Makefile.in ($(lispsource)/term/ns-win.elc): Add order-only
9105         dependency on $(lispsource)/international/charprop.el.
9106         (Bug#22501)
9108 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
9110         Fix names of tags generated for Ruby accessors
9112         * lib-src/etags.c (Ruby_functions): Don't include the leading
9113         colon ':' in tags for Ruby accessors and aliases.  (Bug#22241)
9115         * test/etags/ETAGS.good_1:
9116         * test/etags/ETAGS.good_2:
9117         * test/etags/ETAGS.good_3:
9118         * test/etags/ETAGS.good_4:
9119         * test/etags/ETAGS.good_5:
9120         * test/etags/ETAGS.good_6:
9121         * test/etags/CTAGS.good: Adapt to changes in Ruby tags.
9123 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
9125         Fix file-name recognition in 'etags'
9127         * lib-src/etags.c (get_language_from_filename): If FILE includes a
9128         leading directory, compare only its basename to the known file
9129         names in lang_names[].
9131         * test/etags/Makefile (RBSRC): Adapt to recent test1.ruby
9132         renaming.
9133         * test/etags/ETAGS.good_1:
9134         * test/etags/ETAGS.good_2:
9135         * test/etags/ETAGS.good_3:
9136         * test/etags/ETAGS.good_4:
9137         * test/etags/ETAGS.good_5:
9138         * test/etags/ETAGS.good_6:
9139         * test/etags/CTAGS.good: Adapt to changes in Ruby file names and
9140         to the results in Makefile due to the above etags.c fix.
9142 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
9144         Change Ruby file names and extensions recognized by 'etags'
9146         * lib-src/etags.c <Ruby_filenames>: New variable, holds names
9147         of Ruby files.
9148         <Ruby_suffixes>: Treat .rb, .ru, and .rbw as Ruby extensions.
9149         <lang_names>: Add Ruby_filenames to the Ruby entry.
9150         * test/etags/ruby-src/test1.ru: Renamed from test1.ruby.
9151         (Bug#22241)
9153 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
9155         More improvements for Ruby support in 'etags'
9157         * lib-src/etags.c (Ruby_functions): Tag Ruby accessors and
9158         alias_method.  Identify constants even if the assignment is not
9159         followed by whitespace.  (Bug#22241)
9161         * test/etags/ruby-src/test1.ru: Add tests for constants,
9162         accessors, and alias_method.
9163         * test/etags/ETAGS.good_1:
9164         * test/etags/ETAGS.good_2:
9165         * test/etags/ETAGS.good_3:
9166         * test/etags/ETAGS.good_4:
9167         * test/etags/ETAGS.good_5:
9168         * test/etags/ETAGS.good_6:
9169         * test/etags/CTAGS.good: Adapt to changes in Ruby tests.
9171 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
9173         Add --git-config option to autogen.sh
9175         * autogen.sh: New options --git-config, --help.
9176         (git_config): New shell var.  Alter function to respect this var.
9178 2016-02-02  Lars Ingebrigtsen  <larsi@gnus.org>
9180         Fix editing undo changes in eww fields
9182         * eww.el (eww-tag-form): Don't overwrite initial form data in text
9183         fields.
9184         (eww-process-text-input): Make `M-t' at the end of text fields work
9185         better (bug#19085).
9187 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
9189         Allow the user more control of popping up the eww window
9191         * eww.el (eww): Use pop-to-buffer-same-window (suggested by
9192         Michael Heerdegen) (bug#22244).
9194 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
9196         Make eww-browse-url with new-window parameter work again
9198         * eww.el (eww-browse-url): Stay in the same buffer if we're
9199         already in a eww mode buffer so that eww-browse-url with a
9200         new-window parameter works (bug#22244).
9202 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
9204         Clean up eww code slightly
9206         * eww.el (eww-browse-url): Clean up code slightly.
9208 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
9210         Don't insert nil faces in shr
9212         * shr.el (shr-insert-table): Don't add nil faces, because that
9213         will show up in *Messages* as "Invalid face reference: nil [32
9214         times]".
9216 2016-02-01  Glenn Morris  <rgm@gnu.org>
9218         Improve the custom type of some user options.
9220         * lisp/autoinsert.el (auto-insert-alist):
9221         * lisp/replace.el (query-replace-from-to-separator):
9222         * lisp/gnus/gnus-art.el (gnus-hidden-properties):
9223         * lisp/gnus/gnus-gravatar.el (gnus-gravatar-properties):
9224         * lisp/gnus/gnus-picon.el (gnus-picon-properties):
9225         * lisp/progmodes/prolog.el (prolog-keywords, prolog-types)
9226         (prolog-mode-specificators, prolog-determinism-specificators)
9227         (prolog-directives, prolog-program-name, prolog-program-switches)
9228         (prolog-consult-string, prolog-compile-string, prolog-eof-string)
9229         (prolog-prompt-regexp): Improve custom type.
9231 2016-02-01  Glenn Morris  <rgm@gnu.org>
9233         Mark some risky calendar variables.
9235         * lisp/calendar/cal-china.el (chinese-calendar-time-zone):
9236         Remove risky setting for deleted obsolete alias.
9237         (calendar-chinese-standard-time-zone-name)
9238         (calendar-chinese-daylight-saving-start)
9239         (calendar-chinese-daylight-saving-end):
9240         * lisp/calendar/calendar.el (calendar-iso-date-display-form)
9241         (calendar-european-date-display-form)
9242         (calendar-american-date-display-form, calendar-date-display-form):
9243         * lisp/calendar/diary-lib.el (diary-remind-message)
9244         (diary-header-line-format):
9245         * lisp/calendar/solar.el (calendar-time-display-form)
9246         (calendar-location-name): Mark as risky.
9248 2016-02-01  Simen Heggestøyl  <simenheg@gmail.com>
9250         Highlight two additional SCSS keywords
9252         * lisp/textmodes/css-mode.el (css-bang-ids): New defconst holding CSS
9253         identifiers on the form !foo.
9254         (scss-bang-ids): New defconst holding SCSS identifiers on the form
9255         !foo.
9256         (css--font-lock-keywords): Highlight the new SCSS bang identifiers in
9257         `font-lock-builtin-face'.
9259         * test/indent/css-mode.css: Add bang rule test case.
9261         * test/indent/scss-mode.scss: Add test cases for the introduced bang
9262         rules.
9264 2016-02-01  Karl Fogel  <kfogel@red-bean.com>
9266         Recommend enabling integrity-checking in git
9268         * admin/notes/git-workflow:  Recommend setting transfer.fsckObjects.
9270         This is related to the autogen.sh changes made by Paul Eggert in
9271         commit d766ca8f (2016-02-01) and commit cedd7cad (2016-02-01), and to
9272         my edits today to http://www.emacswiki.org/emacs/GitForEmacsDevs and
9273         to emacswiki.org/emacs/GitQuickStartForEmacsDevs.  See also the thread
9274         "Recommend these .gitconfig settings for git integrity." at
9275         https://lists.gnu.org/r/emacs-devel/2016-01/threads.html#01802.
9277 2016-02-01  Martin Rudalics  <rudalics@gmx.at>
9279         Some corrections in Elisp manual
9281         * doc/lispref/buffers.texi (Read Only Buffers): Describe optional
9282         argument POSITION.
9283         * doc/lispref/debugging.texi (Error Debugging): `debug-on-signal'
9284         is an option.
9285         * doc/lispref/display.texi (Refresh Screen): Describe optional
9286         argument FRAME of `redraw-frame'.
9287         (Attribute Functions): Describe optional argument CHARACTER of
9288         `face-font'.
9289         (Defining Images): `image-load-path' is an option.
9290         (Beeping): `ring-bell-function' is an option.
9291         * doc/lispref/frames.texi (Size and Position): The PIXELWISE
9292         argument of `set-frame-size' is optional.
9293         (Raising and Lowering): The TERMINAL argument of `tty-top-frame'
9294         is optional.
9295         * doc/lispref/keymaps.texi (Controlling Active Maps): Fix doc of
9296         `set-transient-map'.
9297         * doc/lispref/minibuf.texi (Text from Minibuffer):
9298         `read-regexp-defaults-function' is an option.
9299         (Minibuffer Contents): `delete-minibuffer-contents' is a command.
9300         * doc/lispref/modes.texi (Mode Line Variables):
9301         `mode-line-position' and `mode-line-modes' are variables, not
9302         options.
9303         * doc/lispref/strings.texi (Creating Strings): The START argument
9304         of `substring' is optional.
9305         * doc/lispref/text.texi (Buffer Contents): Describe optional
9306         argument NO-PROPERTIES of `thing-at-point'.
9307         (User-Level Deletion): Both arguments of
9308         `delete-trailing-whitespace' are optional.
9309         (Margins): Use @key{RET} instead of @kbd{RET}.
9310         * doc/lispref/windows.texi (Display Action Functions): Write
9311         non-@code{nil} instead of non-nil.
9312         (Choosing Window Options): The WINDOW arg of
9313         `split-window-sensibly' is optional.
9314         (Choosing Window Options): Write non-@code{nil} instead of
9315         non-nil.
9316         (Window Start and End): Both args of `window-group-end' are
9317         optional.
9319         * src/buffer.c (Fbarf_if_buffer_read_only): Rename argument POS
9320         to POSITION to keep consisteny with doc-string.
9322 2016-02-01  Paul Eggert  <eggert@cs.ucla.edu>
9324         Chatter when autogen.sh changes Git configuration
9326         * autogen.sh (git_config): New function.  Use it instead of ‘git config’.
9328 2016-02-01  Kyle Meyer  <kyle@kyleam.com>
9330         * lisp/org/org-compat.el (org-font-lock-ensure): Fix bogus test (bug#22399)
9332 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
9334         Omit unnecessary history from Lisp intro
9336         * doc/lispintro/emacs-lisp-intro.texi (Review, Digression into C)
9337         (Conclusion): Reword so as not to talk about earlier versions
9338         of Emacs in what should be an intro.
9340 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
9342         * etc/HISTORY: Add some more history, plus git tags.
9344 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
9346         Improve elisp “Security Considerations” doc
9348         * doc/lispref/os.texi (Security Considerations):
9349         Mention call-process and rename-file as opposed to shell commands.
9350         Add some more cross-references.
9352 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
9354         autogen.sh now arranges for git to check hashes
9356         Suggested by Karl Fogel in:
9357         https://lists.gnu.org/r/emacs-devel/2016-01/msg01802.html
9358         * autogen.sh: Do "git config transfer.fsckObjects true".
9360 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
9362         Fix (c & 040) typo in emergency escapes
9364         * src/keyboard.c (handle_interrupt): Fix recently-introduced
9365         typo (040 should have been ~040) that silently suppressed
9366         auto-saves after emergency escapes.  Redo comparison to avoid
9367         similar problems.
9369 2016-01-31  Eli Zaretskii  <eliz@gnu.org>
9371         Fix display of overlay strings with 'display' and 'box' property
9373         * src/xdisp.c (get_next_display_element): Take the box face from
9374         display stack level that comes from a buffer, not an overlay
9375         string.  (Bug#22499)
9377 2016-01-31  Andreas Schwab  <schwab@linux-m68k.org>
9379         Fix imap-starttls-open
9381         * lisp/net/imap.el (imap-starttls-open): Log imap process
9382         output.  Call imap-parse-greeting.  (Bug#22500)
9384 2016-01-31  Andreas Schwab  <schwab@linux-m68k.org>
9386         Fix return value of imap-starttls-open
9388         * lisp/net/imap.el (imap-starttls-open): Fix return value.
9390 2016-01-31  John Wiegley  <johnw@newartisans.com>
9392         Correct reference to DARWIN_OS preprocessor symbol
9394         * src/alloc.c: Correct a preprocessor reference to DARWIN_OS, which may
9395           not be defined.
9397 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
9399         Spelling fix
9401         Spelling fixes
9403 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
9405         Pacify GCC on C library without glibc API
9407         Without this change, with --enable-gcc-warnings GCC would complain
9408         “error: redundant redeclaration of ‘aligned_alloc’”.
9409         * configure.ac: Simplify aligned_alloc testing.
9410         * src/alloc.c (aligned_alloc): Don’t use if DARWIN_OS,
9411         since the simplified configure.ac no longer checks for that.
9412         Don’t declare if HAVE_ALIGNED_ALLOC.
9413         Correct misspelling of HAVE_ALIGNED_ALLOC in ifdef.
9415 2016-01-30  Artur Malabarba  <bruce.connor.am@gmail.com>
9417         Backport: * lisp/files.el: Remove support for extra .dir-locals file
9419         (dir-locals-file-2, dir-locals--all-files): Remove.
9420         (dir-locals-collect-variables, dir-locals-file, dir-locals-find-file)
9421         (dir-locals-read-from-file, hack-dir-local-variables): Revert changes.
9423         * lisp/files-x.el (modify-dir-local-variable): Revert changes.
9425         * lisp/help-fns.el (describe-variable): Revert changes.
9427         * doc/emacs/custom.texi (Directory Variables): Revert changes.
9429         * etc/NEWS: Revert changes.
9431 2016-01-30  Glenn Morris  <rgm@gnu.org>
9433         * lisp/net/browse-url.el (browse-url-default-browser):
9434         Lower priority of non-free Chrome.
9436 2016-01-30  Glenn Morris  <rgm@gnu.org>
9438         Improve the custom type of some user options.
9440         * lisp/desktop.el (desktop-minor-mode-table):
9441         * lisp/man.el (Man-frame-parameters):
9442         * lisp/midnight.el (midnight-delay):
9443         * lisp/speedbar.el (speedbar-select-frame-method):
9444         * lisp/tooltip.el (tooltip-frame-parameters):
9445         * lisp/tree-widget.el (tree-widget-space-width):
9446         * lisp/type-break.el (type-break-keystroke-threshold):
9447         * lisp/woman.el (woman-imenu-generic-expression):
9448         * lisp/cedet/ede.el (ede-debug-program-function):
9449         * lisp/cedet/ede/project-am.el (project-am-debug-target-function):
9450         * lisp/emulation/viper-keym.el (viper-toggle-key):
9451         * lisp/erc/erc-networks.el (erc-server-alist):
9452         * lisp/gnus/message.el (message-deletable-headers, message-signature):
9453         * lisp/mail/mailalias.el (mail-directory-stream):
9454         * lisp/play/tetris.el (tetris-x-colors):
9455         * lisp/progmodes/gud.el (gud-tooltip-modes): Improve custom type.
9457 2016-01-30  Simen Heggestøyl  <simenheg@gmail.com>
9459         Highlight CSS variables with variable name face
9461         * lisp/textmodes/css-mode.el (css-nmstart-re): Don't match variables.
9462         (css--font-lock-keywords): Highlight variables in
9463         `font-lock-variable-name-face'.
9465 2016-01-30  Glenn Morris  <rgm@gnu.org>
9467         * lisp/gnus/gnus-kill.el (gnus-winconf-kill-file): Not user-serviceable.
9469 2016-01-30  Glenn Morris  <rgm@gnu.org>
9471         Mark some user options that can get evalled as risky.
9473         * lisp/allout.el (allout-title):
9474         * lisp/emacs-lisp/edebug.el (edebug-global-break-condition):
9475         * lisp/gnus/message.el (message-mailer-swallows-blank-line):
9476         * lisp/progmodes/gud.el (gud-tooltip-display):
9477         * lisp/vc/ediff-mult.el (ediff-default-filtering-regexp):
9478         Mark as risky.
9480 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
9482         Disable DebPrint in sys_read on MS-Windows
9484         * src/w32.c (sys_read): Disable a debugging print that is normal
9485         when non-blocking reads are retried.
9487 2016-01-30  Martin Rudalics  <rudalics@gmx.at>
9489         ;Fix ChangeLog entry
9491 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
9493         Fix typos in Introduction to Emacs Lisp manual
9495         * doc/lispintro/emacs-lisp-intro.texi (Emacs Initialization)
9496         (kill-new function, Digression into C)
9497         (Complete forward-sentence, Divide and Conquer, Find a File)
9498         (lengths-list-many-files, Columns of a graph, defcustom)
9499         (recursive-count-words): Fix typos.  Reported by Daniel Bastos
9500         <dbastos@toledo.com>.
9502 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
9504         Bump version to 25.0.90
9506         * README:
9507         * configure.ac:
9508         * msdos/sed2v2.inp: Bump version to 25.0.90.
9510 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
9512         * etc/AUTHORS: Update the AUTHORS file
9514 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
9516         Bump version to 25.0.90
9518         * README:
9519         * configure.ac:
9520         * msdos/sed2v2.inp: Bump version to 25.0.90.
9522 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
9524         * etc/AUTHORS: Update the AUTHORS file
9526 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
9528         authors.el updates
9530         * admin/authors.el (authors-renamed-files-alist): Additions.
9532 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
9534         Make it possible to run make change-history on emacs-25
9536         * Makefile.in: Check if the current branch is emacs-25 instead of
9537           master.
9539 2016-01-30  lu4nx  <lx@shellcodes.org>
9541         Support Go language in 'etags'
9543         * lib-src/etags.c <Ruby_help>: Fix documentation of Ruby tags.
9544         <Go_help>: New help.
9545         <Go_suffixes>: New variable.
9546         (Go_functions): New function.
9547         <lang_names>: Add entry for Go.  (Bug#22370)
9549         * doc/emacs/maintaining.texi (Tag Syntax): Document Go support.
9550         * doc/man/etags.1: Mention Go support.
9552         * etc/NEWS: Mention Go support.
9554         * test/etags/go-src/test.go:
9555         * test/etags/go-src/test1.go: New test files.
9556         * test/etags/Makefile (GOSRC): New variable.
9557         (SRCS): Add $(GOSRC).
9558         * test/etags/ETAGS.good_1:
9559         * test/etags/ETAGS.good_2:
9560         * test/etags/ETAGS.good_3:
9561         * test/etags/ETAGS.good_4:
9562         * test/etags/ETAGS.good_5:
9563         * test/etags/ETAGS.good_6:
9564         * test/etags/CTAGS.good: Adapt to addition of Go tests.
9566 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
9568         Improve Ruby support in 'etags'
9570         * lib-src/etags.c (Ruby_functions): Tag constants.  Don't tag
9571         singleton classes.  Remove class qualifiers from tags generated
9572         for method and constant names.  (Bug#22241)
9574         * doc/emacs/maintaining.texi (Tag Syntax): Mention that constants
9575         are tagged by etags in Ruby.
9577         * etc/NEWS: Mention that constants are tagged by etags in Ruby.
9579         * test/etags/ruby-src/test1.ru: Add more tests.
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:
9586         * test/etags/CTAGS.good: Adapt to the changes in etags and in Ruby
9587         tests.
9589 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
9591         Adjust etags test results to changes in copyright years
9593         * test/etags/CTAGS.good:
9594         * test/etags/ETAGS.good_1:
9595         * test/etags/ETAGS.good_2:
9596         * test/etags/ETAGS.good_3:
9597         * test/etags/ETAGS.good_4:
9598         * test/etags/ETAGS.good_5:
9599         * test/etags/ETAGS.good_6: Adjust to shift in characters and
9600         in line numbers.
9602 2016-01-30  Andreas Schwab  <schwab@linux-m68k.org>
9604         Revert "Re-enable checks in member, memql, delete to complain about non-lists"
9606         This reverts commit f524e8b7f12d9b5a8b92084e5385429fe7b085b9.
9608 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
9610         Make it possible to run make change-history on emacs-25
9612         * Makefile.in: Check if the current branch is emacs-25 instead of
9613           master.
9615 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
9617         Don't fiddle with DEFAULT
9619         * lisp/progmodes/project.el (project--completing-read-strict):
9620         Don't change DEFAULT, whether is has any matches in
9621         COLLECTION, or not.
9623 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
9625         Document xwidget commands and functions
9627         * doc/lispref/display.texi (Xwidgets): New section, describes some
9628         of the xwidget primitives.
9629         * doc/lispref/display.texi (Display): Update the chapter menu.
9630         * doc/emacs/misc.texi (Embedded WebKit Widgets): New section.
9631         * doc/emacs/emacs.texi (Top): Update the master menu to include
9632         the xwidget node.
9634 2016-01-30  Lars Ingebrigtsen  <larsi@gnus.org>
9636         Build fix for shr.el
9638         * shr.el (seq): Require.
9640 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
9642         Improve project-find-file yet again!
9644         * lisp/progmodes/project.el (project--completing-read-strict):
9645         New function.
9646         (project-find-file-in): Use it.
9647         (project-file-completion-table): Move the default
9648         implementation inside the cl-defgeneric form.
9649         (https://lists.gnu.org/r/emacs-devel/2016-01/msg01720.html)
9651 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
9653         Don't pass DIR to 'hg status'
9655         * lisp/vc/vc-hg.el (vc-hg-dir-status-files):
9656         Don't pass DIR to 'hg status' (bug#22481).
9658 2016-01-30  Stephen Leake  <stephen_leake@stephe-leake.org>
9660         Fix typo in previous commits
9662         * lisp/progmodes/project.el (project-find-file-in):
9663         * lisp/vc/vc-mtn.el (vc-mtn-find-ignore-file): Fix typo in previous
9664         commit.
9666 2016-01-30  Stephen Leake  <stephen_leake@stephe-leake.org>
9668         Improve project-find-file
9670         * lisp/progmodes/project.el (project-file-completion-table): New.
9671         (project-find-file, project-or-external-find-file): Default to filename
9672         at point.
9673         (project-file-completion-table): New, split out from
9674         project--find-file-in.
9675         (project-find-file-in): Renamed from project--find-file-in, use
9676         project-file-completion-table.
9678         * lisp/progmodes/xref.el (ede-minor-mode): New declaration.
9679         (xref--find-ignores-arguments): Add doc string.
9681 2016-01-30  Stephen Leake  <stephen_leake@stephe-leake.org>
9683         Implement vc-mtn-find-ignore-file, fix some doc strings
9685         * lisp/cedet/cedet-global.el (cedet-gnu-global-root): Improve doc string.
9687         * lisp/cedet/ede/locate.el (initialize-instance): Improve doc string.
9689         * lisp/vc/vc-git.el (vc-git-find-ignore-file): Fix doc string.
9691         * lisp/vc/vc-mtn.el (vc-mtn-find-ignore-file): New function.
9693 2016-01-29  Vincent Belaïche  <vincentb1@users.sourceforge.net>
9695         Correct a whole bunch of bugs coming with renamed cell relocation.
9697         This is the same change as commit on master branch. See
9698         https://git.savannah.gnu.org/cgit/emacs.git/commit/?id=badcd38aa86ed7973f2be2743c405710973a0bdd
9700         * lisp/ses.el (ses-localvars): rename variable
9701         `ses--renamed-cell-symb-list' into `ses--in-killing-named-cell-list'
9702         and adjust the comment about it.
9703         (ses-plist-delq): new defun.
9704         (ses--ses-buffer-list): new defvar.
9705         (ses--unbind-cell-name): new defun.
9706         (ses-relocate-symbol): Do not relocate symbol when it is a named cell.
9707         (ses-relocate-formula): Undo change of
9708         2011-12-27T19:30:39Z!vincentb1@users.sourceforge.net that was
9709         preventing relocation for named cell --- now doing this is delegated
9710         to function `ses-relocate-symbol'.
9711         (ses-relocate-range): In docstring, undo change of
9712         2016-01-03T07:31:52Z!johnw@newartisans.com, `ses-range' must remain
9713         lower case as it is not a variable.
9714         (ses-relocate-all): Cell name relocation : 1) check that cell is a
9715         renamed cell by testing `ses-cell' property to :ses-named, rather than
9716         comparing name to corresponding standard name. Set rowcol of renamed
9717         cell into the hashmap --- `ses-cell' property must not be used for
9718         that as the same name can be used for different locations in different
9719         SES sheets ; 2) use `local-variable-if-set-p' rather than `boundp' and
9720         `local-variable-p' to check if cell name is already in use in this
9721         sheet or needs initialization.
9722         (ses-relocate-all): Cell value relocation : 1) like for name
9723         relocation use the `ses-cell' property rather than comparing actual
9724         name to corresponding standard name. 2) Correct bug introduced in
9725         2011-12-27T19:30:39Z!vincentb1@users.sourceforge.net, as the test was
9726         made the other way round than the intention --- ie value relocation
9727         was disabled for standard cell, not for renamed cell as was the
9728         intention.
9729         (ses-relocate-all): Add loop for unbinding deleted renamed cells
9730         names.
9731         (ses-killbuffer-hook): new defun.
9732         (ses-mode): Add the ses--ses-buffer-list maintenance mechanism ---
9733         kill buffer hook, plus pushing current buffer if new in list.
9734         (ses-delete-row, ses-delete-column): Collect deleted renamed cells
9735         into `ses--in-killing-named-cell-list'.
9736         (ses-rename-cell): Remove update of variable
9737         `ses--renamed-cell-symb-list', this variable is renamed to
9738         `ses--in-killing-named-cell-list', and its setting is done in
9739         functions `ses-delete-row' and , `ses-delete-column' now.
9740         (ses-rename-cell): Make cell new name a buffer local variable.
9741         (ses-rename-cell): Change correction of
9742         2015-12-30T23:10:37Z!vincentb1@users.sourceforge.net concerning
9743         computation of the range over which `cursor-intangible' property was
9744         to be updated. This correction was ok for non spilling cells, but not
9745         for cells spilling over following blank cells. Simply use
9746         `next-single-property-change' rather than computing the end column
9747         from column widths.
9749 2016-01-29  Andreas Schwab  <schwab@linux-m68k.org>
9751         Re-enable checks in member, memql, delete to complain about non-lists
9753         * src/fns.c (Fmember, Fmemql, Fdelete): Revert 2007-10-16 change.
9755 2016-01-29  Martin Rudalics  <rudalics@gmx.at>
9757         Minor doc(-string) tweaks
9759         * lisp/window.el (window-in-direction): Fix doc-string typo.
9760         * doc/lispref/frames.texi (Frame Font): Mention canonical
9761         character width/height.
9762         * doc/lispref/windows.texi (Windows and Frames): Clarify
9763         handling of minibuffer window for `window-in-direction'.
9764         (Window Sizes): Minor tweaks in descriptions of
9765         `window-max-chars-per-line', `window-min-width' and
9766         `window-min-size'.
9767         (Deleting Windows): Minor tweak in `delete-window' description.
9768         (Selecting Windows): Clarify window use time description.
9769         (Cyclic Window Ordering): Minor tweak.
9770         (Switching Buffers): Clarify description of
9771         `switch-to-buffer-in-dedicated-window'.
9773 2016-01-29  Eli Zaretskii  <eliz@gnu.org>
9775         Minor improvements to 'pcase' documentation
9777         * doc/lispref/control.texi (Pattern matching case statement):
9778         Improve the documentation of 'pcase' per comments.  See two
9779         discussion threads on emacs-devel@gnu.org for the details:
9780         https://lists.gnu.org/r/emacs-devel/2016-01/msg01335.html
9781         https://lists.gnu.org/r/emacs-devel/2016-01/msg01336.html.
9783 2016-01-29  Glenn Morris  <rgm@gnu.org>
9785         Don't use eval to quieten prolog.el compilation.
9787         * lisp/progmodes/prolog.el (pltrace-on, pltrace-off): Declare.
9788         (prolog-enable-sicstus-sd, prolog-disable-sicstus-sd): Don't use eval.
9790 2016-01-29  Glenn Morris  <rgm@gnu.org>
9792         Mark some risky prolog variables.
9794         * lisp/progmodes/prolog.el (prolog-system-version)
9795         (prolog-keywords, prolog-types, prolog-mode-specificators)
9796         (prolog-determinism-specificators, prolog-directives)
9797         (prolog-program-name, prolog-program-switches)
9798         (prolog-consult-string, prolog-compile-string)
9799         (prolog-eof-string, prolog-prompt-regexp, prolog-help-function):
9800         Mark anything processed by prolog-find-value-by-system as risky.
9802 2016-01-28  Glenn Morris  <rgm@gnu.org>
9804         * lisp/custom.el (defcustom): Doc fix.
9806         * doc/lispref/customize.texi (Variable Definitions):
9807         Defcustom should always have a type.
9809 2016-01-28  Glenn Morris  <rgm@gnu.org>
9811         * lisp/cedet/semantic/db-file.el (semanticdb-persistent-path):
9812         Fix :type.
9814         * lisp/emacs-lisp/package.el (package-load-list): Improve :type.
9816 2016-01-28  Michael Albinus  <michael.albinus@gmx.de>
9818         Fix Bug#22452
9820         * lisp/net/tramp-adb.el (tramp-adb-maybe-open-connection):
9821         * lisp/net/tramp-gvfs.el (tramp-gvfs-maybe-open-connection):
9822         * lisp/net/tramp-sh.el (tramp-maybe-open-connection):
9823         * lisp/net/tramp-smb.el (tramp-smb-maybe-open-connection):
9824         Mark it as connected.
9826         * lisp/net/tramp.el (tramp-handle-file-remote-p): Check also, if
9827         connection property "connected" is set.  (Bug#22452)
9829 2016-01-27  Glenn Morris  <rgm@gnu.org>
9831         * lisp/xwidget.el (xwidget-query-on-exit-flag): Declare.
9833         * lisp/xwidget.el (xwidget-webkit-browse-url): Give explicit error
9834         if not compiled with xwidgets.
9836 2016-01-27  Paul Eggert  <eggert@cs.ucla.edu>
9838         C-u C-x = example doc fix
9840         * doc/emacs/mule.texi (International Chars):
9841         Adjust example to match current behavior of C-u C-x =.
9843 2016-01-27  Paul Eggert  <eggert@cs.ucla.edu>
9845         malloc.h hygiene
9847         This attempts to future-proof Emacs a bit against possible glibc
9848         changes, by having Emacs use <malloc.h> declarations rather than
9849         coding them up by hand.  Problem noted by Florian Weimer in:
9850         https://sourceware.org/ml/libc-alpha/2016-01/msg00777.html
9851         Implement this mainly by moving malloc.h-related functions from
9852         emacs.c (which does not include <malloc.h>) to alloc.c (which does).
9853         * src/alloc.c (my_heap_start) [DOUG_LEA_MALLOC || GNU_LINUX]:
9854         New function.
9855         The remaining changes to this file apply only if DOUG_LEA_MALLOC.
9856         (alloc_unexec_pre, alloc_unexec_post): New functions.
9857         (malloc_initialize_hook): Use my_heap_start and alloc_unexec_post.
9858         (__MALLOC_HOOK_VOLATILE): New macro, if not already defined.
9859         (__malloc_initialize_hook): Use it.
9860         (malloc_state_ptr, malloc_initialize_hook, __malloc_initialize_hook):
9861         Move here from ...
9862         * src/emacs.c: ... here.
9863         (malloc_get_state, malloc_set_state): Remove extern decls.
9864         (my_heap_start) [DOUG_LEA_MALLOC || GNU_LINUX]: Remove static var.
9865         All uses changed to similarly-named new function.
9866         (Fdump_emacs): Use new functions alloc_unexec_pre, alloc_unexec_post.
9867         * src/lisp.h (my_heap_start, alloc_unexec_pre, alloc_unexec_post):
9868         New decls.
9870 2016-01-26  Eli Zaretskii  <eliz@gnu.org>
9872         * doc/emacs/mark.texi (Using Region): Clarify wording.  (Bug#22467)
9874 2016-01-26  Paul Eggert  <eggert@cs.ucla.edu>
9876         Remove never-set var handle_user_signal_hook
9878         * src/keyboard.c, src/keyboard.h (handle_user_signal_hook):
9879         Remove never-set var.  All uses removed.
9881 2016-01-26  K. Handa  <handa@gnu.org>
9883         Backport:fix previous change of src/ftfont.c (ftfont_shape_by_flt)
9885         * src/ftfont.c (ftfont_shape_by_flt): Fix previous change.  Access the
9886         second glyph only when there are enough glyphs.
9888         (cherry picked from commit 9835757013569673854b692ccbb58bfb3c3ed1f7)
9890 2016-01-26  K. Handa  <handa@gnu.org>
9892         support rendering of wider range of combinging characters by ftfont backend
9894         * lisp/language/hebrew.el (hebrew-shape-gstring): If the font backend
9895         supports rendering of combining characters, call
9896         font-shape-gstring.
9898         * src/font.c (Ffont_get): Handle `combining-capability' property.
9899         (syms_of_font): New symbol ":combining-capability'.
9901         * src/font.h (struct font_driver): New member combining_capability.
9903         * src/ftfont.c: Include "category.h".
9904         (ftfont_driver): Initialize combining_capability to
9905         ftfont_combining_capability.
9906         (ftfont_shape_by_flt): If OTF is null, try to find a suitable
9907         FLT in advance.
9908         (ftfont_combining_capability): New function.
9910         (cherry picked from commit 536f48e9a2251b9e654ea974bd90ff2f40218753)
9912 2016-01-26  Anders Lindgren  <andlind@gmail.com>
9914         Fixed NextStep fullscreen issue (bug#22468)
9916         When in fullscreen mode, `[screen visibleFrame]' sometimes
9917         includes, sometimes excludes the menu bar. This could cause
9918         a frame to be placed too low when in fullscreen mode.
9920         * src/nsterm.m (ns_menu_bar_should_be_hidden): Trace.
9921         (constrain_frame_rect): New parameter, isFullscreen, when true don't
9922         query the height of the menu bar.
9923         (ns_constrain_all_frames): Pass `false' (isFullscreen) to
9924         `constrain_frame_rect'.
9925         ([EmacsView initFrameFromEmacs:]): Trace.
9926         ([EmacsView isFullscreen]): Trace.
9927         ([EmacsWindow constrainFrameRect:toScreen:]): Pass fullscreen
9928         state to `constrain_frame_rect'.
9930 2016-01-26  Artur Malabarba  <bruce.connor.am@gmail.com>
9932         * lisp/files.el: Use a fixed file name for the second dir-locals file
9934         (dir-locals-file): Revert to its original fixed value.
9935         (dir-locals-file-2): New const.
9936         (dir-locals--all-files): Don't use `file-name-all-completions'.
9937         Instead, just check for the 2 dir-locals files and return a list
9938         of the ones that exit (if any).
9940         * etc/NEWS: Document the change.
9942         * doc/emacs/custom.texi (Directory Variables): Document the change.
9944         * doc/lispref/variables.texi (Directory Local Variables): Update
9945         accordingly.
9947 2016-01-26  Artur Malabarba  <bruce.connor.am@gmail.com>
9949         * lisp/files-x.el (modify-dir-local-variable): Small rewrite
9951         Change a variable name to be more meaningful, and reorder some of
9952         the code with no change in behavior.
9954 2016-01-26  Artur Malabarba  <bruce.connor.am@gmail.com>
9956         * lisp/files.el (dir-locals-find-file): Refactor return values
9958         Returning a cache remains unchanged, but the case of returning a
9959         file (or pattern) is now changed to return the contaning
9960         directory.
9962         (dir-locals-read-from-file): Rename to `dir-locals-read-from-dir'
9963         and make obsolete.
9964         (dir-locals-read-from-dir): Simplify accordingly.
9965         (hack-dir-local-variables): Simplify accordingly and rename a
9966         variable.
9968 2016-01-26  Glenn Morris  <rgm@gnu.org>
9970         * lisp/textmodes/flyspell.el (flyspell--prev-meta-tab-binding):
9971         Declare.
9973         * configure.ac (USE_CAIRO): Rename to more standard HAVE_CAIRO.
9975         * configure.ac (--with-cairo): Say it's experimental.
9977         * lisp/xwidget.el (xwidget-webkit-scroll-behavior):
9978         Rename using American spelling.  Update all uses.
9980 2016-01-26  Glenn Morris  <rgm@gnu.org>
9982         Yet more xwidget doc fixes.
9984         * lisp/xwidget.el (xwidget-webkit-scroll-behaviour)
9985         (xwidget-insert, xwidget-webkit-browse-url)
9986         (xwidget-webkit-scroll-up, xwidget-webkit-scroll-down)
9987         (xwidget-webkit-scroll-forward, xwidget-webkit-scroll-backward)
9988         (xwidget-webkit-insert-string, xwidget-webkit-show-named-element)
9989         (xwidget-webkit-show-id-element)
9990         (xwidget-webkit-show-id-or-named-element)
9991         (xwidget-webkit-adjust-size, xwidget-webkit-current-url)
9992         (xwidget-webkit-execute-script-rv)
9993         (xwidget-webkit-copy-selection-as-kill, xwidget-get)
9994         (xwidget-put):  Doc fixes.
9995         (xwidget-webkit-insert-string, xwidget-webkit-show-named-element)
9996         (xwidget-webkit-show-id-element)
9997         (xwidget-webkit-show-id-or-named-element): Prompt fixes.
9999 2016-01-25  Ted Zlatanov  <tzz@lifelogs.com>
10001         * lisp/gnus/gnus-art.el (gnus-blocked-images):
10002         Add explicit nil choice and tags.
10004 2016-01-25  Paul Eggert  <eggert@cs.ucla.edu>
10006         Spelling fixes
10008 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
10010         (font-lock-ensure-function): Fix bug#22399
10012         * lisp/font-lock.el (font-lock-ensure-function): Fix handling when
10013         font-lock-mode is not enabled (bug#22399).
10015 2016-01-25  Alan Mackenzie  <acm@muc.de>
10017         Expunge "allow" + infinitive from source and doc, part 2.
10019         Do the same for "permit", "enable", "prevent", and (where appropriate)
10020         "require".
10022         doc/misc/reftex.texi:
10023         doc/misc/url.texi:
10024         lib/get-permissions.c:
10025         lib/strftime.c:
10026         lisp/org/org-element.el:
10027         lisp/org/org-mobile.el:
10028         lisp/textmodes/reftex-vars.el:
10029         src/bidi.c:
10030         src/emacs.c:
10031         src/xdisp.c:
10032         test/etags/c-src/emacs/src/lisp.h:
10034         Expunge the likes of "This allows to do something" from the above files.
10036 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
10038         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-mode): Redundant line
10040         `special-mode' is already read-only.
10042 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
10044         * lisp/emacs-lisp/ert.el (ert--results-move): Change error to user-error
10046 2016-01-25  Paul Eggert  <eggert@cs.ucla.edu>
10048         Port "$@" to OpenIndiana ksh93
10050         In https://lists.gnu.org/r/bug-autoconf/2015-12/msg00000.html
10051         Pavel Raiskup reports that ${1+"$@"} runs afoul of a bug in /bin/sh
10052         (derived from ksh 93t+ 2010-03-05).  ${1+"$@"} works around an ancient
10053         bug in long-dead shells, so remove the workaround.
10054         * admin/check-doc-strings, configure.ac, lib-src/rcs2log:
10055         Use plain "$@" rather than ${1+"$@"}.
10057 2016-01-25  Paul Eggert  <eggert@cs.ucla.edu>
10059         * src/xwidget.c (Fxwidget_set_adjustment): Fix doc string quoting typo.
10061 2016-01-25  Paul Eggert  <eggert@cs.ucla.edu>
10063         Improve wording for SMB support
10065         * doc/misc/tramp.texi (External methods): Improve and modernize
10066         wording for discussion of smbclient.  There is no longer any
10067         need to mention the laundry list of old MS Windows implementations
10068         of SMB and CIFS, nor to mention CIFS.  Also, give a URL for Samba.
10070 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
10072         Merge from gnulib
10074         This incorporates:
10075         2016-01-24 openat_proc_name: fix last '/' overwritten on OS/2 kLIBC
10076         2016-01-24 closedir, dirfd, opendir: port to OpenSolaris 5.10
10077         2016-01-15 detect utimes() correctly on OS/2 kLIBC
10078         2016-01-15 openat_proc_name: port to OS/2 kLIBC
10079         2016-01-14 stdint: check _INTPTR_T_DECLARED for intptr_t etc.
10080         2016-01-14 opendir, closedir, dirfd, fdopendir: port to OS/2 kLIBC
10081         2016-01-14 dup, dup2, fcntl: support a directory fd on OS/2 kLIBC
10082         2016-01-14 binary-io: don't put fd in binary mode if a console on EMX
10083         2016-01-14 sig2str: list all signals on FreeBSD >= 7
10084         2016-01-13 acl-permissions: port to USE_ACL==0 platforms
10085         2016-01-12 mktime: rename macro to avoid glibc clash
10086         2016-01-12 Port "$@" to OpenIndiana ksh93
10087         2016-01-12 Port Universal Time settings to strict POSIX
10088         * build-aux/gitlog-to-changelog, build-aux/update-copyright:
10089         * doc/misc/texinfo.tex, lib/acl-internal.c, lib/acl-internal.h:
10090         * lib/binary-io.h, lib/dirent.in.h, lib/dirfd.c, lib/dup2.c:
10091         * lib/fcntl.c, lib/fdopendir.c, lib/mktime.c, lib/openat-proc.c:
10092         * lib/sig2str.h, lib/stdint.in.h, m4/dirfd.m4, m4/dup2.m4:
10093         * m4/fcntl.m4, m4/utimes.m4:
10094         Copy from gnulib.
10095         * m4/gnulib-comp.m4: Regenerate.
10097 2016-01-24  Alan Mackenzie  <acm@muc.de>
10099         Expunge "allow" + infinitive without direct object from source and doc.
10101         Do the same for "permit", "enable", and "prevent".
10103         * doc/emacs/mule.texi:
10104         * doc/lispref/control.texi:
10105         * doc/lispref/display.texi:
10106         * doc/lispref/frames.texi:
10107         * doc/lispref/functions.texi:
10108         * doc/lispref/nonascii.texi:
10109         * doc/lispref/streams.texi:
10110         * doc/lispref/windows.texi:
10111         * doc/misc/dbus.texi:
10112         * doc/misc/eww.texi:
10113         * doc/misc/flymake.texi:
10114         * doc/misc/octave-mode.texi:
10115         * doc/misc/org.texi:
10116         * doc/misc/reftex.texi:
10117         * doc/misc/tramp.texi:
10118         * doc/misc/wisent.texi:
10119         * etc/NEWS:
10120         * lisp/autorevert.el:
10121         * lisp/cedet/mode-local.el:
10122         * lisp/cedet/semantic/senator.el:
10123         * lisp/cedet/semantic/wisent.el:
10124         * lisp/dos-fns.el:
10125         * lisp/frameset.el:
10126         * lisp/gnus/gnus-agent.el:
10127         * lisp/gnus/mm-util.el:
10128         * lisp/international/characters.el:
10129         * lisp/ldefs-boot.el:
10130         * lisp/mail/mailclient.el:
10131         * lisp/man.el:
10132         * lisp/mh-e/mh-search.el:
10133         * lisp/net/tramp-cmds.el:
10134         * lisp/net/tramp-gvfs.el:
10135         * lisp/org/org-crypt.el:
10136         * lisp/org/org-element.el:
10137         * lisp/org/org-feed.el:
10138         * lisp/org/org.el:
10139         * lisp/org/ox-ascii.el:
10140         * lisp/org/ox-icalendar.el:
10141         * lisp/org/ox-publish.el:
10142         * lisp/org/ox.el:
10143         * lisp/play/gamegrid.el:
10144         * lisp/play/gomoku.el:
10145         * lisp/progmodes/antlr-mode.el:
10146         * lisp/progmodes/python.el:
10147         * lisp/progmodes/vhdl-mode.el:
10148         * lisp/strokes.el:
10149         * lisp/textmodes/ispell.el:
10150         * lisp/tree-widget.el:
10151         * lisp/vc/pcvs.el:
10152         * lisp/window.el:
10153         * src/lisp.h:
10154         * src/w32.c:
10155         * src/w32heap.c:
10156         * src/w32term.c:
10157         * src/window.c:
10158         * src/xfaces.c:
10160         Replace solecisms like "This allow to do something" with a correct
10161         alternative, such as "This allow you to do something", "This allows
10162         something to be done" or "This allows the doing of something".
10164 2016-01-24  Kelvin White  <kwhite@gnu.org>
10166         Add NEWS entry for asynchronous reconnect in ERC
10168 2016-01-24  Kelvin White  <kwhite@gnu.org>
10170         browse-url.el: Add 'google-chrome' to supported browsers.
10172 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
10174         Port Tramp manual to latest Texinfo
10176         Otherwise, 'make pdf' did not work (Bug#22416).
10177         * doc/misc/tramp.texi (xxx, yyy): Remove macros.
10178         (trampfn): Specialize to the case where METHOD is nonempty.
10179         The 2nd argument is now user@host, not 2nd user and 3rd host args.
10180         All uses changed.
10181         (trampf): New macro.
10183 2016-01-24  Lars Ingebrigtsen  <larsi@gnus.org>
10185         * eww.el (eww-render): Protect against empty content-types.
10187 2016-01-24  Nicolas Petton  <nicolas@petton.fr>
10189         authors.el updates
10191         * admin/authors.el (authors-ignored-files, authors-renamed-files-alist):
10192           Additions.
10194 2016-01-24  Dmitry Gutov  <dgutov@yandex.ru>
10196         Rename xref-query-replace to xref-query-replace-in-results
10198         * lisp/progmodes/xref.el(xref-query-replace):
10199         Rename to xref-query-replace-in-results.
10200         (https://lists.gnu.org/r/emacs-devel/2016-01/msg01240.html)
10202         * lisp/progmodes/xref.el (xref--xref-buffer-mode-map):
10203         * lisp/dired-aux.el (dired-do-find-regexp-and-replace):
10204         * doc/emacs/dired.texi (Operating on Files):
10205         * doc/emacs/maintaining.texi (Xref Commands)
10206         (Identifier Search, Identifier Search): Update accordingly.
10208 2016-01-24  Dmitry Gutov  <dgutov@yandex.ru>
10210         Update cl-defgeneric and cl-defmethod docstrings
10212         * lisp/emacs-lisp/cl-generic.el: Remove outdated TODO item.
10213         (cl-defgeneric): Rename BODY to DEFAULT-BODY.
10214         (cl-defmethod): Mention that multiple dispatch arguments are
10215         allowed.  Document supported types.  (Bug#22336)
10217 2016-01-23  Dmitry Gutov  <dgutov@yandex.ru>
10219         Comment out next-error-function integration in xref
10221         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
10222         Comment out next-error-function integration
10223         (https://lists.gnu.org/r/emacs-devel/2016-01/msg01286.html).
10225 2016-01-23  John Wiegley  <johnw@newartisans.com>
10227         Correct a use of "which" in intro.texi
10229 2016-01-23  Alan Mackenzie  <acm@muc.de>
10231         Distinguish the two meanings of Java's keyword "default".  Fixes bug #22358.
10233         * lisp/progmodes/cc-engine.el (c-guess-basic-syntax CASE 14): Check the
10234         context of case labels (including "default") more rigorously.
10235         (c-guess-basic-syntax CASE 15): Consequential amendment.
10237         * lisp/progmodes/cc-langs.el (c-modifier-kwds): Add "default" to Java's value.
10239 2016-01-23  Oscar Fuentes  <ofv@wanadoo.es>
10241         Don't operate on menu bar of nonexistent frame
10243         * src/xfns.c (Fx_hide_tip) [USE_LUCID]: Check that the current frame
10244         is valid before redisplaying its menu. Fixes bug#22438.
10246 2016-01-23  Anders Lindgren  <andlind@gmail.com>
10248         Unbreak the GNUstep build.
10250         * src/nsterm.m ([EmacsBell init]): In GNUstep, don't use the
10251         predefined "caution" image. Add trace.
10252         (x_set_window_size): Remove unused variables `cols' and `rows'.
10253         (ns_draw_fringe_bitmap): Exclude assignment of `fromRect' when
10254         GNUstep is used.
10255         ([EmacsView updateFrameSize:]): Remove unused variable `win'.
10256         ([EmacsWindow zoom:]): Remove unused variable `f'.
10258 2016-01-23  Eli Zaretskii  <eliz@gnu.org>
10259             John Wiegley  <johnw@gnu.org>
10260             Michael Heerdegen  <michael_heerdegen@web.de>
10262         Improve documentation of 'pcase'
10264         * doc/lispref/control.texi (Pattern matching case statement):
10265         Reorganize, expand, and improve wording.
10267         * etc/NEWS: Mention that 'pcase' changes are documented.
10269 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
10271         * etc/NEWS: Say that Cairo is experimental.
10273 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
10275         Report error for PNG under Cairo
10277         * src/image.c (lookup_rgb_color): Signal a file error instead
10278         of dumping core when mishandling an image.
10280 2016-01-23  Arash Esbati  <esbati@gmx.de>
10282         Delete a spurious backquote (tiny change)
10284         * lisp/textmodes/reftex-ref.el (reftex-label): Delete a
10285         spurious backquote which raises an error with emacs 25.
10287 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
10289         Pacify --enable-gcc-warnings --with-cairo
10291         Problem reported by Alexander Kuleshov in:
10292         https://lists.gnu.org/r/emacs-devel/2016-01/msg01289.html
10293         * src/gtkutil.c (xg_get_page_setup):
10294         Use switch rather than if-then-else.
10295         * src/image.c (COLOR_TABLE_SUPPORT):
10296         Define directly rather than via #define and optional later #undef.
10297         (lookup_rgb_color) [USE_CAIRO && ENABLE_CHECKING]:
10298         Crash when the pixel is undefined, as there is a genuine bug
10299         here (Bug#22442).
10300         * src/image.c (tiff_load, gif_load, svg_load_image)
10301         (x_kill_gs_process) [USE_CAIRO]:
10302         * src/xterm.c (x_draw_fringe_bitmap) [USE_CAIRO]:
10303         Omit unused locals, or move them to where they’re needed.
10304         (x_clear_area1): Now ATTRIBUTE_UNUSED.
10306 2016-01-23  Eli Zaretskii  <eliz@gnu.org>
10308         Update documentation for Dired search and replace
10310         * doc/emacs/dired.texi (Operating on Files): Update descriptions
10311         of 'A' and 'Q' now bound to 'dired-do-find-regexp' and
10312         'dired-do-find-regexp-and-replace'.
10314         * etc/NEWS: Mention xref-related changes in Dired.
10316 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
10318         Port recent xdisp.c fix to picky C compilers
10320         * src/xdisp.c (dump_glyph): Redo the call to fprintf to avoid
10321         putting #if inside the arguments to a standard function, which
10322         the C standard says has undefined behavior.
10324 2016-01-22  Alan Mackenzie  <acm@muc.de>
10326         Prevent spurious recognition of K&R argument declarations.  Fixes bug #2203
10328         * lisp/progmodes/cc-engine.el (c-forward-declarator): New function.
10329         (c-in-knr-argdecl): Before recognizing a K&R argument declaration, check it is
10330         contained in the preceding arg list.
10332         * lisp/progmodes/cc-fonts.el (c-font-lock-declarators): Use the new function
10333         `c-forward-declarator' in place of inline code.
10335 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
10337         Fix the build with --enable-checking=glyphs
10339         * src/xdisp.c (dump_glyph): Don't refer to glyph->u.xwidget in a
10340         build without xwidget support.
10342 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
10344         Document cl-generic.el
10346         * doc/lispref/functions.texi (Generic Functions): New section.
10347         (Bug#22336)
10348         (Functions): Update the chapter menu.
10349         * doc/lispref/elisp.texi: Update the master menu.
10351 2016-01-22  Paul Eggert  <eggert@cs.ucla.edu>
10353         xwidgets style cleanup
10355         Adjust the newly-added Xwidgets code so that it uses a more-typical
10356         Emacs style.  This should not affect behavior, except that in
10357         a few places it adds runtime checks that Lisp arguments are of
10358         the proper type, and in one place it uses more-precise arithmetic.
10359         * src/buffer.c, src/dispnew.c, src/emacs.c, src/emacsgtkfixed.c:
10360         * src/emacs.c, src/print.c, src/window.c, src/xdisp.c, src/xterm.c:
10361         Include xwidget.h unconditionally.
10362         * src/buffer.c (Fkill_buffer):
10363         * src/dispnew.c (update_window):
10364         * src/emacs.c (main):
10365         * src/print.c (print_object):
10366         * src/window.c (Fdelete_window_internal):
10367         * src/xdisp.c (handle_single_display_spec, push_it, pop_it)
10368         (get_next_element, set_iterator_to_next, next_element_from_xwidget)
10369         (dump_glyph, calc_pixel_width_or_height, BUILD_GLYPH_STRINGS_XW)
10370         (BUILD_GLYPH_STRINGS, x_produce_glyphs, get_window_cursor_type):
10371         * src/xterm.c (x_draw_glyph_string, x_draw_bar_cursor):
10372         Call xwidget functions and macros without worrying about
10373         HAVE_XWIDGETS when the code is a no-op on non-xwidget
10374         platforms.
10375         * src/dispextern.h (XWIDGET_GLYPH, struct glyph_string.xwidget)
10376         (IT_XWIDGET, GET_FROM_XWIDGET, struct it.u.xwidget)
10377         (struct it.xwidget):
10378         * src/lisp.h (PVEC_XWIDGET, PVEC_XWIDGET_VIEW):
10379         Always define.
10380         * src/emacsgtkfixed.h: Omit unnecessary comment.
10381         * src/keyboard.c: Fix spacing.
10382         * src/xdisp.c (BUILD_XWIDGET_GLYPH_STRING, produce_xwidget_glyph):
10383         Define to be a no-op if not HAVE_XWIDGETS.
10384         * src/xwidget.c: Include xwidget.h first (after config.h)
10385         to make sure that it can stand by itself.
10386         (Fmake_xwidget, Fxwidget_webkit_execute_script):
10387         Fix typo in doc string.
10388         (Fmake_xwidget): Check type of args.
10389         (Fmake_xwidget, offscreen_damage_event)
10390         (webkit_document_load_finished_cb, webkit_download_cb)
10391         (webkit_new_window_policy_decision_requested_cb)
10392         (webkit_navigation_policy_decision_requested_cb)
10393         (xwidget_osr_draw_cb, xwidget_osr_event_forward)
10394         (xwidget_osr_event_set_embedder, xwidget_init_view):
10395         Omit unnecessary casts.
10396         * src/xwidget.c (Fmake_xwidget, xwidget_hidden)
10397         (xwidget_show_view, xwidget_hide_view)
10398         (x_draw_xwidget_glyph_string, xwidget_start_redisplay, xwidget_touch)
10399         (xwidget_touched):
10400         * src/xwidget.h (struct xwidget.kill_without_query)
10401         (struct xwidget_view.redisplayed, struct xwidget_view.hidden):
10402         Use bool for boolean.
10403         * src/xwidget.c (store_xwidget_event_string, Fxwidget_size_request):
10404         Simplify by using list functions.
10405         (WEBKIT_FN_INIT): Omit unnecessary test for nil.
10406         (Fxwidget_resize): Check type of integer args
10407         before doing any work.  Check that they are nonnegative.
10408         (Fxwidget_set_adjustment): Check type of integer arg.
10409         Avoid redundant call to gtk_scrolled_window_get_vadjustment.
10410         Simplify.  Use double, not float.
10411         (Fxwidget_info, Fxwidget_view_info): Simplify by using CALLN.
10412         (valid_xwidget_spec_p): Simplify.
10413         (xwidget_spec_value): Omit unused arg FOUND.  All callers changed.
10414         * src/xwidget.h: Include lisp.h first, so that includers do
10415         not need to worry about doing that before including this file.
10416         Make this .h file safe to include even on non-HAVE_XWIDGETS
10417         configurations, to simplify the includers.
10418         (x_draw_xwidget_glyph_string, syms_of_xwidget, valid_xwidget_spec_p)
10419         (xwidget_end_redisplay, lookup_xwidget)
10420         (xwidget_view_delete_all_in_window, kill_buffer_xwidgets):
10421         Now a no-op if !HAVE_XWIDGETS, to simplify callers.
10422         (struct glyph_matrix, struct glyph_string, struct xwidget)
10423         (struct xwidget_view, struct window):
10424         New forward or incomplete decls, so that includers need not
10425         assume the corresponding .h files are already included, or that
10426         HAVE_XWIDGETS is defined.
10427         (struct xwidget_type, xwidget_from_id): Remove; unused.
10429 2016-01-22  Michael Albinus  <michael.albinus@gmx.de>
10431         Backport kqueue integration from master
10433         * configure.ac (--with-file-notification): Add kqueue.
10434         (top): Remove special test for "${HAVE_NS}" and
10435         ${with_file_notification}, this is handled inside gfilenotify
10436         tests.  Add kqueue tests.  Use NOTIFY_CFLAGS and NOTIFY_LIBS
10437         instead of library specific variables.  Add error message for
10438         gfile on Nextstep.
10440         * doc/lispref/os.texi (File Notifications): Add kqueue as backend.
10441         Fix some glitches in the example.
10443         * etc/NEWS: Mention kqueue.
10445         * lisp/filenotify.el (file-notify--library)
10446         (file-notify-descriptors, file-notify-callback)
10447         (file-notify-add-watch, file-notify-rm-watch)
10448         (file-notify-valid-p): Add kqueue support.
10449         (file-notify--rm-descriptor): Remove WHAT arg.
10451         * src/Makefile.in: Use NOTIFY_CFLAGS and NOTIFY_LIBS.
10453         * src/emacs.c (main): Call globals_of_kqueue and syms_of_kqueue.
10455         * src/inotify.c (inotifyevent_to_event): Extract file name from
10456         watch_object if the event doesn't provide it.
10457         (Finotify_add_watch): Add file name to watch_object.
10459         * src/keyboard.c (make_lispy_event): Check also for HAVE_KQUEUE.
10461         * src/kqueue.c: New file.
10463         * src/lisp.h: Declare extern globals_of_kqueue and syms_of_kqueue.
10465         * test/automated/file-notify-tests.el
10466         (file-notify--test-expected-events): Remove.
10467         (file-notify--test-cleanup): Do not set that variable.
10468         (file-notify--test-timeout) Use different timeouts for
10469         different libraries.
10470         (file-notify--test-library): New defun.
10471         (file-notify--test-event-test): Make stronger checks.
10472         (file-notify--test-with-events): EVENTS can also be a list of
10473         lists.  Flush outstanding events before running the body.
10474         Make timeout heuristically depend on the number of events.
10475         (file-notify-test01-add-watch, file-notify-test02-events)
10476         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
10477         Rewrite in order to call file monitors but directory monitors.
10478         (file-notify-test02-events, file-notify-test04-file-validity): Do
10479         not skip cygwin tests.  Add additional test for file creation.
10480         Adapt expected result for different backends.
10481         (file-notify-test03-autorevert): Some of the tests don't work for
10482         w32notify.
10483         (file-notify-test06-many-events): New test.
10485 2016-01-22  John Wiegley  <johnw@newartisans.com>
10487         Further corrections to the pcase docstring
10489 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
10491         * doc/emacs/anti.texi (Antinews): Rewrite for Emacs 25.
10493 2016-01-22  Stephen Leake  <stephen_leake@stephe-leake.org>
10495         In xref-collect-references, force backends to respect the 'dir' arg
10497         * lisp/progmodes/xref.el (xref-collect-references): Force symref backends
10498         to use `default-directory'.
10500 2016-01-22  John Wiegley  <johnw@newartisans.com>
10502         Minor correction to pcase docstring
10504 2016-01-22  John Wiegley  <johnw@newartisans.com>
10506         Write a new docstring for the pcase macro
10508         * lisp/emacs-lisp/pcase.el (pcase): Write a new docstring.
10510 2016-01-21  Stephen Berman  <stephen.berman@gmx.net>
10512         Avoid byte-compiler warning in todo-mode (bug#21953)
10514         * lisp/calendar/todo-mode.el (todo-convert-legacy-files): Add limit argument
10515         to looking-back to comply with advertised-calling-convention.
10517 2016-01-21  Stephen Berman  <stephen.berman@gmx.net>
10519         Fix desktop support in todo-mode and doc-view (bug#22377)
10521         * lisp/calendar/todo-mode.el (todo-restore-desktop-buffer):
10522         * lisp/doc-view.el (doc-view-restore-desktop-buffer): Return current buffer.
10524         * lisp/calendar/todo-mode.el (todo-modes-set-2):
10525         * lisp/doc-view.el (doc-view-mode): Set desktop-save-buffer unconditionally.
10527 2016-01-21  Paul Eggert  <eggert@cs.ucla.edu>
10529         No need to configure gobject-introspection
10531         It wasn’t needed for the recently-installed xwidget_mvp code; see:
10532         https://lists.gnu.org/r/emacs-devel/2016-01/msg01154.html
10533         * configure.ac (DOES_XWIDGETS_USE_GIR, GIR_REQUIRED, GIR_MODULES):
10534         (HAVE_GIR):
10535         * src/Makefile.in (GIR_LIBS, GIR_CFLAGS):
10536         Remove.  All uses removed.
10537         * configure.ac (emacs_config_features): Don’t worry about GIR.
10539 2016-01-20  Paul Eggert  <eggert@cs.ucla.edu>
10541         Don’t export C symbols not used elsewhere
10543         These were recently added, mostly as part of xwidget code.
10544         * src/emacsgtkfixed.c (emacs_fixed_get_type): Now static.
10545         (EMACS_FIXED, EMACS_FIXED_GET_CLASS):
10546         Now static functions here, not macros in emacsgtkfixed.h.
10547         * src/emacsgtkfixed.h (EMACS_TYPE_FIXED):
10548         Remove.  All uses replaced by definiens.
10549         (EMACS_FIXED, EMACS_FIXED_GET_CLASS):
10550         Remove; these are now static functions in emacsgtkfixed.c.
10551         (EMACS_FIXED_CLASS, EMACS_IS_FIXED, EMACS_IS_FIXED_CLASS):
10552         Remove; unused.
10553         (emacs_fixed_get_type): Remove decl; no longer extern.
10554         * src/xwidget.c (offscreen_damage_event)
10555         (webkit_mime_type_policy_typedecision_requested_cb)
10556         (webkit_new_window_policy_decision_requested_cb)
10557         (webkit_navigation_policy_decision_requested_cb)
10558         (xwidget_spec_value, xwidget_view_lookup)
10559         (xwidget_start_redisplay, xwidget_touch):
10560         Now static.
10561         * src/xwidget.h (xwidget_start_redisplay, xwidget_touch):
10562         Remove decls.
10564 2016-01-20  Dmitry Gutov  <dgutov@yandex.ru>
10566         Support squiggly heredocs in ruby-mode
10568         * lisp/progmodes/ruby-mode.el (ruby-here-doc-beg-re):
10569         Support squiggly heredocs added in Ruby 2.3.
10571         * test/indent/ruby.rb: Add squiggly example.
10573 2016-01-20  Glenn Morris  <rgm@gnu.org>
10575         * configure.ac (emacs_config_features): Remove WEBKIT.
10577 2016-01-20  Paul Eggert  <eggert@cs.ucla.edu>
10579         Port to platforms with gtk3 but not webkitgtk3
10581         I ran into this problem on my Fedora 23 installation;
10582         Emacs configured but did not build when --with-xwidgets was specified.
10583         * configure.ac (HAVE_WEBKIT, HAVE_GIR): Omit unnecessary initializations.
10584         (DOES_XWIDGETS_USE_GIR): New var.
10585         If --with-xwidgets is specified, report an error if not
10586         doable, to be consistent with the other --with options.
10587         Require webkitgtk3 to use Xwidgets, as the Xwidgets code does
10588         not work at all without webkitgtk3.  Simplify use of
10589         EMACS_CHECK_MODULES.  Output message about gobject
10590         introspection only if xwidgets are used.
10591         * etc/NEWS: Users need webkitgtk3, not merely webkit.
10592         * src/xwidget.c (syms_of_xwidget): Don’t worry about HAVE_WEBKIT_OSR,
10593         since this file is no longer compiled if webkitgtk3 is not available.
10595 2016-01-20  Eli Zaretskii  <eliz@gnu.org>
10597         Fix doc string of 'isearch-search-fun-function'
10599         * lisp/isearch.el (isearch-search-fun-function)
10600         (isearch-search-string): Doc fixes.  (Bug#22411)
10602 2016-01-20  Stefan Monnier  <monnier@iro.umontreal.ca>
10604         * lisp/xwidget.el: Nitpicks
10606         * lisp/xwidget.el (xwidget-log, xwidget-webkit-callback):
10607         Use with-current-buffer rather than save-excursion + set-buffer.
10609 2016-01-20  Glenn Morris  <rgm@gnu.org>
10611         Don't hard-code 1 as point-min.
10613         * lisp/image-mode.el (image-display-size):
10614         * lisp/xwidget.el (xwidget-webkit-last-session)
10615         (xwidget-webkit-current-session): Don't hard-code 1 as point-min.
10617 2016-01-20  Glenn Morris  <rgm@gnu.org>
10619         * lisp/xwidget.el: Add declarations to silence non-xwidget compilation.
10621 2016-01-20  Glenn Morris  <rgm@gnu.org>
10623         Trivial doc copyedits.
10625         * src/xwidget.c (Fmake_xwidget, Fget_buffer_xwidgets)
10626         (Fxwidget_webkit_get_title, Fxwidget_resize)
10627         (Fxwidget_set_adjustment, Fxwidgetp, Fxwidget_view_p)
10628         (Fxwidget_info, Fxwidget_view_lookup)
10629         (Fset_xwidget_query_on_exit_flag): Trivial doc copyedits.
10631 2016-01-20  Glenn Morris  <rgm@gnu.org>
10633         Avoid advising image-display-size for xwidgets.
10635         * lisp/xwidget.el (xwidget-image-display-size): Remove.
10636         (image-display-size): Remove advice.
10637         * lisp/image-mode.el (xwidget-info, xwidget-at): Declare.
10638         (image-display-size): Incorporate xwidget code directly.
10640 2016-01-20  Glenn Morris  <rgm@gnu.org>
10642         Avoid breaking non-xwidget Emacs that happen to load xwidget.el.
10644         * lisp/xwidget.el (window-configuration-change-hook)
10645         (kill-buffer-query-functions): Only modify these hooks if
10646         compiled with xwidget support.
10648 2016-01-20  Glenn Morris  <rgm@gnu.org>
10650         * lisp/xwidget.el (xwidget-webkit-scroll-behaviour): Fix custom spec.
10652 2016-01-19  Glenn Morris  <rgm@gnu.org>
10654         * configure.ac (WEBKIT, GIR, CAIRO): Use EMACS_CHECK_MODULES, not PKG_.
10656         * configure.ac (emacs_config_features): Add XWIDGETS, WEBKIT, GIR.
10658         * configure.ac (HAVE_WEBKIT_OSR): Remove broken, duplicated gtk3 test.
10660 2016-01-19  Katsumi Yamaoka  <yamaoka@jpl.org>
10662         * lisp/gnus/nnir.el (nnir-request-update-mark):
10663         Default to the original mark.
10664         cf. <http://thread.gmane.org/gmane.emacs.gnus.general/86583>
10665         and <http://thread.gmane.org/gmane.emacs.gnus.general/86640>
10667 2016-01-19  Glenn Morris  <rgm@gnu.org>
10669         * lisp/xwidget.el (report-xwidget-bug): Remove.
10671         (top-level): No longer require reporter.
10673 2016-01-19  Joakim Verona  <joakim@verona.se>
10674             Grégoire Jadi  <daimrod@gmail.com>
10676         Support for the new Xwidget feature.
10678         * configure.ac:
10679         (HAVE_XWIDGETS, WIDGET_OBJ, EMACS_CONFIG_FEATURES):
10680         * src/xterm.c (x_draw_glyph_string, x_draw_bar_cursor):
10681         * src/xdisp.c:
10682         (handle_display_spec, handle_single_display_spec, push_it)
10683         (pop_it, set_iterator_to_next, dump_glyph)
10684         (calc_pixel_width_or_height, fill_xwidget_glyph_string)
10685         (BUILD_XWIDGET_GLYPH_STRING, BUILD_GLYPH_STRINGS)
10686         (produce_xwidget_glyph, x_produce_glyphs)
10687         (get_window_cursor_type):
10688         * src/window.c (Fdelete_window_internal):
10689         * src/termhooks.h (e):
10690         * src/print.c (print_object):
10691         * src/lisp.h (ptrdiff_t):
10692         * src/keyboard.c (kbd_buffer_get_event, make_lispy_event)
10693         (syms_of_keyboard):
10694         * src/emacs.c (main):
10695         * src/dispnew.c (update_window, scrolling_window):
10696         * src/dispextern.h (g, i):
10697         * Makefile.in (XWIDGETS_OBJ, WEBKIT_CFLAGS, WEBKIT_LIBS)
10698         (GIR_LIBS, ALL_CFLAGS, base_obj, LIBES):
10699         * src/keyboard.c (kbd_buffer_get_event):
10700         * src/emacsgtkfixed.c (emacs_fixed_gtk_widget_size_allocate)
10701         (emacs_fixed_class_init): Add case for an xwidget view.
10703         * src/xwidget.c, src/xwidget.h, lisp/xwidget.el: New files for xwidgets
10706         Various improvements to the Xwidget feature.
10707         * src/xwidget.c:
10708         * src/emacsgtkfixed.c:
10709         * lisp/xwidget.el:
10711 2016-01-19  Eli Zaretskii  <eliz@gnu.org>
10713         Improve documentation of 'alist-get'
10715         * doc/lispref/variables.texi (Setting Generalized Variables): Add
10716         'alist-get' to the list of functions that can appear in PLACE
10717         argument of 'setf'.
10719 2016-01-19  Eli Zaretskii  <eliz@gnu.org>
10721         Minor copyedits of doc/emacs/maintaining.texi
10723         * doc/emacs/maintaining.texi (List Identifiers): More accurate
10724         description of "C-M-i" wrt tags tables.
10725         (Tags Tables): Move the definition of "tag" to a footnote.
10727 2016-01-19  Eli Zaretskii  <eliz@gnu.org>
10729         Unbreak the Cygwin-w32 build
10731         * src/w32fns.c (globals_of_w32fns): Move the initialization of
10732         resetstkoflw into a part that isn't compiled on Cygwin.
10733         (Bug#22403)
10735 2016-01-19  Lars Magne Ingebrigtsen  <larsi@gnus.org>
10737         * shr.el (shr-table-body): Allow tables to have text children.
10739 2016-01-19  Phillip Lord  <phillip.lord@russet.org.uk>
10741         Cope with multiple overlapping faces.
10743         * lisp/htmlfontify.el (hfy-face-to-style-i): Treat inheritance right to
10744           left.
10745           (hfy-face-resolve-face): Handle font specification as well as font
10746           name. Documentation update. (Bug#21990)
10748 2016-01-19  Paul Eggert  <eggert@cs.ucla.edu>
10750         Fix spurious escapes in describe-input-method
10752         Problem reported by Vincent Belaïche (Bug#22309).
10753         * lisp/international/mule-cmds.el (describe-language-environment):
10754         * lisp/international/quail.el (quail-help):
10755         Apply substitute-command-keys to doc strings before displaying them.
10757 2016-01-19  Paul Eggert  <eggert@cs.ucla.edu>
10759         Minor improvements to (random t) documentation
10761         * doc/lispref/numbers.texi (Random Numbers):
10762         * src/fns.c (Frandom):
10763         Omit unnecessary details about randomness fallback.
10764         Say that it is a fallback.
10766 2016-01-19  Dmitry Gutov  <dgutov@yandex.ru>
10768         Rename methods in Ruby etags example file
10770         * test/etags/ruby-src/test.rb: Rename the example methods to
10771         correspond to the common terminology used in Ruby.
10772         * test/etags/CTAGS.good:
10773         * test/etags/ETAGS.good_1:
10774         * test/etags/ETAGS.good_2:
10775         * test/etags/ETAGS.good_3:
10776         * test/etags/ETAGS.good_4:
10777         * test/etags/ETAGS.good_5:
10778         * test/etags/ETAGS.good_6: Adjust accordingly.
10780 2016-01-19  Dmitry Gutov  <dgutov@yandex.ru>
10782         Propertize backtick in 'def `(abc)' as symbol constituent
10784         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize):
10785         Propertize backtick in 'def `(abc)' as symbol constituent.
10786         (ruby-syntax-propertize-function):
10787         Rename to ruby-syntax-propertize.
10789 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
10791         Fix scrolling under scroll-preserve-screen-position on TTY
10793         * src/window.c (window_scroll_line_based): When setting point to
10794         preserve screen coordinates, don't let cursor enter either of the
10795         two scroll margins.  (Bug#22395)
10797 2016-01-18  Lars Magne Ingebrigtsen  <larsi@gnus.org>
10799         Fix shr table rendering of nested tables
10801         * shr.el (shr-table-body): Don't include all tbodies in nested
10802         tables in the levels above.
10804 2016-01-18  Dmitry Gutov  <dgutov@yandex.ru>
10806         * lisp/progmodes/project.el (project--read-regexp): Quote the identifier.
10808 2016-01-18  Dmitry Gutov  <dgutov@yandex.ru>
10810         Add xref-based replacements for Dired search commands
10812         * lisp/dired-aux.el (dired-do-find-regexp)
10813         (dired-do-find-regexp-and-replace): New commands.
10814         https://lists.gnu.org/r/emacs-devel/2016-01/msg00864.html
10816         * lisp/dired.el (dired-mode-map): Change bindings for `A' and
10817         `Q' to the new commands.
10819         * lisp/progmodes/xref.el (xref-query-replace)
10820         (xref-collect-matches): Add progress reporters.
10821         (xref--find-ignores-arguments): Return nil for zero ignores.
10822         (xref--show-xrefs): Add an optional argument.
10823         (xref-collect-matches): Drop the assert.  'find' accepts a
10824         regular file in place of directory argument, too.
10826 2016-01-18  Alan Mackenzie  <acm@muc.de>
10828         * doc/lispref/frames.texi (Position Parameters): Say they don't exist on TTYs.
10830 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
10832         Improve user documentation of Xref
10834         * doc/emacs/maintaining.texi (Xref, Find Identifiers)
10835         (Looking Up Identifiers, Identifier Search, List Identifiers):
10836         Adjudicate comments by Dmitry Gutov <dgutov@yandex.ru>.  See
10837         https://lists.gnu.org/r/emacs-devel/2016-01/msg00650.html
10838         for the details.
10840 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
10842         Fix scrolling under scroll-preserve-screen-position and margins
10844         * src/window.c (window_scroll_pixel_based): When setting point to
10845         preserve screen coordinates, don't let cursor enter either of the
10846         two scroll margins.  Fix incorrect usage of
10847         WINDOW_WANTS_HEADER_LINE_P and use WINDOW_HEADER_LINE_HEIGHT
10848         instead of CURRENT_HEADER_LINE_HEIGHT.  (Bug#22395)
10850 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
10852         Unbreak the MS-Windows build
10854         * src/sysdep.c (emacs_gnutls_global_init, gnutls_rnd): Disable for
10855         WINDOWSNT, to avoid link failure.  (Bug#22202)
10857 2016-01-18  Alan Mackenzie  <acm@muc.de>
10859         Desktop: protect users against inadvertant upgrading of desktop file.
10861         An upgraded (version 208) desktop file cannot be read in Emacs < 25.
10863         * etc/NEWS: Add an entry about upgrading a desktop file.
10865         * lisp/desktop.el (desktop-file-version): Amend doc string.
10866         (desktop-native-file-version, desktop-io-file-version): new variables.
10867         (desktop-clear): Set desktop-io-file-version to nil.
10868         (desktop-buffer-info): make the presence of the last item on the list
10869         conditional on (>= desktop-io-file-version 208).
10870         (desktop-save): Add extra parameter VERSION to take user's C-u or C-u C-u.
10871         Amend the doc string.  Add code to determine the output file version.
10872         (desktop-create-buffer): Set desktop-io-file-version to the input file's
10873         version.
10875 2016-01-18  Paul Eggert  <eggert@cs.ucla.edu>
10877         Initialize GnuTLS before calling gnutls_rnd
10879         * src/gnutls.c (emacs_gnutls_global_init): Now extern.
10880         Don’t set gnutls_global_initialized if gnutls_global_init fails.
10881         * src/sysdep.c: Include "gnutls.h", and <gnutls/crypto.h>
10882         if 2.12 or later, which has gnutls_rnd.
10883         (emacs_gnutls_global_init, gnutls_rnd): New fallback
10884         placeholder macros if before 2.12.
10885         (init_random): Initialize gnutls globals before trying to
10886         use gnutls_rnd.
10888 2016-01-18  Andreas Schwab  <schwab@linux-m68k.org>
10890         Don't use GnuTLS before it is initialized
10892                 * src/sysdep.c (init_random): Don't use gnutls_rnd.
10894 2016-01-17  Paul Eggert  <eggert@cs.ucla.edu>
10896         Port cleanup attribute to OpenBSD
10898         The OpenBSD C compiler issues false alarms about strcpy, strcat, and
10899         sprintf, and this messes up 'configure' when it tests for the cleanup
10900         attribute.  Work around the problem by using __has_attribute directly.
10901         Problem reported by Joakim Jalap (Bug#22385).
10902         * configure.ac: Don’t use AX_GCC_VAR_ATTRIBUTE.
10903         * m4/ax_gcc_var_attribute.m4: Remove.
10904         * src/conf_post.h (__has_attribute): Provide a substitute, for
10905         non-GCC or older GCC compilers.  All uses changed to assume
10906         the substitute.  Check for the cleanup attribute.
10907         * src/emacs-module.c (module_has_cleanup): Just use __has_attribute.
10909 2016-01-17  Paul Eggert  <eggert@cs.ucla.edu>
10911         Prefer GnuTLS when acquiring random seed
10913         This attempts to improve on the fix for Bug#22202.
10914         * configure.ac (HAVE_DEV_URANDOM): Remove.
10915         Check /dev/urandom existence at run time, not at build time,
10916         since the device could exist in the former but not the latter.
10917         * src/sysdep.c [HAVE_GNUTLS]: Include gnutls/gnutls.h.
10918         (gnutls_rnd) [GNUTLS_VERSION_NUMBER < 0x020c00]: New fallback macro.
10919         (random_seed): New typedef.
10920         (set_random_seed): New static function.
10921         (seed_random): Use them.
10922         (init_random): Use random_seed instead of uintmax_t, so as to
10923         not consume more entropy than needed.  Prefer gnutls_rnd if it
10924         works; this avoids a redundant open of /dev/urandom on
10925         GNU/Linux with modern GnuTLS.
10927 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10929         Improve documentation of dynamic modules
10931         * doc/lispref/loading.texi (How Programs Do Loading): Update the
10932         description of searching for files in 'load' when Emacs was built
10933         with support for dynamic modules.
10935 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10937         * INSTALL: Document --with-modules.
10939 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10941         Document 'function-put'
10943         * doc/lispref/symbols.texi (Symbol Plists): Document
10944         'function-put'.  Update documentation of 'function-get'.
10946 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10948         Document 'funcall-interactively'
10950         * doc/lispref/commands.texi (Interactive Call): Document
10951         'funcall-interactively'.
10952         * doc/lispref/functions.texi (Calling Functions): Mention
10953         'funcall-interactively' and provide a cross-reference.
10955 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10957         * doc/lispref/lists.texi (Association Lists): Document 'alist-get'.
10959         * doc/lispref/strings.texi (Text Comparison): Document 'string-greaterp'.
10961 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10963         Document renaming of selection-related functions
10965         * doc/lispref/frames.texi (Window System Selections): Rename "x-*"
10966         functions into the corresponding "gui-*" functions.  Make the
10967         description slightly less X-centric.
10969 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10971         * doc/lispref/macros.texi (Expansion): Document 'macroexpand-1'.
10973 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10975         Document 'define-inline'
10977         * doc/lispref/functions.texi (Defining Functions): Document
10978         'define-inline' and related macros.
10980         * lisp/emacs-lisp/inline.el (inline-letevals): Doc fix.
10982 2016-01-16  Artur Malabarba  <bruce.connor.am@gmail.com>
10984         * lisp/files.el (dir-locals--all-files): Respect absolute file-names
10986         * lisp/help-fns.el (describe-variable): Fix a left-over parenthesis
10988 2016-01-16  Artur Malabarba  <bruce.connor.am@gmail.com>
10990         * lisp/dired-x.el (dired-omit-here-always): Use add-dir-local-variable
10992         instead of manually writing a dir-locals file.
10994 2016-01-16  Artur Malabarba  <bruce.connor.am@gmail.com>
10996         * lisp/files.el (dir-locals--all-files): Use completion instead of wildcards
10998         (dir-locals-file)
10999         * lisp/files-x.el (modify-dir-local-variable)
11000         * lisp/dos-fns.el (dosified-file-name)
11001         * lisp/help-fns.el (describe-variable): Change accordingly.
11003 2016-01-16  Jussi Lahdenniemi  <jussi@aprikoodi.fi>  (tiny change)
11005         Fix incompatbilities with MS-Windows 2000 and older
11007         * src/w32.c <multiByteToWideCharFlags>: New global variable.
11008         (filename_to_utf16, filename_from_ansi, check_windows_init_file):
11009         Use it instead of the literal MB_ERR_INVALID_CHARS.
11010         (maybe_load_unicows_dll): Initialize multiByteToWideCharFlags as
11011         appropriate for the underlying OS version.  For details, see
11012         https://lists.gnu.org/r/emacs-devel/2016-01/msg00835.html.
11013         * src/w32.h: Declare multiByteToWideCharFlags.
11014         * src/w32fns.c (Fx_file_dialog, Fw32_shell_execute)
11015         (add_tray_notification): Use multiByteToWideCharFlags instead of
11016         the literal MB_ERR_INVALID_CHARS.
11017         (_resetstkoflw_proc): New typedef.
11018         (w32_reset_stack_overflow_guard): Call _resetstkoflw via a
11019         pointer, as this function is absent in msvcrt.dll shipped with W2K
11020         and older systems.
11022 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
11024         Mention in PROBLEMS an issue with MS-Windows NT4
11026         * etc/PROBLEMS (MS-Windows): Mention the problem with Shell32.dll
11027         on Windows NT4.  For the details, see
11028         https://lists.gnu.org/r/emacs-devel/2016-01/msg00835.html.
11030 2016-01-16  Jussi Lahdenniemi  <jussi@aprikoodi.fi>  (tiny change)
11032         Ensure 8-byte aligned memory allocation on MS-Windows 9X
11034         * src/w32heap.c (init_heap): Redirect malloc, realloc, and free to
11035         special functions on Windows 9X.  Refuse to dump Emacs on Windows 9X.
11036         (malloc_after_dump_9x, realloc_after_dump_9x)
11037         (free_after_dump_9x): New functions.  (Bug#22379)  See also
11038         https://lists.gnu.org/r/emacs-devel/2016-01/msg00852.html
11039         for more details about the original problem.
11041         * nt/inc/ms-w32.h (malloc_after_dump_9x, realloc_after_dump_9x)
11042         (free_after_dump_9x): Add prototypes.
11044 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
11046         Fix tests for active region in hideif.el
11048         * lisp/progmodes/hideif.el (hif-evaluate-macro, hide-ifdef-block): Use
11049         'use-region-p' to test whether to operate on region, instead of
11050         testing 'mark-active'.
11052 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
11054         Fix interactive specs in some hideif.el commands
11056         * lisp/progmodes/hideif.el (hif-evaluate-macro)
11057         (hide-ifdef-undef, show-ifdef-block): Don't use '(interactive "r")'
11058         in commands that should only act on the region if it's active.
11060 2016-01-15  Phillip Lord  <phillip.lord@russet.org.uk>
11062         Enable test selector from command line
11064         * test/automated/Makefile.in: Change variable manipulation to avoid
11065           over-writing selector.
11067 2016-01-15  Alan Mackenzie  <acm@muc.de>
11069         Don't confuse "::" with ":" when trying to parse member initializers.
11071         * lisp/progmodes/cc-engine.el (c-back-over-member-initializers): Check
11072         more robustly for ":" token when searching backwards for it.
11074         * lisp/progmodes/cc-langs.el (c-:$-multichar-token-regexp): New language
11075         variable.
11077 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
11079         Ensure positive number of glyphs for margins of positive width
11081         * src/dispnew.c (margin_glyphs_to_reserve): Always return a
11082         positive value when a non-zero width of the marginal area was
11083         requested.  (Bug#22356)
11085 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
11087         Fix crashes when mini-window has non-zero margins
11089         * src/window.c (resize_frame_windows): Use 'new_size' to set
11090         minibuffer window's 'total_cols' value, as 'size' might be in
11091         pixels.  (Bug#22356)
11093 2016-01-15  Alan Mackenzie  <acm@muc.de>
11095         In comment-dwim with style `extra-line', respect indent-tabs-mode.
11097         This fixes bug #22369.
11099         * lisp/newcomment.el (comment-make-bol-ws): New function.
11100         (comment-make-extra-lines): Use new function instead of a crude `make-string'.
11102 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
11104         Make 'random' seeds cryptographically secure if possible
11106         * configure.ac: Check for "/dev/urandom".
11108         * src/sysdep.c (init_random) [HAVE_DEV_URANDOM]: Read the stream
11109         for the seed from "/dev/urandom".
11110         [WINDOWSNT]: Obtain the stream for the seed from w32 APIs.
11111         * src/fns.c (Frandom): Update the doc string to indicate that
11112         system entropy is used when available.
11113         * src/w32.c: Include wincrypt.h.
11114         (w32_init_crypt_random, w32_init_random): New functions, use the
11115         CryptGenRandom API.
11116         (globals_of_w32): Initialize w32_crypto_hprov handle to zero.
11117         * src/w32.h (w32_init_random): Add prototype.
11119         * doc/lispref/numbers.texi (Random Numbers): Document more details
11120         about 't' as the argument to 'random'.
11122         * etc/NEWS: Mention that '(random t)' now uses a cryptographically
11123         strong seed if possible.
11125         (Bug#22202)
11127 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
11129         Unhide the --no-line-directive option to 'etags'
11131         * lib-src/etags.c (print_help): Un-undocument the --no-line-directive
11132         option.  (Bug#22306)
11134         * doc/man/etags.1: Document the --no-line-directive option.
11136 2016-01-15  Alan J Third  <alan@idiocy.org>  (tiny change)
11138         Fix picture-mode wrt double-width characters
11140         * lisp/textmodes/picture.el (picture-insert): Check the width of
11141         the character being replaced, not just that of the replacement.
11142         (Bug#1808)
11144 2016-01-15  Eric Abrahamsen  <eric@ericabrahamsen.net>
11146         Honor docstring of gnus-group-get-new-news
11148         * lisp/gnus/gnus-start.el (gnus-get-unread-articles): If the prefix arg is t,
11149         but non-numeric, unconditionally consider all groups to need updating.
11151 2016-01-14  Simen Heggestøyl  <simenheg@gmail.com>
11153         Disallow parenthesis in non-pseudo CSS selectors
11155         * lisp/textmodes/css-mode.el (css--font-lock-keywords): Disallow
11156         parenthesis in selectors except for in the function notation that
11157         might appear right after a pseudo-class.
11158         * test/indent/scss-mode.scss: Add a test for it.
11160 2016-01-14  Katsumi Yamaoka  <yamaoka@jpl.org>
11162         * lisp/gnus/nntp.el (nntp-request-newgroups): Simplify
11164 2016-01-14  Michael Albinus  <michael.albinus@gmx.de>
11166         check-maybe shall run only default tests
11168         * test/automated/Makefile.in (check, check-expensive): Depend on
11169         mostlyclean.
11170         (check-maybe): Re-run only default tests.
11171         (check-doit): Use code of check-maybe.
11172         (mostlyclean): Move *.log files away.
11174 2016-01-14  Mark Oteiza  <mvoteiza@udel.edu>
11176         * lisp/thingatpt.el (thing-at-point-uri-schemes): Add "magnet:"
11178 2016-01-14  Dmitry Gutov  <dgutov@yandex.ru>
11180         Un-obsolete tags-loop-continue
11182         * lisp/progmodes/etags.el (tags-loop-continue): Un-obsolete.
11183         https://lists.gnu.org/r/emacs-devel/2016-01/msg00682.html
11185 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
11187         Document obsoletion of 'intangible' and 'point-entered/left'
11189         * doc/lispref/text.texi (Special Properties): Document the new
11190         properties 'cursor-intangible' and 'cursor-sensor-functions'.
11191         Document the obsolete status of 'intangible', 'pointer-left',
11192         and 'point-entered' properties, and of 'inhibit-point-motion-hooks'.
11193         * doc/lispref/display.texi (Overlay Properties): Document that
11194         'intangible' overlay property is obsolete.
11196         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor-mode): Doc fix.
11198 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
11200         Updater documentation of 'looking-back'
11202         * doc/lispref/searching.texi (Regexp Search): Update documentation
11203         of 'looking-back'.  Fix markup.
11205 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
11207         Document 'pre-redisplay-functions'
11209         * doc/lispref/hooks.texi (Standard Hooks):
11210         * doc/lispref/display.texi (Forcing Redisplay): Document
11211         'pre-redisplay-functions'.
11213 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
11215         Document the new deafault value of 'load-read-function'
11217         * doc/lispref/loading.texi (How Programs Do Loading): Document the
11218         change in the default value of 'load-read-function'.
11220 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
11222         Document 'bufferpos-to-filepos' and 'filepos-to-bufferpos'
11224         * doc/lispref/nonascii.texi (Text Representations): Document
11225         'bufferpos-to-filepos' and 'filepos-to-bufferpos'.
11227 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
11229         Document the new prefix-command hooks
11231         * doc/lispref/hooks.texi (Standard Hooks): Document
11232         `prefix-command-echo-keystrokes-functions' and
11233         `prefix-command-preserve-state-hook'.
11235 2016-01-13  Paul Eggert  <eggert@cs.ucla.edu>
11237         Fix one more misuse of time-stamp-time-zone
11239         * test/etags/html-src/softwarelibero.html: Use "UTC0" rather
11240         than the unportable "GMT" for time zone.
11242 2016-01-13  Paul Eggert  <eggert@cs.ucla.edu>
11244         Fix NNTP NEWGROUPS off-by-a-few-hours bug
11246         * lisp/gnus/nntp.el (nntp-request-newgroups): Format string
11247         in Universal Time, since we’re telling the server “GMT”.
11249 2016-01-13  Paul Eggert  <eggert@cs.ucla.edu>
11251         Update publicsuffix.txt from upstream
11253         * etc/publicsuffix.txt: Update from
11254         https://publicsuffix.org/list/effective_tld_names.dat
11255         dated 2016-01-12 11:52:01 UTC.
11257 2016-01-13  Glenn Morris  <rgm@gnu.org>
11259         Fix some declarations.
11261         * lisp/descr-text.el (internal-char-font):
11262         * lisp/cedet/mode-local.el (xref-item-location):
11263         * lisp/gnus/mml-smime.el (epg-key-sub-key-list)
11264         (epg-sub-key-capability, epg-sub-key-validity):
11265         * lisp/international/mule-util.el (internal-char-font):
11266         Fix declarations.
11268 2016-01-13  Glenn Morris  <rgm@gnu.org>
11270         Fix some custom types.
11272         * lisp/gnus/gnus-fun.el (gnus-x-face-omit-files, gnus-face-omit-files):
11273         * lisp/gnus/gnus.el (gnus-valid-select-methods):
11274         * lisp/mail/rmail.el (rmail-get-coding-function):
11275         * lisp/net/newst-treeview.el (newsticker-groups-filename):
11276         * lisp/progmodes/hideif.el (hide-ifdef-exclude-define-regexp):
11277         * lisp/textmodes/tildify.el (tildify-space-predicates):
11278         * lisp/url/url-tramp.el (url-tramp-protocols):
11279         Fix custom types.
11281 2016-01-13  Glenn Morris  <rgm@gnu.org>
11283         Add some missing version tags.
11285         * lisp/electric.el (electric-quote-comment)
11286         (electric-quote-string, electric-quote-paragraph):
11287         * lisp/epg-config.el (epg-gpgconf-program):
11288         * lisp/rect.el (rectangle-preview):
11289         * lisp/emacs-lisp/check-declare.el (check-declare-ext-errors):
11290         * lisp/emacs-lisp/package.el (package-selected-packages)
11291         (package-hidden-regexps):
11292         * lisp/erc/erc.el (erc-network-hide-list, erc-channel-hide-list):
11293         * lisp/eshell/em-term.el (eshell-destroy-buffer-when-process-dies):
11294         * lisp/gnus/mml-sec.el (mml1991-signers, mml2015-signers)
11295         (mml-smime-signers, mml1991-encrypt-to-self, mml2015-encrypt-to-self)
11296         (mml-smime-encrypt-to-self, mml2015-sign-with-sender)
11297         (mml-smime-sign-with-sender, mml2015-always-trust)
11298         (mml-secure-fail-when-key-problem, mml-secure-key-preferences):
11299         * lisp/net/browse-url.el (browse-url-conkeror-new-window-is-buffer)
11300         (browse-url-conkeror-arguments):
11301         * lisp/net/newst-reader.el (newsticker-download-logos):
11302         * lisp/progmodes/gud.el (gud-guiler-command-name):
11303         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
11304         * lisp/progmodes/project.el (project-vc):
11305         * lisp/progmodes/python.el (python-indent-guess-indent-offset-verbose)
11306         (python-shell-remote-exec-path, python-shell-first-prompt-hook)
11307         (python-shell-completion-native-disabled-interpreters)
11308         (python-shell-completion-native-enable)
11309         (python-shell-completion-native-output-timeout)
11310         (python-shell-completion-native-try-output-timeout):
11311         * lisp/progmodes/xref.el (xref):
11312         * lisp/term/screen.el (xterm-screen-extra-capabilities):
11313         * lisp/term/xterm.el (xterm-max-cut-length):
11314         Add missing version tags.
11316 2016-01-13  Glenn Morris  <rgm@gnu.org>
11318         * test/automated/core-elisp-tests.el
11319         (core-elisp-tests-1-defvar-in-let): Add a custom type.
11321 2016-01-13  Glenn Morris  <rgm@gnu.org>
11323         * src/buffer.c (syms_of_buffer) <major-mode>: Doc fix.
11325         Remove comments that do not apply since 2005-08-09.  (Bug#22349)
11327 2016-01-12  Paul Eggert  <eggert@cs.ucla.edu>
11329         Merge from gnulib
11331         This mostly just changes "UTC" to "UTC0" for POSIX conformance.
11332         It also updates to the latest version of texinfo.tex.
11333         * build-aux/gitlog-to-changelog, build-aux/move-if-change:
11334         * build-aux/update-copyright, doc/misc/texinfo.tex:
11335         Update from gnulib.
11337 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
11339         Update documentation of 'process-running-child-p'
11341         * doc/lispref/processes.texi (Input to Processes): Document the
11342         changes in return value of 'process-running-child-p'.
11344 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
11346         Update documentation of 'deactivate-mark'.
11348         * doc/lispref/markers.texi (The Mark): Document that
11349         'deactivate-mark' is now buffer-local when set.
11351 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
11353         Update documentation of 'completion-table-dynamic'
11355         * doc/lispref/minibuf.texi (Programmed Completion): Document the
11356         new optional argument to 'completion-table-dynamic'.
11358 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
11360         Document changes in 'read-buffer' and 'read-buffer-function'
11362         * doc/lispref/minibuf.texi (High-Level Completion): Document the
11363         4th argument to 'read-buffer' and 'read-buffer-function'.
11365 2016-01-12  Paul Eggert  <eggert@cs.ucla.edu>
11367         Fix time-stamp-time-zone bugs introduced in July
11369         This fixes a bug introduced when the July changes to
11370         format-time-string installed, as the changes were not
11371         correctly handled in this module (Bug#22302).
11372         Also, document time stamp time zones.
11373         * lisp/time-stamp.el (time-stamp-time-zone): Document values better.
11374         (time-stamp--format): New private function.
11375         (time-stamp-string, time-stamp-string-preprocess)
11376         (time-stamp-do-number): Use it.
11377         * doc/emacs/files.texi (Time Stamps): Mention time zones.
11378         * doc/misc/autotype.texi (Timestamps): Document time-stamp-time-zone.
11380 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
11382         Make piping to subprocesses more robust on MS-Windows
11384         * src/w32.c (sys_write): Don't write to a pipe more stuff than its
11385         buffer can hold.  Don't return -1 if something has been written to
11386         the pipe.  Zero out 'errno' before calling '_write', to avoid
11387         returning a stale value.  (Bug#22344)
11388         * src/w32proc.c (syms_of_ntproc) <w32-pipe-buffer-size>: New variable.
11389         * src/w32.c (pipe2): Use it to request a user-defined size for the
11390         pipe being created.
11392         * etc/NEWS: Mention 'w32-pipe-buffer-size'.
11394         * doc/emacs/msdos.texi (Windows Processes): Document
11395         'w32-pipe-buffer-size'.
11397 2016-01-11  Dmitry Gutov  <dgutov@yandex.ru>
11399         test/automated/vc-hg.el: Support out-of-tree build
11401         * test/automated/vc-hg.el
11402         (vc-hg-annotate-extract-revision-at-line-with-filename)
11403         (vc-hg-annotate-extract-revision-at-line-with-both):
11404         Don't refer to source-directory.
11405         https://lists.gnu.org/r/emacs-devel/2016-01/msg00755.html
11407 2016-01-11  Michael Albinus  <michael.albinus@gmx.de>
11409         Minor change in tramp-tests.el
11411         * test/automated/tramp-tests.el (tramp-test29-vc-registered):
11412         Use `dired-uncache' instead of a Tramp internal function.
11414 2016-01-11  Peter Feigl  <peter.feigl@nexoid.at>
11416         * etc/HELLO: Add Armenian and Mongolian greetings.
11418         (Bug#22346)
11420 2016-01-11  Alan Mackenzie  <acm@muc.de>
11422         Java Mode: Fontify identifiers in the presence of annotations.
11424         * lisp/progmodes/cc-engine.el (c-forward-annotation): Tidy up the coding:
11425         Don't move point when the defun fails.
11426         (c-forward-decl-or-cast-1): Correct a usage of match data.
11428         * lisp/progmodes/cc-fonts.el (c-font-lock-maybe-decl-faces): Remove.
11429         (c-font-lock-declarations): Use the new c-maybe-decl-faces in place of the
11430         removed variable.
11432         * lisp/progmodes/cc-langs.el (c-maybe-decl-faces): New language variable.
11434 2016-01-11  Eli Zaretskii  <eliz@gnu.org>
11436         Avoid an infloop when we run out of memory
11438         * src/alloc.c (garbage_collect_1): Don't bother saving and
11439         restoring the echo-area message if we are GC'ing after running out
11440         of memory.  This avoids an infloop due to repeated attempts to
11441         allocate memory for the cons cell needed to save the message,
11442         which signals the memory-full error, which attempts to save the
11443         echo-area message, which signals memory-full again, etc.
11445 2016-01-11  Eli Zaretskii  <eliz@gnu.org>
11447         Avoid unnecessary failures of auto-saving after fatal error
11449         * src/w32.c (map_w32_filename): Avoid non-trivial system calls for
11450         the benefit of FAT volumes if we are called as part of shutting
11451         down due to a fatal error, which probably means we are trying to
11452         auto-save the session.
11453         * src/lread.c (check_obarray): Don't bother making the obarray
11454         valid if we are shutting down due to a fatal error.  This avoids
11455         interfering with auto-saving the crashed session.
11457 2016-01-11  Paul Eggert  <eggert@cs.ucla.edu>
11459         Simplify HAVE_MODULES use in mark_maybe_pointer
11461         * src/alloc.c (HAVE_MODULES): Now a constant 0 if not defined,
11462         so that later code can use 'if' rather than '#ifdef'.
11463         (mark_maybe_pointer): Simplify based on HAVE_MODULES now
11464         always working.
11466 2016-01-11  Paul Eggert  <eggert@cs.ucla.edu>
11468         Revert attempt to use 'noexcept' in typedef
11470         This use of 'noexcept' runs afoul of the C++11 standard.
11471         Problem reported by Philipp Stephani in:
11472         https://lists.gnu.org/r/emacs-devel/2016-01/msg00706.html
11473         * src/emacs-module.c (emacs_finalizer_function):
11474         Move this typedef here ...
11475         * src/emacs-module.h: ... from here, and use only the C
11476         version of the typedef.  The typedef is now private since it
11477         is never used in the .h file now and anyway it seemed to be
11478         causing more confusion than it cured.
11479         (make_user_ptr, get_user_finalizer, set_user_finalizer):
11480         Open-code the type instead.
11482 2016-01-10  Eli Zaretskii  <eliz@gnu.org>
11484         Update documentation of 'indirect-function'
11486         * doc/lispref/eval.texi (Function Indirection): Update the
11487         documentation of 'indirect-function'.
11489 2016-01-10  Eli Zaretskii  <eliz@gnu.org>
11491         Update documentation for obsoleting 'syntax-begin-function'
11493         * doc/lispref/syntax.texi (Position Parse): Undocument
11494         'syntax-begin-function' that is now obsolete.
11496 2016-01-10  Eli Zaretskii  <eliz@gnu.org>
11498         Document new features if Eshell
11500         * doc/misc/eshell.texi (Input/Output): Document the new
11501         '#<bufname>' syntax.
11502         (Input/Output): Document 'eshell-destroy-buffer-when-process-dies'.
11503         Disable "Key Index" generation, as there are no @kindex entries in
11504         this manual.
11506 2016-01-10  Michael Albinus  <michael.albinus@gmx.de>
11508         Handle too long commands in Tramp
11510         * lisp/net/tramp-sh.el (tramp-sh-handle-make-symbolic-link)
11511         (tramp-do-file-attributes-with-ls): Send sequence of commands, in
11512         order to not exceed shell command line limit.
11514         * test/automated/tramp-tests.el (tramp--test-darwin-p): Remove.
11515         (tramp--test-utf8): Include Arabic file name, again.
11517 2016-01-10  Paul Eggert  <eggert@cs.ucla.edu>
11519         * .gitattributes: *.cur and *.pif are binary files too.
11521 2016-01-10  Stefan Monnier  <monnier@iro.umontreal.ca>
11523         * src/alloc.c (mark_maybe_pointer): HAVE_MODULES may be undefined
11525 2016-01-10  Stefan Monnier  <monnier@iro.umontreal.ca>
11527         * lisp/progmodes/sh-script.el (sh-smie-sh-rules): Improve indentation inside $(...)
11529         * lisp/progmodes/sh-script.el (sh-smie-sh-rules): Improve indentation
11530         within $(...).
11531         * test/indent/shell.sh: Add corresponding test.
11533 2016-01-10  Stefan Monnier  <monnier@iro.umontreal.ca>
11535         * src/alloc.c (mark_maybe_pointer): Also check wide-int's emacs_value
11537         (mark_memory): Simplify loop.  Don't assume a pointer-sized word can be
11538         cast to Lisp_Object.
11540 2016-01-10  Dmitry Gutov  <dgutov@yandex.ru>
11542         Use short date for 'hg annotate', and output the author
11544         * lisp/vc/vc-hg.el (vc-hg-annotate-command):
11545         Change '-d' to '-dq'.  (Bug#21805)
11546         (vc-hg-annotate-switches): Default to "-u" "--follow".
11547         (vc-hg-annotate-re): Update to recognize the short date format
11548         and the optional username.
11549         (vc-hg-annotate-time)
11550         (vc-hg-annotate-extract-revision-at-line): Update accordingly.
11552         * test/automated/vc-hg.el: New file.
11554 2016-01-10  Paul Eggert  <eggert@cs.ucla.edu>
11556         Spelling fix
11558 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
11560         Document user-level functions in project.el
11562         * lisp/progmodes/project.el (project-find-file)
11563         (project-or-external-find-file): Add doc strings.
11565 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
11567         Document the user-level features of the Xref package
11569         * doc/emacs/maintaining.texi (Maintaining): Add a list of
11570         described features.
11571         (Xref): New section, made out of thoroughly rewritten "Tags"
11572         section.
11573         (Find Identifiers, Looking Up Identifiers, Xref Commands)
11574         (Identifier Search, List Identifiers): New subsections,
11575         incorporating the old tags commands and the new xref commands.
11576         (Tags Tables, Tag Syntax, Create Tags Table, Etags Regexps):
11577         Section and subsections demoted to a lower level.
11578         * doc/emacs/search.texi (Search):
11579         * doc/emacs/windows.texi (Pop Up Window):
11580         * doc/emacs/frames.texi (Creating Frames):
11581         * doc/emacs/programs.texi (Imenu, Symbol Completion):
11582         * doc/emacs/building.texi (Grep Searching):
11583         * doc/emacs/dired.texi (Operating on Files):
11584         * doc/emacs/glossary.texi (Glossary): All references to tags changed.
11586 2016-01-09  Stefan Monnier  <monnier@iro.umontreal.ca>
11588         * doc/lispref/loading.texi: Add `define-type' entry for load-history
11590         * doc/lispref/loading.texi (Where Defined): Remove incorrect
11591         cl-defmethod description, and add missing define-type entry.
11593 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
11595         Improve doc strings and prompts in xref.el
11597         * lisp/progmodes/xref.el (xref-backend-functions)
11598         (xref-find-definitions): Doc fixes.
11599         (xref-query-replace): Doc fix.  Improve prompts for arguments.
11601 2016-01-09  Alan Mackenzie  <acm@muc.de>
11603         Allow the use of `font-lock-extend-region-multiline' in CC Mode.
11605         * lisp/progmodes/cc-mode.el (c-font-lock-init): Remove
11606         `font-lock-extend-regions-wholelines' from
11607         `font-lock-extend-region-functions' rather than setting the latter to
11608         nil.
11610 2016-01-09  Michael Albinus  <michael.albinus@gmx.de>
11612         Fix coding system for Tramp on OS X.
11614         * lisp/net/tramp-compat.el: Require ucs-normalize.
11616         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
11617         Set coding system to `utf-8-hfs' for Mac OS X.
11619         * test/automated/tramp-tests.el (tramp-test29-vc-registered):
11620         Flush directory properties when needed.
11621         (tramp--test-utf8): Include Chinese file name, again.
11623 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
11625         Update 'load-history' docs
11627         * doc/lispref/loading.texi (Where Defined): Update the list of
11628         forms in 'load-history' by adding the forms created for the
11629         'cl-generic' generics.  (Bug#21422)
11631 2016-01-09  Paul Eggert  <eggert@cs.ucla.edu>
11633         Fix (error ...) error
11635         Problem reported by Glenn Morris in:
11636         https://lists.gnu.org/r/emacs-devel/2016-01/msg00561.html
11637         * lisp/vc/add-log.el (change-log-goto-source): Fix typos
11638         introduced in my Aug 28 change, where I got confused by the
11639         two meanings of (error ...).
11641 2016-01-08  Alan Mackenzie  <acm@muc.de>
11643         Correctly analyze brace arguments in templated C++ function declarations.
11645         * lisp/progmodes/cc-defs.el (c-go-list-forward, c-go-list-backward): add
11646         POS and LIMIT parameters, like the other c-go-list-* functions have.
11648         * lisp/progmodes/cc-engine.el (c-restore-<>-properties): Check backwards
11649         for a ?\( rather than a ?<.  (c-looking-at-inexpr-block): Handle names
11650         followed by template specifiers.
11652 2016-01-08  Glenn Morris  <rgm@gnu.org>
11654         * lisp/cedet/mode-local.el (describe-function-orig-buffer): Declare.
11656         * lisp/ffap.el (ffap-latex-mode): Avoid free variable.
11658 2016-01-08  Mark Oteiza  <mvoteiza@udel.edu>
11660         * lisp/play/dunnet.el (dun-fix-screen): Avoid `end-of-buffer`.
11662 2016-01-08  Alan Mackenzie  <acm@muc.de>
11664         Respect fontification region calculated by major mode.  Fixes bug #22316.
11666         * lisp/font-lock.el (font-lock-extend-jit-lock-region-after-change): when a
11667         fontification region has been calculated by a function on
11668         font-lock-extend-after-change-region-function use this region rather than
11669         changing the end position to somewhere else.
11671 2016-01-08  Eli Zaretskii  <eliz@gnu.org>
11673         Improve documentation of Delete Selection mode
11675         * lisp/delsel.el (delete-selection-mode)
11676         (delete-selection-helper): Update and expand the doc strings.
11677         (Bug#22296)
11679         * doc/emacs/mark.texi (Using Region): Document the behavior of
11680         delete commands in Delete Selection mode.  (Bug#22296)
11682         * doc/lispref/markers.texi (The Mark): Document how to add the
11683         support for Delete Selection mode to Lisp programs. (Bug#22296)
11685 2016-01-08  Dmitry Gutov  <dgutov@yandex.ru>
11687         Fix two project-find-file issues
11689         * lisp/progmodes/project.el (project--value-in-dir):
11690         Temporarily set enable-local-variables to :all.
11691         (project-find-file, project-or-external-find-file):
11692         All autoloads.
11693         (project--find-file-in): Require xref.
11695 2016-01-08  Eli Zaretskii  <eliz@gnu.org>
11697         Clarify doc string of 'dired-current-directory'
11699         * lisp/dired.el (dired-current-directory): Doc fix: clarify that
11700         the return value might not end in a slash when called with the
11701         optional argument non-nil.  (Bug#6273)
11703 2016-01-08  Eli Zaretskii  <eliz@gnu.org>
11705         Use the face of preceding text for displaying the ellipsis
11707         * src/xdisp.c (setup_for_ellipsis): Use the face of the preceding
11708         text in it->saved_face_id for displaying the ellipsis, and ignore
11709         the face, if any, of the invisible text.  (Bug#22320)
11711 2016-01-08  Michael Albinus  <michael.albinus@gmx.de>
11713         Suppress Chinese file name test for OSX in tramp-tests.el
11715         * test/automated/tramp-tests.el (tramp--test-utf8):
11716         Remove instrumentation.  Suppress Chinese file name test for OSX.
11718 2016-01-08  Glenn Morris  <rgm@gnu.org>
11720         * admin/admin.el (set-version): Also handle the NEWS file.
11722 2016-01-08  Dmitry Gutov  <dgutov@yandex.ru>
11724         apropos-library: Skip obvious duplicates; don't error on generics
11726         * lisp/apropos.el (apropos-library): Skip "was an autoload"
11727         entries, to avoid obvious duplicates.  For each cl-defmethod
11728         entry, take just its function symbol (bug#21422).
11730 2016-01-07  Dmitry Gutov  <dgutov@yandex.ru>
11732         Add project-find-file and project-or-external-find-file
11734         * lisp/minibuffer.el (completion-category-defaults):
11735         Add `project-file' category.
11737         * lisp/progmodes/project.el (project-find-file)
11738         (project-or-external-find-file): New commands.
11739         (project--find-file-in): New private function.
11741         * lisp/progmodes/xref.el (xref-collect-matches): Use
11742         `expand-file-name' on DIR, to expand the tildes.
11743         (xref--find-ignores-arguments): Extract from
11744         `xref--rgrep-command'.
11746 2016-01-07  Leo Liu  <sdl.web@gmail.com>
11748         Add defvar-local to lisp-imenu-generic-expression
11750         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression): Add
11751           defvar-local.
11753 2016-01-07  Leo Liu  <sdl.web@gmail.com>
11755         Revert commit b1e3d14845517bfa9fa5d6d3840f3ab3160306fd
11757         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
11758           Don't declare (indent 1).
11760 2016-01-07  Glenn Morris  <rgm@gnu.org>
11762         * lisp/emacs-lisp/autoload.el (autoload-find-destination): Doc fix.
11764 2016-01-07  Glenn Morris  <rgm@gnu.org>
11766         * lisp/emacs-lisp/autoload.el (autoload-find-destination):
11768         Avoid specifying the length of a time object (it has not been "2"
11769         for some time).
11771 2016-01-06  Andreas Schwab  <schwab@linux-m68k.org>
11773         Properly encode/decode base64Binary data in SOAP
11775                 * lisp/net/soap-client.el (soap-encode-xs-basic-type): Encode
11776                 base64Binary value as utf-8.
11777                 (soap-decode-xs-basic-type): Decode base64Binary value as utf-8.
11779 2016-01-06  Eli Zaretskii  <eliz@gnu.org>
11781         Obey coding-system-for-write when writing stdout/stderr in batch
11783         * src/print.c (printchar_to_stream):
11784         * src/xdisp.c (message_to_stderr): If coding-system-for-write has
11785         a non-nil value, use it to encode output in preference to
11786         locale-coding-system.  See the discussions in
11787         https://lists.gnu.org/r/emacs-devel/2016-01/msg00048.html
11788         for the details.
11790         * doc/lispref/os.texi (Terminal Output): Document how to send
11791         non-ASCII text via 'send-string-to-terminal'.
11792         (Batch Mode): Document how text written to standard streams is
11793         encoded.  Fix inaccuracy regarding which output streams are used
11794         by output functions in batch mode.
11796 2016-01-06  Xue Fuqiao  <xfq.free@gmail.com>
11798         * doc/misc/efaq.texi (Packages that do not come with Emacs):
11799         Update the URI of MELPA and marmalade-repo.  Reported by CHENG Gao
11800         <chenggao@royau.me> in
11801         https://lists.gnu.org/r/emacs-devel/2016-01/msg00390.html.
11803 2016-01-06  Maksim Golubev  <maksim.golubev72@gmail.com>  (tiny change)
11805         * lisp/progmodes/opascal.el (opascal-mode-syntax-table):
11807         Fix backslash.  (Bug#22224)
11809 2016-01-06  Federico Beffa  <beffa@ieee.org>  (tiny change)
11811         * lisp/progmodes/xscheme.el (xscheme-prompt-for-expression-exit):
11813         Make it actually work.  (Bug#22265)
11815 2016-01-05  Alan Mackenzie  <acm@muc.de>
11817         Remove function wrongly on AWK Mode value of context fontification hook.
11819         * lisp/progmodes/cc-langs.el (c-before-context-fontification-functions):
11820         swap order of entries so that awk's entry isn't superseded by the default.
11822         * lisp/progmodes/cc-mode.el (c-before-context-fl-expand-region): Correct
11823         to handle nil value of c-before-context-fontification-functions.
11825 2016-01-05  Paul Eggert  <eggert@cs.ucla.edu>
11827         * src/buffer.c: Stick with ASCII in doc string.
11829 2016-01-05  Paul Eggert  <eggert@cs.ucla.edu>
11831         Reword transient-mark-mode doc string
11833         * src/buffer.c (syms_of_buffer): Reword doc string to avoid confusion.
11834         The value 'lambda (literally) can be interpreted as (quote lambda),
11835         which is not intended here; we want just the lambda symbol.
11837 2016-01-05  Eli Zaretskii  <eliz@gnu.org>
11839         Update doc string of 'selective-display'
11841         * src/buffer.c (syms_of_buffer) <selective-display>: Say that
11842         using it with the value of 't' is obsolete.  (Bug#1092)
11844 2016-01-05  Alan Mackenzie  <acm@muc.de>
11846         Make C++ buffers writeable when writing their initial text properties.
11848         This is a correction to yesterday's CC Mode patch.
11850         * lisp/progmodes/cc-engine.el (c-before-change-check-<>-operators): Put
11851         c-save-buffer-state around the function rather than a mere `let'.
11853 2016-01-05  Michael Albinus  <michael.albinus@gmx.de>
11855         Additional changes for "make check-expensive"
11857         * CONTRIBUTE : Encourage use of ":tags '(:expensive-test)".
11858         Explain make target `check-expensive'.
11860         * etc/NEWS: Mention new make target `check-expensive'.
11862         * test/automated/Makefile.in (check-doit): New target.
11863         (check, check-expensive): Use it.
11865 2016-01-04  Alan Mackenzie  <acm@muc.de>
11867         Apply text properties for <, > in new after-change function (C++ Java Modes).
11869         These are category/syntax-table properties to give < and > paren syntax.
11870         Also apply certain `c-type' text properties to the insides of <..> constructs
11871         to ensure that identifiers contained by them get fontified.  This patch fixes
11872         bug #681.
11874         * lisp/progmodes/cc-cmds.el (c-electric-lt-gt): Reformulate due to new
11875         after-change action.
11877         * lisp/progmodes/cc-engine.el (c-before-change-check-<>-operators): Expand
11878         change region to include <s and >s which might not be already marked as
11879         parens, rather than just when paren text properties are removed.
11880         (c-restore-<>-properties): New after-change function, which applies text
11881         properties marking < and > with paren syntax.
11883         * lisp/progmodes/cc-fonts.el (c-font-lock-declarations): Ensure `c-type'
11884         properties are applied to the interiors of <...> constructs, to ensure
11885         fontification of identifiers there.
11887         * lisp/progmodes/cc-langs.el (c-before-font-lock-functions): Add
11888         c-restore-<>-properties to this list for C++ and Java.
11890         * lisp/progmodes/cc-mode.el (c-common-init): When invoking
11891         c-before-font-lock-functions, exclude c-restore-<>-properties from the
11892         functions invoked.
11893         (c-before-change): Initialize c-new-BEG/END here (rather than c-after-change)
11894         to allow modification by before-change functions.
11895         (c-after-change): Amend c-new-END here, rather than initializing it and
11896         c-new-BEG.
11898 2016-01-04  Michael Albinus  <michael.albinus@gmx.de>
11900         Introduce check-expensive tests.
11902         * Makefile.in (check-expensive):
11903         * test/automated/Makefile.in (check-expensive): New target.
11905         * test/automated/auto-revert-tests.el
11906         (auto-revert-test01-auto-revert-several-files):
11907         * test/automated/file-notify-tests.el (file-notify--deftest-remote):
11908         * test/automated/tramp-tests.el (tramp-test26-process-file)
11909         (tramp-test27-start-file-process, tramp-test28-shell-command)
11910         (tramp-test29-vc-registered)
11911         (tramp-test31-special-characters-with-stat)
11912         (tramp-test31-special-characters-with-perl)
11913         (tramp-test31-special-characters-with-ls)
11914         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
11915         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
11916         (tramp-test35-unload): Tag the tests as :expensive-test.
11918 2016-01-04  Lars Magne Ingebrigtsen  <larsi@gnus.org>
11920         shr-tag-video bug fix
11922         * shr.el (shr-tag-video): Protect against the `poster' being
11923         empty.
11925 2016-01-04  Michael Albinus  <michael.albinus@gmx.de>
11927         Minor fixes in tramp-tests.el
11929         * test/automated/tramp-tests.el (tramp-test26-process-file):
11930         Move point properly.
11931         (tramp-test29-vc-registered): Work with relative file names.
11933 2016-01-04  Eli Zaretskii  <eliz@gnu.org>
11935         Ensure redisplay when 'truncate-lines' is set
11937         * lisp/frame.el (redisplay--variables): Add 'truncate-lines'.
11938         (Bug#22303)
11940 2016-01-04  Eli Zaretskii  <eliz@gnu.org>
11942         Fix a doc string of 'transient-mark-mode'
11944         * src/buffer.c (syms_of_buffer) <transient-mark-mode>: Prevent
11945         "lambda" in doc string from becoming a link to lambda expressions.
11947 2016-01-04  Eli Zaretskii  <eliz@gnu.org>
11949         MS-Windows followup to latest gnulib update
11951         * nt/gnulib.mk (EXTRA_DIST): Add ignore-value.h.
11953 2016-01-04  Paul Eggert  <eggert@cs.ucla.edu>
11955         Spelling fix
11957 2016-01-04  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
11959         Do secure signed Bcc handling
11961         * lisp/gnus/message.el (message-send): Do secure signed Bcc handling
11962         (bug#18718).
11964 2016-01-04  Paul Eggert  <eggert@cs.ucla.edu>
11966         Avoid stdio in SIGINT handler
11968         * admin/merge-gnulib (GNULIB_MODULES): Add ignore-value.
11969         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
11970         * lib/ignore-value.h: New file, from gnulib.
11971         * src/keyboard.c: Include it.
11972         (write_stdout, read_stdin): New functions.
11973         (handle_interrupt): Use them instead of printf and getchar,
11974         and avoid fflush when handling signals.
11976 2016-01-04  Paul Eggert  <eggert@cs.ucla.edu>
11978         * doc/misc/texinfo.tex: Revert unwanted copyright change.
11980 2016-01-03  Artur Malabarba  <bruce.connor.am@gmail.com>
11982         * lisp/align.el (align): Simplify a lambda
11984         * lisp/align.el (align): Fix arg order in call to `align-region'
11986 2016-01-03  Eli Zaretskii  <eliz@gnu.org>
11988         Fix compilation next-error in buffers with selective-display
11990         * lisp/progmodes/compile.el (compilation-beginning-of-line): New
11991         function.
11992         (compilation-internal-error-properties)
11993         (compilation-next-error-function, compilation-set-window): Use
11994         it.  (Bug#1092)
11996 2016-01-03  Lars Magne Ingebrigtsen  <larsi@gnus.org>
11998         * lisp/net/nsm.el (nsm-check-protocol): Fix typo in the message.
12000 2016-01-03  Lars Magne Ingebrigtsen  <larsi@gnus.org>
12002         Add SHA1 warnings for high network security settings
12004         * lisp/net/nsm.el (nsm-check-protocol): When using high security, warn
12005         about SHA1 certificates, which are now believed to be open to
12006         spoofing.
12008 2016-01-03  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
12010         Refactor mml-smime.el, mml1991.el, mml2015.el
12012         (Maybe this is the last merge from Gnus git to Emacs git)
12014         Cf. discussion on ding mailing list, messages in
12015         <http://thread.gmane.org/gmane.emacs.gnus.general/86228>.
12016         Common code from the three files mml-smime.el, mml1991.el, and
12017         mml2015.el is moved to mml-sec.el.  Auxiliary functions are added
12018         to gnus-util.el.
12020         The code is supported by test cases with necessary test keys.
12022         Documentation in message.texi is updated.
12024         * doc/misc/message.texi (Security, Using S/MIME):
12025         Update for refactoring mml-smime.el, mml1991.el, mml2015.el.
12026         (Using OpenPGP): Rename from "Using PGP/MIME"; update contents.
12027         (Passphrase caching, Encrypt-to-self, Bcc Warning): New sections.
12029         * lisp/gnus/gnus-util.el (gnus-test-list, gnus-subsetp, gnus-setdiff):
12030         New functions.
12032         * lisp/gnus/mml-sec.el: Require gnus-util and epg.
12033         (epa--select-keys): Autoload.
12034         (mml-signencrypt-style-alist, mml-secure-cache-passphrase): Doc fix.
12035         (mml-secure-openpgp-signers): New user option;
12036         make mml1991-signers and mml2015-signers obsolete aliases to it.
12037         (mml-secure-smime-signers): New user option;
12038         make mml-smime-signers an obsolete alias to it.
12039         (mml-secure-openpgp-encrypt-to-self): New user option;
12040         make mml1991-encrypt-to-self and mml2015-encrypt-to-self obsolete
12041         aliases to it.
12042         (mml-secure-smime-encrypt-to-self): New user option;
12043         make mml-smime-encrypt-to-self an obsolete alias to it.
12044         (mml-secure-openpgp-sign-with-sender): New user option;
12045         make mml2015-sign-with-sender an obsolete alias to it.
12046         (mml-secure-smime-sign-with-sender): New user option;
12047         make mml-smime-sign-with-sender an obsolete alias to it.
12048         (mml-secure-openpgp-always-trust): New user option;
12049         make mml2015-always-trust an obsolete alias to it.
12050         (mml-secure-fail-when-key-problem, mml-secure-key-preferences):
12051         New user options.
12052         (mml-secure-cust-usage-lookup, mml-secure-cust-fpr-lookup)
12053         (mml-secure-cust-record-keys, mml-secure-cust-remove-keys)
12054         (mml-secure-add-secret-key-id, mml-secure-clear-secret-key-id-list)
12055         (mml-secure-cache-passphrase-p, mml-secure-cache-expiry-interval)
12056         (mml-secure-passphrase-callback, mml-secure-check-user-id)
12057         (mml-secure-secret-key-exists-p, mml-secure-check-sub-key)
12058         (mml-secure-find-usable-keys, mml-secure-select-preferred-keys)
12059         (mml-secure-fingerprint, mml-secure-filter-keys)
12060         (mml-secure-normalize-cust-name, mml-secure-select-keys)
12061         (mml-secure-select-keys-1, mml-secure-signer-names, mml-secure-signers)
12062         (mml-secure-self-recipients, mml-secure-recipients)
12063         (mml-secure-epg-encrypt, mml-secure-epg-sign): New functions.
12065         * lisp/gnus/mml-smime.el: Require epg;
12066         refactor declaration and autoloading of epg functions.
12067         (mml-smime-use): Doc fix.
12068         (mml-smime-cache-passphrase, mml-smime-passphrase-cache-expiry):
12069         Obsolete.
12070         (mml-smime-get-dns-cert, mml-smime-get-ldap-cert):
12071         Use format instead of gnus-format-message.
12072         (mml-smime-epg-secret-key-id-list): Remove variable.
12073         (mml-smime-epg-passphrase-callback, mml-smime-epg-find-usable-key)
12074         (mml-smime-epg-find-usable-secret-key): Remove functions.
12075         (mml-smime-epg-sign, mml-smime-epg-encrypt): Refactor.
12077         * lisp/gnus/mml1991.el (mml1991-cache-passphrase)
12078         (mml1991-passphrase-cache-expiry): Obsolete.
12079         (mml1991-epg-secret-key-id-list): Remove variable.
12080         (mml1991-epg-passphrase-callback, mml1991-epg-find-usable-key)
12081         (mml1991-epg-find-usable-secret-key): Remove functions.
12082         (mml1991-epg-sign, mml1991-epg-encrypt): Refactor.
12084         * lisp/gnus/mml2015.el (mml2015-cache-passphrase)
12085         (mml2015-passphrase-cache-expiry): Obsolete.
12086         (mml2015-epg-secret-key-id-list): Remove variable.
12087         (mml2015-epg-passphrase-callback, mml2015-epg-check-user-id)
12088         (mml2015-epg-check-sub-key, mml2015-epg-find-usable-key)
12089         (mml2015-epg-find-usable-secret-key): Remove functions.
12090         (mml2015-epg-decrypt, mml2015-epg-clear-decrypt, mml2015-epg-sign)
12091         (mml2015-epg-encrypt): Refactor.
12093 2016-01-02  Glenn Morris  <rgm@gnu.org>
12095         * lisp/progmodes/fortran.el (fortran-make-syntax-propertize-function):
12097         Explicitly ignore case.  (Bug#22262)
12099 2016-01-02  Stefan Monnier  <monnier@iro.umontreal.ca>
12101         (semantic-symref-derive-find-filepatterns): Return a list
12103         * lisp/cedet/semantic/symref/grep.el
12104         (semantic-symref-derive-find-filepatterns): Return a list.
12105         (semantic-symref-perform-search): Quote the result here once and for all.
12107 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
12109         Fix xref-find-references on MS-Windows
12111         * lisp/cedet/semantic/symref/grep.el
12112         (semantic-symref-derive-find-filepatterns): Use
12113         'shell-quote-argument' instead of manually quoting in a way that
12114         only works with Posix shells.  (Bug#22289)
12116 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
12118         Document new features of tildify-mode
12120         * lisp/textmodes/tildify.el (tildify-foreach-ignore-environments)
12121         (tildify-mode): Spelling fixes in doc strings.
12123         * etc/NEWS: Reformat the tildify-mode entry.
12125 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
12127         Document new features of Whitespace mode
12129         * doc/emacs/display.texi (Useless Whitespace): Document
12130         'whitespace-toggle-options' and the new 'big-indent' style.
12131         Document 'whitespace-big-indent-regexp'.  Document the Global
12132         Whitespace mode.
12134 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
12136         Improve documentation of new Hide-IfDef features
12138         * etc/NEWS: Expand and reword Hide-IfDef section.
12140 2016-01-02  Leo Liu  <sdl.web@gmail.com>
12142         Fix regression in font-locking cl-assert and cl-check-type
12144         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2): Fix
12145           el-errs-re.
12147 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
12149         Spelling and grammar fixes
12151 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
12153         Fix copyright years by hand
12155         These are dates that admin/update-copyright did not update, or
12156         updated incorrectly.
12158 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
12160         Update copyright year to 2016
12162         Run admin/update-copyright.
12164 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
12166         Merge from gnulib
12168         This mostly just updates copyright dates of gnulib files.
12169         It also updates to the latest version of texinfo.tex.
12171 2015-12-31  Mark Oteiza  <mvoteiza@udel.edu>
12173         lisp/emacs-lisp/chart.el (chart-new-buffer): Move to silence byte compiler.
12175 2015-12-31  Mark Oteiza  <mvoteiza@udel.edu>
12177         Port chart.el methods to cl-generic.
12179         cl-call-next-method cannot be used inside EIEIO's defmethod.
12180         * lisp/emacs-lisp/chart.el: Require cl-generic at compile time.
12181         * lisp/emacs-lisp/chart.el (initialize-instance, chart-draw):
12182         (chart-draw-title, chart-size-in-dir, chart-draw-axis):
12183         (chart-axis-draw, chart-translate-xpos, chart-translate-ypos):
12184         (chart-translate-namezone, chart-draw-data, chart-add-sequence):
12185         (chart-trim, chart-sort): Use cl-defmethod instead of defmethod.
12187 2015-12-31  Brian Burns  <bburns.km@gmail.com>
12189         Add nt/INSTALL.W64 build instructions
12191         * nt/INSTALL.W64: New file.
12192         * nt/INSTALL: Point to INSTALL.W64 for 64-bit build instructions.
12194 2015-12-31  Joakim Jalap  <joakim.jalap@fastmail.com>
12196         Add new input method 'programmer-dvorak'
12198         * lisp/leim/quail/programmer-dvorak.el ("programmer-dvorak"): New
12199         input method.
12201         * etc/NEWS: Mention it.
12203 2015-12-31  Eli Zaretskii  <eliz@gnu.org>
12205         Allow to invoke original M-TAB binding in 'flyspell-prog-mode'
12207         * lisp/textmodes/flyspell.el (flyspell-prog-mode): Record the
12208         original M-TAB binding in a buffer-local variable.
12209         (flyspell-auto-correct-word): Invoke the original binding of M-TAB
12210         if that is recorded, when point is in a place where flyspell
12211         should not be active (e.g., because the user turned on
12212         'flyspell-prog-mode').  (Bug#18533)
12214 2015-12-31  Eli Zaretskii  <eliz@gnu.org>
12216         Fix EWW rendering of long RTL lines
12218         * lisp/net/shr.el (shr-insert-document): Undo any previous hscroll
12219         of the selected window before filling its lines.  (Bug#22250)
12221 2015-12-31  Vincent Belaïche  <vincentb1@users.sourceforge.net>
12223         fix  bug#21054
12225         * lisp/ses.el (ses-check-curcell): Call `ses-set-curcell' unconditionally
12227 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12229         Clean up cairo printing code
12231         * src/gtkutil.c (xg_get_page_setup): Use listn.
12232         * src/xfns.c (Fx_export_frames, Fx_print_frames_dialog): Doc fix.  Use
12233         decode_window_system_frame and FRAME_VISIBLE_P.
12234         (Fx_print_frames_dialog): Use redisplay_preserve_echo_area instead
12235         of Fdisplay.
12236         * src/xterm.c (x_cr_export_frames): Use redisplay_preserve_echo_area
12237         instead of Fdisplay.  Temporarily unblock_input around QUIT.
12239 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12241         Move variables to inner loop, preparing for Mac port merge
12243         * src/keyboard.c (command_loop_1): Move variables `cmd',
12244         `keybuf', and `i' to inner loop.
12246 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12248         Add handle_user_signal_hook
12250         * src/keyboard.h (handle_user_signal_hook): New declaration.
12251         * src/keyboard.c (handle_user_signal_hook): New variable.
12252         (handle_user_signal): Call it.
12254 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12256         Avoid writing to purespace
12258         * src/alloc.c (Fmake_string): Don't write to empty string contents.
12259         (allocate_vector): Don't write to empty vector size.
12260         * src/character.h (CHECK_CHARACTER_CAR, CHECK_CHARACTER_CDR):
12261         Don't call unnecessary XSETCAR or XSETCDR.
12262         * src/lisp.h (STRING_SET_UNIBYTE, STRING_SET_MULTIBYTE): Don't
12263         write to empty string size_byte.
12265 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12267         Remove unused variable
12269         * lisp/international/mule-cmds.el: Remove unused variable
12270         `mac-system-coding-system'.
12272 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12274         * configure.ac: Find libxml2 headers in Xcode SDK dir on Darwin.
12276 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12278         Use posix_openpt instead of openpty on Darwin
12280         * configure.ac (PTY_ITERATION, FIRST_PTY_LETTER, PTY_OPEN)
12281         (PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF): Remove
12282         Darwin-specific definitions.  Use posix_openpt instead.
12284 2015-12-30  Shakthi Kannan  <shakthimaan@gmail.com>
12286         Document support for ':documentation' in Lisp mode
12288         * lisp/emacs-lisp/lisp-mode.el (lisp-string-in-doc-position-p)
12289         (lisp-string-after-doc-keyword-p)
12290         (lisp-font-lock-syntactic-face-function): Add doc strings.
12292 2015-12-30  Shakthi Kannan  <shakthimaan@gmail.com>
12294         Document new features of TeX mode
12296         * doc/emacs/text.texi (TeX Print): Document
12297         'tex-print-file-extension'.
12298         * doc/emacs/programs.texi (Misc for Programs): Document support
12299         for Prettify Symbols mode in TeX mode.
12301 2015-12-30  Eli Zaretskii  <eliz@gnu.org>
12303         Clarify docs of hscroll in RTL text
12305         * doc/lispref/windows.texi (Horizontal Scrolling): Clarify the
12306         meaning of a window's horizontal scroll amount for RTL paragraphs.
12308 2015-12-30  Eli Zaretskii  <eliz@gnu.org>
12310         Fix rendering of HTML pages that use character composition
12312         * src/indent.c (Fvertical_motion): Fix the case when point starts
12313         in the middle of a composition, as in shr-vertical-motion.
12314         (Bug#22250)
12316 2015-12-30  Eli Zaretskii  <eliz@gnu.org>
12318         Avoid some compiler warnings in w32.c
12320         * src/w32.c (codepage_for_filenames, crlf_to_lf)
12321         (ansi_encode_filename, socket_to_fd, sys_write)
12322         (check_windows_init_file): Avoid compiler warnings about
12323         differences in pointer signedness.
12325 2015-12-30  Dmitry Gutov  <dgutov@yandex.ru>
12327         Undo ill-advised change
12329         * lisp/progmodes/xref.el (xref-collect-matches): Undo
12330         ill-advised change.  The hits come in the order that `find'
12331         produces them in, which isn't alphabetical.
12333 2015-12-30  Dmitry Gutov  <dgutov@yandex.ru>
12335         Unbreak completion in python-mode buffers
12337         * lisp/progmodes/python.el (python-shell-completion-at-point):
12338         Unbreak in python-mode buffers.
12340 2015-12-29  Eli Zaretskii  <eliz@gnu.org>
12342         Fix typos in CC Mode manual
12344         * doc/misc/cc-mode.texi (c-offsets-alist, Style Variables): Fix
12345         typos.  (Bug#22267)
12347 2015-12-29  Eli Zaretskii  <eliz@gnu.org>
12349         Avoid assertion violations in compact_font_cache_entry
12351         * src/alloc.c (compact_font_cache_entry): Don't use VECTORP to
12352         avoid assertion violation in ASIZE.  (Bug#22263)
12354 2015-12-29  Eli Zaretskii  <eliz@gnu.org>
12356         Fix filling text with bidirectional characters in shr.el
12358         * lisp/net/shr.el (shr-insert-document): Bind
12359         bidi-display-reordering to nil while filling lines.  This is
12360         required for when a line includes characters whose bidi
12361         directionality is opposite to the base paragraph direction,
12362         because columns are counted in the logical order.  (Bug#22250)
12364 2015-12-29  Martin Rudalics  <rudalics@gmx.at>
12366         * src/xfns.c (x_create_tip_frame): Process alpha parameter.
12368 2015-12-29  Michael Albinus  <michael.albinus@gmx.de>
12370         Sync with Tramp 2.2.13
12372         * doc/misc/trampver.texi: Change version to "2.2.13.25.1".
12374         * lisp/net/tramp-compat.el (tramp-compat-delete-dups):
12375         Use `tramp-compat-funcall'.
12377         * lisp/net/tramp-gvfs.el (tramp-gvfs-parse-device-names):
12378         Make `split-string' call compatible with older Emacsen.
12380         * lisp/net/trampver.el: Change version to "2.2.13.25.1".
12382 2015-12-29  Lambda Coder  <sjLambda@gmail.com>
12384         * doc/misc/tramp.texi: Editorial revisions to the Tramp manual
12386 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
12388         Mention that tls.el is secure by default, and will fail
12390 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
12392         Make tls.el use trustfiles by default
12394         * lisp/net/tls.el (tls-program): Add a certfile by default (bug#21227).
12395         (open-tls-stream): Insert the trustfile by looking at
12396         `gnutls-trustfiles'.
12398 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
12400         Refactor out gnutls-trustfiles
12402         * lisp/net/gnutls.el (gnutls-trustfiles): Refactor out for reuse by tls.el.
12404 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
12406         Remove --insecure from gnutls-cli invocation
12408         * tls.el (tls-program): Default to using secure TLS
12409         connections (bug#19284).
12411 2015-12-29  Paul Eggert  <eggert@cs.ucla.edu>
12413         Spelling fix
12415 2015-12-29  Paul Eggert  <eggert@cs.ucla.edu>
12417         Port report-emacs-bug to deterministic builds
12419         * lisp/mail/emacsbug.el (report-emacs-bug): Future-proof the
12420         recent "built on" change to deterministic builds where
12421         emacs-build-system will be nil.  See:
12422         https://lists.gnu.org/r/emacs-devel/2015-12/msg01369.html
12424 2015-12-29  Jose A. Ortega Ruiz  <jao@gnu.org>  (tiny change)
12426         Fix URL auth error message
12428         * lisp/url/url-http.el (url-http-handle-authentication): Make the error
12429         message more correct (bug#20069).
12431 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
12433         shr link traversal fixup
12435         * shr.el (shr-next-link): Don't bug out on adjacent links.
12437         Backport:
12439         (cherry picked from commit 1efc5f8b09273c359683ce13be95fb5df7a84311)
12441 2015-12-28  Tom Tromey  <tom@tromey.com>
12443         set :safe on css-indent-offset
12445         * lisp/textmodes/css-mode.el (css-indent-offset): Add :safe 'integerp.
12447 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
12449         * eww.el (eww-mode): Remove superfluous bidi reset.
12451 2015-12-28  James Stout  <james.wolf.stout@gmail.com>  (tiny change)
12453         Make chunked encoding trailer detection more compliant
12455         * lisp/url/url-http.el
12456         (url-http-chunked-encoding-after-change-function): Make
12457         trailer detection more compliant (bug#16345).
12459 2015-12-28  Martin Rudalics  <rudalics@gmx.at>
12461         Fix Bug#10873 in `report-emacs-bug'
12463         * lisp/mail/emacsbug.el (report-emacs-bug): If
12464         `report-emacs-bug-no-explanations' is nil, make sure we can show
12465         mail and warnings buffer on this frame (Bug#10873).
12467 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
12469         Always reset the bidi direction
12471         * eww.el (eww-display-html): Always reset the bidi direction
12472         to `left-to-right' (bug#22257).
12474 2015-12-28  Alan Mackenzie  <acm@muc.de>
12476         Allow line comments ending with escaped NL to be continued to the next line.
12478         Use this in C, C++, and Objective C Modes.  Fixes bug#22246
12480         * src/syntax.c (comment-end-can-be-escaped): New buffer local variable.
12481         (forw-comment, back-comment): On encountering an end of comment character,
12482         test whether it is escaped when `comment-end-can-be-escaped' is non-nil.
12484         * doc/lispref/syntax.texi (Control Parsing): Describe
12485         `comment-end-can-be-escaped'.
12487         * etc/NEWS (Lisp Changes): Describe `comment-end-can-be-escaped'.
12489         * lisp/progmodes/cc-langs.el: New c-lang-setvar `comment-end-can-be-escaped'.
12491 2015-12-28  Dmitry Gutov  <dgutov@yandex.ru>
12493         Rename project-library-roots to project-external-roots
12495         * lisp/progmodes/project.el (project-library-roots): Rename to
12496         project-external-roots.
12497         (project-library-roots-function): Rename to
12498         project-vc-external-roots-function.  Only use it in the VC
12499         backend, for now.  Update project-external-roots accordingly.
12500         (project-vc-library-roots): Remove.
12501         (project-or-libraries-find-regexp):
12502         Rename to project-or-external-find-regexp.
12504         * lisp/progmodes/elisp-mode.el (elisp-library-roots):
12505         Rename to elisp-load-path-roots.
12507         * lisp/progmodes/etags.el (etags-library-roots): Remove.  Use
12508         an anonymous function for the default value of
12509         project-vc-external-roots-function.
12511 2015-12-27  Deniz Dogan  <deniz@dogan.se>
12513         Clear erc user list upon disconnection
12515         * lisp/erc/erc-backend.el (erc-process-sentinel): Clear channel user
12516         lists upon disconnection.  This prevents invalid channel
12517         user lists when reconnecting (bug#10947).
12519 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
12521         Don't bug out in erc after waking from sleep
12523         * lisp/erc/erc-backend.el (erc-server-send-ping): If the server has
12524         closed connection, this may already have been detected and
12525         `erc-server-last-received-time' has been set to nil (bug#13608).
12527 2015-12-27  David Edmondson  <dme@dme.org>
12529         Proxy error in erc with multiple clients
12531         * lisp/erc/erc.el (erc-channel-receive-names): Fix errors
12532         generated when multiple IRC clients talk to a single IRC proxy
12533         (bug#19034).
12535         Backport:
12537         (cherry picked from commit 507e98a54d1aa37823c64993d6b59257a82fe8f4)
12539 2015-12-27  Dima Kogan  <dima@secretsauce.net>
12541         Ensure that we don't have several timers in erc
12543         * lisp/erc/erc-backend.el (erc-server-setup-periodical-ping): Checks
12544         for existing timers in the alist before adding new ones.  If a
12545         timer already exists, it is cancelled and
12546         overwritten. (bug#19292).
12548 2015-12-27  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
12550         Fix mml-sec build warnings
12552         * lisp/gnus/mml-sec.el: Fix warnings by adding autoloads
12553         (bug#18718).
12555         Backport:
12557         (cherry picked from commit 3603097f62f5f4aa5451716e9ac380161f6829e2)
12559 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
12561         Don't insert erc logs at the end
12563         * lisp/erc/erc-log.el (erc-log-setup-logging): Insert the previous log
12564         at the start of the buffer, not at the end (bug#20496).
12566 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
12568         (eww-setup-buffer): Restore left-to-right defaults
12570         * eww.el (eww-setup-buffer): Restore left-to-right defaults.
12572         Backport:
12574         (cherry picked from commit 96c874b96b617c124d500a94de761a61f2a08685)
12576 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
12578         Don't join erc channels doubly
12580         * lisp/erc/erc-join.el (erc-autojoin-channels): Don't join channels
12581         more than once (if you have several nicks) (bug#20695).
12583 2015-12-27  Eli Zaretskii  <eliz@gnu.org>
12585         Avoid leaving "ghost" of mouse pointer on MS-Windows
12587         * src/w32term.c (frame_set_mouse_pixel_position):
12588         * src/w32fns.c (Fw32_mouse_absolute_pixel_position): Momentarily
12589         disable "mouse trails" when moving the mouse pointer.  (Bug#22247)
12590         * src/w32term.c (frame_set_mouse_pixel_position): Include
12591         w32common.h.
12593 2015-12-27  Krzysztof Jurewicz  <krzysztof.jurewicz@gmail.com>  (tiny change)
12595         Fix auth source lookups from erc with port numbers
12597         * lisp/erc/erc.el (erc-open): `auth-source' wants strings, not port
12598         numbers (bug#20541).
12600 2015-12-27  Fran Litterio  <flitterio@gmail.com>
12602         Run erc-kill-channel-hook always on exit
12604         * lisp/erc/erc.el (erc-kill-buffer-function): Run erc-kill-channel-hook
12605         when erc-kill-queries-on-quit is set (bug#21187).
12607 2015-12-27  Paul Eggert  <eggert@cs.ucla.edu>
12609         Spelling fix
12611         * test/automated/url-parse-tests.el:
12612         (url-generic-parse-url/same-document-reference):
12613         Rename from url-generic-parse-url/same-decument-reference.
12615 2015-12-27  Paul Eggert  <eggert@cs.ucla.edu>
12617         Reword initial *scratch* for brevity, appearance
12619         * lisp/startup.el (initial-scratch-message):
12620         Reword to avoid apostrophes, and to make it shorter.
12621         See the thread starting in:
12622         https://lists.gnu.org/r/emacs-devel/2015-12/msg01241.html
12624 2015-12-26  Leo Liu  <sdl.web@gmail.com>
12626         Add ert-deftest to lisp-mode.el
12628         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression,
12629           lisp-el-font-lock-keywords-1): Add ert-deftest.
12631 2015-12-26  Lars Ingebrigtsen  <larsi@gnus.org>
12633         Mark imap changes as not needing doc changes
12635         * lisp/net/imap.el (imap-ssl-open): Remove
12637 2015-12-26  Lars Ingebrigtsen  <larsi@gnus.org>
12639         Use built-in encryption in imap.el
12641         * lisp/net/imap.el (imap-ssl-program): Remove (bug#21134).
12642         (imap-starttls-open): Use open-network-stream instead of starttls.el.
12643         (imap-tls-open): Use open-network-stream instead of tls.el.
12645 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12647         Don't try using /bin/sh in artist.el on MS-Windows
12649         * lisp/textmodes/artist.el (artist-figlet-get-font-list-windows):
12650         New function.
12651         (artist-figlet-choose-font): Use it on MS-Windows and MS-DOS.
12652         (Bug#20167)
12654 2015-12-26  Wolfgang Jenkner  <wjenkner@inode.at>
12656         Always define gmalloc etc. in src/gmalloc.c
12658         This is a work-around to prevent the compiler from using semantic
12659         knowledge about malloc for optimization purposes.  E.g., gcc 5.2
12660         with -O2 replaces most of calloc's definition by a call to calloc;
12661         see Bug#22085.
12662         * src/gmalloc.c [!HYBRID_MALLOC] (malloc, realloc, calloc)
12663         (aligned_alloc, free): Do not undef.  Instead, define these as
12664         functions (perhaps renamed to gmalloc etc.) in terms of gmalloc etc.
12666 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12668         Fix documentation of browse-url browser-related functions
12670         * lisp/net/browse-url.el (browse-url)
12671         (browse-url-default-browser, browse-url-default-windows-browser)
12672         (browse-url-default-macosx-browser, browse-url-chromium)
12673         (browse-url-kde, browse-url-text-xterm): Clarify the usage of ARGS
12674         and NEW-WINDOW arguments in these functions.  (Bug#19421)
12676 2015-12-26  Paul Eggert  <eggert@cs.ucla.edu>
12678         Propagate Bug#14412 fix to backtrace_eval_unrewind
12680         * src/eval.c (unbind_to): Redo so that the FALLTHROUGH!! comment
12681         becomes accurate again. This shouldn’t affect behavior.
12682         (backtrace_eval_unrewind): Apply the recent unbind_to fix here, too.
12684 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12686         Don't produce non-ASCII characters in *scratch*
12688         * lisp/startup.el (initial-scratch-message): Quote apostrophes to
12689         avoid producing non-ASCII characters in the *scratch* buffer's
12690         commentary.
12692 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12694         Document changes in 'compare-windows'
12696         * lisp/vc/compare-w.el (compare-windows-removed)
12697         (compare-windows-added): Doc fix.
12699         * doc/emacs/files.texi (Comparing Files): Document the changes in
12700         window selection by 'compare-windows'.
12702 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12704         Document 'vc-annotate-background-mode'
12706         * doc/emacs/maintaining.texi (Old Revisions): Document
12707         'vc-annotate-background-mode'.
12709 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12711         Document 'vc-region-history'
12713         * doc/emacs/maintaining.texi (VC Change Log): Document
12714         'vc-region-history'.
12716 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12718         Improve documentation of 'vc-push'
12720         * doc/emacs/maintaining.texi (Pulling / Pushing): Expand and
12721         improve the documentation of 'vc-push'.
12723         * lisp/vc/vc.el (vc-pull, vc-push): Doc fix.
12725 2015-12-26  Alain Schneble  <a.s@realize.ch>
12727         Include the tests for the URL parsing fixes
12729 2015-12-26  Alain Schneble  <a.s@realize.ch>
12731         Make relative URL parsing and resolution consistent with RFC 3986 (bug#22044)
12733         * test/automated/url-parse-tests.el: Add tests covering url-generic-parse-url.
12734         * test/automated/url-expand-tests.el: Add tests covering url-expand-file-name.
12735         * lisp/url/url-parse.el (url-generic-parse-url): Keep empty fragment
12736         information in URL-struct.
12737         * lisp/url/url-parse.el (url-path-and-query): Do not artificially turn empty
12738         path and query into nil path and query, respectively.
12739         * lisp/url/url-expand.el (url-expander-remove-relative-links): Do not turn
12740         empty path into an absolute ("/") path.
12741         * lisp/url/url-expand.el (url-expand-file-name): Properly resolve
12742         fragment-only URIs. Do not just return them unchanged.
12743         * lisp/url/url-expand.el (url-default-expander): An empty path in the relative
12744         reference URI should not drop the last segment.
12746         Backport:
12748         (cherry picked from commit b792ecea1715e080ad8e232d3d154b8a25d2edfb)
12750 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12752         Document 'url-user-agent'.
12754         * lisp/url/url-http.el (url-user-agent): Move from here...
12755         * lisp/url/url-vars.el (url-user-agent): ...to here.  This is to
12756         keep all the URL defcustoms in one place, and also have it defined
12757         whenever the URL library is loaded.
12759         * doc/misc/url.texi (Customization): Document 'url-user-agent'.
12761 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12763         Document protocols supported by URL library via Tramp
12765         * doc/misc/url.texi (Tramp): New node, describes the URL schemes
12766         supported via Tramp.
12767         (Supported URL Types, file/ftp, rlogin/telnet/tn3270): Mention
12768         Tramp.
12770 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12772         Document changes in Shell-script mode
12774         * lisp/progmodes/sh-script.el (sh-mode, sh-set-shell): Document
12775         the 'sh-shell' file-local variable.
12776         (top level): Add an auto-load form to avoid byte-compiler warning
12777         about 'comint-send-string'.
12779 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12781         Fix documentation of 'ses-define-local-printer'
12783         * doc/misc/ses.texi (Printer functions): Fix whitespace between
12784         sentences and punctuation.  Add an index entry for
12785         'ses-define-local-printer'.
12787 2015-12-26  Shakthi Kannan  <shakthimaan@gmail.com>
12789         Document 'ert-summarize-tests-batch-and-exit'
12791         * doc/misc/ert.texi (Running Tests in Batch Mode): Document
12792         'ert-summarize-tests-batch-and-exit'.
12794 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12796         Avoid assertion violation in unbind_to
12798         * src/eval.c (unbind_to) <SPECPDL_LET>: Avoid assertion violation
12799         if we get here with an object that is not a symbol.  (Bug#14412)
12801 2015-12-25  Andreas Schwab  <schwab@linux-m68k.org>
12803         Don't treat /foo/bar:mumble as ange-ftp address
12805                 * lisp/net/browse-url.el (browse-url-filename-alist): Match colons
12806                 only in the first component.  (bug#5362)
12808 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12810         Follow <meta> redirects in eww
12812         Merge conflict, but I think I resolved it.
12814             Follow meta refresh tags in eww
12816             * eww.el (eww-tag-meta): Follow meta refresh tags (bug#22234).
12818         Backport:
12820 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12822         Allow http://user:pass@foo/ URLs again
12824         * lisp/url/url-auth.el (url-basic-auth): Allow explicit
12825         user/passwords in URLs (bug#19046).
12827         Backport:
12829         (cherry picked from commit b563715a2db265517d5a77f165a42afa1e233fdd)
12831 2015-12-25  Samer Masterson  <samer@samertm.com>
12833         Autoload url-insert-buffer-contents
12835         * lisp/url/url-handlers.el: Add autoload cookie so that
12836         `package-list-packages' doesn't bug out (bug#21927) (tiny change)
12838         Backport:
12840         (cherry picked from commit 7a7b5b492ff9929eecd90c4564db6fbf3b192323)
12842 2015-12-25  Eli Zaretskii  <eliz@gnu.org>
12844         Make sure *scratch* etc. use forward slashes in its default-directory
12846         * lisp/startup.el (normal-top-level): On MS-Windows, convert
12847         backslashes to forward slashes while decoding default-directory
12848         of the initially-created buffers.
12850 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12852         More eww file name coding fixes
12854         * eww.el (eww-decode-url-file-name): Use the base coding
12855         system to check for encodability.
12857         Backport:
12859         (cherry picked from commit a8627008abe4ab339df19b417776da28b3ce0fc7)
12861 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12863         Always save eww history
12865         * eww.el (eww-setup-buffer): Always save history, even when
12866         called from outside the eww buffer (bug#19638).
12868         Backport:
12870         (cherry picked from commit 2a0f18d9b6ce0ccce3d9c4a4a3b5743bae71b41e)
12872 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12874         Default web pages to right-to-left
12876         * eww.el (eww-mode): Most web pages are left-to-right, so make
12877         that the default (bug#19801).
12879         * shr.el (shr-tag-html): Respect "dir" attributes
12880         (left-to-right, right-to-left).
12882         Backport:
12884         (cherry picked from commit 9e089ec8a380ec3758fcf1564c5f86dc92c68c2a)
12886 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12888         Make toggling checkboxes work again
12890         * eww.el (eww-update-field): Make toggling checkboxes work
12891         again (bug#21881).
12893         Backport:
12895         (cherry picked from commit 5e56f606952e5e81b4d3a93ea70e791b74b33041)
12897 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12899         Don't store cookies with empty names
12901         * lisp/url/url-cookie.el (url-cookie-store): Refuse to store
12902         cookies with empty names (bug#21936).
12904         Backport:
12906         (cherry picked from commit 9f0fd7cb1aec3eb9e2e0f7b8854c30870286d96c)
12908 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12910         Stop rendering HTML before specdlr exhaustion
12912         Fixes: 22117
12914         * shr.el (shr-descend): Stop rendering before we run out of
12915         specpdl room (bug#22117).
12917         Backport:
12919         (cherry picked from commit 248da292fe46224b0b5a79b632c89cf4de2c2081)
12921 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12923         Use cl-reduce, not reduce.
12925         Backport:
12927         (cherry picked from commit fe4606f93b91ff3d046aee0cf21ecc277af7a786)
12929 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12931         Allow several <tbody> tags in shr
12933         * shr.el (shr-table-body): New function to find the real body
12934         of a table.
12935         (shr-tag-table): Use it to render several <tbody> tags in a
12936         table (bug#22170).
12938         Backport:
12940         (cherry picked from commit cdaf33029d6620073833876d76056045ecfbc7c4)
12942 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12944         Make prettier unique file names in eww
12946         (eww-make-unique-file-name): Make unique file names by making
12947         files like foo(2).jpg instead of foo(1)(2).jpg.
12949         Backport:
12951         (cherry picked from commit edfdd0a6cbdfa9e5e4bd0553e2b489401ca39266)
12953 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12955         Decode hex-encoded URLs before using them as file names
12957         * eww.el (eww-decode-url-file-name): New function.
12958         (eww-download-callback): Use it to decode file names before
12959         saving them.
12961         Backport:
12963         (cherry picked from commit af22a010d87516c2a646572fb27512c03057784f)
12965 2015-12-25  Ashish SHUKLA  <ashish.is@lostca.se>
12967         Add FreeBSD cert bundle
12969         * doc/misc/emacs-gnutls.texi (Help For Users): Document
12970         FreeBSD bundle.
12972         * lisp/net/gnutls.el (gnutls-trustfiles): Add FreeBSD cert bundle.
12974         Backport:
12976         (cherry picked from commit 60c0f1a18ad88d6dc1a8f4ee5d9d18940eaeb6f7)
12978 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12980         Ignore invalid SVG images
12982         * shr.el (shr-tag-svg): Ignore SVG images that have no width
12983         or height, because these can't be displayed by ImageMagick,
12984         anyway.
12986         Backport:
12988         (cherry picked from commit 821107d53c2e390240d25c036b99ebbf9b4a93b6)
12990 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12992         shr table rendering fix
12994         * shr.el (shr-tag-table): Allow rendering body-less tables
12995         that have headers.
12997         Backport:
12999         (cherry picked from commit b05471e42c17e02c56c87d7599ada0c124a5fe09)
13001 2015-12-25  Eli Zaretskii  <eliz@gnu.org>
13003         Restore info about the build host in bug reports
13005         * lisp/mail/emacsbug.el (report-emacs-bug): Report the system on
13006         which Emacs was built.  This is important information for
13007         investigating bug reports reported by users who don't build their
13008         Emacs.
13010 2015-12-25  Eli Zaretskii  <eliz@gnu.org>
13012         Fix bootstrap broken by changes related to OS X file-name encoding
13014         * lisp/international/ucs-normalize.el (eval-when-compile): Make
13015         sure char-code-property-alist includes elements that allow access
13016         to 'decomposition' and 'canonical-combining-class' Unicode
13017         properties, as compiling ucs-normalize.el requires that.
13018         * lisp/loadup.el (featurep 'ns): Load ucs-normalize and ns-win
13019         only of charprop.el was already loaded.
13021         * src/Makefile.in ($(lispsource)/international/ucs-normalize.elc):
13022         New order-only dependency.
13024 2015-12-25  Leo Liu  <sdl.web@gmail.com>
13026         * lisp/ido.el (ido-add-virtual-buffers-to-list): Use bookmark-get-filename.
13028 2015-12-25  Michael Albinus  <michael.albinus@gmx.de>
13030         Make tramp-test29-vc-registered more robust
13032         * test/automated/tramp-tests.el (tramp-test29-vc-registered):
13033         Move `bzr' case down.  Skip test when `vc-create-repo' fails.
13034         Remove instrumentation.
13036 2015-12-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
13038         * lisp/term/x-win.el (x-gtk-stock-map): Fix typo.
13040 2015-12-24  Katsumi Yamaoka  <yamaoka@jpl.org>
13042         Fix `gnus-union' so as to behave like `cl-union'
13044         * lisp/gnus/gnus-group.el (gnus-group-prepare-flat):
13045         Make gnus-union use `equal' to compare items in lists.
13047         * lisp/gnus/gnus-util.el (gnus-union):
13048         Make it behave like cl-union partially.
13050 2015-12-23  Paul Eggert  <eggert@cs.ucla.edu>
13052         Fix dired.c typo with ptrdiff_t vs Lisp_Object
13054         * src/dired.c (file_name_completion): Don't assume Lisp_Object is
13055         an integer type, fixing a problem introduced in the recent fix for
13056         Bug#22169.
13058 2015-12-23  Eli Zaretskii  <eliz@gnu.org>
13060         Document default process sentinel more prominently
13062         * doc/lispref/processes.texi (Asynchronous Processes): Mention the
13063         defaults for process filter and sentinel.  Provide cross-references.
13064         (Process Information): Provide cross-references to where filters
13065         and sentinels are described.
13066         (Filter Functions): Add an index entry for "default filter".
13067         (Sentinels): Add a few status messages not documented previously.
13068         Resolve the "killed" confusion.  Document and describe the default
13069         sentinel.  (Bug#22220)
13071 2015-12-23  Eli Zaretskii  <eliz@gnu.org>
13073         Fix file-name completion on OS X
13075         * src/dired.c (file_name_completion): Reject false matches due to
13076         file-name-coding-systems that decompose characters when encoding
13077         file names, by comparing decoded file names as well.  (Bug#22169)
13078         (syms_of_dired) <Qdecomposed_characters>: New DEFSYM.
13080         * lisp/international/ucs-normalize.el (utf-8-hfs): Give it a
13081         non-nil 'decomposed-characters' property.
13083 2015-12-23  Anders Lindgren  <andlind@gmail.com>
13085         File-name completion of non-ASCII characters on OS X (bug#22169)
13087         The coding system `utf-8-nfd', locally defined in ns-win.el,
13088         didn't provide a :pre-write-conversion method, causing file name
13089         completion of non-ASCII characters to fail.  Solved by using the
13090         `utf-8-hfs' coding system provided by `ucs-normalize'.
13092         * lisp/loadup.el: Load international/ucs-normalize (when building
13093         for ns).
13095         * lisp/term/ns-win.el (utf-8-nfd): Made `utf-8-nfd' as alias for
13096         `utf-8-hfs' and removed the old implementation.  Set `utf-8-hfs'
13097         as the file name coding system.
13099         * src/nsfns.m (ns-convert-utf8-nfd-to-nfc): Removed.
13101 2015-12-23  Tom Tromey  <tom@tromey.com>
13103         Fix bug #18588 by making bug-reference-bug-regexp more lenient
13105         * lisp/progmodes/bug-reference.el (bug-reference-bug-regexp): Accept
13106         "bug NNNN".  (Bug #18588)
13108 2015-12-23  Tom Tromey  <tom@tromey.com>
13110         add some cl-* aliases to lisp-mode imenu
13112         * (lisp-imenu-generic-expression): Add cl-define-compiler-macro,
13113         cl-defgeneric, and cl-defmethod.
13115 2015-12-22  Tom Tromey  <tom@tromey.com>
13117         Make a variable buffer-local
13119         * lisp/generic-x.el (generic-rul-mode-setup-function): Make
13120         font-lock-syntax-table buffer-local.  (Bug #21627)
13122 2015-12-22  Eli Zaretskii  <eliz@gnu.org>
13124         Fix decoding of text in URLs retrieved by EWW
13126         * lisp/net/eww.el (eww-render): Pass 'charset' to
13127         'eww-display-raw'.  Use the value of 'last-coding-system-used', if
13128         non-nil, to set 'buffer-file-coding-system' of the buffer where we
13129         show the URL.
13130         (eww-display-html, eww-display-raw): Decode the text correctly,
13131         using the charset found in the headers, and defaulting to UTF-8.
13132         If the user told us to use a specific encoding, override the
13133         charset from the headers.  (Bug#22222)
13135 2015-12-22  Alan Mackenzie  <acm@muc.de>
13137         Fix a coding error in c-forward-<>-arglist-recur.  Fixes bug#22156
13139         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur): Remove unused
13140         variable `tmp'.
13141         After a failed search for a matching ">", restore point before continuing.
13143 2015-12-22  Michael Albinus  <michael.albinus@gmx.de>
13145         Instrument Tramp tests
13147         * test/automated/tramp-tests.el (tramp-test29-vc-registered)
13148         (tramp--test-utf8): Instrument tests.
13150 2015-12-22  Martin Rudalics  <rudalics@gmx.at>
13152         Fix `display-buffer' call in `display-message-or-buffer' (Bug#22221)
13154         * lisp/simple.el (display-message-or-buffer): Call
13155         `display-buffer' with ACTION instead of NOT-THIS-WINDOW
13156         (Bug#22221).
13158 2015-12-22  Juri Linkov  <juri@linkov.net>
13160         * lisp/saveplace.el (toggle-save-place, save-place-to-alist)
13162         (save-places-to-alist, save-place-dired-hook):
13163         Check for dired-subdir-alist.  (Bug#19851)
13165 2015-12-21  Paul Eggert  <eggert@cs.ucla.edu>
13167         Add FIXME comment re stack overflow and modules
13169 2015-12-21  Paul Eggert  <eggert@cs.ucla.edu>
13171         Revert some recent emacs-module commentary
13173         Most of the recently-added commentary was incorrect, due to the
13174         possibility of stack overflow.
13176 2015-12-21  Paul Eggert  <eggert@cs.ucla.edu>
13178         Spelling fix: prefer "cooperate" to "co-operate"
13180 2015-12-21  Paul Eggert  <eggert@cs.ucla.edu>
13182         Port undo fixes to -fno-common
13184         Port recent fix for Bug#21968 to platforms like 'gcc -fno-common'.
13185         * src/keyboard.c, src/keyboard.h (point_before_last_command_or_undo)
13186         (buffer_before_last_command_or_undo):
13187         Declare in keyboard.h, and define in keyboard.c,
13188         instead of assuming the traditional Unix relaxed ref-def linkage.
13190 2015-12-20  Philipp Stephani  <phst@google.com>
13192         Improve commentary for emacs-module.c
13194         * src/lisp.h: Document emacs-module.c assumptions about EQ and NILP.
13195         * src/emacs-module.c (module_non_local_exit_get): Document that we
13196         cannot use the current implementation.
13197         (module_is_not_nil, module_eq): Document assumptions about EQ and
13198         NILP.
13200 2015-12-20  Michael Albinus  <michael.albinus@gmx.de>
13202         Suppress test on Mac OS X
13204         * test/automated/tramp-tests.el (tramp--test-darwin-p): New defun.
13205         (tramp--test-utf8): Use it.
13207 2015-12-20  Alan Mackenzie  <acm@muc.de>
13209         Merge branch 'scratch/follow' into emacs-25
13211         This allows Isearch, etc., to work well when Follow Mode is active.
13213 2015-12-19  Michael Albinus  <michael.albinus@gmx.de>
13215         * lisp/net/tramp-sh.el (tramp-get-ls-command-with-w-option): Improve check.
13217 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13219         Fix last commit
13221         * doc/emacs/rmail.texi (Rmail Deletion): Document new behavior of 'u'
13222         with numeric argument.
13224 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13226         Document new features of Rmail
13228         * doc/emacs/rmail.texi (Rmail Summary Edit, Rmail Deletion):
13229         Document new behavior of 'd' and 'C-d' with numeric argument.
13230         (Rmail Display): Document the rendering of HTML MIME parts.
13232 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13234         Improve documentation of new cl-lib functions
13236         * doc/misc/cl.texi (Predicates on Numbers, Numerical Functions):
13237         Fix wording.
13239 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13241         Document the new feature of 'minibuffer-with-setup-hook'
13243         * lisp/files.el (minibuffer-with-setup-hook): Clarify how FUN is
13244         added to `minibuffer-setup-hook'.
13246 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13248         Document new features of Font Lock
13250         * doc/lispref/modes.texi (Other Font Lock Variables): Document
13251         'font-lock-flush-function' and 'font-lock-ensure-function'.
13252         (Font Lock Basics): Document the basic fontification functions
13253         referenced in "Other Font Lock Variables".
13255         * lisp/font-lock.el (font-lock-flush, font-lock-ensure): Doc fix.
13257 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13259         Document new features of Rectangle mode
13261         * doc/emacs/killing.texi (Rectangles): Document "C-x C-x" in
13262         rectangle-mark-mode.
13264 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13266         Manual followup to last change
13268         * doc/lispref/display.texi (Displaying Messages): Sync with the
13269         doc string.  (Bug#22210)
13271 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13273         Clarify doc string of 'display-message-or-buffer'
13275         * lisp/simple.el (display-message-or-buffer): Doc fix.  Suggested
13276         by Sebastian Wiesner <swiesner@lunaryorn.com>.  (Bug#22210)
13278 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13280         * doc/emacs/emacs.texi (Top): Update top-level menus.
13282         * doc/lispref/elisp.texi (Top): Update top-level menus.
13284 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13286         Document how to avoid file-local variables that aren't
13288         * doc/emacs/custom.texi (Specifying File Variables): Describe how
13289         to prevent Emacs from interpreting unrelated text as file-local
13290         variables.  (Bug#22166)
13292 2015-12-19  Dave Thomas  <dave@pragprog.org>  (tiny change)
13294         Fix a typo in eterm-color's termcap entry
13296         * lisp/term.el (term-termcap-format): Fix a typo in the "ue="
13297         entry.  (Bug#22184)
13299 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
13301         Allow 'browse-url-emacs' visit non-existent URLs
13303         * lisp/url/url-handlers.el (url-insert-file-contents): Don't
13304         signal an error if VISIT is non-nil, to more faithfully emulate
13305         the behavior of 'insert-file-contents'.  (Bug#22160)
13307 2015-12-19  Paul Eggert  <eggert@cs.ucla.edu>
13309         Remove SunOS 4.x cruft
13311         Support for SunOS 4.x was removed in Emacs 23 but some cruft was left behind.
13312         * lib-src/pop.c [sun]: Remove no-longer-needed include.
13313         * lwlib/xlwmenu.c (SUNSO41): Remove.
13315 2015-12-19  Paul Eggert  <eggert@cs.ucla.edu>
13317         Merge from gnulib
13319         This mostly commentary fixes.
13320         * doc/misc/texinfo.tex, lib/intprops.h: Copy from gnulib.
13321         * lib/gnulib.mk: Regenerate with new gnulib-tool.
13323 2015-12-18  Michael Albinus  <michael.albinus@gmx.de>
13325         Minor fixes in Tramp
13327         * lisp/net/tramp-sh.el (tramp-do-file-attributes-with-ls):
13328         Reorder ls arguments.
13330         * lisp/net/tramp.el (tramp-dissect-file-name): Fix docstring.
13332 2015-12-18  Michael Albinus  <michael.albinus@gmx.de>
13334         Make tramp a built-in package
13336         * lisp/finder.el (finder-compile-keywords): Update
13337         `package--builtins' also when Version: keyword is available.
13339         * lisp/net/trampver.el: Add Version: keyword.
13340         (tramp-version): Change it to "2.2.13.25.1", in order to be
13341         compatible with `version-to-list'.
13343 2015-12-18  Lele Gaifax  <lele@metapensiero.it>
13345         * etc/tutorials/TUTORIAL.it: Update and fix typos.
13347 2015-12-18  Alan Mackenzie  <acm@muc.de>
13349         Rename `recenter-group' to `recenter-window-group'
13351         * doc/lispref/windows.texi (Textual Scrolling)
13352         * lisp/window.el (top level, recenter-group)
13353         * lisp/follow.el (follow-mode)
13354         * lisp/isearch.el (isearch-back-into-window): Rename `recenter-group' to
13355         `recenter-window-group' and `recenter-group-function' to
13356         `recenter-window-group-function'.
13358 2015-12-18  Eli Zaretskii  <eliz@gnu.org>
13360         Fix vertical-motion in tabulated-list mode
13362         * src/indent.c (Fvertical_motion): When moving from line beginning
13363         to point under line truncation, assume overshoot by one line only
13364         if point actually lies beyond the window's right margin.
13365         (Bug#22194)
13367 2015-12-18  Martin Rudalics  <rudalics@gmx.at>
13369         Don't have help functions call x-display-pixel-width/-height on ttys
13371         * lisp/help.el (temp-buffer-max-height, temp-buffer-max-width):
13372         Don't call x-display-pixel-width/-height on ttys.
13374 2015-12-18  Dmitry Gutov  <dgutov@yandex.ru>
13376         Use 'hg id' in vc-hg-previous-revision
13378         * lisp/vc/vc-hg.el (vc-hg-previous-revision):
13379         Use 'hg id' to retrieve it (bug#22032).
13381 2015-12-17  Alan Mackenzie  <acm@muc.de>
13383         * lisp/follow.el (follow-sit-for): Remove (it's redundant).
13385 2015-12-17  Eli Zaretskii  <eliz@gnu.org>
13387         Fix a typo in the Emacs manual
13389         * doc/emacs/trouble.texi (Sending Patches): Fix a typo.  Reported
13390         by Lele Gaifax <lele@metapensiero.it>.  (Bug#22193)
13392 2015-12-17  Eli Zaretskii  <eliz@gnu.org>
13394         Fix parsing netrc entries with ports
13396         * lisp/gnus/auth-source.el (auth-source-ensure-strings): Don't
13397         make a list out of 't'.  (Bug#22188)
13399         * test/automated/auth-source-tests.el
13400         (auth-source-test-netrc-parse-entry): New test.
13402 2015-12-17  Paul Eggert  <eggert@cs.ucla.edu>
13404         Fix typo in Doug Lea malloc configure log
13406         * configure.ac (emacs_cv_var_doug_lea_malloc):
13407         Fix typo that confused the log output of 'configure'.
13409 2015-12-16  Nicolas Petton  <nicolas@petton.fr>
13411         * etc/NEWS: Mention the new pcase patterns `seq' and `map'.
13413 2015-12-16  Alan Mackenzie  <acm@muc.de>
13415         * etc/NEWS: Move entry on pcase to correct section
13417         (Accidentally omitted from previous commit)
13419 2015-12-16  Alan Mackenzie  <acm@muc.de>
13421         Add documentation for changes to Show Paren mode.
13423         * lisp/paren.el (show-paren-highlight-openparen): Enhance doc string.
13425         * doc/emacs/programs.texi (Matching): Add descriptions of some pertinent user
13426         options, including the new show-paren-when-point-inside-paren and
13427         show-paren-when-point-in-periphery.
13429         * etc/NEWS (.. Specialized Modes ...): Add an entry for Show Paren mode.
13430         Move an entry on pcase to the Lisp Changes section.
13432 2015-12-16  Eli Zaretskii  <eliz@gnu.org>
13434         Document Eldoc changes
13436         * doc/emacs/programs.texi (Lisp Doc): Document Global Eldoc mode.
13438 2015-12-16  Eli Zaretskii  <eliz@gnu.org>
13440         Fix invocation of Python and Guile interpreters from gdb-mi
13442         * lisp/progmodes/gdb-mi.el (gdb-control-commands-regexp): Add
13443         commands for interactive Python and Guile interpreters.
13444         (gdb-send): Recognize various ways of exiting from Python and
13445         Guile interpreters and returning to GDB.  For details, see
13446         https://lists.gnu.org/r/emacs-devel/2015-12/msg00693.html
13447         and http://stackoverflow.com/questions/31514741.
13449 2015-12-16  Paul Eggert  <eggert@cs.ucla.edu>
13451         Remove attempt to use C11 threads
13453         C11 threads are not needed for Emacs now, and their use is causing
13454         hassles on FreeBSD 10.x.  Problem reported by Ashish SHUKLA in:
13455         https://lists.gnu.org/r/emacs-devel/2015-12/msg00648.html
13456         * configure.ac: Do not check for C11 threads. Remove unnecessary
13457         fiddling with CPPFLAGS when configuring pthreads.
13458         * src/emacs-module.c (main_thread, check_main_thread)
13459         (module_init): Do not worry about C11 threads.
13461 2015-12-15  Michael Albinus  <michael.albinus@gmx.de>
13463         Set utf8 encoding with stty in Tramp
13465         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
13466         Move up uname check.  Handle Mac OS X eol encoding.  Set utf8
13467         encoding with stty.
13469 2015-12-15  Alan Mackenzie  <acm@muc.de>
13471         Tidy up documentation associated with window groups.
13473         * doc/lispref/windows.texi (Basic Windows): Add an @anchor for "Window
13474         Groups".  Correct example function to `window-group-start'.
13475         (Window Start and End, Textual scrolling): Point to the new anchor.  State
13476         that (most of) the args in window group functions have the same meaning as for
13477         the corresponding window primitives.
13479         * doc/lispref/positions.texi (Screen Lines).  Same as above.
13481 2015-12-15  Michael Albinus  <michael.albinus@gmx.de>
13483         Complete last commit
13485         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
13486         Move uname check up.  Handle Mac OS X eol encoding.
13488 2015-12-15  Michael Albinus  <michael.albinus@gmx.de>
13490         Handle Mac OS X eol encoding in Tramp
13492         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
13493         Handle Mac OS X eol encoding.
13495 2015-12-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
13497         Fix variable name typo in compute_tip_xy
13499         * src/w32fns.c (compute_tip_xy):
13500         * src/xfns.c (compute_tip_xy): Modify *root_x instead of *root_y
13501         when `right' is integer.
13503 2015-12-14  foudfou  <foudil.newbie+git@gmail.com>
13505         * lisp/ibuffer.el: Add ability to (un-)mark or delete buffers in the region.
13507 2015-12-14  Tassilo Horn  <tsdh@gnu.org>
13509         Revert "Fix rx matcher overflow without limiting"
13511         This reverts commit fe27e037663d36be3e5741c2ce86ab4ee8017db1.
13513 2015-12-14  Alan Mackenzie  <acm@muc.de>
13515         Ispell: Bind isearch-regexp-function to nil around call to isearch..-new-loop
13517         * lisp/textmodes/ispell.el (ispell-highlight-spelling-error-overlay): bind
13518         isearch-regexp-function to nil around call to isearch-lazy-highligh-new-loop.
13520 2015-12-14  Tassilo Horn  <tsdh@gnu.org>
13522         Fix rx matcher overflow without limiting
13524         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Improve last
13525         change to the regexp without imposing a limit on the length of the
13526         options.
13528 2015-12-14  Alan Mackenzie  <acm@muc.de>
13530         Enhance ispell-skip-region-alist by generating part of it at runtime.
13532         * lisp/textmodes/ispell.el (ispell--\\w-filter, ispell--make-\\w-expression)
13533         (ispell--make-filename-or-URL-re): New functions which generate a regexp.
13534         (ispell-skip-region-alist): Remove the bit that matches a filename/URL, etc.
13535         (ispell-begin-skip-region-regexp, ispell-skip-region-list, ispell-message):
13536         Include the result of ispell--make-filename-or-URL-re in regexps.
13538 2015-12-14  Glenn Morris  <rgm@gnu.org>
13540         * build-aux/gitlog-to-emacslog: Ignore more pointless merge commits.
13542 2015-12-14  Alan Mackenzie  <acm@muc.de>
13544         Replace GROUP argument in six window primitives by new functions.
13546         * doc/lispref/windows.texi (Window Start and End, Textual Scrolling)
13547         * doc/lispref/positions.texi (Screen Lines): Remove optional GROUP argument
13548         from description of six window functions.  Add in description of new functions
13549         window-group-start, window-group-end, set-window-group-start,
13550         pos-visible-in-window-group-p, recenter-group and move-to-window-group-line,
13551         together with the six variables indirecting to the pertinent group
13552         functions.
13554         * src/window.c
13555         * src/keyboard.c: Revert the commit from 2015-11-11 12:02:48, in so far as it
13556         applies to these two files, which added the GROUP argument to six window
13557         primitives.
13559         * lisp/follow.el (follow-mode): Use updated variable names for the indirected
13560         functions.
13562         * lisp/isearch.el (isearch-update, isearch-done, isearch-string-out-of-window)
13563         (isearch-back-into-window, isearch-lazy-highlight-new-loop)
13564         (isearch-lazy-highlight-search, isearch-lazy-highlight-update): Replace calls
13565         to window primitives (e.g. window-start) with a GROUP argument by calls to
13566         new functions (e.g. window-group-start).
13568         * lisp/textmodes/ispell.el (ispell-command-loop): Replace call to
13569         pos-visible-in-window-p with pos-visible-in-window-group-p.
13571         * lisp/window.el (window-group-start, window-group-end)
13572         (set-window-group-start, recenter-group, pos-visible-in-window-group-p)
13573         (selected-window-group, move-to-window-group-line): New functions.
13574         (window-group-start-function, window-group-end-function)
13575         (set-window-group-start-function, recenter-group-function)
13576         (pos-visible-in-window-group-p-function, selected-window-group-function)
13577         (move-to-window-group-line-function): New variables.
13579 2015-12-14  Vitorio Miguel  <vdrbandeiras@gmail.com>  (tiny change)
13581         * etc/tutorials/TUTORIAL.pt_BR: Fix a typo.  (Bug#22165)
13583 2015-12-13  Tassilo Horn  <tsdh@gnu.org>
13585         Improve regex to not trigger stack overflow
13587         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Improve regex in
13588         order not to trigger a stack overflow in regex matcher with unbalanced
13589         brackets (bug#22146).
13591 2015-12-13  Eli Zaretskii  <eliz@gnu.org>
13593         Fix visiting files with raw-text
13595         * src/fileio.c (Finsert_file_contents): Fix setting buffer unibyte
13596         when some stuff was actually read.  (Bug#22162)
13598 2015-12-13  Tassilo Horn  <tsdh@gnu.org>
13600         Fix regex matching keyval labels
13602         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Fix regexp
13603         matching keyval labels.
13605 2015-12-13  Michael Albinus  <michael.albinus@gmx.de>
13607         * lisp/ido.el (ido-file-name-all-completions-1): Do not raise an error
13609         ... in case of Tramp.  (Bug#20821)
13611 2015-12-13  Paul Eggert  <eggert@cs.ucla.edu>
13613         Fix performance regression with gcc -O0
13615         This fixes the smaller performance hit that I noted in:
13616         https://lists.gnu.org/r/emacs-devel/2015-12/msg00357.html
13617         * src/alloc.c (macro_XPNTR_OR_SYMBOL_OFFSET, macro_XPNTR):
13618         * src/puresize.h (puresize_h_PURE_P)
13619         (puresize_h_CHECK_IMPURE):
13620         New macros, with the old contents of the functions.
13621         * src/alloc.c (XPNTR_OR_SYMBOL_OFFSET, XPNTR):
13622         * src/puresize.h (PURE_P, CHECK_IMPURE):
13623         Use the new macros.  Also macros, if DEFINE_KEY_OPS_AS_MACROS.
13624         * src/conf_post.h (ATTRIBUTE_UNUSED):
13625         * src/lisp.h (DEFINE_KEY_OPS_AS_MACROS): New macros.
13627 2015-12-12  Artur Malabarba  <bruce.connor.am@gmail.com>
13629         * lisp/emacs-lisp/package.el (package-unpack): Security check
13631         Check that we received the package we were offered.
13633 2015-12-12  Artur Malabarba  <bruce.connor.am@gmail.com>
13635         * lisp/emacs-lisp/package.el (package--compile): Don't activate
13637         `package-unpack' takes care of all activations now (other than
13638         `package-initialize).  `package--compile' now only compiles.
13640 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
13642         Document the new bindings of <UP> and <DOWN> in the minibuffer
13644         * doc/emacs/mini.texi (Minibuffer History): Describe the new
13645         bindings of <UP> and <DOWN> in the minibuffer.
13647 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
13649         Document new features of Ido
13651         * doc/misc/ido.texi (Misc): Document 'C-S-b'.
13653 2015-12-12  Martin Rudalics  <rudalics@gmx.at>
13655         Fix frame height calculations with added menu bar on Windows (Bug#22105)
13657         * doc/lispref/frames.texi (Parameter Access): Mention pitfalls
13658         when simultaneously specifying multiple parameters for
13659         `modify-frame-parameters' that all may change the frame's size.
13660         * src/w32fns.c (x_set_menu_bar_lines): Don't set
13661         windows_or_buffers_changed here.
13662         (my_create_tip_window, Fx_show_tip): Call AdjustWindowRect
13663         with third argument false.
13664         * src/w32menu.c (set_frame_menubar): Set
13665         windows_or_buffers_changed here.
13666         * src/w32term.c (x_set_window_size): Determine third argument of
13667         AdjustWindowRect from whether the frame has a menu bar and not
13668         from whether it wants one.
13670 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
13672         Document the change in interactive shell mode
13674         * doc/emacs/misc.texi (Interactive Shell): Document that the
13675         '*shell*' buffer by default displays in a new window.
13677 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
13679         Document new features of package.el
13681         * doc/emacs/package.texi (Package Menu): Document the 'external'
13682         status and the new menu commands.
13683         (Package Installation): Document archive priorities.
13685         * lisp/emacs-lisp/package.el (package-archive-priorities): Doc fix.
13686         (package-menu-hide-low-priority): Doc fix.
13688 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
13690         Update and document new features of xterm support
13692         * doc/emacs/frames.texi (Text-Only Mouse): Document that
13693         track-mouse is supported by newer xterm versions.
13695 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
13697         Document new features of Prettify Mode
13699         * doc/emacs/programs.texi (Misc for Programs): Document
13700         'prettify-symbols-compose-predicate' and
13701         'prettify-symbols-unprettify-at-point'.
13703         * lisp/progmodes/prog-mode.el (prettify-symbols-alist)
13704         (prettify-symbols-default-compose-p)
13705         (prettify-symbols-compose-predicate)
13706         (prettify-symbols--compose-symbol): Doc fixes.
13708 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
13710         Document multi-mode indentation facilities
13712         * doc/lispref/text.texi (Mode-Specific Indent): Document
13713         'prog-indentation-context', 'prog-first-column', and 'prog-widen'.
13715         * lisp/progmodes/prog-mode.el (prog-indentation-context)
13716         (prog-widen): Doc fixes.
13718 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
13720         Document 'vc-refresh-state'
13722         * doc/emacs/maintaining.texi (Version Control): Document
13723         'vc-refresh-state'.
13725         * lisp/vc/vc-hooks.el (vc-refresh-state): Doc fix.
13727 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
13729         Fix echo for "C-u"
13731         * src/keyboard.c (command_loop_1): Undo last change.  It caused
13732         duplicate echo of C-u.  (Bug#22107)
13734 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
13736         Avoid errors when creating files under SVN in new directory
13738         * lisp/vc/vc-svn.el (vc-svn-registered): Use
13739         file-accessible-directory-p, to avoid cd'ing to a non-existing
13740         directory, which signals an error on some systems.  (Bug#21984)
13741         (vc-svn-checkin): Call log-edit-extract-headers with 2 arguments.
13742         Use declare-function to avoid byte-compiler warnings.
13744 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
13746         Improve Lua support in etags
13748         * lib-src/etags.c (Lua_functions): Skip spaces before looking for
13749         "function".
13751         * etc/NEWS: Mention improved Lua support by 'etags'.
13753         * test/etags/lua-src/test.lua (test): Add tests for indented
13754         function definitions.
13755         * test/etags/ETAGS.good_1:
13756         * test/etags/ETAGS.good_2:
13757         * test/etags/ETAGS.good_3:
13758         * test/etags/ETAGS.good_4:
13759         * test/etags/ETAGS.good_5:
13760         * test/etags/ETAGS.good_6:
13761         * test/etags/CTAGS.good: Adapt to the modified Lua tests.
13763 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
13765         Fix 'this-command-keys' wrt prefix argument
13767         * src/keyboard.c (command_loop_1): Restore the feature whereby C-u
13768         was part of this-command-keys, but not of this-single-command-keys.
13769         (Bug#22107)
13771         * lisp/simple.el (internal-echo-keystrokes-prefix): Add
13772         commentary about the function's return value.
13774 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
13776         * lisp/files.el (load-library): Doc fix.  (Bug#22140)
13778 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
13780         Improve and document Ruby support in 'etags'
13782         * lib-src/etags.c (Ruby_suffixes): Add ".ruby".
13783         (Ruby_functions): Support "module" and overloaded operators.
13784         (Ruby_help): Mention "module".
13786         * test/etags/ruby-src/test.rb:
13787         * test/etags/ruby-src/test1.ru: New files.
13788         * test/etags/Makefile (RBSRC): New tests.
13789         (SRCS): Add ${RBSRC}.
13790         * test/etags/ETAGS.good_1:
13791         * test/etags/ETAGS.good_2:
13792         * test/etags/ETAGS.good_3:
13793         * test/etags/ETAGS.good_4:
13794         * test/etags/ETAGS.good_5:
13795         * test/etags/ETAGS.good_6:
13796         * test/etags/CTAGS.good: Adapt to the new Ruby tests.
13798         * doc/man/etags.1: Mention Ruby support.
13799         * etc/NEWS: Mention Ruby support.
13801 2015-12-11  Xi Lu  <lx@shellcodes.org>
13803         Initial support for Ruby in 'etags'
13805         * lib-src/etags.c <Ruby_suffixes>: New variable.
13806         (lang_names): Add an entry for Ruby.
13807         (Ruby_functions): New function.  (Bug#22116)
13809 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
13811         Clarify documentation of 'modify-frame-parameters'
13813         * doc/lispref/frames.texi (Parameter Access): Clarify what "ignored
13814         PARMs" mean for 'modify-frame-parameters'.
13816         * src/frame.c (Fmodify_frame_parameters): Clarify what "ignored
13817         PARMs" mean for this function.  (Bug#22104)
13819 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
13821         Fix setting buffer unibyte when reading from a device
13823         * src/fileio.c (Finsert_file_contents): Call Fset_buffer_multibyte
13824         to make a (possibly non-empty) buffer unibyte.  (Bug#22096)
13826 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
13828         Clarify documentation of 'values'
13830         * doc/lispref/eval.texi (Eval): Clarify that 'values' are not
13831         updated by any evaluation commands in 'lisp-interaction-mode'.
13832         (Bug#22056)
13834 2015-12-11  Anders Lindgren  <andlind@gmail.com>
13836         Fixed subversion vc error when opening file in new directory (bug#21984).
13838         * lisp/vc/vc-svn.el (vc-svn-registered): Check if directory exists.
13840 2015-12-09  Eli Zaretskii  <eliz@gnu.org>
13842         Yet another fix for when point ends up in invisible text
13844         * src/xdisp.c (redisplay_window): When someone forced
13845         window-start, and honoring that failed to show the cursor, try
13846         moving out of invisible text, before falling back to the middle of
13847         the window.  (Bug#22098)
13849 2015-12-09  Michael Albinus  <michael.albinus@gmx.de>
13851         Fix error in Tramp perl script for cygwin
13853         * lisp/net/tramp-sh.el (tramp-perl-file-truename): Do not raise an
13854         error if file doesn't exist.
13856 2015-12-09  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
13858         Remove font workaround for limited outdated versions
13860         * src/macfont.m (mac_font_descriptor_get_adjusted_weight): Remove
13861         workaround for HiraginoSans-W7 on OS X 10.11 and 10.11.1.
13863 2015-12-09  Anders Lindgren  <andlind@gmail.com>
13865         Don't add "." to load path (bug#21104)
13867         When configured with --enable-locallisppath=no, which is the
13868         default for OS X, the load-path incorrectly was populated with ".".
13870         * src/lread.c (init_lread): Don't call `decode_env_path' when
13871         PATH_SITELOADSEARCH is empty.
13873 2015-12-08  Artur Malabarba  <bruce.connor.am@gmail.com>
13875         * lisp/emacs-lisp/package.el (package--with-response-buffer):
13877         Search for the blank-line in the right buffer.
13879 2015-12-08  Glenn Morris  <rgm@gnu.org>
13881         * test/automated/simple-test.el (undo-auto-boundary-timer): Update
13882         for recent change.
13884 2015-12-08  Glenn Morris  <rgm@gnu.org>
13886         Fix some display-warning usage.
13888         * lisp/files.el (hack-local-variables, hack-dir-local-variables):
13889         * lisp/calendar/diary-lib.el (diary-include-files, diary-sexp-entry):
13890         * lisp/calendar/holidays.el (calendar-holiday-list):
13891         * lisp/mail/rmailout.el (rmail-output-read-file-name):
13892         Fix display-warning usage.
13894 2015-12-08  Glenn Morris  <rgm@gnu.org>
13896         * lisp/calendar/cal-html.el: Require diary-lib.
13898         (cal-html-list-diary-entries): Handle no diary.  (Bug#21994)
13900 2015-12-08  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
13902         Add Obsolete-since header to eudcb-ph.el
13904         * lisp/obsolete/eudcb-ph.el: Add Obsolete-since header.
13906 2015-12-07  Paul Eggert  <eggert@cs.ucla.edu>
13908         Spelling fixes
13910         * doc/misc/calc.texi (Predefined Units): Use the bland modern
13911         scientific style for spelling the units “ampere” and
13912         “angstrom” rather than the older style “Ampere” and
13913         “Ångstrom”.  The latter spelling was wrong anyway (it should
13914         have been “Ångström”).
13915         * lisp/emacs-lisp/ert.el (ert--explain-equal-rec):
13916         Fix misspelling of ‘atom’ in code.
13918 2015-12-07  Eli Zaretskii  <eliz@gnu.org>
13920         Improve documentation of kill commands
13922         * lisp/simple.el (region-extract-function, delete-backward-char)
13923         (delete-forward-char, kill-region, copy-region-as-kill)
13924         (kill-ring-save): Better document the optional argument REGION in
13925         the doc strings.  Mention in the doc strings that text put in the
13926         kill-ring can be filtered by 'filter-buffer-substring'.
13928         * doc/lispref/text.texi (Kill Functions): Mention that functions
13929         described in this subsection can filter text they put in the
13930         kill-ring.  Add a cross-reference to "Buffer Contents" and an
13931         index entry.  Document the optional argument 'region' and its
13932         effect.
13933         (Bug#21315)
13935 2015-12-07  Alan Mackenzie  <acm@muc.de>
13937         Further progress making Isearch, Ispell, Replace work with Follow Mode.
13939         * lisp/follow.el: (follow-mode): Remove references to sit*-for-function, which
13940         no longer exists.  Add follow-post-command-hook to  three special purpose
13941         hooks at setup, and remove them at tear down.
13943         * lisp/isearch.el: (isearch-update): invoke isearch-update-post-hook before
13944         isearch-lazy-highlight-new-loop.
13945         (isearch-lazy-highlight-new-loop): Restore this function to what it previously
13946         was, merging the functionality of isearch-lazy-highlight-maybe-new-loop into
13947         it.
13948         (isearch-lazy-highlight-maybe-new-loop): function removed.
13950         * lisp/replace.el: (replace-update-post-hook): New hook variable.
13951         (perform-replace): Add second (nil) argument to looking-back.  Invoke
13952         replace-update-post-hook before calling replace-highlight.
13954         * lisp/textmodes/ispell.el: (ispell-update-post-hook): New hook variable.
13955         (ispell-command-loop): invoke ispell-update-post-hook.  Add GROUP argument to
13956         call of pos-visible-in-window-p.
13957         (ispell-display-buffer): Place *Choices* window at the top of the last window
13958         in a window group.
13960 2015-12-07  Alan Mackenzie  <acm@muc.de>
13962         Amend doc of `mapconcat': it can take sequences, not merely strings.
13964         * doc/lispref/functions.texi (Mapping Functions): Amend the doc of `mapconcat'
13965         to say that SEPARATOR and the results from FUNCTION may be any character
13966         sequences, not just strings.  Add an @xref to "Sequences Arrays Vectors".
13968 2015-12-07  Michael Albinus  <michael.albinus@gmx.de>
13970         Fix an utf8 problem for Tramp on BSD
13972         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
13973         Make lax check for utf8.
13974         (tramp-get-remote-locale): Add "en_US.UTF-8" as candidate.
13976 2015-12-07  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
13978         Make eudcb-ph.el obsolete
13980         * doc/misc/eudc.texi: Bump version to 1.40.0.
13981         Remove PH/QI sections and mentions.
13982         * lisp/obsolete/eudcb-ph.el: Make obsolete.
13983         * lisp/net/eudc-vars.el (eudc-known-protocols): Remove ph.
13984         (eudc-ph-bbdb-conversion-alist): Make obsolete.
13985         * etc/NEWS: Mention this.  (Bug#21191)
13987 2015-12-07  Paul Eggert  <eggert@cs.ucla.edu>
13989         Remove overenthusiastic eassert
13991         * src/lisp.h (XSYMBOL): Remove eassert incorrectly added in
13992         previous change.  It breaks on MS-Windows --with-wide-int.
13993         Problem reported by Eli Zaretskii in:
13994         https://lists.gnu.org/r/emacs-devel/2015-12/msg00275.html
13996 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
13998         Pacify gcc -Wparentheses
14000         * src/xdisp.c (row_containing_pos): Reparenthesize.
14002 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
14004         Port mod-test to 32-bit Emacs --without-wide-int
14006         * modules/mod-test/test.el (mod-test-sum-test):
14007         Bring back the 2**29 tests, but port them to 32-bit Emacs
14008         --without-wide-int.
14010 2015-12-06  Michael Albinus  <michael.albinus@gmx.de>
14012         Fix minor Tramp problems found on BSD
14014         * lisp/net/tramp-sh.el (tramp-perl-file-truename): Do not append
14015         trailing slash.  Quote apostrophes.
14016         (tramp-sh-handle-file-truename): Do not append trailing slash in
14017         the "ls" case.
14018         (tramp-get-ls-command-with-w-option): New defun.
14019         (tramp-do-file-attributes-with-ls)
14020         (tramp-do-directory-files-and-attributes-with-stat): Use it.
14022         * test/automated/tramp-tests.el
14023         (tramp-test31-special-characters-with-perl)
14024         (tramp-test31-special-characters-with-ls)
14025         (tramp-test32-utf8-with-perl, tramp-test32-utf8-with-ls):
14026         Suppress also readlink.
14028 2015-12-06  Eli Zaretskii  <eliz@gnu.org>
14030         Fix cursor display when invisible text is at line beginning
14032         * src/xdisp.c (redisplay_window): When scrolling fails to show
14033         point, prefer using the desired matrix if possible for finding the
14034         fallback glyph row for displaying the cursor.  (Bug#22098)
14035         (row_containing_pos): Exit the loop as soon as we hit the first
14036         disabled glyph row.  Otherwise we risk accessing garbled data and
14037         departing to the no-no land.
14039 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
14041         Improve module interface when WIDE_EMACS_INT
14043         * src/emacs-module.c (plain_values): New constant.
14044         (module_nil): Now a constant.
14045         (Finternal_module_call, value_to_lisp_bits, lisp_to_value_bits)
14046         (syms_of_module): Use if, not #ifdef, so that both sides are
14047         checked at compile-time, and so that GCC doesn’t complain
14048         about an unused var in the typical case.  Also, depend on
14049         plain_values, not on WIDE_EMACS_INT; the code shouldn’t assume
14050         that WIDE_EMACS_INT implies !USE_LSB_TAG.
14051         (value_to_lisp_bits, lisp_to_value_bits): New functions.
14052         Sign-extend integers rather than zero-extending them, as small
14053         negative integers are more likely.
14054         (value_to_lisp, lisp_to_value): Rewrite in terms of the new *_bits
14055         functions.
14056         (HAVE_STRUCT_ATTRIBUTE_ALIGNED): Define to 0 if not already defined.
14057         (mark_modules): Remove.  All uses removed.
14058         (lisp_to_value): Don’t assume Fcons returns a pointer aligned
14059         to GCALIGNMENT.
14060         (syms_of_module): Check that module_nil converts to Qnil.
14061         * src/lisp.h (lisp_h_XSYMBOL, XSYMBOL): Use signed conversion, since
14062         we prefer signed to unsigned when either will do.
14063         (TAG_PTR): Sign-extend pointers when USE_LSB_TAG, as this is
14064         a bit better for emacs-module.c.
14066 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
14068         Port mod-test to x86-64 GNU/Linux running 32-bit
14070         * modules/mod-test/test.el (mod-test-sum-test):
14071         Don’t attempt to match descriptions to operating systems.
14072         It didn’t work on Fedora x86-64 running a 32-bit executable,
14073         and it’s not worth the trouble anyway.
14074         Port to 32-bit platforms by removing an assumption about
14075         fixnum widths.
14077 2015-12-06  Michael Albinus  <michael.albinus@gmx.de>
14079         Fix auto-revert-tests.el when filenotify isn't used
14081         * test/automated/auto-revert-tests.el (auto-revert--wait-for-revert):
14082         Make it working also when filenotify isn't used.
14084 2015-12-06  Juri Linkov  <juri@linkov.net>
14086         * lisp/textmodes/ispell.el (ispell-highlight-spelling-error-overlay):
14088         Let-bind isearch-regexp-function to nil.  (Bug#22097)
14090 2015-12-05  Artur Malabarba  <bruce.connor.am@gmail.com>
14092         * lisp/emacs-lisp/package.el: Don't install bad signatures (bug#22089)
14094         (package--with-response-buffer): NOERROR and ERROR-FORM only
14095         handle connection errors.
14096         (bad-signature): New error type.
14097         (package--check-signature-content): Use it.
14098         (package--check-signature): Properly distinguish connection errors
14099         from bad-signature errors.  Do the check for
14100         `package-check-signature' `allow-unsigned' here instead of forcing
14101         the callbacks to do it.  Add a new argument, UNWIND.
14102         (package--download-one-archive, package-install-from-archive):
14103         Update usage of `package--check-signature'.
14105 2015-12-05  Ulf Jasper  <ulf.jasper@web.de>
14107         Fix Bug#22092.
14109         * lisp/calendar/icalendar.el (icalendar--get-unfolded-buffer):
14110           Clean up inconsistent line endings. (Bug#22092)
14111           (icalendar--clean-up-line-endings): New.
14112         * test/automated/icalendar-tests.el (icalendar-real-world): Add test
14113           for Bug#22092.
14115 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
14117         Document 'bookmark-set-no-overwrite'
14119         * doc/emacs/regs.texi (Bookmarks): Document the new command
14120         'bookmark-set-no-overwrite' and its keybinding.
14122 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
14124         Document new binding of 'mouse-buffer-menu'
14126         * doc/emacs/buffers.texi (Buffer Menus): 'mouse-buffer-menu' is
14127         now also on C-F10.
14129 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
14131         Initial documentation of dynamic modules
14133         * doc/lispref/loading.texi (Dynamic Modules): New section with
14134         initial documentation for dynamic modules.
14135         * doc/lispref/elisp.texi (Top): Add "Dynamic Modules" to the
14136         detailed menu
14138         * etc/NEWS: Fix typos in dynamic modules' entry.
14140 2015-12-05  Artur Malabarba  <bruce.connor.am@gmail.com>
14142         Remove copyright statements from trivial test files
14144 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
14146         Add "Preliminaries" section to etc/DEBUG
14148         * etc/DEBUG: Add the "Preliminaries" section for GDB beginners.
14149         Most of the content was suggested by Phillip Lord
14150         <phillip.lord@russet.org.uk>.  Remove the section about debugging
14151         with the Visual Studio, as building Emacs with the Microsoft
14152         compilers is no longer supported.  Minor fixes in some other
14153         sections.
14155 2015-12-05  Alex Dunn  <dunn.alex@gmail.com>  (tiny change)
14157         Improve parsing of version strings
14159         * lisp/subr.el (version-regexp-alist): Allow "." as priority separator
14160         (version-to-list): More helpful error messages.
14161         (version-to-list): ".5" is valid (update docstring).  Make
14162         "22.8X3" invalid, as the doc string says.
14164         * test/automated/subr-tests.el (ert-test-version-parsing): New
14165         tests for version string processing.
14167 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
14169         Fix documentation of 'undo' changes
14171         * doc/lispref/text.texi (Undo): Minor wording changes.  Use US
14172         English conventions for spelling and whitespace between sentences.
14174         * etc/NEWS: Fix wording and spelling of undo-related entries.
14175         Mark them as documented.
14177 2015-12-05  Glenn Morris  <rgm@gnu.org>
14179         * lisp/net/net-utils.el: Small improvements.
14181         (net-utils--executable-find-sbin): New function.
14182         (ifconfig-program): Check sbin directories.
14183         Fallback to "ip".  (Bug#22091)
14184         (ifconfig-program-options): Check the actual program in use.
14185         (arp-program): Check sbin directories.
14187 2015-12-04  Arash Esbati  <esbati@gmx.de>  (tiny change)
14189         Fix wrong-type-argument integer-or-marker-p nil error
14191         * lisp/textmodes/reftex-auc.el (reftex-what-index-tag):
14192         Fix (wrong-type-argument integer-or-marker-p nil) error (bug#22077).
14194 2015-12-04  Alan Mackenzie  <acm@muc.de>
14196         lisp/isearch.el: Eliminate macro isearch-call-message, replacing with funcall.
14198 2015-12-04  Alan Mackenzie  <acm@muc.de>
14200         First commit to scratch/follow.  Make Isearch work with Follow Mode, etc.
14202         doc/lispref/window.texi (Basic Windows): Add paragraph defining "Group of
14203         Windows" and new @defun selected-window-group.
14204         (Window Start and End): Describe new &optional parameter GROUP and
14205         ...-group-function for window-start, window-end, set-window-start, and
14206         pos-visible-in-window-p.
14207         (Textual Scrolling) Describe the same for recenter.
14208         doc/lispref/positions.texi (Screen Lines): Describe the same for
14209         move-to-window-line.
14211         src/window.c (Fwindow_start, Fwindow_end, Fset_window_start)
14212         (Fpos_visible_in_window_p, Frecenter, Fmove_to_window_line): To each, add ar
14213         new optional parameter "group".  At the beginning of each, check whether the
14214         corresponding ...-group-function is set to a function, and if so execute this
14215         function in place of the normal processing.
14216         (syms_of_window): Define symbols for the six new variables below.
14217         (window-start-group-function, window-end-group-function)
14218         (set-window-start-group-function, recenter-group-function)
14219         (pos-visible-in-window-p-group-function, move-to-window-line-group-function):
14220         New permanent local buffer local variables.
14221         src/keyboard.c (Fposn_at_point): Add extra parameter in call to
14222         Fpos_visible_in_window_p.
14224         lisp/window.el (selected-window-group-function): New permanent local buffer
14225         local variable.
14226         (selected-window-group): New function.
14228         lisp/follow.el (follow-mode): Set the ...-group-function variables at mode
14229         enable, kill them at mode disable.  Add/remove follow-after-change to/from
14230         after-change-functions.
14231         (follow-start-end-invalid): New variable.
14232         (follow-redisplay): Manipulate follow-start-end-invalid.
14233         (follow-after-change, follow-window-start, follow-window-end)
14234         (follow-set-window-start, follow-pos-visible-in-window-p)
14235         (follow-move-to-window-line, follow-sit-for): New functions.
14237         lisp/isearch.el (isearch-call-message): New macro.
14238         (isearch-update, with-isearch-suspended, isearch-del-char)
14239         (isearch-search-and-update, isearch-ring-adjust): Invoke above new macro.
14240         (with-isearch-suspended): Rearrange code such that isearch-call-message is
14241         invoked before point is moved.
14242         (isearch-message): Add comment about where point must be at function call.
14243         (isearch-search): Remove call to isearch-message.
14244         (isearch-lazy-highlight-window-group): New variable.
14245         (isearch-lazy-highlight-new-loop): Unconditionally start idle timer.  Move
14246         the battery of tests to ...
14247         (isearch-lazy-highlight-maybe-new-loop): New function, started by idle timer.
14248         Note: (sit-for 0) is still called.
14249         (isearch-lazy-highlight-update): Check membership of
14250         isearch-lazy-highlight-window-group.  Don't set the `window' overlay
14251         property.
14252         (isearch-update, isearch-done, isearch-string-out-of-window)
14253         (isearch-back-into-window, isearch-lazy-highlight-maybe-new-loop)
14254         (isearch-lazy-highlight-search, isearch-lazy-highlight-update)
14255         (isearch-lazy-highlight-update): Call the six amended primitives (see
14256         src/window.c above) with the new `group' argument set to t, to cooperate
14257         with Follow Mode.
14259 2015-12-04  Stefan Monnier  <monnier@iro.umontreal.ca>
14261         * lisp/emacs-lisp/ert.el: Prefer pcase over cl-typecase
14263         * lisp/emacs-lisp/ert.el (ert--should-error-handle-error)
14264         (ert--explain-format-atom, ert--explain-equal-rec)
14265         (ert--print-backtrace, ert-test-result-type-p, ert-select-tests)
14266         (ert--insert-human-readable-selector): Prefer pcase over cl-typecase.
14268 2015-12-04  Artur Malabarba  <bruce.connor.am@gmail.com>
14270         * lisp/character-fold.el: Remove special case-folding support
14272         (character-fold-to-regexp): Remove special code for
14273         case-folding.  Char-fold search still respects the
14274         `case-fold-search' variable (i.e., f matches F).  This only
14275         removes the code that was added to ensure that f also matched
14276         all chars that F matched.  For instance, after this commit, f
14277         no longer matches 𝔽.
14279         This was necessary because the logic created a regexp with
14280         2^(length of the string) redundant paths.  So, when a very
14281         long string "almost" matched, Emacs took a very long time to
14282         figure out that it didn't.  This became particularly relevant
14283         because isearch's lazy-highlight does a search bounded by (1-
14284         match-end) (which, in most circumstances, is a search that
14285         almost matches).  A recipe for this can be found in bug#22090.
14287 2015-12-04  Stefan Monnier  <monnier@iro.umontreal.ca>
14289         * lisp/emacs-lisp/cl-macs.el (character): Can't be negative
14291         Fixes (bug#21701)
14293 2015-12-04  Daiki Ueno  <ueno@gnu.org>
14295         lisp/gnus/qp.el: Don't replace "from " at bol
14297         * lisp/gnus/qp.el (quoted-printable-encode-region): Bind `case-fold-search'
14298         to nil when looking for "^From ".  Problem reported by Simon Josefsson.
14300 2015-12-03  Phillip Lord  <phillip.lord@russet.org.uk>
14302         Externalize some symbols in undo-auto
14304          * doc/lispref/text.texi: Update symbols.
14305          * lisp/simple.el (undo-auto--amalgamate,
14306            undo-auto--current-boundary-timer): Make symbols public.
14307          * src/cmds.c (Fself_insert_command,Fdelete_char): Call
14308            updated symbol.
14310 2015-12-03  Stefan Monnier  <monnier@iro.umontreal.ca>
14312         * lisp/emacs-lisp/smie.el (smie-next-sexp): Fix BOB "token"
14314 2015-12-03  Michael Albinus  <michael.albinus@gmx.de>
14316         Some error message improvements in tramp-sh.el
14318         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
14319         Suppress error messages for "mesg" and "biff" calls.
14320         (tramp-get-remote-path): Ignore errors when expanding
14321         `tramp-own-remote-path'.  Raise a warning instead.
14323 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
14325         Document 'nacl' value for 'system-type'
14327         * doc/lispref/os.texi (System Environment): Document the 'nacl'
14328         value of 'system-type'.
14330 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
14332         Document 'window-max-chars-per-line'
14334         * doc/lispref/windows.texi (Window Sizes): Document
14335         'window-max-chars-per-line'.
14337 2015-12-03  Artur Malabarba  <bruce.connor.am@gmail.com>
14339         Fix some file headers for the purpose of `package--builtins'
14341         * lisp/emacs-lisp/cl-preloaded.el
14342         * lisp/emacs-lisp/eieio-compat.el
14343         * lisp/net/sasl-scram-rfc.el: Add a "Package:" header
14345         * lisp/ielm.el: Fix summary line.
14347 2015-12-03  Artur Malabarba  <bruce.connor.am@gmail.com>
14349         * lisp/emacs-lisp/package.el (package-unpack): Load before compiling
14351         Reload any previously loaded package files before compiling
14352         the package (also reload the same files after compiling).
14353         This ensures that we have the most recent definitions during
14354         compilation, and avoids generating bad elc files when a macro
14355         changes and it is used in a different file from the one it's
14356         defined in.
14358 2015-12-03  Artur Malabarba  <bruce.connor.am@gmail.com>
14360         * lisp/emacs-lisp/package.el: Refactor package activation code
14362         (package-activate): Move code that activates dependencies into
14363         package-activate-1.
14364         (package--load-files-for-activation): New function.
14365         (package-activate-1): Add code for (optionally) activating
14366         dependencies, and move file-loading code into
14367         `package--load-files-for-activation'.
14369 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
14371         Document new font-related functionality
14373         * doc/lispref/display.texi (Low-Level Font): Document
14374         'default-font-width', 'default-font-height', 'window-font-width',
14375         and 'window-font-height'.
14377         * etc/NEWS: Move entries for 'default-font-width',
14378         'default-font-height', 'window-font-width', and 'window-font-height'
14379         to their place and mark them documented.
14381 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
14383         Fix documentation and implementation of 'directory-name-p'
14385         * lisp/files.el (directory-name-p): Modify to recognize
14386         backslashes on MS-Windows and MS-DOS.  Adjust the doc string
14387         accordingly.  Use '=', not char-equal, for comparison, as
14388         letter-case cannot possibly be an issue here.
14390         * doc/lispref/files.texi (Directory Names): Move the documentation
14391         of directory-name-p here from "Relative File Names".  Update the
14392         description per the changes in implementation.
14394         * etc/NEWS: Move the entry for 'directory-name-p' to its proper
14395         place and mark it documented.
14397 2015-12-02  Eli Zaretskii  <eliz@gnu.org>
14399         Minor copyedit in Emacs manual
14401         * doc/emacs/search.texi (Lax Search): Make wording about character
14402         folding by default less definitive.  (Bug#22043)
14404 2015-12-02  Eli Zaretskii  <eliz@gnu.org>
14406         More emacs-module.c fixes for wide ints
14408         * src/emacs-module.c (value_to_lisp) [WIDE_EMACS_INT]: Use
14409         unsigned data types to manipulate pointers, to avoid sign
14410         extension coming after us with a vengeance.
14412         * modules/mod-test/test.el (mod-test-sum-test): Add tests for
14413         Emacs with wide ints that verify integer values near the critical
14414         value that requires us to switch to a cons cell.
14416 2015-12-02  Stephen Leake  <stephen_leake@stephe-leake.org>
14418         Fix bug#22069 in cl-generic.el
14420         * lisp/emacs-lisp/cl-generic.el (cl-no-method): Remove %S; this string is
14421         not run thru `format'.
14423 2015-12-02  Dmitry Gutov  <dgutov@yandex.ru>
14425         APPEND etags--xref-backend to xref-backend-functions
14427         * lisp/progmodes/xref.el (xref-backend-functions):
14428         Use APPEND when adding the default element
14429         (https://lists.gnu.org/r/emacs-devel/2015-12/msg00061.html).
14431 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
14433         More accurate documentation of lax whitespace matching
14435         * lisp/isearch.el (isearch-forward-word, isearch-forward-symbol)
14436         (word-search-backward, word-search-forward)
14437         (word-search-backward-lax, word-search-forward-lax): Mention in
14438         doc strings that toggling lax whitespace matching has no effect on
14439         these commands.
14441         * doc/emacs/search.texi (Word Search, Symbol Search): Clarify that
14442         lax whitespace matching has no effect on these commands.
14444 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
14446         Fix emacs-module.c for wide ints
14448         * src/emacs-module.c (lisp_to_value): Compare the produced value
14449         with the original Lisp object, not with the one potentially
14450         converted into a Lisp_Cons.  Fixes assertion violations when
14451         working with integers larger than fit into a 32-bit value.
14453         * modules/mod-test/test.el (mod-test-sum-test): Add tests for
14454         large integers, to test --with-wide-int.
14456 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
14458         Document 'directory-files-recursively'
14460         * lisp/files.el (directory-files-recursively): Doc fix.  Rename
14461         the argument MATCH to REGEXP, to be more explicit about its form.
14463         * doc/lispref/files.texi (Contents of Directories): Improve the
14464         documentation of 'directory-files-recursively'.  Add
14465         cross-references.
14467         * etc/NEWS: Move the entry for 'directory-files-recursively' to
14468         its place and mark it documented.
14470 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
14472         Document 'inhibit-read-only' property
14474         * doc/lispref/text.texi (Special Properties): Describe the new
14475         'inhibit-read-only' text property.  Add cross-reference to where
14476         read-only buffers are described.
14477         * doc/lispref/buffers.texi (Read Only Buffers): Mention that
14478         'inhibit-read-only' property exempts text from being read-only.
14479         Add cross-reference to "Special Properties".
14481         * etc/NEWS: Move the entry about 'inhibit-read-only' property to
14482         its place and mark it documented.
14484 2015-12-01  Artur Malabarba  <bruce.connor.am@gmail.com>
14486         * lisp/emacs-lisp/package.el: Update header comments
14488 2015-12-01  Artur Malabarba  <bruce.connor.am@gmail.com>
14490         * lisp/character-fold.el: Add back multi-char matching
14492         (character-fold-to-regexp): Uncomment recently commented code
14493         and make the algorithm "dummer" by not checking every possible
14494         combination.  This will miss some possible matches, but it
14495         greatly reduces regexp size.
14497         * test/automated/character-fold-tests.el
14498         (character-fold--test-fold-to-regexp): Comment out test of
14499         functionality no longer supported.
14501 2015-12-01  Xue Fuqiao  <xfq.free@gmail.com>
14503         * doc/emacs/ack.texi (Acknowledgments): Update.
14505 2015-12-01  Michael Albinus  <michael.albinus@gmx.de>
14507         Check `file-remote-p' over absolute files names in files.el
14509         * lisp/files.el (directory-files-recursively)
14510         (get-free-disk-space): Check `file-remote-p' over absolute files names.
14512 2015-12-01  Andreas Schwab  <schwab@linux-m68k.org>
14514                 * src/lread.c (syms_of_lread): Doc fix.
14516 2015-12-01  Dmitry Gutov  <dgutov@yandex.ru>
14518         Don't mistake certain JS method calls for keywords
14520         * lisp/progmodes/js.el (js--ctrl-statement-indentation):
14521         Braceless keyword can't come after a period (bug#22063).
14523 2015-12-01  David Reitter  <david.reitter@gmail.com>
14525         Read frame_title_format from buffer-local variable for NS port
14527         * src/nsfns.m (x_implicitly_set_name): Read frame-title-format and
14528         icon-title-format variables from buffer in appropriate window.
14529         (Bug#22048)
14531 2015-12-01  Juri Linkov  <juri@linkov.net>
14533         * lisp/replace.el (occur-engine): Count matches in empty lines.
14535         (Bug#22062)
14537 2015-11-30  Aurélien Aptel  <aurelien.aptel@gmail.com>
14539         * src/emacs-module.h: Fix finalizer typedef for C++11
14541         C++11 standard doesn't allow exception-specification in typedef.
14542         The workaround is to declare a dummy function prototype and use
14543         decltype on it.
14545 2015-11-30  Eli Zaretskii  <eliz@gnu.org>
14547         Fix last change
14549         * src/emacs-module.c (lisp_to_value, value_to_lisp)
14550         [WIDE_EMACS_INT]: Avoid compiler warnings.
14552 2015-11-30  Stefan Monnier  <monnier@iro.umontreal.ca>
14554         Rely on conservative stack scanning to find "emacs_value"s
14556         * src/emacs-module.c (struct emacs_value_tag)
14557         (struct emacs_value_frame, struct emacs_value_storage): Remove.
14558         (value_frame_size): Remove constant.
14559         (struct emacs_env_private): Use Lisp_Object for non_local_exit info.
14560         (lisp_to_value): Remove first arg.
14561         (module_nil): New constant.
14562         Use it instead of NULL when returning an emacs_value.
14563         (module_make_function): Adjust to new calling convention of
14564         Qinternal_module_call.
14565         (DEFUN): Receive args in an array rather than a list.
14566         Use SAFE_ALLOCA rather than xnmalloc.  Skip the lisp_to_value loop when
14567         we don't have WIDE_EMACS_INT.  Adjust to new type of non_local_exit info.
14568         (module_non_local_exit_signal_1, module_non_local_exit_throw_1):
14569         Adjust to new type of non_local_exit info.
14570         (ltv_mark) [WIDE_EMACS_INT]: New constant.
14571         (value_to_lisp, lisp_to_value): Rewrite.
14572         (initialize_frame, initialize_storage, finalize_storage): Remove functions.
14573         (allocate_emacs_value): Remove function.
14574         (mark_modules): Gut it.
14575         (initialize_environment): Don't initialize storage any more.
14576         Keep the actual env object on Vmodule_environments.
14577         (finalize_environment): Don't finalize storage any more.
14578         (syms_of_module): Initialize ltv_mark and module_nil.
14580         * src/emacs-module.h (emacs_value): Make it more clear that this type
14581         is really opaque, including the fact that NULL may not be valid.
14583         * modules/mod-test/mod-test.c (Fmod_test_signal, Fmod_test_throw):
14584         Don't assume that NULL is a valid emacs_value.
14586 2015-11-30  Eli Zaretskii  <eliz@gnu.org>
14588         Yet another doc improvement for search commands
14590         * doc/emacs/search.texi (Word Search, Symbol Search)
14591         (Regexp Search): Document commands that don't support lax
14592         whitespace matching or character folding.
14593         (Nonincremental Search): Mention the search commands that can be
14594         invoked from the menu bar.
14596         * lisp/isearch.el (isearch-define-mode-toggle-word)
14597         (isearch-define-mode-toggle-symbol)
14598         (isearch-define-mode-toggle-character-fold): Note in the doc
14599         string that turning these on exits the regexp mode.
14600         (isearch-forward-regexp, isearch-forward-word)
14601         (isearch-forward-symbol, isearch-backward-regexp)
14602         (word-search-backward, word-search-forward)
14603         (word-search-backward-lax, word-search-forward-lax): State in the
14604         doc string which commands don't support character folding and/or
14605         lax-whitespace matching.
14607 2015-11-30  Martin Rudalics  <rudalics@gmx.at>
14609         Run `window-size-change-functions' also when reading from minibuffer
14611         * src/xdisp.c (redisplay_internal): Run `window-size-change-functions'
14612         also when reading from minibuffer.
14614 2015-11-30  Ulf Jasper  <ulf.jasper@web.de>
14616         Fix scrambling of html-rendered item buffers
14618         * lisp/net/newst-treeview.el (newsticker--treeview-render-text): Fix
14619           scrambling of contents by wrapping call to html-renderer in
14620           save-selected-window.
14622 2015-11-30  Paul Eggert  <eggert@cs.ucla.edu>
14624         Fix font typo in previous doc fix.
14626 2015-11-30  Paul Eggert  <eggert@cs.ucla.edu>
14628         A bit more security doc, esp. file local vars
14630         * doc/emacs/emacs.texi (Top):
14631         * doc/emacs/misc.texi (Miscellaneous Commands):
14632         Refer to new Host Security section.
14633         (Host Security): New section.
14634         * doc/lispref/os.texi (Security Considerations):
14635         Mention file local variables.
14637 2015-11-30  Artur Malabarba  <bruce.connor.am@gmail.com>
14639         * lisp/character-fold.el: Comment out branching code
14641         (character-fold-to-regexp): Comment out code that uses multi-char
14642         table.  The branching caused by this induces absurdly long regexps,
14643         up to 10k chars for as little as 25 input characters.
14645 2015-11-30  Paul Eggert  <eggert@cs.ucla.edu>
14647         Spelling and grammar fixes
14649 2015-11-30  Dmitry Gutov  <dgutov@yandex.ru>
14651         Make lisp-completion-at-point a wrapper instead of an alias
14653         * lisp/progmodes/elisp-mode.el (lisp-completion-at-point):
14654         Turn into an obsolete wrapper around elisp-completion-at-point
14655         (bug#20455).
14657 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
14659         * lisp/isearch.el (isearch-search-fun-default): Nicer error
14661         message when the search fails.
14663 2015-11-29  Dmitry Gutov  <dgutov@yandex.ru>
14665         Update menu-bar-goto-uses-etags-p for the current xref API
14667         * lisp/menu-bar.el (menu-bar-goto-uses-etags-p): Consult
14668         xref-backend-functions, instead of now-nonexistent
14669         xref-find-function.
14671 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
14673         * lisp/isearch.el (isearch-define-mode-toggle): Advertise binding
14675 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
14677         * lisp/menu-bar.el: Use folding in searches
14679         (nonincremental-search-forward): Use `isearch-search-fun-default'
14680         to determine the search function.
14681         (nonincremental-search-backward)
14682         (nonincremental-repeat-search-forward)
14683         (nonincremental-repeat-search-backward): Use it.
14685 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
14687         * lisp/menu-bar.el (menu-bar-goto-uses-etags-p): Fix a warning
14689 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
14691         * lisp/character-fold.el (character-fold-to-regexp): Be careful
14693         not to return huge regexps.
14695 2015-11-29  Eli Zaretskii  <eliz@gnu.org>
14697         Improve documentation of string-collate-* functions
14699         * doc/lispref/strings.texi (Text Comparison): Improve wording and
14700         indexing of 'string-collate-equalp' and 'string-collate-lessp'.
14702         * etc/NEWS: Move the entry of 'string-collate-equalp' and
14703         'string-collate-lessp' to "Lisp Changes" section and mark it as
14704         documented.
14706 2015-11-29  Eli Zaretskii  <eliz@gnu.org>
14708         Document truncate-string-ellipsis
14710         * doc/lispref/display.texi (Size of Displayed Text): Document
14711         'truncate-string-ellipsis'.
14713         * lisp/international/mule-util.el (truncate-string-ellipsis): Doc fix.
14714         (truncate-string-to-width): Mention in the doc string that the
14715         default for ELLIPSIS comes from 'truncate-string-ellipsis'.
14717         * etc/NEWS: Move the 'truncate-string-ellipsis' entry to the "Lisp
14718         Changes" section.
14720 2015-11-29  Eli Zaretskii  <eliz@gnu.org>
14722         Fix confusion wrt character folding in the Emacs manual
14724         * doc/emacs/search.texi (Nonincremental Search, Regexp Search):
14725         Document that invoking search-forward/backward and
14726         re-search-forward/backward supports only case folding, but not the
14727         rest of the lax-search features.  Reported by Mike Kupfer
14728         <m.kupfer@acm.org>.
14730 2015-11-29  Ken Brown  <kbrown@cornell.edu>
14732         Update mod-test-sum-test
14734         * modules/mod-test/test.el (mod-test-sum-test): Update to
14735         accommodate the lack of dladdr on Cygwin.
14737 2015-11-29  Alan Mackenzie  <acm@muc.de>
14739         Byte compiler: Catch missing argument to `funcall'.  Fixes bug#22051.
14741         * lisp/emacs-lisp/bytecomp.el (byte-compile-funcall): When there's no argument
14742         to `funcall', (i) Output an error message; (ii) Generate code to signal a
14743         `wrong-number-of-arguments' error.
14745 2015-11-29  Martin Rudalics  <rudalics@gmx.at>
14747         * lisp/window.el (split-window): Don't sanitize sizes when SIZE is non-nil.
14749 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
14751         * lisp/character-fold.el (character-fold-to-regexp)
14753         Warn about using long strings.
14755         * test/automated/character-fold-tests.el
14756         (character-fold--test-lax-whitespace)
14757         (character-fold--test-consistency): Reduce string size for tests.
14759 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14761         Document renaming of x-select-enable-* variables
14763         * doc/emacs/killing.texi (Clipboard): Rename
14764         x-select-enable-clipboard to select-enable-clipboard and
14765         x-select-enable-primary to select-enable-primary.  Update index
14766         entries.
14768         * etc/NEWS: Mark entry as documented.
14770 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14772         Document the shorthand hints displayed by M-x
14774         * doc/emacs/m-x.texi (M-x): Document the numeric meaning of
14775         suggest-key-bindings.  Document the shorthand hints for commands
14776         that have no key bindings.  Document that M-x completion ignores
14777         obsolete commands.
14779         * etc/NEWS: Move the M-x entry to "Editing Changes" and mark it as
14780         documented.
14782 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14784         Update docs of character folding
14786         * doc/emacs/search.texi (Lax Search): Update the description of
14787         character folding for the latest changes.
14789 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
14791         * lisp/character-fold.el: Also play nice with case-folding
14793         (character-fold-to-regexp): Take `case-fold-search' into account.
14795 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
14797         * lisp/character-fold.el: Add support for multi-char matches
14799         (character-fold-table): Now has an extra-slot. This is a second
14800         char-table that holds multi-character matches.  See docstring for
14801         details.
14802         (character-fold-to-regexp): Can build branching regexps when a
14803         character's entry the extra slot of `character-fold-table' matches the
14804         characters that succeed it.
14806 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
14808         * lisp/character-fold.el: Code simplifications
14810         (character-fold-table): Reduce the scope of a variable.
14811         (character-fold-to-regexp): Change logic to work directly on the
14812         input string.  It's a little easier to understand, probably
14813         faster, and sets us up for implementing multi-char matches.
14815         * test/automated/character-fold-tests.el
14816         (character-fold--test-fold-to-regexp): New test.
14818 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14820         Document changes in "C-h l"
14822         * doc/emacs/help.texi (Misc Help): Document the changes in "C-h l".
14824         * etc/NEWS: mark "C-h l" changes as documented.
14826 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14828         Finalize documentation of 'custom-prompt-customize-unsaved-options'
14830         * doc/emacs/custom.texi (Saving Customizations): Index the new
14831         function 'custom-prompt-customize-unsaved-options'.
14833         * etc/NEWS: Mention when 'custom-prompt-customize-unsaved-options'
14834         is useful.
14836 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14838         Document 'comment-line'
14840         * doc/emacs/programs.texi (Comment Commands): Document
14841         'comment-line'.
14843         * etc/NEWS: Move the entry for 'comment-line' into "Editing Changes".
14845 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14847         Document new checkdoc features
14849         * doc/lispref/tips.texi (Tips, Library Headers): Document the
14850         keyword-checking features of checkdoc and the commands
14851         'checkdoc-file' and 'checkdoc-current-buffer'.
14853         * etc/NEWS: Move the checkdoc-related entries to their own
14854         section.
14856 2015-11-28  Philipp Stephani  <p.stephani2@gmail.com>
14858         Simplify the prologue of emacs-module.c functions
14860         * src/emacs-module.c (MODULE_FUNCTION_BEGIN): New macro.
14861         (module_make_global_ref)
14862         (module_free_global_ref, module_make_function, module_funcall)
14863         (module_intern, module_type_of, module_extract_integer)
14864         (module_make_integer, module_extract_float, module_make_float)
14865         (module_copy_string_contents, module_make_string)
14866         (module_make_user_ptr, module_get_user_ptr, module_set_user_ptr)
14867         (module_get_user_finalizer, module_set_user_finalizer)
14868         (module_vec_set, module_vec_get, module_vec_size): Use new helper
14869         macro MODULE_FUNCTION_BEGIN.
14871 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14873         Don't reject module calls with no arguments
14875         * src/emacs-module.c (Finternal_module_call): Allow ARGLIST be nil.
14877 2015-11-28  Philipp Stephani  <p.stephani2@gmail.com>
14879         Make module-call be visible from Lisp
14881         * src/emacs-module.c (module_make_function): Use internal--module-call.
14882         (Finternal_module_call): Renamed from Fmodule_call.  Add safety
14883         checks.
14884         (syms_of_module): DEFSYM save-value-p and save-pointer-p.  Do
14885         defsubr internal--module-call.
14887 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14889         Add etags tests for the recent Lua-related bugfix
14891         * test/etags/lua-src/test.lua: New file, tests the issues raised
14892         by bug#21934.
14893         * test/etags/Makefile (LUASRC): Add test.lua.
14894         * test/etags/ETAGS.good_1:
14895         * test/etags/ETAGS.good_2:
14896         * test/etags/ETAGS.good_3:
14897         * test/etags/ETAGS.good_4:
14898         * test/etags/ETAGS.good_5:
14899         * test/etags/ETAGS.good_6:
14900         * test/etags/CTAGS.good: Adapt to the new Lua test.  Also, an old
14901         regression fix, resolved around 25 May 2015, required changes to
14902         the "good" ETAGS files.
14904 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14906         Fix Lua tags when a function name includes '.' or ':'
14908         * lib-src/etags.c (Lua_functions): Add a tag for the last element
14909         of a function name after a dot or a colon.  (Bug#21934)
14911 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14913         Improve documentation of search and replace commands
14915         * doc/emacs/search.texi (Replacement and Lax Matches): Document
14916         which commands are affected by 'replace-character-fold'.
14917         (Lax Search): Add a cross reference to "Replacement and Lax
14918         Matches".  Improve wording.  Fix lost extra whitespace.
14919         (Search Customizations): Improve wording.  (Bug#22036)
14920         See also comments in
14921         https://lists.gnu.org/r/emacs-devel/2015-11/msg02376.html.
14923         * lisp/replace.el (query-replace, query-replace-regexp)
14924         (query-replace-regexp-eval, replace-string, replace-regexp):
14925         Mention 'replace-character-fold' in the doc strings.
14927 2015-11-28  Paul Eggert  <eggert@cs.ucla.edu>
14929         Fix minor problems found by static checking
14931         * src/undo.c (prepare_record): Add proper prototype for C.
14933 2015-11-27  Stefan Monnier  <monnier@iro.umontreal.ca>
14935         * src/emacs-module.c (struct env_storage): Delete
14937         (struct emacs_runtime_private): Keep an emacs_env instead.
14938         (Fmodule_load, Fmodule_call): Declare emacs_env_private separately.
14939         (initialize_environment): Split the arg in two.  Adjust all callers.
14940         Only store the private part in Vmodule_environments.
14941         (finalize_environment): Change the arg to only be the private env.
14942         Adjust all callers.
14944 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
14946         Improve documentation of 'replace-character-fold'
14948         * lisp/replace.el (replace-character-fold): Clarify which commands
14949         are affected by this variable.
14951 2015-11-27  Mark Oteiza  <mvoteiza@udel.edu>
14953         Backport: Add interactive seek command.
14955         * lisp/mpc.el (mpc-cmd-seekcur): New function.
14956         (mpc-seek-current): New command.
14957         (mpc-mode-menu): Add entry for mpc-seek-current
14958         (mpc-mode-map): Bind mpc-seek-current to "g"
14960 2015-11-27  Dmitry Gutov  <dgutov@yandex.ru>
14962         Autoload etags when using its xref backend
14964         * lisp/progmodes/xref.el (xref--etags-backend):
14965         Rename to etags--xref-backend.  Move to etags.el.  Autoload.
14966         (Bug#22026)
14968 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
14970         * lisp/character-fold.el: Allow complex chars to match their decomposition
14972         (character-fold-table): When a character's decomposition does not
14973         involve a formatting tag (i.e., if it has an "exact" description via
14974         other characters), then this character is allowed to match the
14975         decomposition.
14977 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
14979         * lisp/character-fold.el: More descriptive variable names
14981         (character-fold-table): Rename a lot of the lexical variables to
14982         make the code easier to read.
14984 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
14986         * lisp/isearch.el: Ensure we still support `isearch-new-word'
14988         (isearch-new-regexp-function): Define variable.
14989         (isearch-new-word): Define as an obsolete alias. (Bug#22018)
14991 2015-11-27  Lee Bochicchio  <lboc.home@gmail.com>
14993         * test/automated/abbrev-tests.el: Define more tests
14995         (abbrev-table-name-test, kill-all-abbrevs-test)
14996         (clear-abbrev-table-test): New tests.
14998 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
15000         Add module tests for wrong-type-argument
15002         * modules/mod-test/test.el (mod-test-sum-test): Add tests for
15003         wrong-type-argument.
15005 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
15007         Improve handling of signals and 'throw' in modules
15009         * src/emacs-module.c: Add commentary explaining how to write
15010         functions in this file.
15011         (module_make_global_ref, module_free_global_ref)
15012         (module_non_local_exit_signal, module_non_local_exit_throw)
15013         (module_make_function, module_funcall, module_intern)
15014         (module_type_of, module_is_not_nil, module_eq)
15015         (module_extract_integer, module_make_integer)
15016         (module_extract_float, module_make_float)
15017         (module_copy_string_contents, module_make_string)
15018         (module_make_user_ptr, module_get_user_ptr, module_set_user_ptr)
15019         (module_get_user_finalizer, module_set_user_finalizer)
15020         (module_vec_set, module_vec_get, module_vec_size)
15021         (module_non_local_exit_signal_1, module_non_local_exit_throw_1):
15022         Do nothing and return with failure indication immediately, if some
15023         previous module call signaled an error or wants to throw.  See
15024         https://lists.gnu.org/r/emacs-devel/2015-11/msg02133.html
15025         for the relevant discussions.
15027 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
15029         Add ':version' tag to 'checkdoc-package-keywords-flag'
15031         * lisp/emacs-lisp/checkdoc.el (checkdoc-package-keywords-flag):
15032         Add a ':version' tag.
15034 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
15036         Improve documentation of 'eval-buffer' and 'eval-region'
15038         * src/lread.c (Feval_buffer, Feval_region): Doc fixes.  (Bug#22023)
15040         * doc/lispref/eval.texi (Eval): Mention narrowing to clarify
15041         "accessible portion of buffer".
15043 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
15045         Unbreak the Cygwin w32 build
15047         * src/emacs.c (main): Call w32_init_main_thread in the Cygwin w32
15048         build as well.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
15050 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
15052         Improve commentary in character-fold.el
15054         * lisp/character-fold.el (character-fold-to-regexp): Move detailed
15055         description from commit log message to comments.  (Bug#22019)
15057 2015-11-26  Alan Mackenzie  <acm@muc.de>
15059         Byte Compiler: generate code to adjust stack count after call to `signal'.
15061         Corrects change from earlier today.
15063         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): supply the current value of
15064         `byte-compile--for-effect' as argument to `byte-compile-form'.
15066 2015-11-26  Eli Zaretskii  <eliz@gnu.org>
15068         Improve commentary of prepare_to_modify_buffer_1
15070         * src/insdel.c (prepare_to_modify_buffer_1): Mention in commentary
15071         that this function runs Lisp.  Suggested by Richard Stallman
15072         <rms@gnu.org>.
15074 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
15076         Fix regression after merge.
15078          * src/undo.c (prepare_record): Remove call to run_undoable_change.
15080 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
15082         After delete, record point location in undo.
15084         Addresses Bug #21968.
15086                 * lisp/simple.el (undo-auto--add-boundary): Clean up code to
15087                 better support intercalating calls.
15088                 * src/keyboard.c, src/keyboard.h (command_loop_1): Store value of
15089                 point and current buffer before each command.
15090                 * src/undo.c (record_point): Now only record the point.
15091                 * src/undo.c (prepare_record): Functionality removed form
15092                 record_point.
15093                 * src/undo.c (record_delete): Check if point needs recording.
15094                 * src/undo.c (undo-boundary): Record value of point before each
15095                 boundary.
15096                 * test/automated/simple-test.el: New tests.
15098         Conflicts:
15099                 src/undo.c
15101 2015-11-26  Eli Zaretskii  <eliz@gnu.org>
15103         Fix compiler warnings in w32.c
15105         * src/w32.c (sys_socket): In case of error, use -1 as return
15106         value, not INVALID_SOCKET, which causes compiler warnings.
15107         (maybe_load_unicows_dll): Cast the return value of GetProcAddress
15108         to the appropriate function signature, to avoid compiler errors.
15109         Reported by Andy Moreton <andrewjmoreton@gmail.com>.  (Bug#21953)
15111 2015-11-26  Dmitry Gutov  <dgutov@yandex.ru>
15113         Check if the file exists on disk before producing the revert diff
15115         * lisp/vc/vc-dispatcher.el (vc-buffer-sync): Check if the file
15116         exists on disk (bug#20558).
15118 2015-11-26  Alan Mackenzie  <acm@muc.de>
15120         Byte compiler: on setq with an odd number of arguments, generate a `signal'
15122         * lisp/emacs-lisp/cconv.el (cconv-convert): Don't transform `setq' form when
15123         it has an odd number of arguments, to allow bytecomp to handle the error.
15125         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): In a `setq' form with an
15126         odd number of arguments, generate a `signal' instead of the normal code.
15128 2015-11-26  Dmitry Gutov  <dgutov@yandex.ru>
15130         Use find-tag-default for xref-backend-identifier-at-point
15132         * lisp/progmodes/etags.el (find-tag-tag)
15133         (tags-completion-at-point-function): Extract common code as
15134         find-tag--default.
15135         (xref-backend-identifier-at-point): Define in terms of the new
15136         function.
15138 2015-11-26  Paul Eggert  <eggert@cs.ucla.edu>
15140         * src/undo.c (record_property_change): Remove now-unused local.
15142 2015-11-25  Phillip Lord  <phillip.lord@russet.org.uk>
15144         run_undoable_changes now called from insdel.
15146         The original calls from inside undo.c are not always at a safe position
15147         to call lisp, as they originate in varied positions within insdel.c.
15148         Calling them directly from prepare_to_modify_buffer_1 ensures that they
15149         are always run at the same point.
15151          * src/undo.c (run_undoable_changes,syms_of_undo): Remove function
15152          and symbol used.
15153          * src/insdel.c (run_undoable_changes): Add function and symbol.
15155 2015-11-25  Eli Zaretskii  <eliz@gnu.org>
15157         Improve and update documentation of search commands
15159         * doc/emacs/search.texi (Lax Search): Renamed from "Search Case";
15160         all references changed.  Move the description of lax-whitespace
15161         here.  Add description of the new character folding features and
15162         additional customizable options.
15163         (Isearch Yank): Move before "Error in Search".
15164         (Basic Isearch): Improve wording.  Add index entries.  Add short
15165         description of how to abandon search, making this subsection a
15166         complete introduction to search basics.
15167         (Repeat Isearch): Add index entries.  Describe additional
15168         customizable options.  Describe mouse clicks.
15169         (Isearch Yank): Add index entries.  Describe mouse-2 click in echo
15170         area.  Describe more customizable options.
15171         (Error in Isearch): Add index entries.
15172         (Special Isearch): Move actual description of some isearch
15173         commands to other sections, leaving here just the summary of the
15174         commands.  Add command that toggles character folding.  Describe
15175         commands, like "C-h C-h", that were previously omitted for some
15176         reason.
15177         (Not Exiting Isearch): Describe search-exit-option.  Add index
15178         entries.
15179         (Word Search): Describe eww-search-word and eww-search-prefix.
15180         (Symbol Search): Add index entries.
15181         (Regexp Search): Describe regexp-search-ring-max.
15182         (Replacement and Lax Matches): Renamed from "Replacement and
15183         Case"; all references changed.  Describe lax-whitespace matching
15184         in replace commands and related options.  Describe character
15185         folding in replace commands and related options.
15186         (Query Replace): Describe query-replace-from-to-separator and the
15187         new history features.  Add index entries for highlighted text.
15188         Describe query-replace-skip-read-only.  Describe more keys
15189         accepted by query-replace.
15190         (Other Repeating Search): More index entries for Occur.  Describe
15191         list-matching-lines-default-context-lines.
15192         (Search Customizations): New section, documents customizable
15193         options that were not documented until now.
15194         * doc/emacs/glossary.texi (Glossary): Add "Case Folding" and
15195         "Character Folding".
15197         * etc/NEWS: Move search- and replace-related entries to a single
15198         parent section.
15200         * lisp/replace.el (query-replace-show-replacement): Doc fix.
15201         * lisp/isearch.el (search-nonincremental-instead)
15202         (isearch-hide-immediately): Doc fixes.
15204 2015-11-25  Katsumi Yamaoka  <yamaoka@jpl.org>
15206         Remove nnml-retrieve-groups that is unnecessary and somewhat problematic
15208         * lisp/gnus/nnml.el (nnml-retrieve-groups): Remove.  See:
15209         <http://thread.gmane.org/gmane.emacs.gnus.general/86308> and
15210         <http://thread.gmane.org/gmane.emacs.gnus.general/86321>
15212 2015-11-25  Paul Eggert  <eggert@cs.ucla.edu>
15214         Fix module_format_fun_env when dynlib_addr fails
15216         * src/emacs-module.c (module_format_fun_env):
15217         exprintf doesn’t support %p, so use %x.  Reported by Eli Zaretskii in:
15218         https://lists.gnu.org/r/emacs-devel/2015-11/msg02122.html
15220 2015-11-25  Paul Eggert  <eggert@cs.ucla.edu>
15222         Disambiguate variable help a bit better
15224         * lisp/help-fns.el (describe-variable): Quote the
15225         variable’s value if it is a symbol other than t or nil.
15226         See: T.V Raman in:
15227         https://lists.gnu.org/r/emacs-devel/2015-11/msg02147.html
15229 2015-11-25  Dmitry Gutov  <dgutov@yandex.ru>
15231         Pass SVN commit message through log-edit-extract-headers
15233         * lisp/vc/vc-svn.el (vc-svn-checkin): Pass COMMENT through
15234         log-edit-extract-headers (bug#18954).
15236 2015-11-24  Alan Mackenzie  <acm@muc.de>
15238         CC Mode: Eliminate compiler warning messages.
15240         * lisp/progmodes/cc-mode.el (top level): remove compile time declaration of
15241         `font-lock-syntactic-keywords' (which CC Mode doesn't use).
15242         * lisp/progmodes/cc-awk.el (awk-mode-syntax-table)
15243         (c-awk-set-syntax-table-properties): Clarify comments about
15244         `font-lock-syntactic-keywords'.
15246         * lisp/progmodes/cc-bytecomp.el (cc-bytecomp-load): Create a dummy declaration
15247         of this before the real (interpreted) one, to satisfy the byte compiler.
15249 2015-11-24  Simen Heggestøyl  <simenheg@gmail.com>
15251         Extend the test suite for json.el
15253         * lisp/json.el (json-plist-p): Clarify docstring.
15255         * test/automated/json-tests.el (json-tests--with-temp-buffer): New
15256         macro.
15257         (test-json-join, test-json-alist-p)
15258         (test-json-plist-p, test-json-advance, test-json-peek)
15259         (test-json-pop, test-json-skip-whitespace)
15260         (test-json-read-keyword, test-json-encode-keyword)
15261         (test-json-read-number, test-json-encode-number)
15262         (test-json-read-escaped-char, test-json-read-string)
15263         (test-json-encode-string, test-json-encode-key)
15264         (test-json-new-object, test-json-add-to-object)
15265         (test-json-read-object, test-json-encode-list)
15266         (test-json-read-array, test-json-encode-array)
15267         (test-json-read, test-json-read-from-string)
15268         (test-json-encode): New tests.
15269         (json-read-simple-alist): Merged into `test-json-read-object'.
15270         (json-encode-string-with-special-chars): Merged into
15271         `test-json-encode-string'.
15272         (json-read-string-with-special-chars): Split into
15273         `test-json-encode-string' and `test-json-read-from-string'.
15275 2015-11-24  Anders Lindgren  <andlind@gmail.com>
15277         Fixed bug#18283: Enable applescript in NextStep.
15279         * nextstep/templates/Info.plist.in: Set NSAppleScriptEnabled to YES.
15281 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
15283         Allow completion on dynamic module files in load-library
15285         * lisp/files.el (load-library): Bind completion-ignored-extensions
15286         to nil, to allow completion on dynamic modules typed as file
15287         names.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
15289 2015-11-24  Alan Mackenzie  <acm@muc.de>
15291         CC Mode: eliminate almost all byte compilation warnings
15293         * lisp/progmodes/cc-bytecomp.el (cc-bytecomp-noruntime-functions): Remove.
15294         (cc-require): Remove the crude hack that saved and restored
15295         byte-compile-noruntime-functions.
15296         (cc-conditional-require, cc-conditional-require-after-load): New macros.
15298         * lisp/progmodes/cc-defs.el (top level): Reformulate code which loaded
15299         cc-fix.el using the new macros in cc-bytecomp.el.
15301         * lisp/progmodes/cc-langs.el (c++-template-syntax-table)
15302         (c-no-parens-syntax-table): Add extra "(eval ..)"s around "'(lambda ..)"
15303         forms to remove the superflous quotes.
15305 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
15307         Add one more mod-test test
15309         * modules/mod-test/test.el (mod-test-sum-test): Test the error
15310         signaled when the function is invoked with a wrong number of
15311         arguments.
15313 2015-11-24  Philipp Stephani  <phst@google.com>
15315         * modules/mod-test/mod-test.c (Fmod_test_sum): Verify there are 2 args.
15317 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
15319         Implement dynlib_addr for MS-Windows
15321         * src/dynlib.c [WINDOWSNT]: Include w32common.h.
15322         <g_b_init_get_module_handle_ex> [WINDOWSNT]: New static variable.
15323         (GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS)
15324         (GET_MODULE_HANDLE_EX_FLAG_UNCHANGED_REFCOUNT) [WINDOWSNT]: Define
15325         if undefined.
15326         (dynlib_reset_last_error): Reset g_b_init_get_module_handle_ex to
15327         zero.
15328         (dynlib_addr) [WINDOWSNT]: Non-trivial implementation to report
15329         the full file name of the module for a given address.
15331 2015-11-24  Alan Mackenzie  <acm@muc.de>
15333         Squashed commit of the following:
15335         commit e1ecf76585bef2eb87995f7a7f92cc12003a6f70
15336         Author: Alan Mackenzie <acm@muc.de>
15337         Date:   Tue Nov 24 16:50:09 2015 +0000
15339             Byte compile: minor amendments.
15341             * lisp/emacs-lisp/bytecomp.el (byte-compile-initial-macro-environment):
15342             add a comment to explain the binding of variables around a subsidiary
15343             compilation.
15344             (byte-compile-new-defuns): Amend the doc string.
15346         commit c537bfed1dda1593d218956ff00c6105a3ff0316
15347         Author: Alan Mackenzie <acm@muc.de>
15348         Date:   Sat Nov 21 18:43:57 2015 +0000
15350             Byte compiler: fix spurious warnings "might not be defined at runtime".
15352             Also initialize byte-compile-noruntime-functions between runs.
15354             * lisp/emacs-lisp/bytecomp.el (byte-compile-new-defuns): New variable.
15355             (byte-compile-initial-macro-environment): For eval-when-compile: bind
15356             byte-compile-unresolved-functions and byte-compile-new-defuns around
15357             byte-compile-top-level, to prevent spurious entries being made.
15358             (byte-compile-warn-about-unresolved-functions): Check whether function is
15359             in byte-compile-new-defuns before emitting a warning about it.
15360             (byte-compile-from-buffer): Initialize new variable and
15361             byte-compile-noruntime-functions to nil.
15362             (byte-compile-file-form-require): record all new functions defined by a
15363             `require' in byte-compile-new-defuns.
15364             (byte-compile-file-form-defmumble): record the new alias in
15365             byte-compile-new-defuns.
15367 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
15369         Fix crash at startup related to GC of font entities
15371         * src/font.h (GC_FONT_SPEC_P, GC_FONT_ENTITY_P)
15372         (GC_FONT_OBJECT_P, GC_XFONT_SPEC, GC_XFONT_ENTITY)
15373         (GC_XFONT_OBJECT): New macros, for use in garbage collector.
15374         * src/alloc.c (compact_font_cache_entry, compact_font_caches):
15375         Don't ifdef away font cache compaction on NT_GUI, as the problems
15376         which led to that seem to have been solved.
15377         (compact_font_cache_entry): Use GC_FONT_SPEC_P, GC_XFONT_SPEC,
15378         GC_XFONT_ENTITY, and GC_XFONT_OBJECT, instead of their non-GC_
15379         cousins.  (Bug#21999)
15381 2015-11-24  Alan Mackenzie  <acm@muc.de>
15383         Byte compile: Output an error, not a warning, for odd number of args to setq
15385         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): Amend.
15387 2015-11-24  Ken Raeburn  <raeburn@raeburn.org>
15389         Fix kbd_buffer iteration loop in readable_events
15391         * src/keyboard.c (readable_events): Wrap the event pointer back to the
15392         start of the kbd_buffer array inside the top of the loop instead of
15393         right before checking the loop condition, since kbd_fetch_ptr and
15394         kbd_store_ptr point past the end of the array to mean that element 0
15395         is next. (bug#21935)
15397 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
15399         Improve text-quoting-style doc again
15401         * doc/lispref/help.texi (Keys in Documentation):
15402         Omit overkill discussion of ‘setq’.  Mention Emacs versions
15403         where ‘grave’ style was standard.
15405 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
15407         Improve text-quoting-style doc
15409 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
15411         Simplify module_make_function
15413         * src/emacs-module.c (module_make_function):
15414         Simplify by calling build_unibyte_string.
15416 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
15418         Port better to FreeBSD’s dlfunc vs dlsym
15420         This avoids warnings when converting between void * and
15421         function pointers, which strict C11 does not allow.
15422         * configure.ac (dlfunc): Check for existence.
15423         * src/dynlib.c (dlfunc) [!HAVE_DLFUNC]: New macro.
15424         (dynlib_func): New function.
15425         * src/dynlib.h (dynlib_function_ptr, dynlib_func): New decls.
15426         * src/emacs-module.c (Fmodule_load): Use dynlib_func, not
15427         dynlib_sym, for function pointers.
15429 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
15431         Simplify use of emacs_finalizer_function type
15433         * src/emacs-module.h (emacs_finalizer_function):
15434         Now EMACS_NOEXCEPT.  All users simplified to omit EMACS_NOEXCEPT.
15435         (struct emacs_env_25): Use emacs_finalizer_function where applicable.
15437 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
15439         module_format_fun_env fixes
15441         * src/doprnt.c (exprintf) [HAVE_MODULES]: Also define in this case.
15442         * src/emacs-module.c (module_format_fun_env):
15443         Convert path and sym to UTF-8.
15444         Don’t use VLAs, as the C11 standard says they’re optional,
15445         and anyway they can cause core dumps with large allocations.
15446         Use exprintf rather than snprintf, as exprintf handles arbitrarily
15447         long strings.  Simplify the code a bit.
15449 2015-11-23  Dmitry Gutov  <dgutov@yandex.ru>
15451         Don't use package-user-dir in elisp-library-roots if it's not bound
15453         * lisp/progmodes/elisp-mode.el (elisp-library-roots): Don't
15454         use package-user-dir if it's not bound (bug#19759).
15456 2015-11-23  Anders Lindgren  <andlind@gmail.com>
15458         New visible-bell for NextStep (OS X El Capitan compatible).
15460         Instead of inverting a rectangle in the middle of the frame, use
15461         the standard NextStep image "caution", represented using an
15462         warning sign with an exclamation mark.  (Bug#21662)
15464         Implemented based on a suggestion drafted by Mustafa Kocaturk.
15466         * src/nsterm.m (EmacsBell): New class for managing the caution
15467         image.  Support multiple active bells, the image is removed once
15468         all bells have timed out.
15469         (ns_timeout): Removed, no longer used.
15470         (ns_ring_bell): Reimplemented to use EmacsBell.
15472 2015-11-23  Johan Bockgård  <bojohan@gnu.org>
15474         * lisp/emacs-lisp/nadvice.el (add-function): Fix debug spec.
15476         (remove-function): Ditto. (Bug#20376)
15478 2015-11-23  Mark Oteiza  <mvoteiza@udel.edu>
15480         * lisp/leim/quail/tamil-dvorak.el: Add necessary escapes.
15482 2015-11-23  Eli Zaretskii  <eliz@gnu.org>
15484         Improve how non-ASCII strings are accepted from modules
15486         * src/emacs-module.c (module_make_function, module_make_string):
15487         Build a unibyte Lisp string and then decode it by UTF-8, instead
15488         of building a multibyte string without decoding.  This is more
15489         tolerant to deviations from UTF-8.
15491 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
15493         Port recent module changes to pickier compilers
15495         * src/emacs-module.c (module_make_function)
15496         (module_make_string): Add casts to fix pointer signedness issues.
15498 2015-11-23  Philipp Stephani  <phst@google.com>
15500         Fix how strings are accepted from modules
15502         * src/emacs-module.c (module_make_function, module_make_string): Use
15503         make_multibyte_string.
15504         (module_copy_string_contents): Encode before reading the byte
15505         size.  Return false if and only if an error occurred.
15507 2015-11-23  Shakthi Kannan  <shakthimaan@gmail.com>
15509         Add the tamil-dvorak input method
15511         * lisp/leim/quail/tamil-dvorak.el: New file.  (Bug#21768)
15513         * etc/NEWS: Mention the new input method.
15515 2015-11-23  Martin Rudalics  <rudalics@gmx.at>
15517         Move setting FRAME_WINDOW_SIZES_CHANGED to resize_frame_windows.
15519         * src/frame.c (adjust_frame_size): Don't set
15520         FRAME_WINDOW_SIZES_CHANGED here ...
15521         * src/window.c (resize_frame_windows): ... but here, as suggested
15522         by Stefan Monnier.  Also remove some dead code along the way.
15524 2015-11-23  Alan Mackenzie  <acm@muc.de>
15526         * etc/NEWS (Incompatible Lisp Changes): Also `setf' needs an even # of args.
15528 2015-11-23  Alan Mackenzie  <acm@muc.de>
15530         Signal an error when `setf' gets an odd number of arguments.
15532         * lisp/emacs-lisp/gv.el (setf): Amend.
15534 2015-11-23  Stefan Monnier  <monnier@iro.umontreal.ca>
15536         * lisp/emacs-lisp/smie.el (smie-backward-sexp): Handle BOB better.
15538 2015-11-23  Alan Mackenzie  <acm@muc.de>
15540         * etc/NEWS (Incompatible Lisp Changes): Document new restriction on `setq'.
15542 2015-11-23  Alan Mackenzie  <acm@muc.de>
15544         Expunge occurrences of `setq' with an odd number of arguments.
15546         * lisp/apropos.el (apropos-documentation):
15547         * lisp/obsolete/complete.el (PC-include-file-all-completions):
15548         * lisp/progmodes/compile.el (compilation-goto-locus):
15549         * lisp/vc/vc-cvs.el (vc-cvs-parse-root): (twice)
15550         Insert missing nil at end of `setq' forms.
15552         * lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-autoload): Remove an
15553         erroneous trailing variable name from a setq, thus allowing a compilation
15554         properly to track functions not defined at runtime.
15556 2015-11-23  John Wiegley  <johnw@newartisans.com>
15558         Add a note about a questionable use of bool in xdisp.c
15560 2015-11-23  Alan Mackenzie  <acm@muc.de>
15562         Issue a warning from the byte compiler on a malformed `setq' form.
15564         Partly fixes bug#20241.
15565         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): Issue a warning when a
15566         `setq' form with an odd number of arguments is compiled.
15568 2015-11-23  Alan Mackenzie  <acm@muc.de>
15570         Don't let cconv_convert insert a nil argument into a `setq' form.
15572         Fixes bug#21983.
15573         * lisp/emacs-lisp/cconv.el (cconv-convert): Don't silently insert a nil last
15574         argument into a `setq' when there're an odd number of args.  This enables the
15575         byte compiler to issue a message in this case.
15577 2015-11-23  Alan Mackenzie  <acm@muc.de>
15579         Signal an error when `setq' has an odd number of arguments.  Fixes bug#20241.
15581         * src/eval.c (Fsetq): Signal an error on an odd number of arguments.
15582         (syms_of_eval): Add a DEFSYM for Qsetq.
15584 2015-11-23  Martin Rudalics  <rudalics@gmx.at>
15586         * doc/lispref/windows.texi (Window Sizes): Fix indices and references.
15588         * src/frame.c (adjust_frame_size): Set FRAME_WINDOW_SIZES_CHANGED (Bug#21975).
15590 2015-11-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
15592         Add EUDC BBDB 3 entry in NEWS
15594         * NEWS: Mention EUDC BBDB backend support for BBDB 3.
15596 2015-11-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
15598         Improve EUDC to BBDB 3 export
15600         * lisp/net/eudc-vars.el (eudc-ldap-bbdb-conversion-alist): Change phone
15601         entry to single item.  Add company conversion.
15602         * lisp/net/eudc-export.el (eudc-bbdbify-company): New function.
15603         (bbdb-parse-phone): Declare function.
15604         (eudc-bbdbify-phone): Add BBDB 3 support.
15605         (Bug#21971)
15607 2015-11-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
15609         Add BBDB 3 support for EUDC export
15611         * lisp/net/eudc.el: Add bbdb-version defvar.
15612         (eudc--using-bbdb-3-or-newer-p): New function.
15613         * lisp/net/eudc-export.el (eudc-create-bbdb-record): Add support for
15614         bbdb-create-internal argument list changes introduced in BBDB 3.
15615         * lisp/net/eudcb-bbdb.el: Remove bbdb-version defvar.
15616         (eudc-bbdb-field): Call eudc--using-bbdb-3-or-newer-p.
15617         (Bug#21971)
15619 2015-11-22  Eli Zaretskii  <eliz@gnu.org>
15621         Allow loading modules by 'load-file'
15623         * src/lread.c (Fload): Call 'unbind_to' with 'Fmodule_load' as the
15624         2nd arg, to avoid the "binding stack not balanced" error.
15625         (syms_of_lread) <module-file-suffix>: New Lisp variable.
15627         * lisp/files.el (module-file-suffix): Declare.
15628         (load-file): Remove 'module-file-suffix' from
15629         'completion-ignored-extensions', to allow completion on modules.
15631         * etc/NEWS: Mention 'module-file-suffix'.
15633 2015-11-22  Eli Zaretskii  <eliz@gnu.org>
15635         Fix unoptimized builds
15637         * src/lisp.h (XTYPE): Move before XSYMBOL, to fix unoptimized
15638         builds.
15640 2015-11-22  Dmitry Gutov  <dgutov@yandex.ru>
15642         Work around the asynchronous-empty-diff problem
15644         * lisp/vc/vc-rcs.el (vc-rcs-diff):
15645         * lisp/vc/vc-mtn.el (vc-mtn-diff):
15646         * lisp/vc/vc-hg.el (vc-hg-diff):
15647         * lisp/vc/vc-git.el (vc-git-diff): Ignore the ASYNC argument,
15648         do a synchronous process call (bug#21969).
15650 2015-11-22  Karl Fogel  <kfogel@red-bean.com>
15652         Finish excising electric indent from `open-line'
15654         * lisp/simple.el (open-line): Remove INTERACTIVE argument.
15656         * test/automated/simple-test.el (open-line-indent, open-line-hook):
15657           Adjust accordingly.
15659         This change finishes what my commit of Thu Nov 19 17:32:37 2015 -0600
15660         (git commit c59353896) started.  It turns out that having INTERACTIVE
15661         cause `post-self-insert-hook' to run (via `newline') meant `open-line'
15662         still had the electric indent behavior, as `post-self-insert-hook'
15663         normally contains `electric-indent-post-self-insert-function' ever
15664         since `electric-indent-mode' has been on by default.  Tracing the code
15665         change in `open-line' is mildly twisty, because Artur Malabarba's
15666         earliest two commits of 24 Oct 2015 first removed the `interactive'
15667         form entirely (git commit 6939896e2) and then restored it with the new
15668         extra "p" already added (git commit bd4f04f86), such that there is no
15669         single-commit diff in which one sees the second "p" appear.  Thus this
15670         change is effectively a reversion of parts of each of those commits.
15672         This could close bug#21884, at least until further discussion.
15674 2015-11-22  Dmitry Gutov  <dgutov@yandex.ru>
15676         Adhere closer to the "implicit tag name" definition
15678         * lisp/progmodes/etags.el (etags-tags-completion-table):
15679         Adhere closer to the "implicit tag name" definition.  Simplify
15680         the regexp.  Search for the explicit tag name first, and when
15681         not found, search locally for the implicit one.  (Bug#21934)
15683 2015-11-22  Stefan Monnier  <monnier@iro.umontreal.ca>
15685         Unrevert most of regexp reentrancy abort patch
15687         The problem was in:
15688           * src/syntax.c (update_syntax_table_forward): Propertize even when truncated
15689         which is hence not unreverted.
15690         The rest is:
15691         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
15692         (UPDATE_SYNTAX_TABLE_FAST): Re-introduce.
15693         All callers in regex.c changed back to the _FAST versions.
15695         * test/automated/message-mode-tests.el: Tweak the test to rely on auto
15696         propertization in backward-sexp.
15698 2015-11-21  Paul Eggert  <eggert@cs.ucla.edu>
15700         Revert regexp reentrancy abort patch
15702         Although the patch does fix Bug#21688 and prevents a core dump,
15703         it also makes the message-mode-propertize test fail; see:
15704         https://lists.gnu.org/r/emacs-devel/2015-11/msg01667.html
15705         Perhaps someone else can come up with a better fix some day.
15706         * src/syntax.c (update_syntax_table_forward):
15707         Propertize even when truncated.
15708         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
15709         (UPDATE_SYNTAX_TABLE_FAST): Remove.
15710         All callers changed back to the non-_FAST versions.
15712 2015-11-21  Paul Eggert  <eggert@cs.ucla.edu>
15714         Add a few safety checks when ENABLE_CHECKING
15716         This was motivated by the recent addition of module code,
15717         which added some ENABLE_CHECKING-enabled checks that are
15718         useful elsewhere too.
15719         * src/alloc.c (compact_font_cache_entry):
15720         * src/fns.c (sweep_weak_table):
15721         * src/lread.c (oblookup):
15722         Use gc_asize rather than doing it by hand.
15723         * src/emacs-module.c (module_make_global_ref)
15724         (module_free_global_ref, module_vec_size):
15725         Omit assertions that lisp.h now checks.
15726         * src/lisp.h (XFASTINT, ASIZE): In functional implementations,
15727         check that the result is nonnegative.  Use eassume, as this
15728         info can help a bit when optimizing production code.
15729         (XSYMBOL) [!USE_LSB_TAG]: Assert that argument is a symbol,
15730         to be consistent with the USE_LSB_TAG case.
15731         (gc_asize): New function, when ASIZE is needed in the gc.
15732         (gc_aset): Use it.
15733         (HASH_TABLE_P): Move definition up, so that it can be used ...
15734         (XHASH_TABLE): ... here, to assert that the arg is a hash table.
15736 2015-11-21  Eli Zaretskii  <eliz@gnu.org>
15738         Simplify recording of main thread's ID on MS-Windows
15740         * src/w32term.c (w32_initialize):
15741         * src/w32console.c (initialize_w32_display):
15742         * src/w32fns.c (globals_of_w32fns): Don't record the main thread
15743         ID independently for each type of session (GUI, TTY, batch).
15744         * src/w32term.c (w32_init_main_thread): New function, records the
15745         main thread's thread ID.
15746         * src/w32term.h: Add prototype for w32_init_main_thread.
15747         * src/emacs.c (main) [WINDOWSNT]: Call w32_init_main_thread.
15749         * src/emacs-module.c [WINDOWSNT]: Rename main_thread_id to
15750         main_thread, for consistency with other threading libraries.  All
15751         users changed.  Include w32term.h.
15752         (check_main_thread) [WINDOWSNT]: Simplify the test: no need to
15753         make sure the main thread is alive, as we hold a handle on it
15754         opened by w32_init_main_thread.
15755         (module_init) [WINDOWSNT]: Reuse the thread ID recorded by
15756         w32_init_main_thread, instead of calling the requisite APIs once
15757         more.
15759 2015-11-21  Mark Oteiza  <mvoteiza@udel.edu>
15761         Backport: Fix issue where a new tempfile was created every refresh
15763         * lisp/mpc.el (mpc-format): Leave dir as relative path
15765 2015-11-21  Eli Zaretskii  <eliz@gnu.org>
15767         Call 'window-size-change-functions' for mini-windows
15769         * src/window.c (grow_mini_window, shrink_mini_window): Set the
15770         frame's 'window_sizes_changed' flag.
15771         * src/xdisp.c (redisplay_internal): Call the hooks on
15772         'window-size-change-functions' if the call to 'echo_area_display'
15773         sets the frame's 'window_sizes_changed' flag.
15774         (syms_of_xdisp) <window-size-change-functions>:
15775         Update doc string to indicate the mini-window resizes trigger a
15776         call to the hooks, and don't promise that will happen "before
15777         redisplay".  (Bug#19576, Bug#21333)
15779         * doc/lispref/windows.texi (Window Hooks): Update the description
15780         of 'window-size-change-functions'.
15782 2015-11-21  Eli Zaretskii  <eliz@gnu.org>
15784         Improve documentation of dynamic modules
15786         * src/fns.c (Frequire): Doc fix to include the dynamic module
15787         support.
15788         * src/lread.c (Fload, Vload_suffixes): Doc fixes to include the
15789         dynamic module support.
15790         (Fload): Treat the module suffix the same as '*.el' and '*.elc'
15791         wrt the MUST-SUFFIX argument.
15793         * etc/NEWS: Expand documentation of dynamically loaded modules.
15795 2015-11-21  Philipp Stephani  <phst@google.com>  (tiny change)
15797         Initial documentation for dynamic modules
15799         * etc/NEWS: Mention the new support for dynamically loaded modules.
15801 2015-11-21  Dmitry Gutov  <dgutov@yandex.ru>
15803         Add xref--etags-backend to xref-backing-functions using add-hook
15805         * lisp/progmodes/xref.el (xref-backend-functions): Move the
15806         default value into a separate `add-hook' call (bug#21964).
15808         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
15809         Don't declare the xref-backend-functions variable.
15810         It doesn't make any difference.
15812 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
15814         Fix double-decrement bug when freeing global refs
15816         * src/emacs-module.c (module_free_global_ref): Add a FIXME
15817         comment about error reporting.  Fix a recently-introduced typo
15818         that double-decremented the refcount.
15820 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
15822         Declare emacs_module_init in the module API
15824         * src/emacs-module.h (emacs_module_init): New decl.
15825         Without it, GCC might complain about a module that defines
15826         emacs_module_init without using it.  This also checks the
15827         API better.
15829 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
15831         Fix module test to use ptrdiff_t nargs too
15833         * modules/mod-test/mod-test.c (Fmod_test_return_t)
15834         (Fmod_test_sum, Fmod_test_signal, Fmod_test_throw)
15835         (Fmod_test_non_local_exit_funcall, Fmod_test_globref_make)
15836         (Fmod_test_string_a_to_b, Fmod_test_userptr_make)
15837         (Fmod_test_userptr_get, Fmod_test_vector_fill)
15838         (Fmod_test_vector_eq): Arg counts are ptrdiff_t, not int.
15839         (finalizer): Remove; no longer used.
15841 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
15843         Fix reindent-introduced typo in module code
15845         * src/emacs-module.c (MODULE_SETJMP_1): Fix typo that I
15846         introduced while reindenting the code earlier, and add a
15847         comment explaining the unusual use of do-while here.
15849 2015-11-20  Anders Lindgren  <andlind@gmail.com>
15851         Fixed bug#19576: `write-file' saves wrong buffer.
15853         If a function on the hook `window-size-change-functions' doesn't
15854         restore the current buffer, functions that save and restore the
15855         current window configuration (like `y-or-no-p') could silently
15856         change the current buffer.  When `write-file' asked the user
15857         confirmation to overwrite a file, `y-or-no-p' changed the current
15858         buffer, and the wrong buffer was saved to the file.
15860         * lisp/follow.el (follow-windows-start-end): Call `select-frame'
15861         using the `norecord' parameter.
15862         (follow-window-size-change): Restore current buffer. Call
15863         `select-frame' using the `norecord' parameter. Cleanup.
15865 2015-11-20  John Wiegley  <johnw@newartisans.com>
15867         Correct a documentation error in frames.texi
15869 2015-11-20  Stephen Leake  <stephen_leake@stephe-leake.org>
15871         * lisp/cedet/mode-local.el: Delete obsolete comment
15873 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
15875         Module function arg counts are ptrdiff_t, not int
15877         * src/emacs-module.c (struct module_fun_env)
15878         (module_make_function, module_funcall, Fmodule_call):
15879         * src/emacs-module.h (struct emacs_runtime, struct emacs_env_25):
15880         Use ptrdiff_t, not int, for arg counts.
15881         * src/emacs-module.c (module_make_function): Don’t bother
15882         checking arity against MOST_POSITIVE_FIXNUM, as that’s
15883         unnecessary here.  Make the checking clearer by negating it.
15884         (module_make_function, Fmodule_call): No need to use xzalloc
15885         since the storage doesn’t need to be cleared.
15886         (module_funcall): Don’t use VLA, since C11 doesn’t guarantee support
15887         for it, and many implementations are buggy with large VLAs anyway.
15888         Use SAFE_ALLOCA_LISP instead.
15889         (module_vec_set): Don’t crash if i < 0.
15890         (module_vec_get): Don’t crash if i < MOST_NEGATIVE_FIXNUM.
15891         (module_vec_set, module_vec_get): Do fixnum checks only when
15892         i is out of array bounds, for efficiency in the usual case.
15893         (Fmodule_load): Simplify fixnum range check.
15894         (Fmodule_call): Simplify arity check.  Use xnmalloc to detect
15895         integer overflow in array allocation size.
15897 2015-11-20  Eli Zaretskii  <eliz@gnu.org>
15899         Minor improvements in module test
15901         * modules/mod-test/mod-test.c: Include stdlib.h, to avoid warnings
15902         about missing prototype of malloc.
15903         * modules/mod-test/Makefile (CFLAGS): Add -std=gnu99, to avoid
15904         compiler warnings.
15906 2015-11-20  Eli Zaretskii  <eliz@gnu.org>
15908         Improve MS-Windows implementation in dynlib.c
15910         * src/dynlib.c [WINDOWSNT]: Include errno.h, lisp.h, and w32.h.
15911         No need to include windows.h, as w32.h already does that.
15912         <dynlib_last_err>: New static variable.
15913         (dynlib_reset_last_error): New function.
15914         (dynlib_open): Convert forward slashes to backslashes.  Convert
15915         file names from UTF-8 to either UTF-16 or the current ANSI
15916         codepage, and call either LoadLibraryW or LoadLibraryA.  If the
15917         argument is NULL, return a handle to the main module, like
15918         'dlopen' does.  Record the error, if any, for use by dynlib_error.
15919         (dynlib_sym): Check the handle for validity. Record the error, if
15920         any, for use by dynlib_error.
15921         (dynlib_error): Call w32_strerror to produce the error string, and
15922         zero out the last error code, like dlerror does.
15923         (dynlib_close): Check the handle for validity.  Record the error,
15924         if any, for use by dynlib_error.  Don't call FreeLibrary with a
15925         handle for the main module.
15926         * src/w32.c (globals_of_w32): Call dynlib_reset_last_error.
15928 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
15930         Include-file tweaks for modules
15932         * src/dynlib.c, src/emacs-module.c: Include <config.h> first.
15933         * src/dynlib.h: Do not include config.h.
15934         It’s every .c file’s responsibility to include config.h first.
15935         * src/emacs-module.c: Include emacs-module.h immediately after
15936         config.h, to test that emacs-module.h doesn’t depend on
15937         include files other than config.h.
15939 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
15941         Simplify push_handler and profile its malloc
15943         * src/lisp.h (PUSH_HANDLER): Remove.
15944         All callers changed to use push_handler directly.
15945         * src/eval.c (internal_condition_case)
15946         (internal_condition_case_1, internal_condition_case_2)
15947         (internal_condition_case_n):
15948         Use same pattern as for other invokers of push_handler.
15949         (push_handler, push_handler_nosignal): Use call-by-value
15950         instead of call-by-reference.  All uses changed.
15951         (push_handler): Simplify by rewriting in terms of
15952         push_handler_nosignal.
15953         (push_handler_nosignal): Profile any newly allocated memory.
15955 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
15957         * src/emacs-module.h: Include stddef.h, not stdlib.h.
15959 2015-11-20  Juanma Barranquero  <lekktu@gmail.com>
15961         Discover repository version in linked worktrees (bug#21930)
15963         * lisp/version.el (emacs-repository--version-git-1): Do not assume
15964         HEAD is at .git/HEAD, it can also be at .git/worktrees/<branch>/HEAD.
15965         (emacs-repository-get-version): Grok linked worktrees when EXTERNAL
15966         is nil too.
15968 2015-11-20  Juri Linkov  <juri@linkov.net>
15970         * lisp/replace.el (occur-regexp-descr): New function.
15971         (occur-1, occur-engine): Use it.
15973         * lisp/isearch.el (isearch-occur): Propertize regexp with
15974         isearch-string and isearch-regexp-function-descr for
15975         occur-regexp-descr to display the correct description
15976         message in the header (bug#21176, bug#21180).
15978 2015-11-20  Karl Fogel  <kfogel@red-bean.com>
15980         Revert `open-line' electric-indent sensitivity
15982         * lisp/simple.el (open-line): Remove electric indent code.
15983           (electric-indent-just-newline): Don't declare.
15985         * test/automated/simple-test.el (open-line-indent): Adjust test.
15987         This partly reverts Artur Malabarba's change that added electric
15988         indent sensitivity to `open-line' (Oct 24 22:26:27 2015 +0100, git
15989         commit bd4f04f86), and adjusts a new test he added right afterwards
15990         (Sat Oct 24 23:43:06 2015 +0100, git commit 207f235e3) accordingly.
15991         However, the new INTERACTIVE argument to `open-line', which he also
15992         added in the first commit, is not reverted here.
15994         See the thread "Questioning the new behavior of `open-line'." on the
15995         Emacs Devel mailing list, and in particular this message:
15997           From: Artur Malabarba
15998           Subject: Re: Questioning the new behavior of `open-line'.
15999           To: Karl Fogel
16000           Cc: David Kastrup, Pierpaolo Bernardi, emacs-devel
16001           Date: Wed, 18 Nov 2015 21:03:58 +0000
16002           Message-ID: \
16003             <CAAdUY-KN06pvCMy5bt3+Buk3yeKjf6n9iB2FaSTTOPpCqPwyhA@mail.gmail.com>
16005           https://lists.gnu.org/r/emacs-devel/2015-11/msg01707.html
16007 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
16009         Omit unnecessary clear in Fmodule_load
16011         * src/emacs-module.c (Fmodule_load):
16012         Simplify and avoid unnecessary initialization of priv member to 0.
16014         * src/emacs-module.c: (module_vec_set, module_vec_get, module_vec_size)
16016 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
16018         Prefer signed integer types in module code
16020         Generally speaking, at the C level the Emacs source code prefers
16021         signed types like ‘ptrdiff_t’ to unsigned types like ‘size_t’,
16022         partly to avoid the usual signedness confusion when comparing values.
16023         Change the module API to follow this convention.
16024         Use ‘int’ for small values that can’t exceed INT_MAX.
16025         * modules/mod-test/mod-test.c (Fmod_test_globref_make)
16026         (Fmod_test_string_a_to_b, Fmod_test_vector_fill)
16027         (Fmod_test_vector_eq):
16028         * src/emacs-module.c (struct emacs_value_frame)
16029         (module_make_global_ref, module_free_global_ref)
16030         (module_copy_string_contents, module_make_string)
16031         (module_vec_set, module_vec_get, module_vec_size):
16032         * src/emacs-module.h (struct emacs_runtime, struct emacs_env_25):
16033         * src/lread.c (suffix_p):
16034         Prefer signed to unsigned integer types.
16036 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
16038         Omit ‘const’ on locals
16040         Remove ‘const’ qualifier from locals that were newly added.
16041         We don’t normally bother declaring locals with ‘const’ even
16042         though they are not modified, for the same reason we don’t
16043         bother declaring them with ‘register’ even though their
16044         addresses are not taken; the advantage in compile-time
16045         checking isn’t worth the loss of readability.
16046         * modules/mod-test/mod-test.c (Fmod_test_non_local_exit_funcall)
16047         (Fmod_test_vector_fill, Fmod_test_vector_eq):
16048         * src/emacs-module.c (MODULE_SETJMP_1)
16049         (module_make_global_ref, module_free_global_ref)
16050         (module_non_local_exit_get, module_make_function)
16051         (module_extract_integer, module_extract_float)
16052         (module_get_user_ptr, module_set_user_ptr)
16053         (module_get_user_finalizer, module_set_user_finalizer)
16054         (module_vec_get, Fmodule_call)
16055         (module_non_local_exit_signal_1)
16056         (module_non_local_exit_throw_1, lisp_to_value)
16057         (finalize_storage, allocate_emacs_value, mark_modules)
16058         (module_handle_signal, module_handle_throw)
16059         (module_format_fun_env):
16060         * src/eval.c (push_handler, push_handler_nosignal)
16061         (init_handler):
16062         * src/lread.c (suffix_p):
16063         Omit unnecessary ‘const’.
16065 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
16067         Prefer intmax_t to int64_t in module code
16069         * modules/mod-test/mod-test.c (sum, Fmod_test_sum):
16070         * src/emacs-module.c (module_extract_integer)
16071         (module_make_integer):
16072         * src/emacs-module.h (struct emacs_env_25):
16073         Prefer intmax_t to int64_t.  This doesn’t change the generated
16074         code on any of the machines Emacs currently ports to, but it’s
16075         at least in theory more future-proof as C99 doesn’t guarantee
16076         that int64_t exists.
16078 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
16080         Rename module.c to emacs-module.c, etc.
16082         * src/emacs-module.c: Rename from src/module.c.
16083         * src/emacs-module.h: Rename from src/module.h.
16084         All uses changed.
16086 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
16088         Fix minor module problems found by static checking
16090         * src/dynlib.c (dynlib_close): #ifdef out for now, as it’s not used.
16091         * src/eval.c, src/lisp.h (lisp_eval_depth): Now static.
16092         * src/emacs-module.c (Fmodule_load): Fix pointer signedness bug.
16093         (Fmodule_call): Tell GCC that the default case is unreachable.
16095 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
16097         Style fixes for indenting etc. in module code
16099         This is mostly indenting and spacing changes.  Also, remove
16100         some unnecessary static decls instead of bothering to reindent them.
16101         * src/emacs-module.h (EMACS_EXTERN_C_BEGIN): Remove, and do this inline,
16102         as most other Emacs files do for this sort of thing.
16104 2015-11-19  Eli Zaretskii  <eliz@gnu.org>
16106         Minor improvements in modules testing Makefile
16108         * modules/mod-test/Makefile (EMACS, SO): New variables.
16109         (CFLAGS): When SO = dll, don't use -fPIC.
16110         (check): New target, runs the test.
16112 2015-11-19  Eli Zaretskii  <eliz@gnu.org>
16114         * .gitignore: Add "*.dll".
16116 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
16118         Migrate modules/.gitignore into .gitignore
16120         * .gitignore: Add former contents of modules/.gitignore.
16121         * modules/.gitignore: Remove.
16123 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
16125         Add copyright notices to module code
16127         Put them in the usual format for GNU Emacs copyright notices.
16129 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
16131         Rename emacs_module.h to module.h
16133         * src/module.h: Rename from src/emacs_module.h.
16134         All uses changed.
16136 2015-11-19  Juanma Barranquero  <lekktu@gmail.com>
16138         * src/module.c (Fmodule_load): Remove unused vars `doc_name', `args'
16140         * src/lread.c (Fload): Remove unused variable `size'
16142 2015-11-19  Alan Mackenzie  <acm@muc.de>
16144         src/keyboard.c (pre-command-hook): Fix typo in doc string: "pre" -> "post".
16146 2015-11-19  Dmitry Gutov  <dgutov@yandex.ru>
16148         Prioritize looking inside vc-parent-buffer over log-view-mode fallback
16150         * lisp/vc/vc.el (vc-deduce-fileset): Prioritize looking inside
16151         vc-parent-buffer over log-view-mode fallback (bug#21955).
16153 2015-11-18  Alan Mackenzie  <acm@muc.de>
16155         lisp/isearch.el: Eliminate macro isearch-call-message, replacing with funcall.
16157 2015-11-18  Ken Brown  <kbrown@cornell.edu>
16159         * configure.ac (LIBMODULES): Don’t define on Cygwin
16161 2015-11-18  Eli Zaretskii  <eliz@gnu.org>
16163         Fix MS-Windows build --with-modules
16165         * src/module.c: Reformat copyright commentary.
16166         (module_vec_get): Use explicit cast to size_t to avoid compiler
16167         warning in 32-bit builds.
16168         (check_main_thread) [WINDOWSNT]: Fix letter-case in Windows APIs.
16169         Compare thread IDs directly, as GetThreadId is not available
16170         before Windows Vista.
16171         (check_main_thread) [WINDOWSNT]: Duplicate the thread handle
16172         without using APIs and constants not available on XP and older
16173         systems.  Obtain and store the thread ID as well.
16175 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
16176             Philipp Stephani  <phst@google.com>
16178         Add dynamic module test and helper script
16180         Add 'modhelp.py' script (python2) to automate module testing and
16181         module generation.
16183         To build and test all modules in the modules/ dir
16184           $ ./modhelp.py test
16186         To generate a module from template code (good starting point)
16187           $ ./modhelp init mynewtestmodule
16189         See the script -h option for more documentation.
16191         * modules/modhelp.py: New module helper script.
16192         * modules/mod-test/Makefile: New file. Makefile for the test module.
16193         * modules/mod-test/mod-test.c: New file. Test module source file.
16194         * modules/mod-test/test.el: New file. ert test suite for the test module.
16195         * modules/.gitignore: New file. Local .gitignore file.
16197 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
16199         Make 'Fload' look for modules
16201         'Fload' can now load dynamic modules. This also makes 'require' work.
16203         * src/lread.c:
16204           (suffix_p): New function.
16205           (Fload): Use 'suffix_p'.  Call 'Fmodule_load' when we try to load a file
16206           with a module suffix.
16207           (syms_of_lread): Append module suffix to 'Vload_suffixes'.
16209 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
16210             Philipp Stephani  <phst@google.com>
16212         Add dynamic module module support
16214         * configure.ac: Add '--with-modules' option.  Conditionally add
16215           dynlib.o and module.o to the list of objects.  Add any system
16216           specific flags to the linker flags to support dynamic libraries.
16217         * m4/ax_gcc_var_attribute.m4: Add autoconf extension to test gcc
16218           attributes.
16219         * src/Makefile.in: Conditionally add module objects and linker flags.
16220         * src/alloc.c (garbage_collect_1): protect module local values from
16221           GC.
16222         * src/lisp.h: Add 'module_init' and 'syms_of_module' prototypes.
16223         * src/emacs-module.h: New header file included by modules.  Public
16224           module API.
16225         * src/emacs-module.c: New module implementation file.
16227 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
16229         Add new User Pointer (User_Ptr) type
16231         * src/lisp.h: Add new Lisp_Misc_User_Ptr type.
16232         (XUSER_PTR): New User_Ptr accessor.
16233         * src/alloc.c (make_user_ptr): New function.
16234         (mark_object, sweep_misc): Handle Lisp_Misc_User_Ptr.
16235         * src/data.c (Ftype_of): Return 'user-ptr' for user pointer.
16236         (Fuser-ptrp): New user pointer type predicate function.
16237         (syms_of_data): New 'user-ptrp', 'user-ptr' symbol.  New 'user-ptrp'
16238         subr.
16239         * src/print.c (print_object): Add printer for User_Ptr type.
16241 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
16242             Philipp Stephani  <phst@google.com>
16244         Add portable layer for dynamic loading
16246         * src/dynlib.h: New file.
16247         * src/dynlib.c: New file.
16249 2015-11-18  Philipp Stephani  <phst@google.com>
16251         Add catch-all & no-signal version of PUSH_HANDLER
16253         Ground work for modules. Add a non-signaling version of PUSH_HANDLER and
16254         a new "catch-all" handler type.
16256         * src/eval.c (init_handler, push_handler, push_handler_nosignal): New
16257           functions.
16258         * src/fns.c (hash_remove_from_table): Expose function public.
16259         * src/lisp.h: New handler type, define macro to push_handler call.
16261 2015-11-18  Ken Brown  <kbrown@cornell.edu>
16263         Silence byte-compiler warning
16265         * lisp/server.el (server-process-filter): Silence byte-compiler
16266         warning.
16268 2015-11-18  Paul Eggert  <eggert@cs.ucla.edu>
16270         Quote symbols in docstrings using `'
16272         Be more systematic about quoting symbols `like-this' rather than
16273         `like-this or 'like-this' in docstrings.  This follows up Artur
16274         Malabarba's email in:
16275         https://lists.gnu.org/r/emacs-devel/2015-11/msg01647.html
16277 2015-11-18  Peder O. Klingenberg  <peder@klingenberg.no>
16279         Fix savegames in dunnet
16281         * lisp/play/dunnet.el (dun-rot13): Use the standard rot13-region instead
16282           of separate implementation.
16284 2015-11-18  Artur Malabarba  <bruce.connor.am@gmail.com>
16286         * lisp/emacs-lisp/package.el (package--with-response-buffer):
16288         Ensure we're at the start of the buffer before searching for
16289         the end of headers.
16291 2015-11-18  Xue Fuqiao  <xfq.free@gmail.com>
16293         * admin/release-process: Improve wording.
16295 2015-11-18  Xue Fuqiao  <xfq.free@gmail.com>
16297         Backport: * CONTRIBUTE: Remove information about feature freeze.
16299         (cherry picked from commit ae0653b5ab9ee223751ec389b87011963e1cbbef)
16301 2015-11-18  Xue Fuqiao  <xfq.free@gmail.com>
16303         Backport: Document the release process
16305         * admin/notes/versioning: Add information about RC releases.
16306         * admin/release-process: Document the release process.
16307         * admin/authors.el (authors-ignored-files):
16308         * admin/README: Change FOR-RELEASE to release-process.
16309         * CONTRIBUTE:
16310         * admin/notes/bugtracker: Don't mention FOR-RELEASE.
16312         (cherry picked from commit 9a4aa0f5945a03611ae29c516025dbd353bd26ab)
16314 2015-11-18  Xue Fuqiao  <xfq.free@gmail.com>
16316         Backport: * admin/release-process: Rename from admin/FOR-RELEASE.
16318         (cherry picked from commit f8cc14b59700e51a4e31139c0a65c8154995e055)
16320 2015-11-18  Xue Fuqiao  <xfq.free@gmail.com>
16322         Backport: Mention CONTRIBUTE in README
16324         Mention CONTRIBUTE in README, since it was moved from etc/ to root.
16325         * etc/TODO: Remove the reference to `etc/CONTRIBUTE'.
16326         * README: Mention CONTRIBUTE.
16328         (cherry picked from commit ed2e7e20ae0945288c98091f308f5460c3453873)
16330 2015-11-18  Paul Eggert  <eggert@cs.ucla.edu>
16332         Fix docstring quoting problems with ‘ '’
16334         Problem reported by Artur Malabarba in:
16335         https://lists.gnu.org/r/emacs-devel/2015-11/msg01513.html
16336         Most of these fixes are to documentation; many involve fixing
16337         longstanding quoting glitches that are independent of the
16338         recent substitute-command-keys changes.  The changes to code are:
16339         * lisp/cedet/mode-local.el (mode-local-augment-function-help)
16340         (describe-mode-local-overload):
16341         Substitute docstrings before displaying them.
16342         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
16343         Quote the generated docstring for later substitution.
16345 2015-11-17  Eli Zaretskii  <eliz@gnu.org>
16347         Improve configure --help text for wide ints
16349         * configure.ac (wide-int): Clarify user-level advantages and
16350         disadvantages.
16352 2015-11-17  Stephen Leake  <stephen_leake@stephe-leake.org>
16354         Improve doc string
16356         * lisp/progmodes/xref.el (xref-backend-references): Improve doc string.
16358 2015-11-17  Paul Eggert  <eggert@cs.ucla.edu>
16360         eval_sub followed dangling pointer when debugging
16362         Problem reported by Pip Cet (Bug#21245).
16363         This bug could occur in eval_sub if the C compiler reused
16364         storage associated with the ‘argvals’ local after ‘argvals’
16365         went out of scope, and if the Elisp debugger stopped on Elisp
16366         function exit and accessed ‘argvals’.  It could also occur if
16367         a variadic function was called with so many arguments (over
16368         2048 args on x86-64) that SAFE_ALLOCA_LISP called malloc, then
16369         SAFE_FREE freed the arguments, then the memory manager used
16370         the storage for other purposes, then the debugger accessed the
16371         arguments.
16372         * src/eval.c (eval_sub): Declare ‘argvals’ at top level of
16373         function body.  Simplify local decls.
16374         When allocating args via SAFE_ALLOCA, call
16375         debugger before invoking SAFE_FREE, as the debugger needs
16376         access to the args.
16377         (eval_sub, apply_lambda): Rework to avoid need for
16378         set_backtrace_debug_on_exit hack.  This is cleaner,
16379         and should work better with buggy custom debuggers.
16381 2015-11-17  Daiki Ueno  <ueno@gnu.org>
16383         * lisp/image-mode.el: Support encrypted file
16385         (image-toggle-display-image): Read content from the buffer instead
16386         of the file, if the buffer holds a decrypted data.  (Bug#21870)
16388 2015-11-17  Paul Eggert  <eggert@cs.ucla.edu>
16390         ELF unexec: align section header
16392         This ports the recent unexelf.c changes to Fedora x86-64
16393         when configured with GCC’s -fsanitize=undefined option.
16394         * src/unexelf.c (unexec): Align new_data2_size to a multiple
16395         of ElfW (Shdr)’s alignment, so that NEW_SECTION_H returns a
16396         pointer aligned appropriately for its type.
16398 2015-11-17  Andreas Schwab  <schwab@linux-m68k.org>
16400         Do more checks on bytecode objects (Bug#21929)
16402         * src/eval.c (funcall_lambda): Check size of compiled function
16403         object.
16404         (Ffetch_bytecode): Likewise.
16406 2015-11-16  Johan Bockgård  <bojohan@gnu.org>
16408         pcase.el: Fix edebugging of backquoted cons patterns
16410         * lisp/emacs-lisp/pcase.el (pcase-QPAT): Fix edebugging of backquoted
16411         cons patterns. (Bug#21920)
16413 2015-11-16  Paul Eggert  <eggert@cs.ucla.edu>
16415         Improve fix for regex reentrancy abort
16417         Suggested by Stefan Monnier (Bug#21688).
16418         * src/syntax.c (update_syntax_table_forward):
16419         Remove recently-added PROPERTIZE arg, and assume it is true.
16420         All callers changed.
16421         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
16422         Invoke update_syntax_table directly.
16424 2015-11-16  Artur Malabarba  <bruce.connor.am@gmail.com>
16426         * lisp/faces.el (faces--attribute-at-point): Use `face-list-p'
16428         * lisp/emacs-lisp/package.el (package--with-response-buffer): Missing require
16430         * lisp/emacs-lisp/nadvice.el (add-function): Escape quote
16432 2015-11-16  Vasily Korytov  <vasily.korytov@yahoo.com>
16434         Recognize .rbw and .pyw files (bug#18753)
16436         * lisp/progmodes/python.el (auto-mode-alist):
16437         Recognize .pyw files.
16439         * lisp/progmodes/ruby-mode.el (auto-mode-alist):
16440         Recognize .rbw files.
16442 2015-11-16  Dmitry Gutov  <dgutov@yandex.ru>
16444         Fix ruby-mode auto-mode-alist entry
16446         * lisp/progmodes/ruby-mode.el (auto-mode-alist): Add grouping
16447         around the extensions (bug#21257).
16449 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
16451         Fix etags completion near eob
16453         * lisp/progmodes/etags.el (tags-completion-at-point-function):
16454         Use `goto-char', to avoid the end-of-buffer error (bug#20061).
16456 2015-11-15  Alan Mackenzie  <acm@muc.de>
16458         De-pessimize detection of C++ member initialization lists.
16460         list/progmodes/cc-engine.el (c-back-over-list-of-member-inits): New macro.
16461         (c-back-over-member-initializers): Reformulate such that c-at-toplevel-p
16462         is only called when a construct "looks right" rather than continually.
16463         (c-guess-basic-syntax, CASE 5R): Add a check for the mode being C++ Mode.
16465 2015-11-15  Artur Malabarba  <bruce.connor.am@gmail.com>
16467         Backport: * lisp/emacs-lisp/package.el: Fix a decoding issue.
16469         * lisp/url/url-handlers.el (url-insert-file-contents): Move some code to
16470         `url-insert-buffer-contents'.
16471         (url-insert-buffer-contents): New function
16473         (package--with-response-buffer): Use `url-insert-buffer-contents'.
16474         The previous code had some issues with decoding. Refactoring that
16475         function allows us to use the decoding from url-handlers while still
16476         treating both sync and async requests the same.
16478 2015-11-15  Stephen Leake  <stephen_leake@stephe-leake.org>
16480         Improve a few doc strings, comments
16482         * lisp/cedet/cedet-global.el (cedet-gnu-global-expand-filename):
16483         * lisp/cedet/ede/locate.el (ede-locate-base):
16484         * lisp/cedet/semantic/symref.el (semantic-symref-calculate-rootdir):
16485         * src/fns.c (Fdelq): Improve doc string.
16487         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions): Add FIXME.
16489 2015-11-15  Anders Lindgren  <andlind@gmail.com>
16491         Enhance NSTRACE (trace output for NextStep).
16493         Trace can be disabled for groups of functions. By default, event
16494         functions and functions that generate lots of output are disabled.
16496         Trace output of Objective-C functions now use the "[ClassName
16497         parameter:]" form.
16499         * src/nsterm.h (NSTRACE_ALL_GROUPS, NSTRACE_GROUP_EVENTS)
16500         (NSTRACE_GROUP_UPDATES, NSTRACE_GROUP_FRINGE, NSTRACE_GROUP_COLOR)
16501         (NSTRACE_GROUP_GLYPHS, NSTRACE_GROUP_FOCUS): New macros,
16502         controlling in which function groups trace should be active.
16503         (NSTRACE_WHEN): Support for silencing a function, this also
16504         silencing all called functions.
16505         (NSTRACE_UNSILENCE): New macro, used to re-enable trace.
16506         (NSTRACE_FMT_FSTYPE, NSTRACE_ARG_FSTYPE): New macros, used to
16507         print the full screen state in NSTRACE functions.
16509         * src/nsterm.m (nstrace_depth, nstrace_num): Made volatile as they
16510         can be accessed from multiple threads.
16511         (nstrace_enabled_global): New variable, when FALSE, trace is
16512         silenced.
16513         (nstrace_restore_global_trace_state): New function, used to
16514         restore `nstrace_enabled_global' at end of block.
16515         ([EmacsView setFrame:], [EmacsWindow setFrame:display:])
16516         ([EmacsWindow setFrame:display:animation:])
16517         ([EmacsWindow setFrameTopLeftPoint:]): New functions, print trace
16518         and call corresponding super function.
16519         (Many functions): Add or enhance trace output.
16521         * src/nsimage.m (ns_image_from_file): Enhanced trace output.
16523         * src/nsfns.m (x_set_tool_bar_lines): Add trace output.
16525         * src/nsmenu.m ([EmacsToolbar setVisible:]): New function, print trace
16526         and call corresponding super function.
16528 2015-11-15  Anders Lindgren  <andlind@gmail.com>
16530         Fixed a toolbar related issue on OS X.
16532         Earlier, when toggling the tool-bar in a maximized frame, the
16533         frame size didn't match the number of text lines, leaving an
16534         unused area at the bottom of the frame.
16536         * src/nsfns.m (x_set_tool_bar_lines): Exit maximized and full height
16537         fullscreen modes when tool bar is disabled.
16539 2015-11-15  Anders Lindgren  <andlind@gmail.com>
16541         Fixed OS X 10.6.8 build issue (bug#21862).
16543         * src/nsterm.h (EmacsView): Add missing declarations.
16544         * src/nsterm.m ([EmacsView windowDidBecomeKey]): New method, like
16545         the standard method but without the notification parameter.
16546         Intended to be used for direct calls.
16547         ([EmacsView windowDidEnterFullScreen]): Call the non-notification
16548         version of `windowDidBecomeKey'. Made the notification method call
16549         the non-notification method instead of the vice versa.
16550         (NSWindowDidEnterFullScreenNotification): Deleted, no longer
16551         needed.
16553 2015-11-15  Artur Malabarba  <bruce.connor.am@gmail.com>
16555         * lisp/faces.el (faces--attribute-at-point): Fix an issue
16557         Previous code would signal an error when the face at point was
16558         a manually built list of attributes such as '(:foreground "white").
16560         * test/automated/faces-tests.el (faces--test-color-at-point): Add a test
16562 2015-11-15  Paul Eggert  <eggert@cs.ucla.edu>
16564         Fix regex abort when it tries to reenter itself
16566         Problem reported by Ken Raeburn.
16567         Solution suggested by Stefan Monnier (Bug#21688).
16568         * src/regex.c (re_match_2_internal):
16569         Use new _FAST functions to avoid regex code reentering itself.
16570         * src/syntax.c (update_syntax_table_forward): New arg PROPERTIZE.
16571         All callers changed.
16572         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST)
16573         (UPDATE_SYNTAX_TABLE_FAST): New inline functions.
16575 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
16577         Improve Ruby 1.9-style keyword keys highlighting
16579         * lisp/progmodes/ruby-mode.el (ruby-font-lock-keywords):
16580         Handle required keyword arguments (bug#21367).
16581         And highlight the colon together with the name.
16583 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
16585         Unify the absolutely equal xref-backend-references implementations
16587         * lisp/progmodes/elisp-mode.el (xref-backend-references):
16588         Remove.
16590         * lisp/progmodes/etags.el (xref-backend-references):
16591         Remove.
16593         * lisp/progmodes/xref.el (xref-backend-references):
16594         Define the default implementation.
16596 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
16598         Update project-find-regexp for the new xref API
16600         * lisp/progmodes/project.el (project--read-regexp):
16601         Update to use the new xref API methods.
16603         * lisp/progmodes/xref.el (xref-find-backend): Autoload.
16605 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
16607         Fix replacing a match with a shorter string
16609         In effect, partially reverting fe973fc.
16611         * lisp/progmodes/xref.el (xref-query-replace): Store the end
16612         of each match as a marker again, instead of length.
16613         (xref--query-replace-1): Update accordingly.
16615 2015-11-14  Artur Malabarba  <bruce.connor.am@gmail.com>
16617         * lisp/progmodes/xref.el (xref-pop-marker-stack): Downgrade errors
16619         Signal user-errors instead.
16621 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
16623         Document 'describe-symbol'
16625         * doc/emacs/help.texi (Help Summary): Mention "C-h o".
16626         (Name Help): Document "C-h o" and describe-symbol.
16628         * lisp/help-fns.el (describe-symbol): Doc fix.
16630 2015-11-14  Paul Eggert  <eggert@cs.ucla.edu>
16632         Change test name to avoid spellcheck issue.
16634 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
16636         Avoid signaling an error in 'describe-symbol'
16638         * lisp/help-fns.el (describe-symbol): Avoid errors when the symbol
16639         exists as a function/variable/face/etc., but is undocumented.
16641         * test/automated/help-fns.el (help-fns-test-describe-symbol): New
16642         test.
16644 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
16646         * INSTALL (--with-cairo): Document this new configure option.
16648 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
16650         Document that GNU Make >= 3.81 is required to build Emacs
16652         * doc/lispref/internals.texi (Building Emacs): Document that GNU
16653         Make 3.81 or later is now required.
16655 2015-11-14  Artur Malabarba  <bruce.connor.am@gmail.com>
16657         Backport: * lisp/emacs-lisp/package.el: Refactor -with-work-buffer-async.
16659         (package--with-work-buffer-async): Reimplement as
16660         `package--with-response-buffer'.
16661         (package--with-work-buffer): Mark obsolete.
16662         (package--with-response-buffer): New macro. This is a more self
16663         contained and less contrived version of
16664         `package--with-work-buffer-async'.  It uses keyword arguments,
16665         doesn't have async on the name, doesn't fallback on
16666         `package--with-work-buffer', and has _much_ simpler error
16667         handling.  On master, this macro will soon be part of another
16668         library (either standalone or inside url.el), which is why this
16669         commit is not to be merged back.
16671         (package--check-signature, package--download-one-archive)
16672         (package-install-from-archive, describe-package-1): Use it.
16674         (package--download-and-read-archives): Let
16675         `package--download-one-archive' take care of calling
16676         `package--update-downloads-in-progress'.
16678 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
16680         * CONTRIBUTE (Branches): Improve wording for back-ported commits.
16682 2015-11-14  Dmitry Gutov  <dgutov@yandex.ru>
16684         Use generic dispatch for xref backends
16686         * lisp/progmodes/xref.el (xref-backend-functions):
16687         New variable.
16688         (xref-find-function): Remove.
16689         (xref-find-backend)
16690         (xref--etags-backend): New functions.
16691         (xref-identifier-at-point-function)
16692         (xref-identifier-completion-table-function): Remove.
16693         (xref-backend-definitions, xref-backend-references)
16694         (xref-backend-apropos, xref-backend-identifier-at-point)
16695         (xref-backend-identifier-completion-table):
16696         New generic functions.
16698         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
16699         Add `elisp--xref-backend' to the beginning of
16700         `xref-backend-functions', locally.  Delete references to
16701         removed functions and vars.
16702         (elisp-xref-find): Remove.
16703         (elisp--xref-backend): New function.
16704         (elisp--xref-find-references, elisp--xref-find-apropos)
16705         (elisp--xref-identifier-completion-table):
16706         Turn into appropriately named generic methods.
16708         * lisp/progmodes/etags.el (etags-xref-find): Remove.
16709         (xref-backend-identifier-completion-table)
16710         (xref-backend-references, xref-backend-definitions)
16711         (xref-backend-apropos): New generic methods.
16713 2015-11-14  Juri Linkov  <juri@linkov.net>
16715         Support rectangular regions for more commands
16717         * lisp/simple.el (region-extract-function): Handle the arg
16718         value ‘bounds’.
16719         (region-insert-function): New function.
16720         (shell-command-on-region): Add arg ‘region-noncontiguous-p’.
16721         If non-nil, operate on multiple chunks.
16722         (region-noncontiguous-p): New function.
16724         * lisp/rect.el: Add function rectangle--insert-region
16725         around region-insert-function.
16726         (extract-rectangle-bounds): New function.
16727         (rectangle--extract-region): Handle the arg value ‘bounds’.
16728         (rectangle--insert-region): New function.
16730         * lisp/emulation/cua-rect.el: Add function cua--insert-rectangle
16731         around region-insert-function.
16732         (cua--extract-rectangle-bounds): New function.
16733         (cua--rectangle-region-extract): Handle the arg value ‘bounds’.
16735         * lisp/replace.el (query-replace, query-replace-regexp): Add arg
16736         ‘region-noncontiguous-p’.  Use ‘use-region-p’.
16737         (query-replace-regexp-eval, map-query-replace-regexp)
16738         (replace-string, replace-regexp): Use ‘use-region-p’.
16739         (keep-lines, flush-lines, how-many): Use ‘use-region-p’.
16740         (perform-replace): Add arg ‘region-noncontiguous-p’.
16741         If non-nil, operate on multiple chunks.
16743         * src/casefiddle.c (Fdowncase_region): Add arg ‘region-noncontiguous-p’.
16744         If non-nil, operate on multiple chunks.  (Bug#19829)
16746 2015-11-14  Dmitry Gutov  <dgutov@yandex.ru>
16748         Handle multiple matches on the same line; add highlighting
16750         * lisp/progmodes/xref.el (xref-location-marker): Interpret the
16751         column value in characters.
16752         (xref--collect-matches): Rename from `xref--collect-match'.
16753         Search for all matches in the hit line.  Add `highlight' face to
16754         the matched region in the summary.  Update both callers.
16756 2015-11-14  Dmitry Gutov  <dgutov@yandex.ru>
16758         Replace xref-match-bounds with xref-match-length
16760         Relying on xref-location-marker to point to the beginning of the match
16762         * lisp/progmodes/xref.el (xref-match-bounds): Remove.
16763         (xref-match-length): Add.
16764         (xref-make-match): Change the arguments.
16765         (xref--match-buffer-bounds): Remove.
16766         (xref-match-item): Store length, instead of end-column.
16767         (xref-pulse-momentarily)
16768         (xref--collect-match)
16769         (xref--query-replace-1): Update accordingly.
16770         (xref-query-replace): Ditto.  And check that the search results
16771         are up-to-date.
16773 2015-11-13  Kelvin White  <kwhite@gnu.org>
16775         Reconnect asynchronously in erc.
16777 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
16779         Merge from gnulib
16781         This incorporates:
16782         2015-11-13 xalloc-oversized: improve performance with GCC 5
16783         * lib/xalloc-oversized.h: Copy from gnulib.
16785 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
16787         Spruce up ftfont.c memory allocation
16789         * src/ftfont.c (setup_otf_gstring):
16790         Avoid O(N**2) behavior when reallocating.
16791         (ftfont_shape_by_flt): Prefer xpalloc to xrealloc when
16792         reallocating buffers; this simplifies the code.  Do not trust
16793         mflt_run to leave the output areas unchanged on failure, as
16794         this isn’t part of its interface spec.
16796 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
16798         Port recent XCB changes to 64-bit ‘long int’
16800         For historical reasons, libX11 represents 32-bit values like Atoms as
16801         ‘long int’ even on platforms where ‘long int’ is 64 bits.  XCB doesn’t
16802         do that, so adapt the recent XCB code to behave properly on 64-bit
16803         platforms.  Also, fix what appears to be a bug in the interpretation
16804         of xcb_get_property_value_length, at least on my Fedora platform
16805         which is running libxcb-1.11-5.fc21.
16806         * src/xfns.c (x_real_pos_and_offsets):
16807         * src/xterm.c (get_current_wm_state):
16808         xcb_get_property_value_length returns a byte count, not a word count.
16809         For 32-bit quantities, xcb_get_property_value returns a vector
16810         of 32-bit words, not of (possibly 64-bit) long int.
16812         Backport.
16814 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
16816         * src/undo.c (run_undoable_change): Now static.
16818         Backport.
16820 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16822         Remove support for ':timeout' from w32 tray notifications
16824         * src/w32fns.c (Fw32_notification_notify): Delete the code that
16825         supports ':timeout'.
16826         (syms_of_w32fns): Don't DEFSYM ':timeout'.  This avoids clashes
16827         with dbusbind.c when D-Bus is compiled in.
16829         * doc/lispref/os.texi (Desktop Notifications): Don't mention
16830         ':timeout'.
16832         Backport.
16834 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
16836         * test/automated/simple-test.el: Add test for bug#20698 (bug#21885)
16838         (simple-test--transpositions): New macro.
16839         (simple-transpose-subr): New test.
16841         Backport.
16843 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
16845         * lisp/progmodes/elisp-mode.el: Declare function `project-roots'
16847         Backport.
16849 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
16851         * src/undo.c: Small fixes for previous change
16853         (run_undoable_change): Mark void argument list.
16854         (record_property_change): Remove unused variable `boundary'.
16856         Backport.
16858 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16860         Add a few more variables to redisplay--variables
16862         * lisp/frame.el (redisplay--variables): Add bidi-paragraph-direction
16863         and bidi-display-reordering to the list.
16865         Backport.
16867 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16869         * lisp/loadup.el: Enlarge the size of the hash table to 80000.
16871         Backport.
16873 2015-11-13  Eli Barzilay  <eli@barzilay.org>
16875         Fix point positioning after transposing with negative arg
16877         * lisp/simple.el (transpose-subr): When invoked with a negative
16878         argument, move point to after the transposed text, like we do
16879         when invoked with a positive argument.  (Bug#21885)
16881         Backport.
16883 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16885         Fix last change in shr.el
16887         * lisp/net/shr.el (shr--have-one-fringe-p): Rename from
16888         have-fringes-p.  All callers changed.  Doc fix.  (Bug#21895)
16890         Backport.
16892 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16894         Fix last change
16896         * src/w32fns.c (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]:
16897         Don't DEFSYM tray notification symbols if D-Bus is being used.
16899         Backport.
16901 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16903         Another fix for MinGW64 and Cygwin builds due to notifications
16905         * src/w32fns.c: Ifdef away tray notification code if D-Bus is
16906         being compiled into Emacs.
16907         (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]: Don't defsubr
16908         Sw32_notification_notify and Sw32_notification_close if the code
16909         is not compiled.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
16911         Backport.
16913 2015-11-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
16915         Remove intern calls and XXX comments from Fx_export_frames
16917         * src/xfns.c (Fx_export_frames): Use Qpdf, Qpng, Qpostscript, and
16918         Qsvg instead of intern calls.  Use "postscript" instead of "ps"
16919         for consistency with image types.  Remove XXX comments.
16920         (syms_of_xfns) <Qpdf>: DEFSYM it.
16922         Backport.
16924 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
16926         Port recent XCB changes to 64-bit ‘long int’
16928         For historical reasons, libX11 represents 32-bit values like Atoms as
16929         ‘long int’ even on platforms where ‘long int’ is 64 bits.  XCB doesn’t
16930         do that, so adapt the recent XCB code to behave properly on 64-bit
16931         platforms.  Also, fix what appears to be a bug in the interpretation
16932         of xcb_get_property_value_length, at least on my Fedora platform
16933         which is running libxcb-1.11-5.fc21.
16934         * src/xfns.c (x_real_pos_and_offsets):
16935         * src/xterm.c (get_current_wm_state):
16936         xcb_get_property_value_length returns a byte count, not a word count.
16937         For 32-bit quantities, xcb_get_property_value returns a vector
16938         of 32-bit words, not of (possibly 64-bit) long int.
16940 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
16942         * src/undo.c (run_undoable_change): Now static.
16944 2015-11-13  Michael Albinus  <michael.albinus@gmx.de>
16946         Adapt Tramp version, do not merge with master
16948         * doc/misc/trampver.texi (trampver):
16949         * lisp/net/trampver.el (tramp-version): Set to "2.2.13-25.1".
16951 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16953         Remove support for ':timeout' from w32 tray notifications
16955         * src/w32fns.c (Fw32_notification_notify): Delete the code that
16956         supports ':timeout'.
16957         (syms_of_w32fns): Don't DEFSYM ':timeout'.  This avoids clashes
16958         with dbusbind.c when D-Bus is compiled in.
16960         * doc/lispref/os.texi (Desktop Notifications): Don't mention
16961         ':timeout'.
16963 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
16965         * test/automated/simple-test.el: Add test for bug#20698 (bug#21885)
16966         (simple-test--transpositions): New macro.
16967         (simple-transpose-subr): New test.
16969 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
16971         * lisp/progmodes/elisp-mode.el: Declare function `project-roots'
16973 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
16975         * src/undo.c: Small fixes for previous change
16976         (run_undoable_change): Mark void argument list.
16977         (record_property_change): Remove unused variable `boundary'.
16979 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16981         Add a few more variables to redisplay--variables
16983         * lisp/frame.el (redisplay--variables): Add bidi-paragraph-direction
16984         and bidi-display-reordering to the list.
16986 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16988         * lisp/loadup.el: Enlarge the size of the hash table to 80000.
16990 2015-11-13  Eli Barzilay  <eli@barzilay.org>
16992         Fix point positioning after transposing with negative arg
16994         * lisp/simple.el (transpose-subr): When invoked with a negative
16995         argument, move point to after the transposed text, like we do
16996         when invoked with a positive argument.  (Bug#21885)
16998 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
17000         Fix last change in shr.el
17002         * lisp/net/shr.el (shr--have-one-fringe-p): Rename from
17003         have-fringes-p.  All callers changed.  Doc fix.  (Bug#21895)
17005 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
17007         Fix last change
17009         * src/w32fns.c (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]:
17010         Don't DEFSYM tray notification symbols if D-Bus is being used.
17012 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
17014         Another fix for MinGW64 and Cygwin builds due to notifications
17016         * src/w32fns.c: Ifdef away tray notification code if D-Bus is
17017         being compiled into Emacs.
17018         (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]: Don't defsubr
17019         Sw32_notification_notify and Sw32_notification_close if the code
17020         is not compiled.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
17022 2015-11-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
17024         Remove intern calls and XXX comments from Fx_export_frames
17026         * src/xfns.c (Fx_export_frames): Use Qpdf, Qpng, Qpostscript, and
17027         Qsvg instead of intern calls.  Use "postscript" instead of "ps"
17028         for consistency with image types.  Remove XXX comments.
17029         (syms_of_xfns) <Qpdf>: DEFSYM it.
17031 2015-11-13  Eric Hanchrow  <eric.hanchrow@gmail.com>
17033         shr: don't invoke unbound function (Bug#21895)
17035         * lisp/net/shr.el (have-fringes-p): New function.
17036         (shr-insert-document, shr-fill-text): Use it.
17038 2015-11-12  Juanma Barranquero  <lekktu@gmail.com>
17040         * test/automated/keymap-tests.el: Fix test to make it repeatable
17042         (keymap-store_in_keymap-FASTINT-on-nonchars): Reset Buffer-menu-mode-map
17043         entry to its initial value to make the test repeatable in interactive
17044         sessions (assuming it doesn't fail and crashes Emacs, of course).
17046 2015-11-13  Artur Malabarba  <bruce.connor.am@gmail.com>
17048         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors): Small fix
17050 2015-11-12  Phillip Lord  <phillip.lord@russet.org.uk>
17052         : Tests for undo-auto functionality.
17054 2015-11-12  Phillip Lord  <phillip.lord@newcastle.ac.uk>
17056         The heuristic that Emacs uses to add an `undo-boundary' has been
17057         reworked, as it interacts poorly with functions on `post-command-hook'
17058         or `after-change-functions'.
17060         * lisp/simple.el: New section added.
17061         * src/cmds.c (remove_excessive_undo_boundaries): Now in lisp.
17062         (self_insert_command): Calls simple.el to amalgamate.
17063         (delete_char): Calls simple.el to amalgamate.
17064         * src/keyboard.c (last_undo_boundary): Removed.
17065         * src/undo.c (run_undoable_change): New function.
17067 2015-11-12  Juri Linkov  <juri@linkov.net>
17069         Bind [?\S-\ ] to previous line command in Dired-like modes.
17071         * lisp/arc-mode.el (archive-mode-map):
17072         * lisp/dired.el (dired-mode-map):
17073         * lisp/proced.el (proced-mode-map):
17074         * lisp/vc/vc-dir.el (vc-dir-mode-map):
17075         Bind [?\S-\ ] to previous line command.
17076         (Bug#20790)
17078 2015-11-12  Eli Zaretskii  <eliz@gnu.org>
17080         Fix the MinGW64 and Cygwin-w32 builds
17082         * src/w32fns.c (MYNOTIFYICONDATAW_V1_SIZE)
17083         (MYNOTIFYICONDATAW_V2_SIZE, MYNOTIFYICONDATAW_V3_SIZE): Define and
17084         use instead of the corresponding NOTIFYICONDATAW_Vn_SIZE macros,
17085         which cause trouble with MinGW42 headers.  Ifdef away tray
17086         notifications code for Cygwin.  Reported by Andy Moreton
17087         <andrewjmoreton@gmail.com>.
17089 2015-11-12  Simen Heggestøyl  <simenheg@gmail.com>
17091         Enable sorting of JSON object keys when encoding
17093         * lisp/json.el (json-encoding-object-sort-predicate): New variable
17094         for specifying a sorting predicate for JSON objects during encoding.
17095         (json--plist-to-alist): New utility function.
17096         (json-encode-hash-table): Re-use `json-encode-alist' when object keys
17097         are to be sorted.
17098         (json-encode-alist): Sort output by
17099         `json-encoding-object-sort-predicate, when set.
17100         (json-encode-plist): Re-use `json-encode-alist' when object keys are
17101         to be sorted.
17102         (json-pretty-print-buffer-ordered): New command to pretty print the
17103         buffer with object keys sorted alphabetically.
17104         (json-pretty-print-ordered): New command to pretty print the region
17105         with object keys sorted alphabetically.
17107         * test/automated/json-tests.el (test-json-plist-to-alist)
17108         (test-json-encode-plist, test-json-encode-hash-table)
17109         (test-json-encode-alist-with-sort-predicate)
17110         (test-json-encode-plist-with-sort-predicate): New tests.
17112         * etc/NEWS: Add an entry for the new commands.
17114 2015-11-12  Juanma Barranquero  <lekktu@gmail.com>
17116         * test/automated/keymap-tests.el: New test file.
17118 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
17120         Speed up x_real_pos_and_offsets using XCB
17122         * src/xfns.c (x_real_pos_and_offsets) [USE_XCB]: Add XCB flavors of
17123         all X calls, and pipeline requests when possible, collecting results
17124         later.  Eliminate use of x_catch_errors (and thus XSync) in XCB case.
17126 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
17128         Enable use of XCB for checking window manager state
17130         * src/xterm.c (get_current_wm_state) [USE_XCB]: Use XCB calls instead
17131         of XGetWindowProperty plus error-catching, since we can explicitly
17132         check for errors in the XCB version.  This eliminates 3 XSync calls on
17133         top of the round-trip actually fetching the information.
17135 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
17137         Detect XCB and save a connection handle
17139         * configure.ac: If using X11, check for XCB libraries and header.
17140         * src/Makefile.in (XCB_LIBS): Define.
17141         (LIBX_EXTRA): Include it.
17143         * src/xterm.h [USE_XCB]: Include X11/Xlib-xcb.h.
17144         (struct x_display_info) [USE_XCB]: Add an XCB connection handle field.
17145         * src/xterm.c (x_term_init) [USE_XCB]: Initialize the new field.
17147 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
17149         Reduce some data dependencies between X calls
17151         Gains nothing in the traditional-Xlib code, but more closely aligns
17152         with how the XCB version will work.
17154         * src/xfns.c (x_real_pos_and_offsets): When translating coordinates,
17155         send coordinates (0,0) to the X server and add in the real coordinates
17156         after getting the response.  Move XGetGeometry for outer window inside
17157         error-trapping block.  Use DPY variable more, since it's available.
17159 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
17161         Use color cache for creating bitmap
17163         * src/image.c (x_create_bitmap_from_xpm_data) [ALLOC_XPM_COLORS]:
17164         Set attributes to use the caching color allocator.  Initialize and
17165         free the cache.
17167 2015-11-12  Eli Barzilay  <eli@barzilay.org>
17169         Add "^" to the interactive specs of `dired-next/previous-line'
17171         * lisp/dired.el (dired-next-line, dired-previous-line): It makes sense
17172         to bind these commands to the arrow keys, and that means that they work
17173         better with a "^" in the `interactive' declaration so selection works
17174         as expected.
17176 2015-11-12  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
17178         Sync with soap-client repository, version 3.0.2
17180         * lisp/net/soap-client.el: Bump version to 3.0.2.
17182         * lisp/net/soap-client.el (soap-warning): Use format, not format-message.
17184         * lisp/net/soap-client.el: Add cl-lib to Package-Requires.  Require cl-lib.
17185         (soap-validate-xs-simple-type): Use cl-labels instead of cl-flet.
17187         * lisp/net/soap-client.el: Support Emacs versions that do not have
17188         define-error.
17190         * lisp/net/soap-inspect.el: Remove version header.
17192         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Fix first line header
17193         format.
17195 2015-11-11  Alan Mackenzie  <acm@muc.de>
17197         CC Mode: Respect users' settings of open-paren-in-column-0-is-defun-start.
17199         * lisp/progmodes/cc-engine.el (c-backward-single-comment)
17200         (c-backward-comments, c-invalidate-state-cache-1, c-parse-state-1)
17201         (c-guess-basic-syntax):
17202         Remove bindings of open-paren-in-column-0-is-defun-start to nil.
17203         (c-get-fallback-scan-pos): "New" function (existed several years ago).
17204         (c-parse-state-get-strategy): Reintroduce the 'BOD strategy, using
17205         c-get-fallback-scan-pos.
17206         (c-parse-state-1): Handle 'BOD strategy.
17208         * lisp/progmodes/cc-mode.el (c-before-change, c-after-change)
17209         (c-font-lock-fontify-region): Remove bindings of
17210         open-paren-in-column-0-is-defun-start to nil.
17212         * doc/misc/cc-mode.texi (Performance Issues)
17213         (Limitations and Known Bugs): Fix mix up between @chapter and @appendix.
17215 2015-11-11  Artur Malabarba  <bruce.connor.am@gmail.com>
17217         * lisp/obarray.el: Fix shadowed variables.
17218         (obarray-map, obarray-remove, obarray-put, obarray-get):
17219         Change OBARRAY arg to OB to avoid shadowing ‘obarray’.
17221 2015-11-11  Eli Zaretskii  <eliz@gnu.org>
17223         Avoid error in submitting a form with EWW
17225         * lisp/gnus/mm-url.el (mm-url-form-encode-xwfu): Allow argument
17226         CHUNK to be nil.  (Bug#21881)
17228 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
17230         Rename seq-p and map-p to seqp and mapp
17232         * lisp/emacs-lisp/seq.el (seqp): New name.
17233         * lisp/emacs-lisp/map.el (mapp): New name.
17234         * doc/lispref/sequences.texi: Update the documentation for seqp.
17235         * test/automated/map-tests.el: Update the tests for mapp.
17237 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
17239         Rename obarray-p to obarrayp
17241         * lisp/obarray.el (obarrayp): New name.
17242         * test/automated/obarray-tests.el: Update the tests.
17244 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
17246         Rename obarray-foreach to obarray-map
17248         * lisp/obarray.el (obarray-map): New name.
17249         * test/automated/obarray-tests.el: Update the corresponding tests.
17251 2015-11-11  Przemysław Wojnowski  <esperanto@cumego.com>
17253         New file with obarray functions.
17255         * lisp/obarray.el: Basic obarray functions extracted from abbrev.el.
17256         * test/automated/obarray-tests.el: New file.
17258 2015-11-11  Eli Zaretskii  <eliz@gnu.org>
17260         Implement tray notifications for MS-Windows
17262         * src/w32fns.c (MY_NOTIFYICONDATAW): New typedef.
17263         (NOTIFYICONDATAW_V1_SIZE, NOTIFYICONDATAW_V2_SIZE)
17264         (NOTIFYICONDATAW_V3_SIZE, NIF_INFO, NIIF_NONE, NIIF_INFO)
17265         (NIIF_WARNING, NIIF_ERROR, EMACS_TRAY_NOTIFICATION_ID)
17266         (EMACS_NOTIFICATION_MSG): New macros.
17267         (NI_Severity): New enumeration.
17268         (get_dll_version, utf8_mbslen_lim, add_tray_notification)
17269         (delete_tray_notification, Fw32_notification_notify)
17270         (Fw32_notification_close): New functions.
17271         (syms_of_w32fns): Defsubr functions exposed to Lisp.  DEFSYM
17272         keywords used by w32-notification-notify.
17274         * doc/lispref/os.texi (Desktop Notifications): Describe the native
17275         w32 tray notifications.
17277 2015-11-11  Alan Mackenzie  <acm@muc.de>
17279         First commit to scratch/follow.  Make Isearch work with Follow Mode, etc.
17281         doc/lispref/window.texi (Basic Windows): Add paragraph defining "Group of
17282         Windows" and new @defun selected-window-group.
17283         (Window Start and End): Describe new &optional parameter GROUP and
17284         ...-group-function for window-start, window-end, set-window-start, and
17285         pos-visible-in-window-p.
17286         (Textual Scrolling) Describe the same for recenter.
17287         doc/lispref/positions.texi (Screen Lines): Describe the same for
17288         move-to-window-line.
17290         src/window.c (Fwindow_start, Fwindow_end, Fset_window_start)
17291         (Fpos_visible_in_window_p, Frecenter, Fmove_to_window_line): To each, add ar
17292         new optional parameter "group".  At the beginning of each, check whether the
17293         corresponding ...-group-function is set to a function, and if so execute this
17294         function in place of the normal processing.
17295         (syms_of_window): Define symbols for the six new variables below.
17296         (window-start-group-function, window-end-group-function)
17297         (set-window-start-group-function, recenter-group-function)
17298         (pos-visible-in-window-p-group-function, move-to-window-line-group-function):
17299         New permanent local buffer local variables.
17300         src/keyboard.c (Fposn_at_point): Add extra parameter in call to
17301         Fpos_visible_in_window_p.
17303         lisp/window.el (selected-window-group-function): New permanent local buffer
17304         local variable.
17305         (selected-window-group): New function.
17307         lisp/follow.el (follow-mode): Set the ...-group-function variables at mode
17308         enable, kill them at mode disable.  Add/remove follow-after-change to/from
17309         after-change-functions.
17310         (follow-start-end-invalid): New variable.
17311         (follow-redisplay): Manipulate follow-start-end-invalid.
17312         (follow-after-change, follow-window-start, follow-window-end)
17313         (follow-set-window-start, follow-pos-visible-in-window-p)
17314         (follow-move-to-window-line, follow-sit-for): New functions.
17316         lisp/isearch.el (isearch-call-message): New macro.
17317         (isearch-update, with-isearch-suspended, isearch-del-char)
17318         (isearch-search-and-update, isearch-ring-adjust): Invoke above new macro.
17319         (with-isearch-suspended): Rearrange code such that isearch-call-message is
17320         invoked before point is moved.
17321         (isearch-message): Add comment about where point must be at function call.
17322         (isearch-search): Remove call to isearch-message.
17323         (isearch-lazy-highlight-window-group): New variable.
17324         (isearch-lazy-highlight-new-loop): Unconditionally start idle timer.  Move
17325         the battery of tests to ...
17326         (isearch-lazy-highlight-maybe-new-loop): New function, started by idle timer.
17327         Note: (sit-for 0) is still called.
17328         (isearch-lazy-highlight-update): Check membership of
17329         isearch-lazy-highlight-window-group.  Don't set the `window' overlay
17330         property.
17331         (isearch-update, isearch-done, isearch-string-out-of-window)
17332         (isearch-back-into-window, isearch-lazy-highlight-maybe-new-loop)
17333         (isearch-lazy-highlight-search, isearch-lazy-highlight-update)
17334         (isearch-lazy-highlight-update): Call the six amended primitives (see
17335         src/window.c above) with the new `group' argument set to t, to cooperate
17336         with Follow Mode.
17338 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
17340         Optimize `file-equal-p' and `file-in-directory-p' in Tramp
17342         * lisp/net/tramp.el (tramp-handle-file-equal-p)
17343         (tramp-handle-file-in-directory-p): New defuns.  Suggested by
17344         Harvey Chapman <hchapman@3gfp.com>.
17346         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
17347         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist):
17348         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist):
17349         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist): Use them.
17351 2015-11-10  Karl Fogel  <kfogel@red-bean.com>
17353         * CONTRIBUTE: Encourage adding tests.
17355         Based on this post from John Wiegley:
17357           From: "John Wiegley" <johnw@newartisans.com>
17358           Subject: Re: [Emacs-diffs] master 1f02cbe: Fix bug#21766 and add test
17359           To: Juanma Barranquero <lekktu@gmail.com>
17360           Cc: emacs-diffs@gnu.org, bruce.connor.am@gmail.com,
17361               emacs-devel <emacs-devel@gnu.org>
17362           Date: Wed, 28 Oct 2015 18:45:29 -0700
17363           Message-ID: <m2y4emqwg6.fsf@newartisans.com>
17365           https://lists.gnu.org/r/emacs-devel/2015-10/msg02372.html
17367 2015-11-10  David Reitter  <david.reitter@gmail.com>
17369         Avoid creating notification objects when possible
17371         * src/nsterm.m (windowWillEnterFullScreen, windowWillExitFullScreen:)
17372         (windowDidEnterFullScreen, windowDidExitFullScreen): Provide convenience
17373         functions that do not require a notification object.  When needed,
17374         define NSWindowDidEnterFullScreenNotification to allow for compilation
17375         on OS X 10.6.8.
17377 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
17379         Move INTEGER_TO_CONS body out of .h file
17381         * src/data.c (INTBIG_TO_LISP): New macro, with most
17382         of the contents of the old INTEGER_TO_CONS.
17383         (intbig_to_lisp, uintbig_to_lisp): New functions.
17384         * src/lisp.h (INTEGER_TO_CONS):
17385         Simplify by using EXPR_SIGNED and the new functions.
17386         This shrinks code size a bit, and makes it easier to
17387         put a breakpoint on handling of large integers.
17389 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
17391         Merge from gnulib
17393         This incorporates:
17394         2015-11-10 intprops: new public macro EXPR_SIGNED
17395         2015-11-10 intprops: fix typo in clang port
17396         * lib/intprops.h: Copy from gnulib.
17398 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
17400         Spelling fixes
17402         * lisp/net/soap-inspect.el (soap-inspect-xs-simple-type):
17403         Fix misspelling in output.
17405 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
17407         * doc/lispref/variables.texi (Directory Local Variables):
17408         Document dir-locals wildcards.
17410         * lisp/files.el (dir-locals-file): Point to Info node.
17412         * doc/emacs/custom.texi (Directory Variables):
17413         Document dir-locals wildcards.
17415         * etc/NEWS: Document new functionality.
17417 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
17419         * lisp/files.el: Don't allow customization of dir-locals sorting.
17420         In retrospect, this is not a good idea for the same reason that
17421         `dir-locals-file' is a defconst, because it is important that this
17422         behavior be "uniform across different environments and users".
17423         Sure, the user can still change the sorting with a hack, but we
17424         shouldn't encourage them to change it.
17425         (dir-locals--all-files): Return list in the order returned by
17426         `file-expand-wildcards'.
17427         (file-expand-wildcards): Document the sorting predicate used.
17428         (dir-locals-sort-predicate): Delete variable.
17430 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
17432         * lisp/files.el (dir-locals-read-from-file): Better handle errors.
17434         * lisp/isearch.el (search-default-regexp-mode): Change default value.
17436 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
17438         * lisp/files.el (dir-locals-find-file): Don't stop at unreadable files.
17439         `locate-dominating-file' will now keep looking if the files it finds in
17440         a given directory are unreadable (or not files).
17442 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
17444         * lisp/files.el (dir-locals-file): Allow wildcards.
17445         (dir-locals-find-file, dir-locals-collect-variables)
17446         (dir-locals-read-from-file): Update accordingly.
17447         (hack-dir-local-variables): Rename a local variable.
17449         * lisp/files-x.el (modify-dir-local-variable): Update accordingly.
17451         * lisp/help-fns.el (describe-variable): Update accordingly.
17453         * .gitignore: Add .dir-locals?.el.
17455 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
17457         * lisp/emacs-lisp/map.el (map-merge-with): New function.
17459         * test/automated/map-tests.el (test-map-merge-with): New test.
17461 2015-11-10  Karl Fogel  <kfogel@red-bean.com>
17463         Fix some recently-perturbed bookmark autoloads
17465         * lisp/bookmark.el (bookmark-set-internal): Remove unnecessary autoload.
17466         (bookmark-set): Restore autoload.
17467         (bookmark-set-no-overwrite): Add autoload.
17469         Thanks to Juanma Barranquero for noticing the autoload problems
17470         introduced by my recent commit adding/changing the above functions
17471         (Sun Nov 8 14:16:43 2015 -0500, git commit 3812e17978).
17473 2015-11-09  Noah Friedman  <friedman@splode.com>
17475         * etc/emacs-buffer.gdb (ydump-buffer): Handle case where gap is at
17476         the start of buffer.  I don't recall if older versions of gdb were
17477         less strict but you cannot dump a 0-length range in gdb 7.9.1.
17479 2015-11-10  Dmitry Gutov  <dgutov@yandex.ru>
17481         * lisp/progmodes/project.el: Update Commentary.
17483         Merge branch 'project-next'
17485 2015-11-10  Dmitry Gutov  <dgutov@yandex.ru>
17487         Fold `project-ask-user' into `project-current'
17489         * lisp/progmodes/project.el (project-find-functions): Remove
17490         `project-ask-user'.
17491         (project-ask-user): Remove function and the corresponding
17492         `project-roots' implementation.
17493         (project-current): Add a new argument, MAYBE-PROMPT.  Prompt the
17494         user in case there's no project in the current directory.  Update
17495         all callers.
17497 2015-11-09  Karl Fogel  <kfogel@red-bean.com>
17499         When VC detects a conflict, specify which file
17501         * lisp/vc/vc.el (vc-message-unresolved-conflicts): New function.
17502         * lisp/vc/vc-svn.el (vc-svn-find-file-hook):
17503         * lisp/vc/vc-hg.el (vc-hg-find-file-hook):
17504         * lisp/vc/vc-bzr.el (vc-bzr-find-file-hook):
17505         * lisp/vc/vc-git.el (vc-git-find-file-hook): Use above new function
17506           to display a standard message that specifies the conflicted file.
17508         Before this change, the message VC used for indicating a conflicted
17509         file was just "There are unresolved conflicts in this file" without
17510         naming the file (and this language was duplicated in several places).
17511         After this change, it's "There are unresolved conflicts in file FOO"
17512         (and this language is now centralized in one function in vc.el).
17514         Justification: It's important for the message to name the conflicted
17515         file because the moment when VC realizes a file is conflicted does not
17516         always come interactively.  For example, some people automatically
17517         find a set of Org Mode files on startup, and may keep those .org files
17518         under version control.  If any of the files are conflicted, the user
17519         just sees some messages fly by, and might later check the "*Messages*"
17520         buffer to find out what files were conflicted.  I'm not saying this
17521         happened to me or anything; it's a purely hypothetical example.
17523 2015-11-09  Eli Zaretskii  <eliz@gnu.org>
17525         Fix assertion violation in define-key
17527         * src/keymap.c (store_in_keymap): Don't use XFASTINT on non-character
17528         objects.  Reported by Drew Adams <drew.adams@oracle.com>
17529         and Juanma Barranquero <lekktu@gmail.com>.
17531 2015-11-09  Dima Kogan  <dima@secretsauce.net>
17533         Fix a memory leak in GC of font cache
17535         * src/alloc.c (compact_font_cache_entry): Don't GC unmarked font
17536         entities if some of the fonts it references are marked.  This
17537         plugs a memory leak.  (Bug#21556)
17539 2015-11-09  Paul Eggert  <eggert@cs.ucla.edu>
17541         Use INT_ADD_WRAPV etc. to check integer overflow
17543         * src/alloc.c (xnmalloc, xnrealloc, xpalloc, Fmake_string):
17544         * src/buffer.c (record_overlay_string, overlay_strings):
17545         * src/casefiddle.c (casify_object):
17546         * src/ccl.c (Fccl_execute_on_string):
17547         * src/character.c (char_width, c_string_width, lisp_string_width)
17548         (count_size_as_multibyte, string_escape_byte8):
17549         * src/coding.c (coding_alloc_by_realloc, produce_chars):
17550         * src/data.c (arith_driver):
17551         * src/dispnew.c (realloc_glyph_pool, init_display):
17552         * src/editfns.c (styled_format):
17553         * src/fns.c (Ffillarray):
17554         * src/ftfont.c (ftfont_shape_by_flt):
17555         * src/gnutls.c (gnutls_hex_string):
17556         * src/gtkutil.c (get_utf8_string):
17557         * src/image.c (x_to_xcolors, x_detect_edges, png_load_body):
17558         * src/keymap.c (Fkey_description):
17559         * src/lisp.h (SAFE_ALLOCA_LISP):
17560         * src/term.c (encode_terminal_code):
17561         * src/tparam.c (tparam1):
17562         * src/xselect.c (x_property_data_to_lisp):
17563         * src/xsmfns.c (smc_save_yourself_CB):
17564         * src/xterm.c (x_term_init):
17565         When checking for integer overflow, prefer INT_MULTIPLY_WRAPV to
17566         more-complicated code involving division and/or
17567         INT_MULTIPLY_OVERFLOW, and similarly for INT_ADD_WRAPV and
17568         subtraction and/or INT_ADD_OVERFLOW.
17569         * src/casefiddle.c (casify_object): Simplify multibyte size check.
17570         * src/character.c: Remove some obsolete ‘#ifdef emacs’s.
17571         * src/data.c (arith_driver): Also check for division overflow,
17572         as that’s now possible given that the accumulator can now contain
17573         any Emacs integer.
17574         * src/lisp.h (lisp_word_count): Remove; no longer used.
17576 2015-11-09  Dmitry Gutov  <dgutov@yandex.ru>
17578         Make sure that the ignore file exists
17580         * lisp/vc/vc.el (vc-default-ignore-completion-table):
17581         Make sure that the ignore file exists.
17583 2015-11-09  Michael Sperber  <mike@xemacs.org>
17585         * lisp/gnus/gnus-sum.el (gnus-summary-backend-map): Bind B-backspace to
17586         `gnus-summary-delete-article` in a way that also works on XEmacs.
17588 2015-11-08  Simen Heggestøyl  <simenheg@gmail.com>
17590         Add support for retrieving paths to JSON elements
17592         Add support for retrieving the path to a JSON element. This can for
17593         instance be useful to retrieve paths in deeply nested JSON
17594         structures.
17596         * lisp/json.el (json-pre-element-read-function)
17597         (json-post-element-read-function): New variables to hold pre- and post
17598         read callback functions for `json-read-array' and `json-read-object'.
17599         (json--path): New variable used internally by `json-path-to-position'.
17600         (json--record-path, json--check-position): New functions used
17601         internally by `json-path-to-position'.
17602         (json-path-to-position): New function for retrieving the path to a
17603         JSON element at a given position.
17604         (json-read-object, json-read-array): Call
17605         `json-pre-element-read-function' and `json-post-element-read-function'
17606         when set.
17608         * test/automated/json-tests.el (test-json-path-to-position-with-objects)
17609         (test-json-path-to-position-with-arrays)
17610         (test-json-path-to-position-no-match): New tests for
17611         `json-path-to-position'.
17613 2015-11-08  Karl Fogel  <kfogel@red-bean.com>
17615         * etc/NEWS: Mention new `bookmark-set-no-overwrite'.
17617         This really should been part of my previous commit
17618         (Sun Nov 8 14:16:43 2015 -0500, git commit 3812e17978).
17620 2015-11-08  Karl Fogel  <kfogel@red-bean.com>
17622         Offer non-overwrite bookmark setter (Bug#15746)
17624         * lisp/bookmark.el (bookmark-set-internal): New helper function to do
17625         what `bookmark-set' used to do, but with more choices for overwrite
17626         vs push, and with minor changes to the interactive prompt format.
17627         (bookmark-set): Rewrite as wrapper around above.
17628         If overwriting, inform the user of that in the prompt.
17629         (bookmark-set-no-overwrite): New function, also done as wrapper.
17630         Bind to "M" in `ctl-x-r-map' autoloads.
17631         (bookmark-map): Similarly bind "M" here.
17633 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
17635         * src/unexelf.c (NEW_PROGRAM_H): Remove unused macro (Bug#20614).
17637 2015-11-08  Alan Modra  <amodra@gmail.com>
17639         ELF unexec: Don't insert a new section
17641         Reuse the .bss section instead, making it SHT_PROGBITS.  This way we
17642         don't need to mess with symbol st_shndx, or section sh_link and
17643         sh_info.
17645         This does lead to eu-elflint complaints about symbols defined in .bss
17646         with a needed version, because normally it is undefined symbols that
17647         have needed versions;  Defined symbols have version definitions.
17648         The exception is symbols defined by the linker in .dynbss for
17649         variables copied from a shared library in order to avoid text
17650         relocations, with copy relocs to copy their initial values from the
17651         shared library.  These symbols are both defined and have needed
17652         versions, and eu-elflink only expects to see them in SHT_NOBITS
17653         sections.  Of course there is no real problem with having such symbols
17654         in SHT_PROGBITS sections.  glibc ld.so handles them fine.
17656         * src/unexelf.c: Delete outdated comments.
17657         (PATCH_INDEX): Delete.
17658         (find_section): Delete.
17659         (unexec): Don't add a new section.  Instead reuse the last bss
17660         section, extending it to cover dumped data.  Make bss sections
17661         SHT_PROGBITS.  Remove all patching of sh_link, sh_info and
17662         st_shndx.  Rename bss sections.
17664 2015-11-08  Alan Modra  <amodra@gmail.com>
17666         ELF unexec: Drive from PT_LOAD header rather than sections
17668         This rewrites bss handling in the ELF unexec code.  Finding bss
17669         sections by name results in complicated code that
17670         - does not account for all names of possible bss sections,
17671         - assumes specific ordering of bss sections,
17672         - can wrongly choose a SHT_NOBITS section not in the bss segment,
17673         - incorrectly calculates bss size (no accounting for alignment gaps),
17674         - assumes .data and .bss are in the same segment.
17676         All of these problems and more are solved by finding the bss segment
17677         in PT_LOAD headers, ie. the address range included in p_memsz but not
17678         p_filesz of the last PT_LOAD header, then matching SHT_NOBITS sections
17679         in that address range.
17681         * src/unexelf.c: Delete old ppc comment.
17682         (OLD_PROGRAM_H): Define.
17683         (round_up): Delete.
17684         (unexec): Don't search for bss style sections by name.  Instead,
17685         use the last PT_LOAD header address range covered by p_memsz
17686         but not p_filesz and match any SHT_NOBITS section in that
17687         address range.  Simplify initialization of section header vars.
17688         Don't assume that section headers are above bss segment.  Move
17689         copying of bss area out of section loop.  Align .data2 section
17690         to 1, since it now covers the entire bss area.  For SHT_NOBITS
17691         sections in the bss segment, leave sh_addr and sh_addralign
17692         unchanged, but correct sh_offset.  Clear memory corresponding
17693         to SHT_NOBITS .plt section.  Delete comment and hacks for
17694         sections partly overlapping bss range now that the full range
17695         is properly calculated.  Delete now dead .sbss code.
17696         (Bug#20614)
17698 2015-11-08  Alan Modra  <amodra@gmail.com>
17700         ELF unexec: R_*_NONE relocs
17702         These should be ignored on all targets.
17704         * src/unexelf.c (unexec): Ignore R_*_NONE relocs for any target,
17705         not just Alpha.  Comment on reloc size assumption.
17707 2015-11-08  Alan Modra  <amodra@gmail.com>
17709         ELF unexec: _OBJC_ symbols in bss sections
17711         This code assumed that there was only one bss section.  Rather than
17712         checking for a particular index, check the section type.  Also, handle
17713         the possibility that the section was SHT_NOBITS originally and is
17714         unchanged, in which case no clearing is needed (and sh_offset isn't
17715         necessarily valid, which can lead to a wild memset).
17717         * src/unexelf.c (unexec): Properly handle _OBJC_ symbols in
17718         bss sections.
17720 2015-11-08  Alan Modra  <amodra@gmail.com>
17722         ELF unexec: Symbol table patching
17724         No st_shndx value larger than SHN_LORESERVE should be changed.
17725         * src/unexelf.c (unexec): Don't adjust any st_shndx larger than
17726         SHN_LORESERVE.  Error on SHN_XINDEX.
17728 2015-11-08  Alan Modra  <amodra@gmail.com>
17730         ELF unexec: Merge Alpha and MIPS COFF debug handling
17732         * src/unexelf.c (unexec): Merge Alpha and MIPS COFF debug handling.
17733         Don't find .mdebug section index, find the section in the loop.
17734         Allow for unlikely possibility that .mdebug is located at sh_offset
17735         before bss segment, by calculating move from difference in
17736         sh_offset rather than just assuming new_data2_size.  Simplify
17737         cbLineOffset handling.
17739 2015-11-08  Alan Modra  <amodra@gmail.com>
17741         ELF unexec: Tidy code
17743         Separate out some of the more mechanical changes so following patches
17744         are smaller.
17746         * src/unexelf.c (unexec): Rearrange initialization of program
17747         header vars.  Use pointer vars in loops rather than indexing
17748         section header array via macros.  Simplify _OBJC_ sym code
17749         and reloc handling code.
17751 2015-11-08  Alan Modra  <amodra@gmail.com>
17753         ELF unexec: Correct section header index
17755         First a small fix.  The code incorrectly uses "NEW_SECTION_H (n)" when
17756         it should have been using "NEW_SECTION_H (nn)" to find the name of the
17757         section currently being processed.  Of course, before the bss
17758         sections, n and nn have the same value, so this doesn't matter except
17759         in the case of .sbss.  For .sbss this probably meant .bss (most likely
17760         the next section) was copied from memory.  A later patch removes the
17761         bogus .sbss handling anyway.
17763         * src/unexelf.c (unexec): Use correct index to look up names.
17765 2015-11-08  Michael Albinus  <michael.albinus@gmx.de>
17767         Fix Bug#21841
17769         * lisp/filenotify.el (file-notify--rm-descriptor):
17770         Use `descriptor' instead of computing its value.
17771         (file-notify--descriptor): Additional argument FILE.  Adapt all callees.
17772         (file-notify-rm-watch): Use `descriptor' when calling file name handler.
17773         (Bug#21841)
17775 2015-11-08  Dmitry Gutov  <dgutov@yandex.ru>
17777         Remove dirs in vc project roots from the the vc project library roots
17779         * lisp/progmodes/project.el (project-library-roots):
17780         Remove directories inside the project roots from the result.
17781         (https://lists.gnu.org/r/emacs-devel/2015-11/msg00536.html)
17783 2015-11-08  Dmitry Gutov  <dgutov@yandex.ru>
17785         Move and rename xref-find-regexp to the project package
17787         * lisp/progmodes/project.el (project-find-regexp)
17788         (project--read-regexp)
17789         (project--find-regexp-in): New functions.
17791         * lisp/progmodes/xref.el (xref--find-xrefs): Extract from
17792         xref--show-xrefs.  Use in existing callers in place of that
17793         function.
17794         (xref--show-xrefs): Only do the "show" part.
17795         (xref-find-regexp): Rename, more or less, to
17796         project-or-libraries-find-regexp.
17798 2015-11-06  Dmitry Gutov  <dgutov@yandex.ru>
17800         Abolish temporary buffer management for xref
17802         * lisp/progmodes/xref.el (xref--temporary-buffers)
17803         (xref--current)
17804         (xref--inhibit-mark-current)
17805         (xref--mark-selected): Remove.  Remove all references.
17806         (xref--show-xrefs): Do not construct the
17807         list of the temporary buffers, nor pass it along.
17809 2015-11-06  Dmitry Gutov  <dgutov@yandex.ru>
17811         Rename "search path" to "library roots"
17813         * lisp/emacs-lisp/cl-seq.el (cl-set-difference): Retain the order
17814         of the elements from CL-LIST1.
17816         * test/automated/cl-lib-tests.el (cl-lib-test-set-functions):
17817         Update WRT to the above change.
17819         * lisp/progmodes/project.el (project-search-path-function): Rename
17820         to project-library-roots-function, update the documentation and
17821         references.
17822         (project-search-path): Likewise, to project-library-roots.
17823         (project-roots): Clarify documentation.
17824         (project-vc-search-path): Likewise, to project-vc-library-roots.
17825         (project-library-roots): In addition to the renames, thread the
17826         results through file-name-as-directory.
17827         (project-prune-directories): Accept a variable number of
17828         arguments.  Rename to project-combine-directories.
17829         (project-subtract-directories): New function.
17831         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references):
17832         Append project-roots and project-library-roots together.
17834         * lisp/progmodes/etags.el (etags--xref-find-references): Ditto.
17836 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
17838         Prefer xpalloc to doubling buffers by hand
17840         * src/lread.c (grow_read_buffer): New function, which uses xpalloc.
17841         (read1): Use it for simplicity.
17842         * src/macros.c (store_kbd_macro_char):
17843         * src/minibuf.c (read_minibuf_noninteractive):
17844         * src/term.c (encode_terminal_code):
17845         * src/xrdb.c (magic_db):
17846         Prefer xpalloc to growing buffers by hand.
17847         This doesn’t fix any bugs, but simplifies the code a bit.
17849 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
17851         Merge from gnulib
17853         This incorporates:
17854         2015-11-05 timespec-sub: fix overflow bug; add tests
17855         2015-11-04 intprops: revise _WRAPV macros, revert _OVERFLOW
17856         2015-11-03 intprops: add parentheses
17857         * lib/intprops.h, lib/timespec-add.c, lib/timespec-sub.c:
17858         Copy from gnulib.
17860 2015-11-07  David Reitter  <david.reitter@gmail.com>
17862         Provide NS notification objects where required to eliminate warnings
17864         * src/nsterm.m (windowDidResize:, toggleFullScreen:):
17865         Call notification functions with notification objects
17866         as per delegate APIs.
17868 2015-11-07  Noam Postavsky  <npostavs@users.sourceforge.net>
17870         Add test for bug #21824
17872         * test/automated/buffer-tests.el: New file.
17873         (overlay-modification-hooks-message-other-buf): New test.
17875 2015-11-07  Kelvin White  <kwhite@gnu.org>
17877         * lisp/erc/erc-pcomplete.el (pcomplete-erc-nicks): Fix bug#18771.
17879 2015-11-07  David Reitter  <david.reitter@gmail.com>
17881         Ignore fullscreen exit notifications on NS when frame is dead
17883         * src/nsterm.m (windowDidResize:, windowWillExitFullScreen:)
17884         (windowDidExitFullScreen:): Return if frame is dead.
17885         These functions may be called when a fullscreen frame
17886         is closed; they are called before, not after.
17888         May address Bug#21428.
17890 2015-11-07  Eli Zaretskii  <eliz@gnu.org>
17892         Speed up lookup in redisplay--variables
17894         * lisp/frame.el (redisplay--variables): Make it a hash-table.
17896         * src/xdisp.c (maybe_set_redisplay): Access redisplay--variables
17897         as a hash-table.  This speeds up this function by an order of
17898         magnitude: where previously a setq was slowed down by 100% by
17899         introducing the maybe_set_redisplay test, it is now only 5%
17900         slower.
17901         (syms_of_xdisp) <redisplay--variables>: Doc fix.
17903 2015-11-07  Artur Malabarba  <bruce.connor.am@gmail.com>
17905         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Fix a bug.
17907         The defsubst was being created as:
17908             (cl-defsubst name (args) ("DOC") ...)
17910         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors):
17911         Add test.
17913 2015-11-07  Mihai Olteanu  <mihai_olteanu@fastmail.fm>  (tiny change)
17915         Update doc string of hexl-mode
17917         * lisp/hexl.el (hexl-mode): Doc fix.  (Bug#21800)
17919 2015-11-07  Eli Zaretskii  <eliz@gnu.org>
17921         Fix error in copy-abbrev-table
17923         * lisp/abbrev.el (define-abbrev): Don't erase the :abbrev-table-modiff
17924         property of the abbrev-table.  (Bug#21828)
17926         * test/automated/abbrev-tests.el: New file.
17928 2015-11-07  Michael Albinus  <michael.albinus@gmx.de>
17930         Add test to auto-revert-tests.el for Bug#21841
17932         * test/automated/auto-revert-tests.el
17933         (auto-revert-test01-auto-revert-several-files): New test.
17934         (auto-revert-test02-auto-revert-tail-mode)
17935         (auto-revert-test03-auto-revert-mode-dired): Rename them.
17937 2015-11-07  Martin Rudalics  <rudalics@gmx.at>
17939         * doc/lispref/windows.texi (Coordinates and Windows): Fix typo.
17941 2015-11-07  Martin Rudalics  <rudalics@gmx.at>
17943         In x_consider_frame_title don't set title of tooltip frames
17945         * src/xdisp.c (x_consider_frame_title): Return immediately for
17946         tooltip frames to avoid displaying empty tooltips.
17948 2015-11-06  Anders Lindgren  <andlind@gmail.com>
17950         Fixed NextStep fullscreen problem (bug#21770).
17952         * src/nsterm.m (ns_constrain_all_frames): Don't constrain
17953         fullscreen frames.
17955 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
17957         Ensure redisplay after evaluation
17959         * lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp):
17960         Revert last change.
17961         * lisp/frame.el (redisplay--variables): Populate the
17962         redisplay--variables list.
17963         * src/xdisp.c (maybe_set_redisplay): New function.
17964         (syms_of_xdisp) <redisplay--variables>: New variable.
17965         * src/window.h (maybe_set_redisplay): Declare prototype.
17966         * src/data.c (set_internal): Call maybe_set_redisplay.  (Bug#21835)
17968 2015-11-06  Artur Malabarba  <bruce.connor.am@gmail.com>
17970         * test/automated/subr-tests.el (subr-test-when): Fix again.
17972 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
17974         Don't invoke overlay modification hooks in wrong buffer
17976         * src/buffer.c (report_overlay_modification): When called with
17977         AFTER non-zero, don't invoke overlay modification hooks if the
17978         buffer recorded in last_overlay_modification_hooks is different
17979         from the current buffer.  (Bug#21824)
17981 2015-11-06  Juanma Barranquero  <lekktu@gmail.com>
17983         * admin/notes/repo: Fix a few obsolete references to Bazaar.
17985 2015-11-06  Artur Malabarba  <bruce.connor.am@gmail.com>
17987         * test/automated/subr-tests.el (subr-test-when): Fix test.
17989 2015-11-06  Martin Rudalics  <rudalics@gmx.at>
17991         Avoid division by zero crash observed by Yuan MEI
17993         See https://lists.gnu.org/r/emacs-devel/2015-11/msg00194.html.
17995         * src/dispnew.c (required_matrix_height, required_matrix_width):
17996         Avoid division by zero.
17997         * src/xterm.c (x_term_init): Init dpyinfo->smallest_font_height and
17998         dpyinfo->smallest_char_width to 1.
18000 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
18002         Ensure redisplay after "C-x C-e"
18004         * lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp): Make sure
18005         redisplay happens to account for any side effects of the evaluated
18006         sexp.  (Bug#21835)
18008 2015-11-06  Michael Albinus  <michael.albinus@gmx.de>
18010         Skip some file notification tests for cygwin
18012         * test/automated/file-notify-tests.el (file-notify--test-with-events):
18013         Remove argument TIMEOUT.  Adapt all callees.
18014         (file-notify-test02-events, file-notify-test04-file-validity):
18015         Skip for cygwin.  (Bug#21804)
18017 2015-11-05  Stephen Leake  <stephen_leake@stephe-leake.org>
18019         * lisp/progmodes/xref.el: Require semantic/symref during compilation.
18021 2015-11-05  Daiki Ueno  <ueno@gnu.org>
18023         Suppress redundant Pinentry startup messages
18025         * lisp/net/pinentry.el (pinentry-start): Add optional QUIET argument.
18026         * lisp/epg.el: Declare `pinentry-start'.
18027         (epg--start): Call `pinentry-start' with QUIET argument set.
18029 2015-11-05  Xue Fuqiao  <xfq.free@gmail.com>
18031         * doc/emacs/ack.texi (Acknowledgments): Updates.
18033 2015-11-05  Juanma Barranquero  <lekktu@gmail.com>
18035         * test/automated/elisp-mode-tests.el: Silence some run-time warnings.
18036         (xref-elisp-deftest): Bind `find-file-suppress-same-file-warnings' to t.
18038 2015-11-05  Tassilo Horn  <tsdh@gnu.org>
18040         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
18041         Add prettification support for \times.
18043 2015-11-05  Juanma Barranquero  <lekktu@gmail.com>
18045         * test/automated/process-tests.el: Skip tests when bash is unavailable.
18046         (process-test-sentinel-accept-process-output)
18047         (process-test-sentinel-sit-for): skip-unless bash executable found.
18049 2015-11-05  Eli Zaretskii  <eliz@gnu.org>
18051         Add test for bug #21831
18053         * test/automated/process-tests.el
18054         (start-process-should-not-modify-arguments): New test.  (Bug#21831)
18055         Suggested by Nicolas Richard <youngfrog@members.fsf.org>
18057 2015-11-04  Stefan Monnier  <monnier@iro.umontreal.ca>
18059         * lisp/emacs-lisp/eieio-compat.el: Typo caught by tests.
18061         (eieio--generic-static-object-generalizer): Fix typo.
18062         * test/automated/eieio-tests.el: Byte-compile it again.  It looks
18063         like the underlying cause of bug#17852 was fixed in the mean time.
18065 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
18067         Revert "* lisp/subr.el (when): Use `macroexp-progn'"
18069         This reverts commit 8e843831eaf271801836b7a3e4dd3b4fb0bb72b8.
18070         It breaks bootstrapping (duh).
18072 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
18074         * lisp/files.el (report-errors): Obsolete.
18076         (normal-mode, hack-local-variables, dir-locals-find-file):
18077         Use `with-demoted-errors' instead.
18079 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
18081         * lisp/subr.el (when): Use `macroexp-progn'.
18083         * test/automated/subr-tests.el (subr-test-when): New test.
18085 2015-11-04  Juanma Barranquero  <lekktu@gmail.com>
18087         * lisp/progmodes/xref.el: Doc fixes.
18088         (xref-make-file-location, xref-make-buffer-location, xref-make)
18089         (xref-make-bogus-location, xref-make-match): Add cross-references.
18090         (xref--insert-xrefs): Fix typo in docstring.
18092 2015-11-04  Anders Lindgren  <andlind@gmail.com>
18094         Render fringe bitmaps correctly on NextStep (bug#21301)
18096         The fringe bitmaps were inverted, the background was not transparent,
18097         the image data was horizontally mirrored, and periodic fringe bitmaps
18098         were not supported.
18100         * src/nsimage.m ([EmacsImage initFromXBM:width:height:fg:bg:]):
18101         When both background and foreground colors are 0, set the background
18102         alpha channel to 0 (making the background transparent).  When
18103         copying the image data, do this from the most significant bit
18104         (leftmost) to the least (rightmost), to avoid mirroring.
18105         * src/nsterm.m (ns_draw_fringe_bitmap): Don't invert the image bits.
18106         Add support for periodic images (e.g. the empty line indicator).
18108 2015-11-03  Michael Heerdegen  <michael_heerdegen@web.de>
18110         * lisp/emacs-lisp/pcase.el (pcase): Tweak docstring.
18112 2015-11-03  Nicolas Petton  <nicolas@petton.fr>
18114         * admin/MAINTAINERS: Add seq-tests.el, map-tests.el, and thunk-tests.el.
18116         * admin/MAINTAINERS: Add thunk.el.
18118 2015-11-03  Jay Belanger  <jay.p.belanger@gmail.com>
18120         * lisp/calc/calc.el (calc-bug-address): Change maintainer address.
18122 2015-11-03  Michael Albinus  <michael.albinus@gmx.de>
18124         Fix a stupid error in gfilenotify.c
18126         * src/gfilenotify.c (dir_monitor_callback): Cancel monitor only,
18127         if we've got a `deleted' signal AND the file name is the watched one.
18129 2015-11-03  Stephen Leake  <stephen_leake@stephe-leake.org>
18131         Fix Bug#21816; case insensitive file system in elisp-mode-tests.el
18133         * test/automated/elisp-mode-tests.el (xref-elisp-test-run):
18134         Use case-insensitive string compare for file names.
18135         (emacs-test-dir): Add 'downcase' to cause case differences (at
18136         least on my system).
18138 2015-11-02  Juanma Barranquero  <lekktu@gmail.com>
18140         flymake-tests.el (warning-predicate-rx-gcc): Fix check
18142         * test/automated/flymake-tests.el (warning-predicate-rx-gcc):
18143         Also check that "make" is available, not just "gcc".
18145 2015-11-02  Ken Brown  <kbrown@cornell.edu>
18147         Document behavior of collation on Cygwin
18149         * test/automated/fns-tests.el (fns-tests-collate-sort): Mark as
18150         expected failure on Cygwin.
18151         * doc/lispref/strings.texi (Text Comparison): Document that
18152         punctuation and whitespace are not ignored for sorting on Cygwin.
18154 2015-11-02  Dani Moncayo  <dmoncayo@gmail.com>
18156         * build-aux/msys-to-w32: Prevent double slashes in w32 path list.
18158 2015-11-01  Glenn Morris  <rgm@gnu.org>
18160         * lisp/progmodes/f90.el (f90-no-block-limit): Add associate.
18161         (Bug#21794)
18162         * test/automated/f90.el (f90-test-bug21794): New test.
18164 2015-11-01  Juanma Barranquero  <lekktu@gmail.com>
18166         Fix incompatibility with TCC in test for bug#18745
18168         * test/automated/process-tests.el (process-test-quoted-batfile):
18169         Remove spaces unrelated to the bug being tested.
18171 2015-11-01  Michael Albinus  <michael.albinus@gmx.de>
18173         Improve completion in tramp-gvfs.el
18175         * lisp/net/tramp-gvfs.el (tramp-zeroconf-parse-device-names):
18176         Rename from `tramp-zeroconf-parse-service-device-names'.
18177         (tramp-zeroconf-parse-webdav-device-names): Remove.  Code merged
18178         with `tramp-zeroconf-parse-device-names'.
18179         (tramp-gvfs-parse-device-names): New defun.
18180         (top): Use it when `tramp-zeroconf-parse-device-names' is not
18181         applicable.
18183         * lisp/net/tramp.el (tramp-set-completion-function): The argument
18184         could also be a zeroconf service type.
18186 2015-10-31  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
18188         * lisp/net/ntlm.el: Change version to 2.0.0.
18190 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
18192         Fix bug#21762
18193         * lisp/progmodes/python.el (python-syntax-closing-paren-p): Check with
18194         `eql' instead of `=' to accommodate the case that (syntax-after (point))
18195         returns nil.
18196         * test/automated/python-tests.el (python-indent-inside-paren-7):
18197         New test.
18199 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
18201         * test/automated/python-tests.el: Avoid warnings.
18202         (python-tests-with-temp-buffer, python-tests-with-temp-file):
18203         Bind `python-indent-guess-indent-offset' to nil.
18205 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
18207         * src/alloc.c: Silence compiler warnings.
18208         (pointers_fit_in_lispobj_p, mmap_lisp_allowed_p): #ifdef DOUG_LEA_MALLOC.
18210 2015-10-31  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
18212         * etc/NEWS: Fix js-jsx-mode entry punctuation.
18214 2015-10-31  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
18216         Add JSX indentation via js-jsx-mode  (Bug#21799)
18218         * lisp/progmodes/js.el: Add JSX indentation support.
18219         (js--jsx-end-tag-re)
18220         (js--jsx-after-tag-re): New variables.
18221         (js--jsx-find-before-tag)
18222         (js--jsx-indented-element-p)
18223         (js--as-sgml)
18224         (js--expression-in-sgml-indent-line)
18225         (js-jsx-indent-line)
18226         (js-jsx-mode): New functions.
18227         * test/indent/js-jsx.js: New file.
18228         * etc/NEWS: Add information about js-jsx-mode.
18230 2015-10-31  Michael Albinus  <michael.albinus@gmx.de>
18232         Minor fix in filenotify.el
18234         * lisp/filenotify.el (file-notify--event-file-name)
18235         (file-notify--event-file1-name): Normalize result with
18236         `directory-file-name'.
18238 2015-10-31  Eli Zaretskii  <eliz@gnu.org>
18240         Avoid errors in redisplay--pre-redisplay-functions
18242         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor--detect): Don't
18243         use 'bobp', instead compare window-point with 1.  (Bug#21730)
18245 2015-10-30  Paul Eggert  <eggert@cs.ucla.edu>
18247         Merge from gnulib
18249         This incorporates:
18250         2015-10-30 intprops: add WRAPV and const flavors for GCC 5
18251         2015-10-25 stdalign: port to Sun C 5.9
18252         * doc/misc/texinfo.tex, lib/intprops.h, lib/stdalign.in.h:
18253         Copy from gnulib.
18255 2015-10-30  Eli Zaretskii  <eliz@gnu.org>
18257         * src/w32proc.c (_NLSCMPERROR): Fix a typo in the name of this macro.
18258         (w32_compare_strings): Adjust for the correction.
18260 2015-10-30  Michael Albinus  <michael.albinus@gmx.de>
18262         * test/automated/vc-tests.el (vc-test--state)
18263         (vc-test--working-revision, vc-test--checkout-model):
18264         Add result messages.
18266 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
18268         * test/automated/faces-tests.el: Add another test
18270 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
18272         * lisp/faces.el (faces--attribute-at-point): Fix bug
18273         introduced by previous commit.
18275 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
18277         * test/automated/faces-tests.el: New file.
18279 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
18281         * lisp/faces.el: Refactor common code and fix a bug.
18282         (faces--attribute-at-point): New function.  Fix a bug when the
18283         face at point is a list of faces and the desired attribute is not
18284         on the first one.
18285         (foreground-color-at-point, background-color-at-point): Use it.
18287 2015-10-30  Przemysław Wojnowski  <esperanto@cumego.com>
18289         * etc/tutorials/TUTORIAL.translators: Fix PL names.
18291 2015-10-30  Juanma Barranquero  <lekktu@gmail.com>
18293         * lisp/character-fold.el: Provide `character-fold'.
18295 2015-10-30  Tassilo Horn  <tsdh@gnu.org>
18297         * etc/themes/tsdh-dark-theme.el (tsdh-dark): Add more faces
18298         for Gnus and ivy.
18300 2015-10-30  Michael Albinus  <michael.albinus@gmx.de>
18302         Some minor fixes for tramp-gvfs.el
18304         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
18305         An attribute returned by gvfs-info might be empty.  In case of
18306         undetermined uid or gid, return "UNKNOWN" or -1, respectively.
18307         (tramp-zeroconf-parse-service-device-names): New defun.
18308         Derived from `tramp-zeroconf-parse-workstation-device-names'.
18309         (top): Add completion functions for "afp" and "smb" methods.
18311 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
18313         * test/automated/character-fold-tests.el: New file
18315 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
18317         * test/automated/sort-tests.el: New file.
18318         Tests in this file are randomly generated and then tested with
18319         regular, reverse, and case-fold sorting.
18321 2015-10-30  Eli Zaretskii  <eliz@gnu.org>
18323         Describe known problems with pinning Emacs to taskbar
18325         * etc/PROBLEMS: Describe the problem with pinning Emacs to taskbar
18326         on Windows 10.  For the details, see the discussion starting at
18327         https://lists.gnu.org/r/help-emacs-windows/2015-09/msg00000.html.
18329 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
18331         * lisp/isearch.el: Avoid an error that blocks isearch.
18332         (isearch-update): Don't error if `isearch--current-buffer' has
18333         been killed.
18335         * test/automated/isearch-tests.el (isearch--test-update):
18336         New file.
18338 2015-10-30  Phil Sainty  <psainty@orcon.net.nz>
18340         Fix documentation of 'beginning/end-of-buffer'
18342         * lisp/simple.el (beginning-of-buffer, end-of-buffer): Clarify
18343         conditions under which the mark will be pushed at the previous
18344         position.  (Bug#21748)
18346 2015-10-30  Tassilo Horn  <tsdh@gnu.org>
18348         Add RefTeX feature idea: editing RefTeX TOC buffers
18350         More face defs for ivy, swiper, ace-window, eshell
18352 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
18354         * lisp/gnus/auth-source.el: Silence lexical-binding warnings.
18355         (auth-source-netrc-use-gpg-tokens): Simplify (symbol-value 'VAR) to
18356         just VAR.
18357         (auth-source-backend-parse): Use make-instance.
18358         (auth-source-search): Remove unused key args.
18359         Remove unused vars `accessor-key' and `backend'.  Avoid `eval'.
18360         (auth-source-search-backends): Use slot names rather than their initarg.
18361         (auth-source-netrc-create):
18362         (auth-source-delete):
18363         (auth-source-secrets-create, auth-source-plstore-search)
18364         (auth-source-macos-keychain-create, auth-source-macos-keychain-search)
18365         (auth-source-plstore-create, auth-source-netrc-search)
18366         (auth-source-netrc-parse): Remove unused key args.
18367         (auth-source-forget+): Simplify the arglist.
18368         (auth-source-macos-keychain-search-items)
18369         (auth-source-token-passphrase-callback-function): Mark unused args.
18370         (auth-source-epa-extract-gpg-token): Remove unused var `plain'.
18371         (pp-escape-newlines): Declare.
18372         (auto-source--symbol-keyword): New function.
18373         (auth-source-plstore-create, auth-source-netrc-create)
18374         (auth-source-netrc-normalize): Use it.
18375         (auth-source-netrc-search): Don't pass :delete to
18376         auth-source-netrc-parse since it doesn't use it.
18377         (auth-source-plstore-create, auth-source-netrc-create): Use plist-get
18378         symbol-value to index in keyword args.
18379         (auth-source-macos-keychain-result-append): Avoid setq.
18380         (auth-source-netrc-create): Remove unused vars `file' and `add'.
18381         (auth-source-user-or-password): Remove unused var `cname'.
18383 2015-10-29  Juri Linkov  <juri@linkov.net>
18385         * lisp/dired.el (dired-unmark-all-files-query): Declare.
18386         (dired-unmark-all-files): Let-bind it and use instead of ‘query’.
18387         (Bug#21746)
18389 2015-10-29  Juri Linkov  <juri@linkov.net>
18391         * lisp/ielm.el (ielm-indent-line): Use non-nil arg of comint-bol
18392         to go to the beginning of text line instead of command line.
18393         https://lists.gnu.org/r/emacs-devel/2015-10/msg02360.html
18395 2015-10-29  Eli Zaretskii  <eliz@gnu.org>
18397         Fix encoding of saving *Help* buffers
18399         * lisp/help-fns.el (describe-function-1): If we use curved quotes,
18400         set help buffer's buffer-file-coding-system to UTF-8.  (Bug#21780)
18402 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
18404         * lisp/emacs-lisp/cl-generic.el: Add (major-mode MODE) context.
18405         (cl--generic-derived-specializers): New function.
18406         (cl--generic-derived-generalizer): New generalizer.
18407         (cl-generic-generalizers): New specializer (derived-mode MODE).
18408         (cl--generic-split-args): Apply the rewriter, if any.
18409         (cl-generic-define-context-rewriter): New macro.
18410         (major-mode): Use it to define a new context-rewriter, so we can write
18411         `(major-mode MODE)' instead of `(major-mode (derived-mode MODE))'.
18413         * lisp/frame.el (window-system): New context-rewriter so we can write
18414         `(window-system VAL)' instead of (window-system (eql VAL)).
18415         (cl--generic-split-args): Apply the rewriter, if any.
18416         (frame-creation-function): Use the new syntax.
18418         * lisp/term/x-win.el (window-system-initialization)
18419         (handle-args-function, frame-creation-function)
18420         (gui-backend-set-selection, gui-backend-selection-owner-p)
18421         (gui-backend-selection-exists-p, gui-backend-get-selection):
18422         * lisp/term/w32-win.el (window-system-initialization)
18423         (handle-args-function, frame-creation-function)
18424         (gui-backend-set-selection, gui-backend-get-selection)
18425         (gui-backend-selection-owner-p, gui-backend-selection-exists-p):
18426         * lisp/term/pc-win.el (gui-backend-get-selection)
18427         (gui-backend-selection-exists-p, gui-backend-selection-owner-p)
18428         (gui-backend-set-selection, window-system-initialization)
18429         (frame-creation-function, handle-args-function):
18430         * lisp/term/ns-win.el (window-system-initialization)
18431         (handle-args-function, frame-creation-function)
18432         (gui-backend-set-selection, gui-backend-selection-exists-p)
18433         (gui-backend-get-selection):
18434         * lisp/startup.el (handle-args-function):
18435         * lisp/term/xterm.el (gui-backend-get-selection)
18436         (gui-backend-set-selection): Use the new syntax.
18438 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
18440         * test/indent/css-mode.css: Add tests for url(...) syntax.
18442 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
18444         * lisp/emacs-lisp/smie.el: Use `declare' for `pure'.
18445         (smie-precs->prec2, smie-merge-prec2s, smie-bnf->prec2)
18446         (smie-prec2->grammar): Use `declare'.
18448 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
18450         * lisp/emacs-lisp/cl-generic.el: Accommodate future changes.
18451         (cl--generic-generalizer): Add `name' field.
18452         (cl-generic-make-generalizer): Add corresponding `name' argument.
18453         (cl-generic-define-generalizer): New macro.
18454         (cl--generic-head-generalizer, cl--generic-eql-generalizer)
18455         (cl--generic-struct-generalizer, cl--generic-typeof-generalizer)
18456         (cl--generic-t-generalizer): Use it.
18457         (cl-generic-ensure-function): Add `noerror' argument.
18458         (cl-generic-define): Use it so we don't follow aliases.
18459         (cl-generic-define-method): Preserve pre-existing ordering of methods.
18460         (cl--generic-arg-specializer): New function.
18461         (cl--generic-cache-miss): Use it.
18462         (cl-generic-generalizers): Only fset a temporary definition
18463         during bootstrap.
18464         (cl--generic-struct-tag, cl--generic-struct-specializers):
18465         Allow extra arguments.
18467         * lisp/emacs-lisp/eieio-compat.el
18468         (eieio--generic-static-symbol-generalizer)
18469         (eieio--generic-static-object-generalizer):
18470         Use cl-generic-define-generalizer.
18471         (eieio--generic-static-symbol-specializers): Allow extra arguments.
18473         * lisp/emacs-lisp/eieio-core.el (eieio--generic-generalizer)
18474         (eieio--generic-subclass-generalizer):
18475         Use cl-generic-define-generalizer.
18476         (eieio--generic-subclass-specializers): Allow extra arguments.
18478 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
18480         * lisp/emacs-lisp/bytecomp.el (compile-defun): Add defvars in scope.
18482 2015-10-29  Michael Albinus  <michael.albinus@gmx.de>
18484         Add "afp" method to Tramp
18486         * doc/misc/tramp.texi (GVFS based methods): Describe `afp' method.
18488         * lisp/net/tramp-gvfs.el (tramp-gvfs-methods): Add "afp" method.
18489         (tramp-gvfs-handle-expand-file-name)
18490         (tramp-gvfs-handler-mounted-unmounted)
18491         (tramp-gvfs-connection-mounted-p, tramp-gvfs-mount-spec)
18492         (tramp-gvfs-maybe-open-connection): Support also "afp".
18493         (tramp-gvfs-handle-file-attributes): Handle the case of empty
18494         "owner::user" and "owner::group" entries.
18496 2015-10-29  Andy Moreton  <andrewjmoreton@gmail.com>
18498         Handle negative coordinates in ‘x_calc_absolute_position’
18500         * src/w32term.c (x_calc_absolute_position): Find display origin to
18501         allow for negative coordinates.
18503 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
18505         (internal--syntax-propertize): Save match-data here (bug#21766)
18507         * lisp/emacs-lisp/syntax.el (internal--syntax-propertize): Save match-data.
18508         * lisp/simple.el (delete-trailing-whitespace): Undo last change.
18510 2015-10-28  Dmitry Gutov  <dgutov@yandex.ru>
18512         Don't require default-directory to end with a slash
18514         * doc/lispref/files.texi (Magic File Names): Document the change
18515         in unhandled-file-name-directory.
18517         * lisp/url/url-handlers.el
18518         (url-handler-unhandled-file-name-directory): Update accordingly.
18520         * src/buffer.c (default-directory): Update the docsting.
18522         * src/fileio.c (unhandled-file-name-directory): Default to calling
18523         `file-name-as-directory'
18524         (https://lists.gnu.org/r/emacs-devel/2015-10/msg02294.html).
18526 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
18528         * lisp/isearch.el: Delete some outdated comments.
18530 2015-10-28  Vibhav Pant  <vibhavp@gmail.com>
18532         Fix eshell/clear not working if the output has a small line count
18534         * lisp/eshell/esh-mode.el (eshell/clear): Use (window-size) as the
18535         number of newlines to be inserted. This fixes the issue where
18536         eshell/clear wouldn't work if the prompt was not at the bottom of the
18537         window, and the output wasn't too long.
18539 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
18541         * lisp/files.el (write-file): Use vc-refresh-state.
18543         * lisp/autorevert.el (auto-revert-handler): Use vc-refresh-state.
18545         * lisp/vc/pcvs.el (cvs-revert-if-needed): Use vc-refresh-state.
18547 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
18549         * lisp/emacs-lisp/macroexp.el: Tweak macroexp-if optimizations.
18550         (macroexp-unprogn): Make sure we never return an empty list.
18551         (macroexp-if): Remove unused (and unsafe) optimization.
18552         Optimize (if A T (if B T E)) into (if (or A B) T E) instead, which does
18553         occur occasionally.
18555 2015-10-28  Juanma Barranquero  <lekktu@gmail.com>
18557         Fix bug#21766 and add test
18558         * lisp/simple.el (delete-trailing-whitespace): Save match data when
18559         calling `skip-syntax-backward'.
18560         * test/automated/simple-test.el (simple-delete-trailing-whitespace):
18561         New test.
18563 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
18565         * doc/lispref/sequences.texi (Sequence Functions): Fix typo.
18567 2015-10-28  Paul Eggert  <eggert@cs.ucla.edu>
18569         * src/dispnew.c (init_display): Simplify overflow checking.
18571 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
18573         * lisp/character-fold.el (character-fold-to-regexp): Fix case
18574         where string ends in space
18576 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
18578         * lisp/emacs-lisp/seq.el (seq-mapn): New function.
18580         * doc/lispref/sequences.texi (Sequence Functions): Document seq-mapn.
18582 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
18584         * lisp/character-fold.el: Make compatible with lax-whitespace.
18585         (character-fold-to-regexp): Rework internals to play nice with
18586         lax-whitespacing.
18588         When the user types a space, we want to match the table entry for
18589         ?\s, which is generally a regexp like "[ ...]".  However, the
18590         `search-spaces-regexp' variable doesn't "see" spaces inside these
18591         regexp constructs, so we need to use "\\( \\|[ ...]\\)" instead (to
18592         manually expose a space).
18594         Furthermore, the lax search engine acts on a bunch of spaces, not
18595         on individual spaces, so if the string contains sequential spaces
18596         like "  ", we need to keep them grouped together like this:
18597         "\\(  \\|[ ...][ ...]\\)".
18599 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
18601         * lisp/isearch.el: Refactor momentary messages.
18602         (isearch--momentary-message): New function.
18603         (isearch-toggle-lax-whitespace, isearch-toggle-case-fold)
18604         (isearch-toggle-invisible): Use it.
18606 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
18608         * lisp/isearch.el: Define all toggles with `isearch-define-mode-toggle'.
18609         (isearch-define-mode-toggle): New macro.
18610         (isearch-toggle-invisible): Rename to
18611         `isearch-define-mode-toggle'.
18612         (isearch-toggle-case-fold, isearch-toggle-invisible)
18613         (isearch-toggle-regexp, isearch-toggle-lax-whitespace): Define
18614         with `isearch-define-mode-toggle'.
18616 2015-10-28  Michael Albinus  <michael.albinus@gmx.de>
18618         Avoid using `add-to-list' on a let-local var in tramp-smb.el
18620         * lisp/net/tramp-compat.el (tramp-compat-delete-dups): New defun.
18621         * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files): Use it.
18623 2015-10-28  Michael Albinus  <michael.albinus@gmx.de>
18625         * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files):
18626         Revert 692bce5b9eccfae19ae2a5a23a9ccd8d6bf86076, `delete-dups'
18627         does not exist in XEmacs 21.4.
18629 2015-10-28  Anders Lindgren  <andlind@gmail.com>
18631         Fixed OS X startup crash
18633         Input events started to arrive before ns_term_init() was finished.
18634         Solved by blocking input.  This also seems to correct the "You
18635         can't open the application "Emacs" because it may be damaged or
18636         incomplete" error issued when double-clicking on the Emacs
18637         application.
18639         * src/nsterm.m (ns_constrain_all_frames, ns_init_term): Block input.
18640         * src/nsterm.m (ns_send_appdefined, EmacsApp): Trace output.
18642 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
18644         * src/process.c (Fget_buffer_process): Improve docstring.
18645         Document the fact that it doesn't return dead processes.
18647 2015-10-28  Anders Lindgren  <andlind@gmail.com>
18649         Fix incorrect NextStep tool-bar-mode -- wrong number of rows in frame.
18651         * src/nsterm.h (struct ns_output): New flag, in_animation.
18652         * src/nsfns.m (Fx_create_frame): Initialize in_animation flag.
18653         * src/nsmenu.m (free_frame_tool_bar, update_frame_tool_bar): Set
18654         in_animation flag around call to "setVisible". Set new tool bar
18655         height before call to setVisible.
18656         * src/nsterm.m (x_set_window_size): Don't call [view setRow:
18657         andColumns:] as this fools the subsequent call to updateFrameSize
18658         from performing the real resize.
18659         (windowDidResize): Don't update anything when in_animation is
18660         non-zero.
18662         Trace output.
18664         * src/nsmenu.m (free_frame_tool_bar, update_frame_tool_bar)
18665         (EmacsToolbar):
18666         * src/nsterm.m (x_set_window_size, updateFrameSize)
18667         ([EmacsView setRows: andColumns:])
18669 2015-10-28  Nicolas Petton  <nicolas@petton.fr>
18671         * lisp/emacs-lisp/thunk.el (thunk-delay): Fix the macro.
18673 2015-10-28  Tassilo Horn  <tsdh@gnu.org>
18675         Prettify TeX macros not ending in a word char
18677         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
18678         Prettify macros which don't end in a word character.
18680 2015-10-27  Dmitry Gutov  <dgutov@yandex.ru>
18682         Pipe Hg commit descriptions through 'tabindent'
18684         * lisp/vc/vc-hg.el (vc-hg-log-format): Pipe commit description
18685         through 'tabindent'.
18686         (vc-hg-log-view-mode): Set tab-width to 2 locally.
18687         (https://lists.gnu.org/r/emacs-devel/2015-10/msg02259.html)
18689 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
18691         * lisp/net/tramp-smb.el: Avoid using `add-to-list' on a let-local var.
18692         (tramp-smb-handle-directory-files): Use `delete-dups'.
18694         * lisp/net/tramp.el (auto-save-file-name-transforms): Declare.
18696 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
18698         * lisp/international/ccl.el: Use lexical-binding.
18699         (ccl-compile-if): Remove unused var `false-ic'.
18700         (ccl-compile-write-repeat): Remove unused var `i'.
18701         (ccl-compile-map-single): Remove unused var `id'.
18702         (ccl-dump, ccl-dump-binary): Use explicit let-binding to bind the
18703         dynamic var `ccl-code'.
18705 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
18707         * lisp/json.el (json-new-object): Optimize trivial `list' call.
18709 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
18711         * lisp/help.el: Fix bug with incorrect arglist string.
18712         (help-add-fundoc-usage): Don't mistake a mis-formatted string
18713         for a list.
18715 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
18717         * lisp/gnus/gnus-topic.el: Silence some warnings.
18718         (gnus-topic-prepare-topic): Remove unused var `topic'.
18719         (gnus-topic-remove-topic): Mark unused arg `hide'.
18720         (gnus-tmp-header): Declare.
18721         (gnus-topic-goto-missing-group): Remove unused var `entry'.
18722         (gnus-topic-unmark-topic): Mark unused arg `dummy'.
18723         (gnus-topic-copy-matching): Mark unused arg `copyp'.
18724         Move initialization of `topic' into its declaration.
18726 2015-10-27  Stephen Leake  <stephen_leake@stephe-leake.org>
18728         Minor CEDET fixes
18730         * lisp/cedet/cedet-global.el (cedet-gnu-global-gtags-call):
18731         Handle warnings from gtags about invalid options.
18732         (cedet-gnu-global-create/update-database): Do incremental update
18733         properly.
18735         * lisp/cedet/ede/generic.el (ede-enable-generic-projects):
18736         Get monotone root right.
18738 2015-10-27  Michael Albinus  <michael.albinus@gmx.de>
18740         Fall back to polling in autorevert when needed
18742         * lisp/autorevert.el (auto-revert-notify-handler): When a
18743         `stopped' event arrives from file notification, fall back to polling.
18745         * test/automated/file-notify-tests.el
18746         (file-notify-test03-autorevert): Extend test for polling when file
18747         notification ceases to work.
18749 2015-10-27  Dmitry Gutov  <dgutov@yandex.ru>
18751         Show full commit messages in 'hg log' when appropriate
18753         * lisp/vc/vc-hg.el (vc-hg-log-format): New variable.
18754         (vc-hg-print-log, vc-hg-expanded-log-entry): Use it.
18755         (https://lists.gnu.org/r/emacs-devel/2015-10/msg02191.html)
18757 2015-10-27  Nicolas Petton  <nicolas@petton.fr>
18759         Use a plain SVG file for the icon
18761         * etc/images/icons/hicolor/scalable/apps/emacs.svg: Use a plain SVG
18762           format instead of the Inkscape SVG format.
18764 2015-10-27  Michael Albinus  <michael.albinus@gmx.de>
18766         Fix subtle bug in auto-revert-tests.el
18768         * test/automated/auto-revert-tests.el
18769         (auto-revert-test02-auto-revert-mode-dired): Narrow *Messages*
18770         buffer where it belongs to.  (Bug#21668)
18772 2015-10-26  Nicolas Petton  <nicolas@petton.fr>
18774         * lisp/emacs-lisp/map.el: Better docstrings.
18776         * lisp/emacs-lisp/seq.el: Better docstrings.
18778         * lisp/emacs-lisp/seq.el: Rename all seq arguments to sequence.
18780 2015-10-26  Phillip Lord  <phillip.lord@russet.org.uk>
18782         * lisp/emacs-lisp/ert.el: Print results without newline escaping.
18784 2015-10-26  Stephen Leake  <stephen_leake@stephe-leake.org>
18786         Clarify that load-path contents should be directory file names
18788         * doc/lispref/files.texi (Directory Names): Define and use "directory
18789         file name".  Recommend `expand-file-name'.
18791         * src/lread.c (load-path): Fix doc string; elements are directory file
18792         names.
18794 2015-10-26  Eli Zaretskii  <eliz@gnu.org>
18796         Fix simple-test.el test
18798         * test/automated/simple-test.el (simple-test--dummy-buffer):
18799         Make sure indentation doesn't use TABs, otherwise the 6th test
18800         might fail.
18802 2015-10-26  Mark Oteiza  <mvoteiza@udel.edu>
18804         * lisp/net/eww.el (eww-bookmark-prepare): Use truncate-string-to-width.
18805         `substring' does not account for full width characters.
18807 2015-10-26  Michael Albinus  <michael.albinus@gmx.de>
18809         Further work on `stopped' events in filenotify.el
18811         * doc/lispref/os.texi (File Notifications): Rework examples.
18813         * lisp/filenotify.el (file-notify--rm-descriptor): Optional parameter.
18814         (file-notify--rm-descriptor, file-notify-callback): Improve check
18815         for sending `stopped' event.
18816         (file-notify-add-watch): Check for more events for `inotify'.
18818         * test/automated/file-notify-tests.el
18819         (file-notify--test-expected-events): New defvar.
18820         (file-notify--test-with-events): Use it.
18821         (file-notify--test-cleanup): Make it more robust when deleting
18822         directories.
18823         (file-notify--test-event-test): Check also for watched directories.
18824         (file-notify--test-event-handler): Suppress temporary .#files.
18825         (file-notify-test02-events, file-notify-test04-file-validity):
18826         Rework `stopped' events.
18827         (file-notify-test05-dir-validity): Wait for events when appropriate.
18829 2015-10-26  Artur Malabarba  <bruce.connor.am@gmail.com>
18831         * src/keyboard.c (post-command-hook): Shorten docstring.
18833 2015-10-26  Tassilo Horn  <tsdh@gnu.org>
18835         Fix infinite loop in sh-script's SMIE code
18837         * lisp/progmodes/sh-script.el (sh-smie-sh-forward-token): Fix infinite
18838         loop (bug#21747).
18840 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
18842         * lisp/isearch.el (search-default-regexp-mode): Revert to nil.
18843         Character-fold search _still_ doesn't play well with
18844         lax-whitespace.  So disable it by default (again) for now.
18846 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
18848         * lisp/isearch.el: No visual feedback for default search mode.
18849         During an isearch where character-folding is the default, we don't
18850         want to take up minibuffer space just to tell the user that
18851         "Char-fold " is on.  The same goes for other modes, if the user
18852         changes the default.  In contrast, if the user toggles OFF the
18853         default mode, they should see "Literal", to distinguish it from
18854         the default mode.
18855         (isearch--describe-regexp-mode): Return "" if describing the
18856         default mode, and return "literal " if describing a plain search
18857         and it is not default.
18859 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
18861         * test/automated/simple-test.el: New file.
18862         Define tests for `newline' and `open-line'.
18864 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
18866         * lisp/simple.el (open-line): Integrate with electric-indent-mode.
18867         Also run `post-self-insert-hook' when called interactively.
18869 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
18871         * lisp/simple.el (open-line): Fix docstring.
18872         Also explain apparently redundant line.
18874 2015-10-25  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
18875             Alexandru Harsanyi  <AlexHarsanyi@gmail.com>
18877         Sync with soap-client repository, version 3.0.1
18879         * lisp/net/soap-client.el, lisp/net/soap-inspect.el:
18880         Bump version to 3.0.1.
18882         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Update home page.
18884 2015-10-25  Eli Zaretskii  <eliz@gnu.org>
18886         * lisp/progmodes/grep.el (grep): Doc fix.  (Bug#21754)
18888 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
18890         * src/keyboard.c (post-command-hook): Extend the docstring.
18891         Mainly, explain how to use it without hanging Emacs, or giving the
18892         impression that it is hanging.  Also mention `pre-command-hook'.
18893         (pre-command-hook): Mention `post-command-hook'.
18895 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
18897         * lisp/custom.el (custom-declare-variable): Shorten code again.
18898         Without using pcase this time.  We can't use pcase because it is
18899         loaded after custom in loadup.el.  Also add a comment explaining
18900         this to future dummies like me.
18902 2015-10-25  Michael Albinus  <michael.albinus@gmx.de>
18904         * doc/lispref/os.texi (File Notifications): Document `stopped event'.
18906 2015-10-25  Michael Albinus  <michael.albinus@gmx.de>
18908         Introduce `stopped' event in file notification
18910         * lisp/filenotify.el (file-notify--rm-descriptor): New defun.
18911         (file-notify-rm-watch): Use it.
18912         (file-notify-callback): Implement `stopped' event.
18913         (file-notify-add-watch): Mention `stopped' in the docstring.
18914         Check, that upper directory exists.
18916         * test/automated/file-notify-tests.el (file-notify-test01-add-watch):
18917         Add two test cases.
18918         (file-notify-test02-events): Handle also `stopped' event.
18919         (file-notify-test04-file-validity): Add another test case.
18921 2015-10-25  Paul Eggert  <eggert@cs.ucla.edu>
18923         Revert commit that broke 'make bootstrap'
18925         * lisp/custom.el (custom-declare-variable): Revert commit
18926         79fac080d277fed07b3c192890ad59d36d9f83b6.  custom.el needs to work
18927         even when pcase has not been defined yet, when doing bootstrapping.
18929 2015-10-25  Paul Eggert  <eggert@cs.ucla.edu>
18931         Port recent inline functions fix to Standard C
18933         * src/lisp.h (LISP_MACRO_DEFUN, LISP_MACRO_DEFUN_VOID): Remove.
18934         All uses rewritten to define the function directly rather than to
18935         use a macro to define the function.  This conforms to Standard C,
18936         which does not allow stray semicolons at the top level.  I hope it
18937         also avoids the problems with TAGS.  Those macros, though clever,
18938         were pretty confusing anyway, and it wasn’t clear they were worth
18939         the aggravation even without the TAGS problem.
18941 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
18943         * lisp/isearch.el: Make character-fold search the default again.
18945 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
18947         * lisp/character-fold.el: Many improvements.
18948         (character-fold-search-forward, character-fold-search-backward):
18949         New command.
18950         (character-fold-to-regexp): Remove lax-whitespace hack.
18951         (character-fold-search): Remove variable.  Only isearch and
18952         query-replace use char-folding, and they both have their own
18953         variables to configure that.
18955 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
18957         * lisp/isearch.el: Generalize definition of regexp-function toggles.
18958         (isearch-specify-regexp-function): New macro for specifying
18959         possible values of `isearch-regexp-function'.
18960         (isearch-toggle-character-fold, isearch-toggle-symbol)
18961         (isearch-toggle-word): Define with `isearch-specify-regexp-function'.
18963 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
18965         * lisp/isearch.el (search-default-regexp-mode): New variable.
18966         (isearch-mode): Use it.
18968 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
18970         * lisp/isearch.el (search-exit-option, search-slow-window-lines)
18971         (search-slow-speed, search-upper-case)
18972         (search-nonincremental-instead, search-whitespace-regexp)
18973         (search-invisible, isearch-hide-immediately)
18974         (isearch-resume-in-command-history, search-ring-max)
18975         (regexp-search-ring-max, search-ring-update, search-highlight)
18976         (isearch-fail): Delete :group entries.
18978 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
18980         * lisp/custom.el (custom-declare-variable): Shorten code a bit.
18982 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
18984         addpm.c: Silence some warnings.
18986         * nt/addpm.c (DdeCommand): Cast pData argument of DdeClientTransaction
18987         to LPBYTE.
18988         (add_registry): Pass NULL to optional lpClass argument of
18989         RegCreateKeyEx, not an empty string.
18991 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
18993         addpm.c: Do not add obsolete GTK libraries to the path.
18995         * nt/addpm.c (REG_GTK, REG_RUNEMACS_PATH): Delete.
18996         (add_registry): Remove variables `size' and `gtk_key'.
18997         Do not add the GTK DLL directory to the library search path; it is
18998         confusing behavior (in particular, the same Emacs version with and
18999         without invoking addpm will use a different path), and the GTK image
19000         libraries are obsolete anyway.
19002 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
19004         addpm.c: Replace existing registry entries, but do not create new ones
19006         * nt/addpm.c (add_registry): If the Emacs registry key exists, replace
19007         existing values from previous versions, but do not add new ones; the
19008         key could exist for other reasons unrelated to old Emacsen, like X-style
19009         resources, or to set some environment variables like HOME or LANG, and
19010         in that case we don't want to populate it with obsolete values.
19012 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
19014         * nt/addpm.c (add_registry): Do not compute unused return value.
19016 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
19018         addpm.c: Don't pass REG_OPTION_NON_VOLATILE to RegOpenKeyEx
19020         * nt/addpm.c (add_registry): Pass 0 to ulOptions argument of
19021         RegOpenKeyEx, not REG_OPTION_NON_VOLATILE.  This doesn't change
19022         current behavior because REG_OPTION_NON_VOLATILE is defined to
19023         be 0L anyway, but that option is actually documented only for
19024         RegCreateKeyEx.
19026 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
19028         * src/w32notify.c (Fw32notify_add_watch): Fix version check.
19030 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
19032         Update frame title when redisplay scrolls selected window
19034         * src/xdisp.c (redisplay_window): Reconsider the frame's title
19035         when the mode-line of the frame's selected window needs to be
19036         updated.
19038 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
19040         Update frame title when scrolling the selected window
19042         * src/window.c (wset_update_mode_line): New function, sets either
19043         the window's update_mode_line flag or the global update_mode_lines
19044         variable.
19045         (Fset_window_start, set_window_buffer, window_scroll_pixel_based)
19046         (window_scroll_line_based): Call it instead of only setting the
19047         window's update_mode_line flag.
19049 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
19051         An even better fix for bug#21739
19053         * src/window.c (set_window_buffer): If the window is the frame's
19054         selected window, set update_mode_lines, not the window's
19055         update_mode_line flag.
19056         * src/buffer.c (Fkill_buffer): Undo last change.
19057         (set_update_modelines_for_buf): Function deleted.
19059 2015-10-24  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
19060             Alexandru Harsanyi  <AlexHarsanyi@gmail.com>
19062         Sync with soap-client repository, version 3.0.0
19064         * lisp/net/soap-client.el, lisp/net/soap-inspect.el:
19065         Bump version to 3.0.0.
19067         * lisp/net/soap-inspect.el: Merge in changes from Emacs master branch.
19069         * lisp/net/soap-client.el: Merge in changes from Emacs master branch.
19071         * lisp/net/soap-inspect.el: Shorten first line description.
19073         * lisp/net/soap-client.el: Make a small whitespace fix.
19075         * lisp/net/soap-inspect.el: Update copyright years.
19077         * lisp/net/soap-client.el (soap-encoded-namespaces): Move above
19078         first use in soap-encode-xs-element.
19080         * lisp/net/soap-client.el (soap-type-is-array?): new defun
19081         (soap-encode-xs-element): handle array elements in this function
19082         (soap-encode-xs-complex-type): flag error if asked to encode an
19083         array type, this is handled in `soap-encode-xs-element'
19085         * lisp/net/soap-inspect.el (soap-inspect-xs-attribute-group):
19086         Do not print type for attribute group.
19088         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-attribute-group)
19089         New function.
19090         (soap-inspect-xs-attribute-group): Likewise.
19092         * lisp/net/soap-inspect.el
19093         (soap-resolve-references-for-xs-attribute-group): Resolve
19094         references of attributes in an attribute group.
19096         * lisp/net/soap-client.el (soap-decode-xs-attributes): Process attribute
19097         type directly, not through soap-wsdl-get.
19099         * lisp/net/soap-client.el (soap-xs-parse-attribute): Leave reference
19100         nil if reference attribute is nil.
19102         * lisp/net/soap-client.el (soap-resolve-references-for-xs-attribute):
19103         Convert XML schema attributes to xsd:string.
19105         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-attribute):
19106         New function.
19107         (soap-sample-value-for-xs-simple-type): Prepend attributes to result.
19108         (soap-sample-value-for-xs-complex-type): Likewise.
19109         (soap-inspect-xs-attribute): New function.
19110         (soap-inspect-xs-simple-type): Print attributes.
19111         (soap-inspect-xs-complex-type): Likewise.
19113         * lisp/net/soap-inspect.el (soap-resolve-references-for-xs-simple-type):
19114         Resolve references for attributes.
19115         (soap-resolve-references-for-xs-complex-type): Likewise.
19117         * lisp/net/soap-client.el (soap-xml-node-find-matching-child):
19118         Rename from soap-xml-node-first-child.
19119         (soap-xs-parse-attribute): Call soap-xml-node-find-matching-child.
19120         (soap-xs-parse-simple-type): Likewise.
19122         * lisp/net/soap-client.el (soap-invoke-async): Add error checking.
19124         * lisp/net/soap-client.el (soap-invoke-internal): New function.
19125         (soap-invoke-async): Call soap-invoke-internal.
19126         (soap-invoke): Likewise.
19128         * lisp/net/soap-client.el (soap-invoke-async): Ensure buffer passed to
19129         url-retrieve callback is killed.
19131         * lisp/net/soap-client.el (soap-parse-wsdl-phase-validate-node):
19132         Rename function.
19133         (soap-parse-wsdl-phase-fetch-imports): Likewise.
19134         (soap-parse-wsdl-phase-parse-schema): Likewise.
19135         (soap-parse-wsdl-phase-fetch-schema): Likewise.
19136         (soap-parse-wsdl-phase-finish-parsing): Likewise.
19137         (soap-parse-wsdl): Update calls.
19139         * lisp/net/soap-client.el (soap-invoke-async): Fix callback invocation.
19141         * lisp/net/soap-client.el (soap-invoke-async): New function.
19142         (soap-invoke): Reimplement using soap-invoke-async.
19144         * lisp/net/soap-client.el (soap-parse-server-response):
19145         Improve docstring.
19146         (soap-invoke): Inline call to soap-parse-server-response.
19148         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
19149         Prevent incorrect warning.
19151         * lisp/net/soap-client.el (soap-parse-server-response):
19152         Rename soap-process-url-response.  Destroy the mime part.
19153         (soap-invoke): Call soap-parse-server-response.
19155         * lisp/net/soap-client.el: Update copyright date.
19157         * lisp/net/soap-client.el: Fix checkdoc issues.
19159         * lisp/net/soap-client.el: Fix indentation and long lines.
19161         * lisp/net/soap-client.el (soap-time-format): Remove variable.
19162         (soap-encode-xs-basic-type): Simplify date-time format detection.
19163         (soap-decode-xs-basic-type): Remove soap-time-format support.
19165         * lisp/net/soap-client.el (soap-process-url-response): New function.
19166         (soap-fetch-xml-from-url): Call soap-process-url-response.
19167         (soap-parse-wsdl-phase-1): New function.
19168         (soap-parse-wsdl-phase-2): Likewise.
19169         (soap-parse-wsdl-phase-3): Likewise.
19170         (soap-parse-wsdl-phase-4): Likewise.
19171         (soap-parse-wsdl-phase-5): Likewise.
19172         (soap-parse-wsdl): Call phase functions.
19174         * lisp/net/soap-client.el (soap-decode-xs-basic-type):
19175         Remove one-argument and call.
19177         * lisp/net/soap-client.el (soap-decode-date-time): Improve docstring.
19179         * lisp/net/soap-client.el (soap-xmlschema-imports): Remove variable.
19180         (soap-parse-schema): Add wsdl argument.  Look up XML schema
19181         imports from wsdl.
19182         (soap-load-wsdl): Do not set soap-xmlschema-imports.
19183         (soap-parse-wsdl): Get XML schema imports from wsdl.
19185         * lisp/net/soap-client.el (soap-current-file): Remove variable.
19186         (soap-wsdl): Add current-file slot.
19187         (soap-fetch-xml-from-url): Add wsdl argument.  Look up current
19188         file from wsdl.
19189         (soap-fetch-xml-from-file): Likewise.
19190         (soap-fetch-xml): Likewise.
19191         (soap-load-wsdl): Always create wsdl object first.
19192         (soap-parse-wsdl): Pass wsdl to soap-fetch-xml.
19194         * lisp/net/soap-client.el (soap-xs-element): Add is-group slot.
19195         (soap-xs-parse-element): Set is-group slot.
19196         (soap-resolve-references-for-xs-element): Skip is-group elements.
19197         (soap-xs-complex-type): Add is-group slot.
19198         (soap-xs-parse-complex-type): Set is-group slot.
19199         (soap-xs-parse-sequence): Parse xsd:group elements.
19200         (soap-resolve-references-for-xs-complex-type): Inline elements
19201         from referenced xsd:group nodes.
19202         (soap-parse-schema): Parse xsd:group nodes.
19204         * lisp/net/soap-client.el (soap-invoke):
19205         Don't set url-http-version to 1.0.
19207         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
19208         Allow choice nodes to accept multiple values.
19210         * lisp/net/soap-client.el (soap-encode-body): Check parameters argument
19211         for extra header values.
19213         * lisp/net/soap-client.el (soap-well-known-xmlns):
19214         Add wsa and wsaw tags.
19215         (soap-operation): Add input-action and output-action slots.
19216         (soap-parse-operation): Parse wsaw:Action nodes.
19217         (soap-encode-body): Encode service-url for WS-Addressing.
19218         (soap-create-envelope): Likewise.
19219         (soap-invoke): Update soap-create-envelope call to provide
19220         service-url argument.
19222         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
19223         Support xsi:type override attribute.
19224         (soap-decode-array): Likewise.
19226         * lisp/net/soap-client.el (soap-parse-schema):
19227         Handle location attribute.
19229         * lisp/net/soap-client.el (soap-decode-type): Check that multiRef
19230         matched validation regexp.
19232         * lisp/net/soap-client.el (soap-encode-xs-simple-type):
19233         Encode xsd:list nodes.
19234         (soap-decode-xs-simple-type): Decode xsd:list nodes.
19236         * lisp/net/soap-client.el (soap-get-candidate-elements):
19237         Fix reference handling.
19239         * lisp/net/soap-client.el (soap-xs-simple-type): Add is-list slot.
19240         (soap-xs-parse-simple-type): Call soap-xs-add-list for xsd:list nodes.
19241         (soap-xs-add-list): New function.
19243         * lisp/net/soap-client.el (soap-encode-xs-element): When a boolean is
19244         expected, interpret nil as "false".
19246         * lisp/net/soap-client.el (soap-make-xs-basic-types): Add gYearMonth,
19247         gYear, gMonthDay, gDay and gMonth.
19249         * lisp/net/soap-client.el (soap-time-format): New variable.
19250         (soap-encode-xs-basic-type): Handle dateTime, time, date,
19251         gYearMonth, gYear, gMonthDay, gDay and gMonth.
19252         (soap-decode-date-time): New function.
19253         (soap-decode-xs-basic-type): Use soap-decode-date-time.
19255         * lisp/net/soap-client.el (soap-encode-xs-basic-type): Validate value
19256         after encoding.
19257         (soap-decode-xs-basic-type): Validate value before decoding.
19259         * lisp/net/soap-client.el (soap-validate-xs-basic-type): New function.
19260         (soap-validate-xs-simple-type): Call soap-validate-xs-basic-type.
19262         * lisp/net/soap-client.el (soap-xs-add-union): Append result to base
19263         instead of overwriting it.
19264         (soap-validate-xs-simple-type): Add union support.
19266         * lisp/net/soap-client.el (soap-xs-add-restriction): Translate pattern
19267         to Emacs regexp using xsdre-translate.
19268         (soap-validate-xs-simple-type): Validate value against pattern.
19270         * lisp/net/soap-client.el (soap-xs-add-union): Preserve WSDL order of
19271         inline simpleType nodes.
19272         (soap-decode-type): Handle union types.
19274         * lisp/net/soap-client.el (soap-decode-xs-attributes): Decode basic-type
19275         attributes.
19277         * lisp/net/soap-client.el (soap-get-xs-attributes-from-groups): Rename
19278         from soap-xs-attribute-group-consolidate, all callers updated
19279         (soap-get-xs-attributes): Rename from
19280         soap-xs-attributes-consolidate, all callers updated
19282         * lisp/net/soap-client.el (soap-xs-type): Add attribute-group slot.
19283         (soap-xs-attribute-group): New type.
19284         (soap-xs-parse-attribute-group): New function.
19285         (soap-resolve-references-for-xs-attribute-group): Likewise.
19286         (soap-xs-add-extension): Handle attribute groups.
19287         (soap-resolve-references-for-xs-simple-type): Likewise.
19288         (soap-xs-parse-complex-type): Likewise.
19289         (soap-xs-parse-extension-or-restriction): Likewise.
19290         (soap-resolve-references-for-xs-complex-type): Likewise.
19291         (soap-xs-attribute-group-consolidate): New function.
19292         (soap-xs-attributes-consolidate): Handle attribute groups.
19293         (soap-parse-schema): Likewise.
19295         * lisp/net/soap-client.el (soap-encode-xs-basic-type):
19296         Fix boolean encoding.
19298         * lisp/net/soap-client.el (soap-encode-xs-complex-type): Print ref
19299         element names in warnings.
19301         * lisp/net/soap-client.el (soap-decode-xs-complex-type): Fix splicing.
19303         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
19304         Eliminate invalid warnings for choice types.
19306         * lisp/net/soap-client.el (soap-encode-xs-complex-type-attributes):
19307         Also encode base type attributes.
19309         * lisp/net/soap-client.el (soap-encode-xs-complex-type): Fix compilation
19310         warning.  Print e-name in warnings, or element if e-name is nil.
19312         * lisp/net/soap-client.el (soap-xs-element): Add alternatives slot.
19313         (soap-xs-parse-element): Set substitution-group.
19314         (soap-resolve-references-for-xs-element): Populate alternatives slot.
19315         (soap-get-candidate-elements): New function.
19316         (soap-encode-xs-complex-type): Iterate through all candidate elements.
19317         Handle types with nil type indicator.  Fix warning logic.
19319         * lisp/net/soap-client.el (soap-current-wsdl): Move declaration
19320         earlier in the file to prevent compiler warning.
19322         * lisp/net/soap-client.el (soap-node-optional): New function.
19323         (soap-node-multiple): Likewise.
19324         (soap-xs-parse-element): Call soap-node-optional and
19325         soap-node-multiple.
19326         (soap-xs-complex-type): Add optional? and multiple? slots.
19327         (soap-xml-get-children-fq): New function.
19328         (soap-xs-element-get-fq-name): Likewise.
19329         (soap-xs-complex-type-optional-p): Likewise.
19330         (soap-xs-complex-type-multiple-p): Likewise.
19331         (soap-xs-attributes-consolidate): Likewise.
19332         (soap-decode-xs-attributes): Likewise.
19333         (soap-decode-xs-complex-type): Decode types with nil type indicator.
19334         Support children that use local namespaces.  Decode attributes.
19335         Add type considerations to optional? and multiple? warnings.
19337         * lisp/net/soap-client.el (soap-xs-parse-extension-or-restriction):
19338         Store parsed attributes.
19339         (soap-encode-xs-complex-type-attributes): Encode custom attributes.
19341         * lisp/net/soap-client.el (soap-encode-xs-complex-type-attributes):
19342         Don't add the xsi:type attribute (Exchange refuses requests which have
19343         this attribute).
19345         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Convert to lexical binding,
19346         correct compiler warnings about unused function arguments and
19347         local variables.
19349         * lisp/net/soap-client.el (soap-decode-xs-complex-type): Handle nil
19350         type indicator.
19351         (soap-parse-envelope): Handle response headers.
19352         (soap-parse-response): Likewise.  Only return non-nil decoded values.
19354         * lisp/net/soap-client.el (soap-validate-xs-simple-type):
19355         Return validated value.
19357         * lisp/net/soap-client.el (soap-xs-parse-element)
19358         (soap-xs-parse-simple-type)
19359         (soap-xs-parse-complex-type)
19360         (soap-parse-message)
19361         (soap-parse-operation): Add the current namespace to the element
19362         being created.
19363         (soap-resolve-references-for-xs-element)
19364         (soap-resolve-references-for-xs-simple-type)
19365         (soap-resolve-references-for-xs-complex-type)
19366         (soap-resolve-references-for-operation): Resolve the namespace to
19367         the namespace tag.
19368         (soap-make-wsdl): specify a namespace tag when creating the xsd
19369         and soapenc namespaces
19370         (soap-wsdl-resolve-references): don't update namespace tags in
19371         elements here
19372         (soap-parse-port-type): bind the urn: to soap-target-xmlns
19373         (soap-encode-body): don't add nil namespace tags to
19374         soap-encoded-namespaces
19376         * lisp/net/soap-inspect.el: Use `soap-make-wsdl` to construct the object
19377         for registering the soap-inspect method.  Make debbugs tests pass.
19378         * lisp/net/soap-client.el (soap-decode-any-type): Use soap-l2fq on the
19379         type name, also skip string only nodes when decoding a structure.
19380         (soap-xs-parse-complex-type): (BUG) Dispatch parsing for choice
19381         types too.
19382         (soap-encode-body): Grab the header value from the param table.
19384         * lisp/net/soap-client.el (soap-should-encode-value-for-xs-element):
19385         New function.
19386         (soap-encode-xs-element): Don't encode nil value unless needed.
19388         * lisp/net/soap-client.el (soap-bound-operation): New slot `soap-body`.
19389         (soap-parse-binding): Parse the message parts required in the body.
19390         (soap-encode-body): Encode only the parts that are declared to be
19391         part of the body.
19393         * lisp/net/soap-client.el (soap-encode-xs-element): use the fq name
19394         when writing out the tag.
19395         (soap-encode-body): Remove hack that inserts the xmlns in the
19396         element attributes list.
19398         * lisp/net/soap-client.el (soap-xs-attribute): Add "default" slot.
19399         (soap-xs-parse-attribute): Default slot is set from the XML
19400         "fixed" attribute.
19401         (soap-encode-xs-complex-type-attributes): Encode any attributes
19402         that have a default value.  Also, don't put the xsi:nil attribute
19403         when the complex type has no content anyway.
19405         * lisp/net/soap-client.el (soap-well-known-xmlns):
19406         Add the xml namespace.
19407         (soap-local-xmlns): Start with the xml namespace.
19408         (soap-xml-node-first-child): Skip xsd:annotation nodes too.
19409         (soap-make-xs-basic-types): More xsd types added.
19410         (soap-encode-xs-basic-type, soap-decode-xs-basic-type):
19411         Handle "language", "time", "date", "nonNegativeInteger".
19412         (soap-resolve-references-for-xs-element): Don't signal an error if
19413         the element does not have a type.
19414         (soap-xs-parse-simple-type): Subtypes are handled with ecase,
19415         added stum for xsd:list.
19416         (soap-xs-add-union): Call soap-l2fq on all union members.
19417         (soap-xs-add-extension): Call soap-l2fq on the base member.
19418         (soap-resolve-references-for-xs-simple-type): Don't signal an
19419         error if the simple type has no base.
19420         (soap-resolve-references-for-xs-simple-type): Bugfix, call
19421         soap-wsdl-get on each type of the base.
19423         * lisp/net/soap-client.el (soap-resolve-references-for-xs-attribute):
19424         Referenced type can be eiher a simple type or a basic type.
19425         (soap-xs-add-restriction)
19426         (soap-xs-parse-extension-or-restriction): Use `soap-l2fq' on base.
19427         (soap-make-xs-basic-types)
19428         (soap-encode-xs-basic-type, soap-decode-xs-basic-type):
19429         Add support for more XMLSchema basic types.
19430         (soap-current-file, soap-xmlschema-imports): New defvars.
19431         (soap-parse-schema): Add locations from xsd:import tags to
19432         `soap-xmlschema-imports'.
19433         (soap-wsdl): Make destructor private.
19434         (soap-make-wsdl): New defun, SOAP-WSDL object constructor.
19435         (soap-wsdl-add-alias): Check if we try to replace aliases.
19436         (soap-fetch-xml-from-url, soap-fetch-xml-from-file)
19437         (soap-fetch-xml): New defuns.
19438         (soap-load-wsdl): Update to load the WSDL from either a file or
19439         an url.
19440         (soap-load-wsdl-from-url): Now an alias to `soap-load-wsdl'.
19441         (soap-parse-wsdl): Process wsdl:import tags and imports from
19442         `soap-xmlschema-imports'.
19443         * lisp/net/soap-client.el (soap-l2wk): Bugfix: call symbolp instead of
19444         symbol-name.
19445         (soap-l2fq): Make the name part always a string.
19446         (soap-name-p): New defun, used for name tests.
19448         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-complex-type):
19449         Supply sample values for choice types with a special tag.
19450         * lisp/net/soap-client.el (soap-encode-xs-complex-type):
19451         Handle anonymous elements correctly.
19452         (soap-encode-value): Accept nodes that have no namespace tag.
19454         * lisp/net/soap-client.el (soap-invoke): Encode the string for
19455         `url-request-data' as UTF-8.  Fixes issue 16.
19457 2015-10-24  Nicolas Petton  <nicolas@petton.fr>
19459         Update the new icon
19461         Move the E slightly to the right in the circle.
19463         * etc/images/icons/hicolor/128x128/apps/emacs.png:
19464         * etc/images/icons/hicolor/16x16/apps/emacs.png:
19465         * etc/images/icons/hicolor/24x24/apps/emacs.png:
19466         * etc/images/icons/hicolor/32x32/apps/emacs.png:
19467         * etc/images/icons/hicolor/48x48/apps/emacs.png:
19468         * etc/images/icons/hicolor/scalable/apps/emacs.svg:
19469         * nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns:
19470         * nt/icons/emacs.ico: New icom update.
19472 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
19474         Avoid missing inline functions from lisp.h in TAGS
19476         * src/lisp.h (LISP_MACRO_DEFUN): Mention in the commentary the
19477         need to end each invocation with a semi-colon.
19478         Add a semi-colon at the end of each invocation of LISP_MACRO_DEFUN
19479         and LISP_MACRO_DEFUN_VOID.  This is to avoid missing in TAGS
19480         inline functions defined immediately after each invocation, and
19481         also avoid tagging every invocation of these macros.
19483 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
19485         A better fix for bug#21739
19487         * src/buffer.c (set_update_modelines_for_buf): New function.
19488         (Fkill_buffer): Use it to set the global variable
19489         update_mode_lines if the killed buffer was displayed in some
19490         window.  Don't set windows_or_buffers_changed.  This is a better
19491         fix for bug#21739 than the previous fix, since it will cause only
19492         redisplay of mode lines, not of entire windows, but will still
19493         catch attention of x_consider_frame_title in xdisp.c, which
19494         redraws the frame title.
19496 2015-10-24  Tassilo Horn  <tsdh@gnu.org>
19498         * lisp/dired-aux.el (dired-compress-files-alist): Add support for
19499         tar.bz2 and tar.xz archives.
19501 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
19503         Fix infloop in redisplay introduced by a recent change
19505         * src/xdisp.c (redisplay_internal): Avoid inflooping when
19506         redisplaying the selected window sets the selected frame's
19507         redisplay flag.  (Bug#21745)
19509 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
19511         * lisp/emacs-lisp/thunk.el: Better documentation.
19513 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
19515         Replace the old icon for Windows and Mac OSX
19517         * nt/icons/emacs.ico:
19518         * nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns:
19519         Use the new icons.
19521 2015-10-23  Stephen Leake  <stephen_leake@stephe-leake.org>
19523         * lisp/emacs-lisp/package.el (package-autoload-ensure-default-file):
19524         `load-path' should contain only directory names.
19526 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
19528         New library thunk.el
19530         thunk.el is extracted from stream.el in ELPA, with additional tests.
19532         * lisp/emacs-lisp/thunk.el: New file.
19533         * test/automated/thunk-tests.el: New file.
19534         * etc/NEWS: Add information about thunk.el
19536 2015-10-23  Michael Albinus  <michael.albinus@gmx.de>
19538         Fix bug#21669
19540         * lisp/filenotify.el (file-notify-rm-watch): Improve check for
19541         calling low-level functions.
19543         * test/automated/file-notify-tests.el (file-notify--test-timeout):
19544         Decrase to 6 seconds for remote directories.
19545         (file-notify-test02-events): Expect different number of
19546         `attribute-changed' events for the local and remote cases.  Apply
19547         short delays between the operations, in order to receive all
19548         events in the remote case.  Combine `attribute-change' tests.
19549         (Bug#21669)
19551 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
19553         Decode the HTML source when displaying it in EWW
19555         * lisp/net/eww.el (eww-view-source): Decode the HTML source
19556         according to its headers.
19558 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
19560         New default icon
19562         * etc/images/icons/hicolor/128x128/apps/emacs23.png:
19563         * etc/images/icons/hicolor/16x16/apps/emacs23.png:
19564         * etc/images/icons/hicolor/24x24/apps/emacs23.png:
19565         * etc/images/icons/hicolor/32x32/apps/emacs23.png:
19566         * etc/images/icons/hicolor/48x48/apps/emacs23.png:
19567         * etc/images/icons/hicolor/scalable/apps/emacs23.svg:
19568         * etc/images/icons/hicolor/scalable/mimetypes/emacs-document23.svg:
19569         Move the old logo files to emacs23.*.
19570         * etc/images/icons/hicolor/128x128/apps/emacs.png:
19571         * etc/images/icons/hicolor/16x16/apps/emacs.png:
19572         * etc/images/icons/hicolor/24x24/apps/emacs.png:
19573         * etc/images/icons/hicolor/32x32/apps/emacs.png:
19574         * etc/images/icons/hicolor/48x48/apps/emacs.png:
19575         * etc/images/icons/hicolor/scalable/apps/emacs.svg:
19576         * etc/images/icons/hicolor/scalable/mimetypes/emacs-document.svg:
19577         New files.
19578         * etc/images/icons/README: Update the copyright information.
19580 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
19582         Fix redisplay of frame title when current buffer is killed
19584         * src/buffer.c (Fkill_buffer): Set windows_or_buffers_changed to a
19585         non-zero value, to redisplay more than just the affected windows.
19586         (Bug#21739)
19588 2015-10-23  Anders Lindgren  <andlind@gmail.com>
19590         NextStep maximization and NSTRACE rewrite
19592         Full-height, full-width, and maximized windows now cover the
19593         entire screen (except the menu bar), including the part where the
19594         system dock is placed.  The system zoom animation is no longer
19595         used.
19597         Made NonMaximized->FullWidth->FullHeight->NonMaximized restore the
19598         original size.
19600         * src/nsterm.m (ns_menu_bar_height): New function, return height of
19601         the menu bar, or 0 when it's hidden.
19602         (constrain_frame_rect): New function for constraining a frame.
19603         (ns_constrain_all_frames): Set frame size explicitly rather than
19604         relying on the system doing it for us by writing back the current
19605         frame size.
19606         (windowWillUseStandardFrame): Register non-maximized width or
19607         height as new user size.  When entering full width or height,
19608         the other size component is taken from the user size.
19609         (fullscreenState): New method for accessing the fullscreen state.
19610         (constrainFrameRect): Restrict frame to be placed under the menu bar,
19611         if present.  The old version, sometimes, restricted the height of a
19612         frame to the screen, this version never does this.
19613         (zoom): Perform zoom by setting the frame to the full size of the
19614         screen (minus the menu bar).  The default system function, with the
19615         zoom animation, is no longer used, as the final frame size doesn't
19616         cover the entire screen.
19618         Rework how to constrain resizing to the character grid.  The old
19619         system used "resizeIncrements" in NSWindows.  However, once a frame
19620         was resized so that it was not aligned to the text grid, it
19621         remained unaligned even after a resize.  In addition, it conflicted
19622         when resizing a fullheight window.
19624         * src/nsterm.m (windowWillResize): Restrict frame size to text grid,
19625         unless when pixelwise frame resizing is enabled.
19626         (updateFrameSize, initFrameFromEmacs)
19627         (toggleFullScreen, handleFS): Don't set resizeIncrements.
19629         Redesign the NS trace system.  The call structure is represented
19630         using indentations and vertical lines.  The NSTRACE macro accepts
19631         printf-style arguments.  New macros for printing various
19632         information.
19634         * src/nsterm.h (NSTRACE_ENABLED): Macro to enable trace system.
19635         (NSTRACE, NSTRACE_WHEN, NSTRACE_UNLESS): Macros to start a new
19636         block (typically a function), accept printf-style arguments.
19637         (NSTRACE_MSG): Macro for extra information, accepts
19638         printf-style arguments.
19639         (NSTRACE_what): Macros for printing various types.
19640         (NSTRACE_FMT_what): Macro with printf format string snippets.
19641         (NSTRACE_ARG_what): Macros for passing printf-style arguments,
19642         corresponds to NSTRACE_FMT_what.
19643         (NSTRACE_RETURN): Macro to print return value, accept
19644         printf-style arguments.
19645         (NSTRACE_RETURN_what): Macros to print return value for
19646         various types.
19648         * src/nsterm.m: Remove old NSTRACE macro
19649         * src/nsterm.m (nstrace_num): Trace counter.
19650         (nstrace_depth): Current call depth.
19651         (nstrace_leave): NSTRACE support function, called when the
19652         local variable "nstrace_enabled" goes out of scope using the
19653         "cleanup" extension.
19654         (ns_print_fullscreen_type_name): NSTRACE_FSTYPE support function.
19655         (constrain_frame_rect, ns_constrain_all_frames)
19656         (ns_update_auto_hide_menu_bar, ns_update_begin)
19657         (ns_update_window_begin, update_window_end, ns_update_end)
19658         (ns_focus, ns_unfocus, ns_ring_bell, ns_frame_raise_lower)
19659         (ns_frame_rehighlight, x_make_frame_visible)
19660         (x_make_frame_invisible, x_iconify_frame, x_free_frame_resources)
19661         (x_destroy_window, x_set_offset, x_set_window_size)
19662         (ns_fullscreen_hook, ns_lisp_to_color, ns_color_to_lisp)
19663         (ns_defined_color, frame_set_mouse_pixel_position)
19664         (note_mouse_movement, ns_mouse_position, ns_frame_up_to_date)
19665         (ns_define_frame_cursor, x_get_keysym_name, ns_redraw_scroll_bars)
19666         (ns_clear_frame, ns_clear_frame_area, ns_scroll_run)
19667         (ns_after_update_window_line, ns_shift_glyphs_for_insert)
19668         (dumpcursor, ns_draw_vertical_window_border)
19669         (ns_draw_window_divider, ns_draw_relief)
19670         (ns_dumpglyphs_box_or_relief, ns_maybe_dumpglyphs_background)
19671         (ns_dumpglyphs_image, ns_draw_glyph_string, ns_send_appdefined)
19672         (ns_read_socket, ns_select, ns_set_vertical_scroll_bar)
19673         (ns_set_horizontal_scroll_bar, ns_condemn_scroll_bars)
19674         (ns_redeem_scroll_bar, ns_judge_scroll_bars, ns_delete_terminal)
19675         (ns_create_terminal, ns_term_init, sendEvent)
19676         (applicationDidFinishLaunching, applicationDidBecomeActive)
19677         (timeout_handler, fd_handler, EmacsView_dealloc, changeFont)
19678         (acceptsFirstResponder, resetCursorRects, keyDown, mouseDown)
19679         (deltaIsZero, rightMouseDown, otherMouseDown, mouseUp)
19680         (rightMouseUp, otherMouseUp, scrollWheel, mouseMoved)
19681         (mouse_autoselect_window, in_window, mouseDragged)
19682         (rightMouseDragged, otherMouseDragged, windowShouldClose)
19683         (updateFrameSize, windowWillResize, windowDidResize)
19684         (windowDidBecomeKey, windowDidResignKey, windowWillMiniaturize)
19685         (initFrameFromEmacs, windowDidMove, windowDidDeminiaturize)
19686         (windowDidExpose, windowDidMiniaturize, windowWillEnterFullScreen)
19687         (windowDidEnterFullScreen, windowWillExitFullScreen)
19688         (windowDidExitFullScreen, toggleFullScreen, handleFS, setFSValue)
19689         (mouseEntered, mouseExited, menuDown, toolbarClicked, drawRect)
19690         (draggingEntered, performDragOperation, validRequestorForSendType)
19691         (setMiniwindowImage, constrainFrameRect, performZoom, zoom)
19692         (EmacsScroller_initFrame, EmacsScroller_setFrame)
19693         (EmacsScroller_dealloc, condemn, reprieve, judge)
19694         (resetCursorRects, setPosition, EmacsScroller_mouseDown)
19695         (EmacsScroller_mouseDragged, syms_of_nsterm): Use new trace system.
19697         * src/nsfns.m: Remove old NSTRACE macro
19698         * src/nsfns.m (x_set_icon_name, ns_set_name, x_explicitly_set_name)
19699         (x_implicitly_set_name, x_set_title, ns_set_name_as_filename)
19700         (ns_implicitly_set_icon_type, x_set_icon_type): Use new trace system.
19702         * src/nsimage.m: Remove old NSTRACE macro
19703         * src/nsimage.m (ns_image_from_XBM, ns_image_for_XPM)
19704         (ns_image_from_bitmap_file, ns_load_image): Use new trace system.
19706         * src/nsmenu.m: Remove old NSTRACE macro
19707         * src/nsmenu.m (ns_update_menubar, ns_menu_show, ns_popup_dialog):
19708         Use new trace system.
19710 2015-10-22  Katsumi Yamaoka  <yamaoka@jpl.org>
19712         No need to use eval-and-compile
19714         * lisp/gnus/auth-source.el: Do require epg (when compiling) before
19715         autoload epg functions.
19717 2015-10-22  Katsumi Yamaoka  <yamaoka@jpl.org>
19719         Fix auth-source-epa-make-gpg-token compilation (bug#21724)
19721         * lisp/gnus/auth-source.el: Add eval-and-compile to autoloads for
19722         epg-context-set-passphrase-callback, epg-decrypt-string, and
19723         epg-encrypt-string; require epg when compiling for the setf-method
19724         for epg-context-armor. (bug#21724)
19726 2015-10-22  Eli Zaretskii  <eliz@gnu.org>
19728         Include file cleanup for w32 files in src directory
19730         * src/w32xfns.c: Don't include keyboard.h, window.h, charset.h,
19731         fontset.h, blockinput.h.
19732         * src/w32uniscribe.c: Don't include dispextern.h, character.h,
19733         charset.h, fontset.h.
19734         * src/w32term.c: Don't include systty.h, systime.h, charset.h,
19735         character.h, ccl.h, dispextern.h, disptab.h, intervals.h,
19736         process.h, atimer.h, keymap.h, w32heap.h.  Include bitmap/gray.xbm
19737         in an ifdef-ed away block.
19738         Include fcntl.h for CYGWIN.
19739         (set_frame_param): Remove unused function.
19740         * src/w32select.c: Don't include charset.h and composite.h.
19741         (setup_config, Fw32_get_clipboard_data): Avoid compiler warnings
19742         due to pointer signedness mismatches.
19743         * src/w32reg.c (w32_get_string_resource): Avoid compiler warnings
19744         due to pointer signedness mismatches.
19745         * src/w32proc.c: Include unistd.h.  Don't include systime.h,
19746         process.h, dispextern.h.
19747         (sys_spawnve, Fw32_short_file_name, Fw32_long_file_name)
19748         (Fw32_application_type): Avoid compiler warnings due to pointer
19749         signedness mismatches.
19750         * src/w32menu.c: Don't include keymap.h, termhooks.h, window.h,
19751         character.h, charset.h, dispextern.h.
19752         (simple_dialog_show, add_menu_item): Avoid compiler warnings due
19753         to pointer signedness mismatches.
19754         * src/w32inevt.c: Don't include dispextern.h, window.h,
19755         termhooks.h, w32heap.h.
19756         * src/w32font.c: Don't include dispextern.h, character.h,
19757         charset.h, fontset.h, font.h.
19758         (intern_font_name, add_font_entity_to_list)
19759         (registry_to_w32_charset, w32_to_x_charset, fill_in_logfont)
19760         (list_all_matching_fonts): Avoid compiler warnings due to pointer
19761         signedness mismatches.
19762         * src/w32fns.c: Don't include character.h, intervals.h,
19763         dispextern.h, epaths.h, charset.h, ccl.h, fontset.h, systime.h,
19764         termhooks.h, w32heap.h, bitmap/gray.xbm, font.h, w32font.h.
19765         (w32_color_map_lookup, add_system_logical_colors_to_map)
19766         (x_decode_color, x_set_name, FPRINTF_WM_CHARS, Fxw_color_defined_p)
19767         (Fxw_color_values, x_display_info_for_name, Fset_message_beep)
19768         (x_create_tip_frame, Fx_file_dialog, Fsystem_move_file_to_trash)
19769         (w32_parse_hot_key, Ffile_system_info, w32_kbd_patch_key): Avoid
19770         compiler warnings, mainly due to pointer signedness mismatches.
19771         (unwind_create_frame_1): Remove unused function.
19772         * src/w32console.c: Don't include character.h, disptab.h, frame.h,
19773         window.h, termhooks.h, dispextern.h.
19774         (w32con_write_glyphs, w32con_write_glyphs_with_face): Fix pointer
19775         signedness mismatch.
19776         * src/w32.c: Include c-strcase.h and systty.h.  Don't include
19777         w32heap.h.
19779 2015-10-22  Tassilo Horn  <tsdh@gnu.org>
19781         Improve doc-view wrt. auto-revert-mode
19783         * lisp/doc-view.el (doc-view-revert-buffer): Don't revert when file
19784         is corrupted (bug#21729).
19785         (doc-view-mode): Set doc-view-revert-buffer as revert-buffer-function.
19787 2015-10-22  Oleh Krehel  <ohwoeowho@gmail.com>
19789         Describe dired-do-compress-to in the manual
19791         * etc/NEWS: Update.
19793         * lisp/dired-aux.el: Fix typo.
19795         * doc/emacs/dired.texi: Add entry.
19797 2015-10-22  Jürgen Hötzel  <juergen@archlinux.org>
19799         Further fix for proper locale handling in tramp-gvfs.el
19801         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
19802         Just suppress LC_MESSAGES locale category settings.
19804 2015-10-21  Paul Eggert  <eggert@cs.ucla.edu>
19806         New lispref section “Security Considerations”
19808         This attempts to document some of the issues recently discussed
19809         on emacs-devel, and to indicate other such issues.  The section
19810         could be a lot longer.
19811         * doc/lispref/os.texi (Security Considerations):
19812         New node.
19813         * doc/lispref/elisp.texi (Top):
19814         * doc/lispref/processes.texi (Shell Arguments):
19815         * lisp/subr.el (shell-quote-argument):
19816         * src/callproc.c (syms_of_callproc):
19817         Reference it.
19819 2015-10-21  Paul Eggert  <eggert@cs.ucla.edu>
19821         Merge from gnulib
19823         This incorporates:
19824         2015-10-18 stdalign: work around pre-4.9 GCC x86 bug
19825         2015-10-18 time_rz: avoid warning from bleeding-edge gcc's -Wnonnull
19826         * doc/misc/texinfo.tex, lib/stdalign.in.h, lib/time_rz.c:
19827         Copy from gnulib.
19829 2015-10-21  Katsumi Yamaoka  <yamaoka@jpl.org>
19831         * lisp/gnus/mailcap.el (mailcap-mime-data): Remove fboundp checks.
19832         (mailcap-viewer-passes-test): Do it instead.  Thanks to Stefan Monnier.
19834 2015-10-21  Ken Brown  <kbrown@cornell.edu>
19836         Further include-file cleanup
19838         * src/sheap.c: Include stdlib.h.
19839         * src/unexcw.c: Include string.h.
19841 2015-10-21  Eli Zaretskii  <eliz@gnu.org>
19843         Fix logic in 'server-kill-emacs-query-function'
19845         * lisp/server.el (server-kill-emacs-query-function): Correct the
19846         logic that controls whether the user is asked for confirmation.
19847         (Bug#21723)
19849 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
19851         * lisp/isearch.el (isearch-search-fun-default): Simplify logic.
19852         (isearch--lax-regexp-function-p): New function.
19854 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
19856         * lisp/isearch.el: Support lax-whitespace in regexp-function searches.
19857         (isearch-search-fun-default): Let-bind `search-spaces-regexp'
19858         around `isearch-regexp-function'.
19860 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
19862         * lisp/isearch.el: Rename word search to regexp-function search.
19863         `isearch-word' went well beyond its original purpose, and the name
19864         no longer makes sense.  It is now called
19865         `isearch-regexp-function', and its value should always be a function
19866         that converts a string to a regexp (though setting it to t is still
19867         supported for now).
19868         (isearch-word): Make obsolete.
19869         (isearch-regexp-function): New variable.
19870         (isearch-mode, isearch-done, isearch--state, isearch--set-state)
19871         (with-isearch-suspended, isearch-toggle-regexp)
19872         (isearch-toggle-word, isearch-toggle-symbol)
19873         (isearch-toggle-character-fold, isearch-query-replace)
19874         (isearch-occur, isearch-highlight-regexp)
19875         (isearch-search-and-update, isearch-message-prefix)
19876         (isearch-search-fun-default, isearch-search)
19877         (isearch-lazy-highlight-new-loop, isearch-lazy-highlight-search):
19878         Use it.
19879         (isearch-lazy-highlight-regexp-function): New var.
19880         (isearch-lazy-highlight-word): Make obsolete.
19881         (isearch--describe-regexp-mode): New function.
19882         (isearch--describe-word-mode): Make obsolete.
19884         * lisp/info.el (Info-isearch-search):
19885         * lisp/replace.el (replace-search, replace-highlight):
19886         * lisp/obsolete/longlines.el (longlines-search-function):
19887         * lisp/hexl.el (hexl-isearch-search-function):
19888         * lisp/cedet/semantic/senator.el (senator-isearch-search-fun):
19889         Use the new var.
19891 2015-10-21  Oleh Krehel  <ohwoeowho@gmail.com>
19893         Add dired-do-compress-to command bound to "c"
19895         * lisp/dired-aux.el (dired-shell-command): Use the caller's
19896           `default-directory', return the result of `process-file'.
19897         (dired-compress-file-suffixes): Add comment on why "tar -zxf" isn't
19898         used by default.
19899         (dired-compress-files-alist): New defvar.
19900         (dired-do-compress-to): New command.
19902         * lisp/dired.el (dired-mode-map): Bind `dired-do-compress-to' to "c".
19903         (dired-do-compress-to): Add an autoload entry.
19905         * etc/NEWS: Add two entries.
19907 2015-10-21  Tassilo Horn  <tsdh@gnu.org>
19909         Make RefTeX work with LaTeX subfiles package
19911         * lisp/textmodes/reftex.el (reftex-TeX-master-file): Recognize subfiles
19912         document class argument as master file for referencing purposes.
19914 2015-10-21  Katsumi Yamaoka  <yamaoka@jpl.org>
19916         * lisp/gnus/mailcap.el (mailcap-mailcap-entry-passes-test): Doc fix.
19918 2015-10-20  Paul Eggert  <eggert@cs.ucla.edu>
19920         Include-file cleanup for src directory
19922         Omit ‘#include "foo.h"’ unless the file needs foo.h (Bug#21707).
19923         In a few cases, add ‘#include "foo.h"’ if the file needs foo.h
19924         but does not include it directly.  As a general rule, a source
19925         file should include foo.h if it needs the interfaces that foo.h
19926         defines.
19927         * src/alloc.c: Don’t include process.h.  Include dispextern.h,
19928         systime.h.
19929         * src/atimer.c: Don’t include blockinput.h.
19930         * src/buffer.c: Include coding.h, systime.h.  Don’t include
19931         keyboard.h, coding.h.
19932         * src/callint.c: Don’t include commands.h, keymap.h.
19933         * src/callproc.c: Don’t include character.h, ccl.h, composite.h,
19934         systty.h, termhooks.h.
19935         * src/casetab.c: Don’t include character.h.
19936         * src/category.c: Don’t include charset.h, keymap.h.
19937         * src/ccl.h: Don’t include character.h.
19938         * src/character.c: Don’t include charset.h.
19939         * src/charset.c: Don’t include disptab.h.
19940         * src/chartab.c: Don’t include ccl.h.
19941         * src/cm.c: Don’t include frame.h, termhooks.h.
19942         * src/cmds.c: Don’t include window.h, dispextern.h.
19943         * src/coding.c: Don’t include window.h, frame.h.
19944         * src/composite.c: Include composite.h.  Don’t include window.h,
19945         font.h.
19946         * src/data.c: Don’t include syssignal.h, termhooks.h, font.h.
19947         * src/dbusbind.c: Don’t include frame.h.
19948         * src/decompress.c: Don’t include character.h.
19949         * src/dired.c: Don’t include character.h, commands.h, charset.h.
19950         * src/dispnew.c: Don’t include character.h, indent.h, intervals.h,
19951         process.h, timespec.h.  Include systime.h.
19952         * src/doc.c: Include coding.h.  Don’t include keyboard.h.
19953         * src/editfns.c: Include composite.h.  Don’t include frame.h.
19954         * src/emacs.c: Include fcntl.h, coding.h.  Don’t include
19955         commands.h, systty.h..
19956         * src/fileio.c: Don’t include intervals.h, dispextern.h.
19957         Include composite.h.
19958         * src/filelock.c: Don’t include character.h, systime.h.
19959         * src/fns.c: Don’t include time.h, commands.h, keyboard.h,
19960         keymap.h, frame.h, blockinput.h, xterm.h.  Include composite.h.
19961         * src/font.c: Include termhooks.h.
19962         * src/font.h: Don’t include ccl.h, frame.h.  Add forward decls of
19963         struct composition_it, struct face, struct glyph_string.
19964         * src/fontset.c: Don’t include buffer.h, ccl.h, keyboard.h,
19965         intervals.h, window.h, termhooks.h.
19966         * src/frame.c: Don’t include character.h, commands.h, font.h.
19967         * src/frame.h: Don’t include dispextern.h.
19968         * src/fringe.c: Don’t include character.h.
19969         * src/ftcrfont.c: Don’t include dispextern.h, frame.h,
19970         character.h, charset.h, fontset.h.
19971         * src/ftfont.c: Don’t include frame.h, blockinput.h, coding.h,
19972         fontset.h.
19973         * src/ftxfont.c: Don’t include dispextern.h, character.h,
19974         charset.h, fontset.h.
19975         * src/gfilenotify.c: Don’t include frame.h, process.h.
19976         * src/gtkutil.c: Include dispextern.h, frame.h, systime.h.
19977         Don’t include syssignal.h, buffer.h, charset.h, font.h.
19978         * src/gtkutil.h: Don’t include frame.h.
19979         * src/image.c: Include fcntl.h and stdio.h instead of sysstdio.h.
19980         Don’t include character.h.
19981         * src/indent.c: Don’t include keyboard.h, termchar.h.
19982         * src/inotify.c: Don’t include character.h, frame.h.
19983         * src/insdel.c: Include composite.h.  Don’t include blockinput.h.
19984         * src/intervals.c: Don’t include character.h, keyboard.h.
19985         * src/intervals.h: Don’t include dispextern.h, composite.h.
19986         * src/keyboard.c: Don’t include sysstdio.h, disptab.h, puresize.h.
19987         Include coding.h.
19988         * src/keyboard.h: Don’t incldue systime.h.
19989         * src/keymap.c: Don’t include charset.h, frame.h.
19990         * src/lread.c: Include dispextern.h and systime.h.
19991         Don’t include frame.h.  Include systime.h.
19992         * src/macros.c: Don’t include commands.h, character.h, buffer.h.
19993         * src/menu.c: Include character.h, coding.h.  Don’t include
19994         dispextern.h.
19995         * src/menu.h: Don’t include systime.h.
19996         * src/minibuf.c: Don’t include commands.h, dispextern.h, syntax.h,
19997         intervals.h, termhooks.h.
19998         * src/print.c: Include coding.h.  Don’t include keyboard.h,
19999         window.h, dispextern.h, termchar.h, termhooks.h, font.h.
20000         Add forward decl of struct terminal.
20001         * src/process.c: Don’t include termhooks.h, commands.h,
20002         dispextern.h, composite.h.
20003         * src/region-cache.c: Don’t include character.h.
20004         * src/scroll.c: Don’t include keyboard.h, window.h.
20005         * src/search.c: Don’t include category.h, commands.h.
20006         * src/sound.c: Don’t include dispextern.h.
20007         * src/syntax.c: Don’t include command.h, keymap.h.
20008         * src/sysdep.c: Don’t include window.h, dispextern.h.
20009         * src/systime.h: Use ‘#ifdef emacs’, not ‘#ifdef EMACS_LISP_H’,
20010         * src/term.c: Don’t include systty.h, intervals.h, xterm.h.
20011         * src/terminal.c: Include character.h.
20012         Don’t include charset.h, coding.h.
20013         * src/textprop.c: Don’t include character.h.
20014         * src/undo.c: Don’t include character.h, commands.h, window.h.
20015         * src/unexsol.c: Don’t include character.h, charset.h.
20016         * src/widget.c: Include widget.h.  Don’t include keyboard.h,
20017         window.h, dispextern.h, blockinput.h, character.h, font.h.
20018         * src/widgetprv.h: Don’t include widget.h.
20019         * src/window.c: Don’t include character.h, menu.h, intervals.h.
20020         * src/xdisp.c: Include composite.h, systime.h.  Don’t include
20021         macros.h, process.h.
20022         * src/xfaces.c: Don’t include charset.h, keyboard.h, termhooks.h,
20023         intervals.h.
20024         * src/xfns.c: Don’t include menu.h, character.h, intervals.h,
20025         epaths.h, fontset.h, systime.h, atimer.h, termchar.h.
20026         * src/xfont.c: Don’t include dispextern.h, fontset.h, ccl.h.
20027         * src/xftfont.c: Don’t include dispextern.h, character.h, fontset.h.
20028         * src/xgselect.c: Don’t include timespec.h, frame.h.
20029         Include systime.h.
20030         * src/xgselect.h: Don’t include time.h.
20031         Use a forward decl to struct timespec instead.
20032         * src/xmenu.c: Don’t include keymap.h, character.h, charset.h,
20033         dispextern.h.  Include systime.h.
20034         * src/xml.c: Don’t include character.h.
20035         * src/xrdb.c [USE_MOTIF]: Don’t include keyboard.h.
20036         * src/xselect.c: Don’t include dispextern.h, character.h,
20037         buffer.h, process.h.
20038         * src/xsmfns.c: Don’t include systime.h, sysselect.h.
20039         * src/xterm.c: Don’t include syssignal.h, charset.h, disptab.h,
20040         intervals.h process.h, keymap.h, xgselect.h.  Include composite.h.
20042 2015-10-20  Paul Eggert  <eggert@cs.ucla.edu>
20044         (/ N) now returns the reciprocal of N
20046         This is more compatible with Common Lisp and XEmacs (Bug#21690).  See:
20047         https://lists.gnu.org/r/emacs-devel/2015-10/msg01053.html
20048         * lisp/color.el (color-hue-to-rgb, color-hsl-to-rgb)
20049         (color-xyz-to-srgb, color-xyz-to-lab):
20050         * lisp/emacs-lisp/cl-extra.el (cl-float-limits):
20051         * lisp/net/shr-color.el (shr-color-hue-to-rgb)
20052         (shr-color-hsl-to-rgb-fractions):
20053         Exploit the change to simplify the code a bit.
20054         * lisp/emacs-lisp/bytecomp.el (byte-compile-quo):
20055         Don’t complain about single-argument calls to ‘/’.
20056         * src/data.c (arith_driver, float_arith_driver):
20057         Implement the change.
20059 2015-10-20  Dmitry Gutov  <dgutov@yandex.ru>
20061         Call vc-dir-refresh after stash operations
20063         * lisp/vc/vc-git.el (vc-git-stash-apply-at-point)
20064         (vc-git-stash-pop-at-point): Call vc-dir-refresh (bug#13960).
20066         * lisp/vc/vc-dir.el (vc-dir-resynch-file): Expand FNAME as well,
20067         since it can be abbreviated (as returned by vc-find-root).
20069 2015-10-20  Dmitry Gutov  <dgutov@yandex.ru>
20071         * lisp/vc/vc-svn.el:
20072         * lisp/vc/vc-mtn.el:
20073         * lisp/vc/vc-hg.el:
20074         * lisp/vc/vc-cvs.el:
20075         * lisp/vc/vc-git.el:
20076         * lisp/vc/vc-bzr.el: Don't declare vc-exec-after anymore.
20077         Its usages have been replaced with vc-run-delayed.
20079 2015-10-20  Dima Kogan  <dima@secretsauce.net>
20081         Fix memory leak in fontset handling
20083         * src/font.c (copy_font_spec): Make a deep copy of the input
20084         argument FONT.  (Bug#21651)
20086 2015-10-20  Michael Sperber  <mike@xemacs.org>
20088         * lisp/gnus/mailcap.el (mailcap-mime-data):
20089         Conditonalize `doc-view-mode', which does not exist on XEmacs.
20091 2015-10-20  Oleh Krehel  <ohwoeowho@gmail.com>
20093         Update the way directories are compressed
20095         * lisp/dired-aux.el (dired-compress-file-suffixes): Update the recipe
20096         for *.tar.gz decompression to use a pipe.
20097         Add an entry for the default directory compression (to *.tar.g).
20098         (dired-compress-file): Update.
20100         See https://lists.gnu.org/r/emacs-devel/2015-10/msg00949.html.
20102 2015-10-20  Michael Sperber  <mike@xemacs.org>
20104         Unbreak `group' option for `mail-sources'
20106         * lisp/gnus/nnml.el (nnml-retrieve-groups, nnml-request-scan):
20107         * lisp/gnus/nnmail.el (nnmail-get-new-mail-per-group)
20108         (nnmail-get-new-mail-1): Unbreak `group' option for `mail-sources'.
20110 2015-10-19  Nicolas Petton  <nicolas@petton.fr>
20112         New function seq-position
20114         * lisp/emacs-lisp/seq.el (seq-position): New function.
20115         * test/automated/seq-tests.el: New tests for seq-position.
20116         * doc/lispref/sequences.texi: Add documentation for `seq-position'.
20118 2015-10-19  Ken Brown  <kbrown@cornell.edu>
20120         Enable --with-wide-int build on 32-bit Cygwin
20122         * src/sheap.c (STATIC_HEAP_SIZE): Remove distinction between x86
20123         and x86_64 to enable --with-wide-int build on 32-bit Cygwin.
20125 2015-10-19  Glenn Morris  <rgm@gnu.org>
20127         * doc/emacs/ack.texi (Acknowledgments): Small, sad, update.
20129 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
20131         Resurrect image loading under auto-image-file-mode
20133         * src/image.c (x_find_image_fd): Handle the case of -2 returned by
20134         'openp' specially.  This special case was lost in the changes on
20135         2015-08-18.  (Bug#21685)
20137 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
20139         Fix return value of 'set-file-extended-attributes'
20141         * lisp/files.el (set-file-extended-attributes): Return non-nil
20142         when setting either ACLs or SELinux context succeeds.  Document
20143         the return value.  (Bug#21699)
20145         * doc/lispref/files.texi (Changing Files): Document the return
20146         value of set-file-extended-attributes.
20148 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
20150         Improve documentation of functions that change files
20152         * doc/lispref/files.texi (Changing Files): Document that these
20153         functions signal an error on failure.
20155 2015-10-18  Eli Zaretskii  <eliz@gnu.org>
20157         Fix doc string of 'shell-quote-argument'
20159         * lisp/subr.el (shell-quote-argument): Doc fix.  (Bug#21702)
20161 2015-10-18  Michael Albinus  <michael.albinus@gmx.de>
20163         Some minor Tramp changes
20165         * doc/misc/tramp.texi (Obtaining Tramp): Add http git cloning.
20167         * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
20168         Expand `tramp-auto-save-directory'.
20170 2015-10-18  Michael Albinus  <michael.albinus@gmx.de>
20172         Minor edits in Tramp
20174         * lisp/net/tramp-adb.el (directory-listing-before-filename-regexp):
20175         Declare it.
20177         * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
20178         Remove declaration.
20180 2015-10-17  Mark Oteiza  <mvoteiza@udel.edu>
20182         * lisp/emacs-lisp/eldoc.el: Add back-to-indentation to the command list.
20184 2015-10-17  Eli Zaretskii  <eliz@gnu.org>
20186         Avoid crashes when redisplayng a window changes faces or fonts
20188         * src/xdisp.c (redisplay_internal): If redisplaying the selected
20189         window or one of the frames turns on the frame's 'redisplay' flag,
20190         redisplay again.  (Bug#21428)
20192         * src/frame.c (x_set_font): Set the frame's 'fonts_changed' flag.
20194 2015-10-17  Michael Albinus  <michael.albinus@gmx.de>
20196         Solve timimg issues in file-notify-tests.el
20198         * test/automated/file-notify-tests.el (file-notify-test02-events):
20199         Rectify `attribute-change' tests.  There are timing issues with
20200         gfilenotify.  (Bug#21669)
20202 2015-10-16  Paul Eggert  <eggert@cs.ucla.edu>
20204         Fix quoting of data within htmlfontify doc
20206         * doc/misc/htmlfontify.texi (Data Structures, Customization):
20207         Fix quoting of data structures.  A Lisp quote is needed only
20208         when data appears within Lisp code.
20210 2015-10-16  Artur Malabarba  <bruce.connor.am@gmail.com>
20212         * lisp/emacs-lisp/package.el: Reload archive-contents if
20213         priorities change.
20214         (package--old-archive-priorities): New variable.
20215         (package-read-all-archive-contents, package-menu--refresh): Use it
20216         to decide when the `package-archive-contents' needs to be read
20217         again.
20219 2015-10-16  Paul Eggert  <eggert@cs.ucla.edu>
20221         Make src headers idempotent and standalone
20223         Redo src/*.h so that each include file is idempotent (that is, can
20224         be included multiple times with the latter inclusions having no
20225         effect) and standalone (that is, can be included by itself,
20226         with no include file other than config.h needed as a prerequisite).
20227         This is standard practice in GNU programs nowadays.
20228         * lwlib/lwlib-widget.h, src/buffer.h, src/category.h, src/character.h:
20229         * src/charset.h, src/coding.h, src/commands.h, src/disptab.h:
20230         * src/fontset.h, src/gnutls.h, src/indent.h, src/keymap.h, src/macros.h:
20231         * src/regex.h [emacs]:
20232         * src/syntax.h, src/systty.h, src/termhooks.h:
20233         Include lisp.h, for Lisp_Object.
20234         * src/buffer.h, src/category.h, src/cm.h, src/commands.h, src/disptab.h:
20235         * src/indent.h, src/intervals.h, src/keyboard.h, src/macros.h:
20236         * src/process.h, src/puresize.h, src/region-cache.h, src/syntax.h:
20237         * src/syssignal.h, src/sysstdio.h, src/systty.h, src/termchar.h:
20238         * src/termopts.h, src/tparam.h, src/unexec.h:
20239         Protect against multiple inclusion.
20240         * src/buffer.h: Include character.h, for STRING_CHAR.
20241         * src/emacsgtkfixed.h (struct frame):
20242         * src/fontset.h (struct face):
20243         * src/region-cache.h (struct buffer):
20244         * src/termhooks.h (struct glyph):
20245         * src/xsettings.h (struct x_display_info):
20246         Add possibly-forward decl.
20247         * src/syntax.h: Include buffer.h, for BVAR.
20248         * src/sysselect.h: Include lisp.h, for eassume.
20249         * src/termchar.h: Include <stdio.h>, for FILE.
20250         * src/widget.h: Include <X11/IntrinsicP.h>, for Widget.
20251         * src/xsettings.h: Include <X11/Xlib.h>, for XEvent.
20253 2015-10-16  Jürgen Hötzel  <juergen@archlinux.org>
20255         Handle symlink targets containing spaces in tramp-gvfs.el
20257         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
20258         Handle symlink targets containing spaces.
20260 2015-10-16  Artur Malabarba  <bruce.connor.am@gmail.com>
20262         * lisp/custom.el (custom-theme-load-path): Demote to defvar.
20264         `custom-theme-load-path' was a defcustom, but it shouldn't be for the
20265         same reason that `load-path' shouldn't.  Setting it via the customize
20266         interface is a trap for the user.
20268         Installed themes commonly add themselves to this variable, which means
20269         its value is not fit for being saved (it will permanently remember dirs
20270         that don't exist anymore).
20272         This is aggravated by the fact that Emacs always applies the `user'
20273         theme on top of any theme that's loaded, since this will apply the old
20274         variable value and remove any new directories that had been recently
20275         added by themes themselves.
20277         Not to mention, we already have `custom-theme-directory', which is safe
20278         to customize.
20280 2015-10-16  Stefan Monnier  <monnier@iro.umontreal.ca>
20282         * lisp/mpc.el: Rename the new toggling commands.
20283         (mpc-toggle-consume, mpc-toggle-repeat, mpc-toggle-single)
20284         (mpc-toggle-shuffle): Add "-toggle" in the name.
20286 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
20288         Improve the doc string of 'completion-boundaries'
20290         * lisp/minibuffer.el (completion-boundaries): Rename the argument
20291         TABLE to COLLECTION, for consistency with other high-level
20292         completion functions.  Document how COLLECTION is called if it
20293         is a function.  (Bug#21644)
20295 2015-10-16  Oleh Krehel  <ohwoeowho@gmail.com>
20297         * lisp/dired-aux.el (dired-shell-command): Fix compile warning.
20299 2015-10-16  Oleh Krehel  <ohwoeowho@gmail.com>
20301         Make dired-do-compress work for *.zip files
20303         * lisp/dired-aux.el (dired-check-process): Transform the top-level
20304           comment into a docstring.
20305         (dired-shell-command): New command.  This mirrors
20306         `dired-check-process', but is more user-friendly for passing
20307         arguments.
20308         (dired-compress-file-suffixes): Allow to specify the command switches
20309         along with input (%i) and output (%o) inside the PROGRAM part.
20310         Add an entry for *.zip files, and update the entry for *.tar.gz files
20311         to the new style.  Update the docstring.
20312         (dired-compress-file): When PROGRAM matches %i or %o, use the new
20313         logic.
20314         (dired-update-file-line): Avoid an error when at end of buffer.
20316         Fixes bug#21637.
20318 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
20320         Minor improvement in documentation of internals
20322         * doc/lispref/internals.texi (Writing Emacs Primitives): Document QUIT.
20324 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
20326         Improve documentation of COLLECTION in completion functions
20328         * doc/lispref/minibuf.texi (Minibuffer Completion): Add a
20329         cross-reference to "Programmed Completion".
20331         * src/minibuf.c (Fcompleting_read): Improve the doc string.
20332         (Bug#21644)
20334 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
20336         Add more release info to etc/HISTORY
20338         * etc/HISTORY: Add more release information about 19.x and 20.x
20339         versions.
20341 2015-10-15  Paul Eggert  <eggert@cs.ucla.edu>
20343         New file etc/HISTORY
20345         * admin/FOR-RELEASE: Procedure for etc/HISTORY.
20346         * etc/HISTORY: New file.
20347         * etc/NEWS: Mention it.
20349 2015-10-15  Dmitry Gutov  <dgutov@yandex.ru>
20351         js-mode: Don't misindent generator methods
20353         * lisp/progmodes/js.el (js--looking-at-operator-p): Distinguish
20354         generator methods from multiplication operator
20355         (https://github.com/mooz/js2-mode/issues/275).
20357 2015-10-15  Paul Eggert  <eggert@cs.ucla.edu>
20359         Fix animation timeout delay calculation
20361         * lisp/image.el (image-animate-timeout):
20362         Don’t assume speed is floating-point.
20364 2015-10-15  Mark Oteiza  <mvoteiza@udel.edu>
20366         Add commands for controlling MPD modes
20368         * lisp/mpc.el (mpc-cmd-consume, mpc-cmd-random, mpc-cmd-repeat)
20369         (mpc-cmd-single): New functions.
20370         (mpc-consume, mpc-repeat, mpc-single, mpc-shuffle): New commands.
20371         (mpc-mode-menu): Add new commands as menu items.
20373 2015-10-15  Dmitry Gutov  <dgutov@yandex.ru>
20375         Refer to `(elisp)Basic Completion' in completing-read docstring
20377         * src/minibuf.c (Fcompleting_read): Refer to `(elisp)Basic
20378         Completion' in the docstring (bug#21644).
20380 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
20382         * lisp/mpc.el (mpc-format): Always push form to pred
20384 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
20386         Spelling fixes
20388         * configure.ac (bitmapdir): Fix misspelling of bmd_acc.
20389         * test/automated/coding-tests.el (ert-test-coding-bogus-coding-systems):
20390         Fix misspelling of nonexistent file name.
20392 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
20394         * lisp/mpc.el (mpc-mode-menu, mpc-toggle-play): Fix docstrings
20396 2015-10-14  Michael Albinus  <michael.albinus@gmx.de>
20398         Some editing fixes in Tramp
20400         * lisp/net/tramp-gvfs.el:
20401         * doc/misc/tramp.texi: "customer option" -> "custom option".
20403         * lisp/net/tramp.el (tramp-completion-function-alist): Fix docstring.
20405 2015-10-14  Jürgen Hötzel  <juergen@archlinux.org>
20407         Use proper localization in tramp-gvfs.el
20409         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
20410         Suppress localized settings in order to proper parse gfvs output.
20412 2015-10-14  Warren Lynn  <wrn.lynn@gmail.com>  (tiny change)
20414         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band):
20415         Quote argument in proper order.  (Bug#21562)
20417 2015-10-14  Nicolas Petton  <nicolas@petton.fr>
20419         Fix typos in docstrings
20421         * lisp/emacs-lisp/map.el:
20422         * lisp/emacs-lisp/seq.el: Fix typos in the docstrings of the pcase
20423           macros.
20425 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
20427         * lisp/mpc.el (mpc-volume-refresh): Check if buffer is live.
20429 2015-10-14  Oleh Krehel  <ohwoeowho@gmail.com>
20431         Make dired-jump work with tar-subfile-mode
20433         * lisp/dired-x.el (dired-jump): When in `tar-subfile-mode', instead of
20434           emitting an error, switch to `tar-superior-buffer'.
20436 2015-10-14  Juanma Barranquero  <lekktu@gmail.com>
20438         * .gitignore: Add build-aux/ar-lib.
20440 2015-10-14  Nicolas Petton  <nicolas@petton.fr>
20442         Better docstrings in seq.el and map.el
20444         * lisp/emacs-lisp/map.el:
20445         * lisp/emacs-lisp/seq.el: Improve the docstring for the pcase patterns.
20447 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
20449         Merge from gnulib
20451         This incorporates:
20452         2015-10-13 binary-io, u64, unistd: port to strict C
20453         2015-09-26 c-ctype: do not worry about EBCDIC + char signed
20454         2015-09-25 c-ctype: port better to z/OS EBCDIC
20455         2015-09-25 gnulib-common.m4: fix gl_PROG_AR_RANLIB/AM_PROG_AR clash
20456         * doc/misc/texinfo.tex, lib/binary-io.c, lib/c-ctype.h, lib/u64.c:
20457         * lib/unistd.c, m4/gnulib-common.m4, m4/gnulib-comp.m4:
20458         Copy from gnulib.
20460 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
20462         Take XPNTR private
20464         * src/alloc.c (PURE_POINTER_P): Remove.
20465         All uses replaced with PURE_P.
20466         (XPNTR_OR_SYMBOL_OFFSET): New function.
20467         (XPNTR): Move here from lisp.h.
20468         Reimplement in terms of XPNTR_OR_SYMBOL_OFFSET.
20469         (mark_maybe_object, valid_lisp_object_p, survives_gc_p):
20470         Remove unnecessary cast.
20471         (purecopy): Use XPNTR_OR_SYMBOL_OFFSET instead of XPNTR,
20472         to avoid an unnecessary runtime test for symbols.
20473         * src/lisp.h (lisp_h_XPNTR, XPNTR): Remove, moving XPNTR to alloc.c.
20474         Only alloc.c needs XPNTR now.
20476 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
20478         Add MPC play/pause command
20480         * lisp/mpc.el (mpc-toggle-play): New command.
20481         (mpc-mode-map): Bind it to "s".
20482         (mpc-mode-menu): Add corresponding menu item.
20484 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
20486         Add bindings and menu items for prev and next tracks
20488         * lisp/mpc.el (mpc-mode-map): Bind ">" to mpc-next,
20489         "<" to mpc-prev.
20490         (mpc-mode-menu): Add corresponding menu items
20492 2015-10-13  Ken Raeburn  <raeburn@raeburn.org>
20494         Reduce face-related consing during frame creation.
20496         * lisp/faces.el (face--attributes-unspecified): Compute the "unspecified"
20497         attribute list once.
20498         (face-spec-reset-face): Use it instead of building the list.
20500 2015-10-13  Ken Raeburn  <raeburn@permabit.com>
20502         Do process ConfigureNotify events indicating size changes.
20504         * src/xterm.c (handle_one_xevent): If consecutive ConfigureNotify
20505         events don't have the same size, process each one.
20507 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
20509         Derive mpc-mode from special-mode
20511         lisp/mpc.el (mpc-mode-map): Make from sparse keymap.  Unbind g.
20512         (mpc-mode): Derive from special mode.
20513         (mpc-songs-mode-map): Don't set parent keymap.
20515 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
20517         Fix error messages for when covers are not found.
20519         The last change to mpc-format let the binding to file call
20520         mpc-file-local-copy with nil argument.  Instead, employ if-let here
20521         so nil bindings don't result in needless computation and errors.
20522         * lisp/mpc.el: Require 'subr-x at compile time.
20523         * lisp/mpc.el (mpc-format): Use if-let.
20525 2015-10-13  Oleh Krehel  <ohwoeowho@gmail.com>
20527         Make dired-do-compress work for *.tar.gz files
20529         * lisp/dired-aux.el (dired-compress-file-suffixes): Associate
20530           "tar -zxvf" to *.tar.gz; update docstring.
20532         (dired-compress-file): Allow to specify switches after the command in
20533         `dired-compress-file-suffixes'.
20535 2015-10-13  Oleh Krehel  <ohwoeowho@gmail.com>
20537         Make dired-do-compress work for directories
20539         * lisp/dired-aux.el (dired-compress-file): When FILE is a directory,
20540           instead of emitting an error, call "tar -czf FILE.tar.gz FILE".
20541         Also convert the top comment into a docstring.
20543 2015-10-13  Stefan Monnier  <monnier@iro.umontreal.ca>
20545         * lisp/mpc.el (mpc-songs-refresh): Don't side-effect `active'
20547         ... since it might come straight from the memoizing table.
20549 2015-10-13  Juanma Barranquero  <lekktu@gmail.com>
20551         * src/w32fns.c (x_change_tool_bar_height): Remove unused variable frame.
20553 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
20555         Use special-mode in eww list modes
20557         * lisp/net/eww.el (eww-bookmark-mode, eww-history-mode)
20558         (eww-buffers-mode): Derive from special-mode and remove redundant
20559         setting of buffer-read-only.
20560         (eww-mode-map): Remove redundant keymap parent setting.
20561         (eww-bookmark-mode-map, eww-history-mode-map, eww-buffers-mode-map):
20562         Remove redundant keymap suppressions and mappings.
20564 2015-10-13  Martin Rudalics  <rudalics@gmx.at>
20566         Allow setting frame pixel sizes from frame parameters (Bug#21415)
20568         Also fix some misfeatures in frame (re-)sizing code, add more
20569         debugging information and remove some dead code.
20571         * lisp/frame.el (frame-notice-user-settings, make-frame): Change
20572         parameter names when setting `frame-size-history'.
20573         (frame--size-history): New function.
20575         * src/frame.c (frame_inhibit_resize): If frame has not been made
20576         yet, return t if inhibit_horizontal_resize or
20577         inhibit_vertical_resize bit have been set.
20578         (adjust_frame_size): Simplify.
20579         (make_frame): Initialize inhibit_horizontal_resize,
20580         inhibit_vertical_resize, tool_bar_redisplayed, tool_bar_resized.
20581         (Fframe_after_make_frame): Reset inhibit_horizontal_resize and
20582         inhibit_vertical_resize slots.
20583         (x_set_frame_parameters): Handle `text-pixels' specification for
20584         width and height parameters.  Don't consider new_height or
20585         new_width changes.  Call adjust_frame_size instead of
20586         Fset_frame_size.
20587         (x_figure_window_size): Two new arguments x_width and y_width
20588         returning frame's figures width and height.  Calculate tool bar
20589         height before frame sizes so SET_FRAME_HEIGHT can pick it up.
20590         Handle `text-pixels' specification for width and height
20591         parameters.
20592         (Qtext_pixels, Qx_set_frame_parameters, Qset_frame_size)
20593         (Qx_set_window_size_1, Qx_set_window_size_2)
20594         (Qx_set_window_size_3, Qx_set_menu_bar_lines)
20595         (Qupdate_frame_menubar, Qfree_frame_menubar_1)
20596         (Qfree_frame_menubar_2): New symbols.
20597         * src/frame.h (structure frame): New booleans
20598         tool_bar_redisplayed, tool_bar_resized,
20599         inhibit_horizontal_resize, inhibit_vertical_resize.
20600         (x_figure_window_size): Update external declaration.
20601         * src/gtkutil.c (xg_frame_set_char_size): Set size hints before
20602         calling gtk_window_resize.
20603         (update_frame_tool_bar): Make inhibiting of frame resizing more
20604         discriminative.  Set tool_bar_resized bit.
20605         * src/nsfns.m (x_set_tool_bar_lines): Make inhibiting of frame
20606         resizing more discriminative.  Call adjust_frame_size instead of
20607         x_set_window_size.
20608         (Fx_create_frame): Handle x_width and x_height if
20609         set by x_figure_window_size.
20610         * src/nsterm.m (x_set_window_size): For GNUSTEP build don't
20611         subtract 3 from tool bar height.
20612         (x_set_window_size): Add frame_size_history_add call.
20613         (x_new_font): Call adjust_frame_size instead of
20614         x_set_window_size.
20615         * src/w32fns.c (x_change_tool_bar_height): Reset
20616         tool_bar_redisplayed and tool_bar_resized bits when adding tool
20617         bar.  Make inhibiting of frame resizing more discriminative.
20618         (w32_wnd_proc): Remove dead code in WM_WINDOWPOSCHANGING case.
20619         (Fx_create_frame): Handle x_width and x_height if set by
20620         x_figure_window_size.  Set size hints before adjusting frame size.
20621         (x_create_tip_frame): Adjust x_figure_window_size call.
20622         * src/w32term.c (x_set_window_size): Add frame_size_history_add
20623         call.
20624         * src/widget.c (set_frame_size): Remove dead code.  Add
20625         frame_size_history_add call.  When frame_resize_pixelwise is t
20626         use FRAME_PIXEL_WIDTH and FRAME_PIXEL_HEIGHT instead of
20627         pixel_width and pixel_height.
20628         (update_various_frame_slots): Remove dead code.
20629         (EmacsFrameResize): Add more information in
20630         frame_size_history_add call.
20631         (EmacsFrameQueryGeometry): Round only when frame_resize_pixelwise
20632         is not set.
20633         * src/xdisp.c (redisplay_tool_bar): Set tool_bar_redisplayed bits.
20634         * src/xfns.c (x_set_menu_bar_lines): Change argument name.
20635         (x_change_tool_bar_height): Reset tool_bar_redisplayed and
20636         tool_bar_resized bits when adding tool bar.  Make inhibiting of
20637         frame resizing more discriminative.
20638         (Fx_create_frame): Handle x_width and x_height if set by
20639         x_figure_window_size.  Set size hints before adjusting frame size.
20640         (x_create_tip_frame): Adjust x_figure_window_size call.
20641         * src/xmenu.c (update_frame_menubar): Don't handle Lucid specially.
20642         (set_frame_menubar): On Lucid never add core-border-width to
20643         avoid that adding XtNinternalBorderWidth adds it again.
20644         (free_frame_menubar): Handle frame_inhibit_resize true for Motif.
20645         * src/xterm.c (x_new_font): In non-toolkit case handle size
20646         change of menu bar.
20647         (x_set_window_size_1): Fix calls to frame_size_history_add.
20648         (x_wm_set_size_hint): Remove dead code.  Set
20649         size_hints.min_width and size_hints.min_height to base_width and
20650         base_height.
20652 2015-10-13  Michael Albinus  <michael.albinus@gmx.de>
20654         * test/automated/file-notify-tests.el (file-notify--test-timeout):
20655         Add docstring.  Increase to 10 seconds for remote
20656         directories.  (Bug#21669)
20658 2015-10-12  Paul Eggert  <eggert@cs.ucla.edu>
20660         Unmacroize ebrowse.c and etags.c a bit
20662         * lib-src/ebrowse.c (READ_CHUNK_SIZE): Now an enum constant.
20663         (streq, filename_eq, set_flag, has_flag): Now inline functions.
20664         (set_flag): First arg is now an address, not an lvalue.
20665         All callers changed.
20666         (filename_eq, set_flag, has_flag):
20667         Rename from FILENAME_EQ, SET_FLAG, HAS_FLAG.
20668         All callers changed.
20669         * lib-src/etags.c (streq, strcaseeq, strneq, strncaseeq):
20670         Now inline functions.  Remove asserts that are unnecessary these
20671         days (and in some cases were too-generous anyway).
20673 2015-10-12  Mark Oteiza  <mvoteiza@udel.edu>
20675         Use highlight for current items
20677         * lisp/mpc.el (mpc-select-make-overlay, mpc-tagbrowser-all-select):
20678         Apply highlight face instead of region face.
20680 2015-10-12  Mark Oteiza  <mvoteiza@udel.edu>
20682         Search for more cover image names in MPC
20684         * lisp/mpc.el (mpc-format): Also look for .folder.jpg or folder.jpg
20685         case insensitively
20687 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
20689         Remove or comment out unused variables
20691         * src/w32fns.c (x_set_mouse_color): Comment out variables cursor,
20692         nontext_cursor, mode_cursor, hand_cursor and count.
20693         (x_change_tool_bar_height): Remove variable old_text_height.
20694         (deliver_wm_chars): Remove variable strip_Alt.
20695         (Fw32_shell_execute): Remove variable document_a.
20696         (Fw32_frame_geometry): Remove variable fullboth.
20697         * src/w32term.c (w32_setup_relief_color): Comment out variable
20698         w32_display_info.
20699         (w32_horizontal_scroll_bar_handle_click): Remove variables start, end.
20700         (w32_read_socket): Comment out variables rows, columns.
20701         * src/w32uniscribe.c (uniscribe_check_otf_1): Remove variable rest.
20703 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
20705         * src/w32proc.c (sys_select): Fix bitwise test.
20707 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
20709         Minor typo corrections in doc strings
20711         * lisp/menu-bar.el (popup-menu, popup-menu-normalize-position):
20712         Doc fixes.
20714 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
20716         * nt/INSTALL: Recommend MSYS Automake/Autoconf from ezwinports.
20718 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
20720         Attempt to avoid crashes in plist-member
20722         * src/fns.c (Fplist_member): Don't call QUIT between a CONSP test
20723         and a call to XCDR.  (Bug#21655)
20725 2015-10-12  Mike FABIAN  <mfabian@redhat.com>
20727         * lisp/select.el (gui-get-primary-selection): In
20728         gui-get-primary-selection use gui--selection-value-internal (Bug#20906)
20730 2015-10-12  Tassilo Horn  <tsdh@gnu.org>
20732         Support RTF in doc-view
20734         * lisp/doc-view.el (doc-view-set-doc-type): Add entry for RTF extension.
20736 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
20738         * src/w32fns.c (get_wm_chars): Increment counter, not pointer.
20740 2015-10-11  Nicolas Petton  <nicolas@petton.fr>
20742         Replace the usage of an obsolete function in auth-source.el
20744         * lisp/gnus/auth-source.el (auth-source-epa-make-gpg-token):
20745         Replace an usage of `epg-context-set-armor' with `setf'.
20747 2015-10-11  Nicolas Petton  <nicolas@petton.fr>
20749         * lisp/gnus/auth-source.el: Use sharp-quoting with functions.
20751 2015-10-11  Jay Belanger  <jay.p.belanger@gmail.com>
20753         Have calc-yank recognize numbers in different bases.
20755         * lisp/calc/calc-yank.el (math-number-regexp): New function.
20756         (calc-yank): Use `math-number-regexp' to recognize numbers.
20758 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
20760         Handle an opaque-move X11 window manager operation more efficiently
20762         * src/xterm.c (handle_one_xevent): If a ConfigureNotify event is
20763         followed by more ConfigureNotify events for the same window, process
20764         only the last one.
20766 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
20768         Fix cursor setting for tip frame; re-enable cursor generation
20770         * src/xfns.c (x_create_tip_frame): Include the cursor in the window
20771         attributes sent when creating the new X window.  Don't skip setting
20772         the pointerColor parameter.
20774 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
20776         Rewrite x_set_mouse_color to sync less
20778         We can track serial numbers of X requests and correlate error events
20779         with the associated requests.  This way we can identify errors for
20780         specific calls without having to use XSync after every one.
20782         * src/xfns.c (enum mouse_cursor): New type.
20783         (struct mouse_cursor_types, struct mouse_cursor_data): New types.
20784         (mouse_cursor_types): New array listing the Lisp variables and default
20785         cursor appearances for each cursor type.
20786         (x_set_mouse_color_handler): New function; checks error event serial
20787         number against submitted requests.
20788         (x_set_mouse_color): Updated to use the new error handler callback,
20789         and to be more table-driven, to simplify repetitious code.
20791 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
20793         Add x_catch_errors_with_handler
20795         * src/xterm.c (struct x_error_message_stack): Add new fields for a
20796         callback function and associated data pointer.
20797         (x_error_catcher): If the callback function is set, call it after
20798         saving the error message string.
20799         (x_catch_errors_with_handler): Renamed from x_catch_errors but now
20800         accepts a callback function and data pointer.
20801         (x_catch_errors): Now a wrapper function.
20802         * src/xterm.h (x_special_error_handler): New typedef.
20803         (x_catch_errors_with_handler): Declare.
20805 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
20807         Introduce x_uncatch_errors_after_check to reduce XSync calls
20809         Both x_had_errors_p and x_check_errors call XSync, so if they're
20810         immediately followed by x_uncatch_errors, its XSync call will be
20811         redundant, resulting in a wasted round trip to the X server.
20813         * src/xterm.c (x_uncatch_errors_after_check): New routine; a copy of
20814         x_uncatch_errors without the XSync call.
20815         (XTmouse_position, x_wm_supports):
20816         * src/xfns.c (x_set_mouse_color):
20817         * src/xmenu.c (Fx_menu_bar_open_internal):
20818         * src/xselect.c (x_own_selection, x_get_foreign_selection):
20819         (Fx_get_atom_name): Call it instead of x_uncatch_errors.
20820         * src/xterm.h (x_uncatch_errors_after_check): Declare.
20822 2015-10-10  Jay Belanger  <jay.p.belanger@gmail.com>
20824         Document the optional prefix to `calc-yank'
20826         * doc/misc/calc.texi (Yanking into the Stack): Document the optional
20827         prefix to `calc-yank'.
20828         * lisp/calc/calc-yank.el (calc-yank): Ensure that things killed from
20829         the Calc buffer are yanked back unchanged.
20831 2015-10-10  Mark Oteiza  <mvoteiza@udel.edu>
20833         * lisp/calendar/calendar.el: Display buffer before executing body.
20835         In each use of this macro, the modeline is derived from a window width
20836         calculation, which will be wrong if (display-buffer) splits the window
20837         horizontally.
20839 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
20841         Use ‘echo’ safely with ‘\’ or leading ‘-’
20843         POSIX says that ‘echo FOO’ produces implementation-defined output
20844         if FOO contains leading ‘-’, or ‘\’ anywhere, so don’t assume GNU
20845         behavior in that case.
20846         * Makefile.in (removenullpaths): Remove.
20847         (epaths-force): Rewrite to avoid the need for ‘echo’.
20848         (install-etc): Be clearer about escaping the shell metacharacters
20849         ‘\’ and ‘$’.
20850         * Makefile.in (install-arch-indep, install-etcdoc):
20851         * admin/charsets/mapconv, admin/merge-gnulib, admin/merge-pkg-config:
20852         * admin/quick-install-emacs, build-aux/gitlog-to-emacslog:
20853         * configure.ac, lib-src/rcs2log, make-dist:
20854         * src/Makefile.in (lisp.mk):
20855         Don’t assume ‘echo’ outputs ‘\’ and leading ‘-’ unscathed.
20856         For example, use ‘printf '%s\n' "$foo"’ rather than ‘echo "$foo"’
20857         if $foo can contain arbitrary characters.
20858         * lisp/Makefile.in (TAGS): Use ‘ls’, not ‘echo’, to avoid ‘\’ issues.
20859         * doc/lispref/two-volume.make (vol1.pdf):
20860         * test/etags/make-src/Makefile (web ftp publish):
20861         Use ‘printf’ rather than ‘echo -e’.
20863 2015-10-10  Kaushal Modi  <kaushal.modi@gmail.com>
20865         Allow numbers with different radixes to be yanked.
20867         * lisp/calc/calc-yank.el (calc-yank): Allow radixes besides the
20868         default base 10.
20870 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
20872         Improve CHECK_IMPURE and PURE_P speedup
20874         * src/data.c (Faset): Use XVECTOR and XSTRING rather than XPNTR.
20876 2015-10-10  Jay Belanger  <jay.p.belanger@gmail.com>
20878         Use events instead of chars to keep track of steps.
20880         * lisp/calc/calc-prog.el (calc-kbd-loop): Use events instead of chars
20881         to keep track of steps.
20883 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
20885         Fix --enable-gcc-warnings problem with older GCC
20887         * src/puresize.h: Add INLINE_HEADER_BEGIN, INLINE_HEADER_END.
20888         This is for building with --enable-gcc-warnings with
20889         GCC 4.6 through 5.0.
20891 2015-10-10  Eli Zaretskii  <eliz@gnu.org>
20893         Fix vertical-motion in truncated lines that end in a stretch
20895         * src/indent.c (Fvertical_motion): Expect overshoot when point is
20896         beyond window margin and lines are truncated, even if we have a
20897         stretch at point.  (Bug#21468)
20899 2015-10-10  Eli Zaretskii  <eliz@gnu.org>
20901         Avoid link-time errors due to inline functions
20903         * src/emacs.c: Include puresize.h, to avoid link-time errors in
20904         unoptimized builds due to PURE_P and CHECK_IMPURE, which are now
20905         inline functions.
20907 2015-10-10  Andreas Schwab  <schwab@linux-m68k.org>
20909         * src/data.c (Faset): Fix last change.
20911 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
20913         CHECK_IMPURE and PURE_P speedup
20915         * src/intervals.c (create_root_interval):
20916         Do CHECK_IMPURE only for strings; not needed for buffers.
20917         Prefer ! STRINGP to BUFFERP, for a tad more speed.
20918         * src/puresize.h (CHECK_IMPURE, PURE_P):
20919         Now inline functions instead of macros.
20920         (PURE_P): Don’t use XPNTR; that is now the caller’s responsibility.
20921         All callers changed.
20922         (CHECK_IMPURE): New argument PTR, to save us the work of running XPNTR.
20923         All callers changed.
20925 2015-10-09  Noah Friedman  <friedman@splode.com>
20927         (tramp-open-connection-setup-interactive-shell): Send -onlcr as well.
20929 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
20931         * lisp/progmodes/cc-mode.el (c-after-font-lock-init): Only *move*
20933         our after-change-function, rather than re-adding it if it was removed.
20935 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
20937         * lisp/cedet/ede: Silence some compiler warnings
20939         * lisp/cedet/ede.el: Require cl-lib.  Silence some compiler warnings.
20940         (ede-menu-obj-of-class-p): Use cl-some rather than `eval'.
20941         (ede-apply-object-keymap, ede-reset-all-buffers)
20942         (ede-auto-add-to-target): Use dolist.
20943         (ede-new, ede-flush-deleted-projects, ede-global-list-sanity-check):
20944         Use field names rather than initarg names in `oref'.
20945         (ede-load-project-file): Remove unused var `file'.
20946         (ede-map-any-target-p): Use cl-some rather than ede-map-targets.
20947         (ede-set): Remove unused var `a'.
20949         * lisp/cedet/ede/emacs.el: Silence some compiler warnings.
20950         (ede-project-autoload): Avoid the old-style "name" argument.
20951         (ede-emacs-find-matching-target): Use field names rather than initarg
20952         names in `oref'.
20954         * lisp/cedet/ede/linux.el: Silence some compiler warnings.
20955         (ede-linux-load, ede-project-autoload): Avoid the old-style
20956         "name" argument.
20957         (ede-linux-find-matching-target): Use field names rather than initarg
20958         names in `oref'.
20960 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
20962         * lisp/textmodes/reftex.el: Silence byte-compiler warnings.
20964 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
20966         * lisp/progmodes/prolog.el (prolog-smie-rules): Try and avoid
20967         indenting too far after ":-".
20969 2015-10-09  Eli Zaretskii  <eliz@gnu.org>
20971         Update case-table and categories of recently added characters
20973         * lisp/international/characters.el: Update information about Latin
20974         Extended-C, Latin Extended-D, Latin Extended-E, Cyrillic Extended,
20975         Georgian, Glagolitic, Deseret, Old Hungarian, and Warang Citi
20976         blocks.  (Byug#21654)
20978 2015-10-09  Martin Rudalics  <rudalics@gmx.at>
20980         * src/frame.c (adjust_frame_size): In minibuffer-only windows
20981         don't count minibuffer height twice.  (Bug#21643)
20983 2015-10-09  Eli Zaretskii  <eliz@gnu.org>
20985         Avoid inflooping in font-lock
20987         * lisp/font-lock.el (font-lock-extend-region-wholelines): Bind
20988         inhibit-field-text-motion around the call to
20989         line-beginning-position, to avoid inflooping.  (Bug#21615)
20991 2015-10-09  Tassilo Horn  <tsdh@gnu.org>
20993         Refactor duplicated code; ensure default is in completions
20995         * lisp/textmodes/reftex-cite.el (reftex--query-search-regexps):
20996         New function.
20997         (reftex-extract-bib-entries): Use it.
20998         (reftex-extract-bib-entries-from-thebibliography): Use it.
21000 2015-10-09  Vincent Belaïche  <vincentb1@users.sourceforge.net>
21002         * doc/misc/autotype.texi (Skeletons as Abbrevs): "if" -> "ifst"
21003         in the example.
21005 2015-10-08  Stefan Monnier  <monnier@iro.umontreal.ca>
21007         * lisp/calc/calc.el: Silence byte-compiler warnings.
21008         (calc-scan-for-dels): Use ignore-errors.
21009         (calc-dispatch, calc-do-dispatch): Make unused arg optional.
21010         (calc-read-key-sequence): Remove unused var `prompt2'.
21011         (calc-kill-stack-buffer): Remove unused var `buflist'.
21012         (calc): Remove unused var `oldbuf'.
21013         (calc-refresh): Use inhibit-read-only.
21014         (calc-can-abbrev-vectors): Declare.
21015         (calc-record): Remove unused var `mainbuf'.
21016         (math-sub-bignum): Remove unused var `sum'.
21017         (math-svo-c, math-svo-wid, math-svo-off): Declare.
21019 2015-10-08  Daiki Ueno  <ueno@gnu.org>
21021         Use g_clear_error instead of g_error_free
21023         * src/image.c: Define g_clear_error instead of g_error_free.
21024         (init_svg_functions): Resolve symbol g_clear_error instead of
21025         g_error_free.
21026         (svg_load_image): Use g_clear_error instead of g_error_free, to
21027         suppress GLib warnings when ERR is not set.  See bug#21641.
21029 2015-10-08  Paul Eggert  <eggert@cs.ucla.edu>
21031         * src/image.c (image_size_error): Simplify.
21033 2015-10-08  Paul Eggert  <eggert@cs.ucla.edu>
21035         Fix problems caught with --enable-gcc-warnings
21037         * src/image.c (lookup_rgb_color):
21038         * src/xfns.c (x_defined_color):
21039         * src/xterm.c (x_parse_color):
21040         Remove unused locals.
21042 2015-10-08  Jay Belanger  <jay.p.belanger@gmail.com>
21044         * lisp/calc/calc.el (calc-digit-start-entry): Fix typo.
21046 2015-10-08  Jay Belanger  <jay.p.belanger@gmail.com>
21048         Format initial input uniformly
21050         * lisp/calc/calc.el (calc-digit-start-entry): New function.
21051         * lisp/calc/calc.el (calcDigit-start):
21052         * lisp/calc/calc-aent.el (calc-alg-digit-entry):
21053         Use `calc-digit-start-entry' to format input.
21055 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
21057         Disable non-working pointerColor setting for X tooltip frame
21059         It generates a bunch of server traffic, but there's some bug wherein
21060         the new mouse cursor settings don't seem to get used.  In most
21061         situations the cursor isn't likely to be seen anyway, so it's not
21062         urgent to fix.
21064         * src/xfns.c (x_create_tip_frame): Don't set pointerColor.
21066 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
21068         Reduce some unnecessary X calls
21070         * src/xfns.c (x_real_pos_and_offsets): Remove a redundant XGetGeometry
21071         call.  If border width is wanted, get it from the XGetGeometry call
21072         instead of calling XGetWindowAttributes on the same window.  Skip some
21073         X calls if we've already detected an error from the X server.
21074         * src/xterm.c (x_wm_supports): Delete x_sync before x_had_errors_p.
21075         (handle_one_xevent): Delete XSync call before x_uncatch_errors.
21077 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
21079         Reduce color allocation/query traffic in the TrueColor case
21081         When working with an X visual with TrueColor class, pixel values can
21082         be generated from the RGB values according to mask value provided by
21083         the server on connection.  Some of the image-handling code was already
21084         doing this.
21086         * src/xterm.h (x_make_truecolor_pixel): New function; code taken from
21087         lookup_rgb_color.
21088         (x_mutable_colormap): New function.
21089         * src/image.c (lookup_rgb_color): Move pixel composition code to
21090         x_make_truecolor_pixel.
21091         (x_kill_gs_process): Call x_mutable_colormap.
21092         * src/xfaces.c (x_free_colors, x_free_dpy_colors): Call
21093         x_mutable_colormap.
21094         * src/xftfont.c (xftfont_get_colors): Call x_query_colors.
21095         * src/xterm.c (x_query_colors): For a TrueColor display, decompose the
21096         pixel value into RGB values directly, and don't send a request to the
21097         server.
21098         (x_alloc_nearest_color): For a TrueColor display, construct the pixel
21099         value with x_make_truecolor_pixel.
21100         (x_copy_color): For an immutable color map, just return the provided
21101         pixel value.
21103 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
21105         Cache XParseColor results in the X display info structure
21107         With repeated lookups of foreground and background colors for multiple
21108         faces per frame, we issue a lot of redundant color name lookups to the
21109         X server, waiting every time for the response.  On a remote network
21110         with, say, 30ms round-trip time, this can add nearly a full second to
21111         creation of a new frame.
21113         * src/gtkutil.c (xg_check_special_colors): Call x_parse_color.
21114         * src/image.c (get_spec_bg_or_alpha_as_argb):
21115         (xpm_init_color_cache, xpm_lookup_color):
21116         * src/xfns.c (x_defined_color):
21117         * src/xterm.c (x_parse_color): New function; caches color names not
21118         starting with "#" in the display-info structure.
21119         (x_delete_display): Delete the cache content.
21120         * src/xterm.h (struct color_name_cache_entry): New type.
21121         (x_parse_color): Declare.
21122         (struct x_display_info): Add a new field for the cache.
21124 2015-10-07  Stefan Monnier  <monnier@iro.umontreal.ca>
21126         * src/syntax.c (syms_of_syntax): Make syntax-propertize--done local.
21128 2015-10-07  Eli Zaretskii  <eliz@gnu.org>
21130         Fix segfault in image_size_error
21132         * src/image.c (image_size_error): Pass a Lisp string to
21133         image_error, not a C string.  (Bug#21641)
21135 2015-10-07  Simen Heggestøyl  <simenheg@gmail.com>
21137         Highlight CSS variable definitions
21139         * lisp/textmodes/css-mode.el (css-nmstart-re): Tweak regexp to accept
21140         CSS variables.  (Bug#21638)
21142 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
21144         * test/automated/tabulated-list-test.el: New file.
21145         Test bug#21639 and some basic functionality.
21147 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
21149         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-sort):
21150         Check if column can be sorted before trying.  (Bug#21639)
21152 2015-10-07  Nicolas Richard  <youngfrog@members.fsf.org>
21154         Add test for `self-insert-command' (bug#21633)
21156         * test/automated/cmds-tests.el: New file.
21158 2015-10-07  Martin Rudalics  <rudalics@gmx.at>
21160         * src/window.c (resize_frame_windows): Don't set root window's
21161         top position when resizing horizontally.
21163 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
21165         * lisp/progmodes/prog-mode.el (prettify-symbols-alist):
21166         Document more possible values.
21168 2015-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
21170         * lisp/textmodes/tex-mode.el: Use lexical-binding.
21172 2015-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
21174         * lisp/indent.el (indent--default-inside-comment): New function.
21175         (indent-for-tab-command): Use it for `noindent' indentation.
21177 2015-10-06  Paul Eggert  <eggert@cs.ucla.edu>
21179         Fix bug in GC_CHECK_MARKED_OBJECTS check
21181         * src/alloc.c (mark_object): Fix bug in checking code.
21182         When GC_CHECK_MARKED_OBJECTS is defined, the bug caused
21183         CHECK_ALLOCATED_AND_LIVE_SYMBOL to repeatedly do the
21184         CHECK_ALLOCATED and CHECK_LIVE tests for the first symbol in each
21185         bucket.  The bug did not affect behavior either in the normal case
21186         where GC_CHECK_MARKED_OBJECTS is not defined, or where Emacs does
21187         not have an internal error that a properly-written
21188         CHECK_ALLOCATED_AND_LIVE_SYMBOL would detect.
21190 2015-10-06  Tassilo Horn  <tsdh@gnu.org>
21192         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
21193         Add prettified version for \\Bbb{Q}.
21195 2015-10-06  Artur Malabarba  <bruce.connor.am@gmail.com>
21197         * test/automated/package-test.el (package-test-install-single):
21198         Add a test for bug#21625.
21200 2015-10-06  Aaron Ecay  <aaronecay@gmail.com>
21202         * lisp/emacs-lisp/package.el (package-install): Fix error when pkg is
21203           not a package-desc object.  Also clarify documentation.  (Bug#21625)
21205 2015-10-06  Eli Zaretskii  <eliz@gnu.org>
21207         Fix display of characters adjacent to ZWJ and ZWNJ
21209         * src/bidi.c (bidi_resolve_neutral): Treat all Bn (a.k.a. "control")
21210         characters the same as directional formatting controls.
21211         (bidi_level_of_next_char): Include all Bn characters in rule L1,
21212         as mandated by the UBA.
21214 2015-10-06  Andreas Schwab  <schwab@suse.de>
21216         * src/cmds.c (Fself_insert_command): Don't use XFASTINT on a negative
21217         number.  (Bug#21633)
21219 2015-10-05  Xue Fuqiao  <xfq.free@gmail.com>
21221         * doc/lispref/objects.texi (Window Type): Add a cross reference.
21223         * src/buffer.c (syms_of_buffer): Typo fix.  (Bug#21622)
21225 2015-10-05  Eli Zaretskii  <eliz@gnu.org>
21227         * lisp/language/misc-lang.el (composition-function-table):
21228         Fix entries for Arabic and Syriac.
21230 2015-10-05  Damien Cassou  <damien@cassou.me>
21232         Add first unit tests for auth-source.el
21234         * test/automated/auth-source-tests.el: New file.
21236 2015-10-05  Eli Zaretskii  <eliz@gnu.org>
21238         Remove redundant redisplay code
21240         * src/xdisp.c (redisplay_internal, try_cursor_movement)
21241         (try_window_reusing_current_matrix, try_window_id): Remove
21242         redundant restrictions on redisplay optimizations based on the
21243         frame's 'redisplay' flag.  See
21244         http://osdir.com/ml/general/2015-10/msg02110.html for the relevant
21245         discussions.
21247 2015-10-04  Stefan Monnier  <monnier@iro.umontreal.ca>
21249         * src/xdisp.c (windows_or_buffers_changed): Improve docstring.
21251 2015-10-04  Xue Fuqiao  <xfq.free@gmail.com>
21253         Update tutorials/TUTORIAL.cn
21255         * etc/tutorials/TUTORIAL.cn: Improve translation.
21257 2015-10-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
21259         * src/macfont.m (macfont_encode_char, syms_of_macfont):
21260         Remove unused vars.
21262 2015-10-04  Stefan Merten  <stefan@merten-home.de>
21264         Pull in version numbers from rst.el upstream release.
21266         * lisp/textmodes/rst.el (rst-cvs-header, rst-svn-rev)
21267         (rst-svn-timestamp, rst-official-version)
21268         (rst-official-cvs-rev, rst-package-emacs-version-alist):
21269         Update version numbers.
21271 2015-10-04  Eli Zaretskii  <eliz@gnu.org>
21273         * test/automated/coding-tests.el: New file.
21275 2015-10-04  Michael Albinus  <michael.albinus@gmx.de>
21277         Improve XEmacs compatibility of Tramp
21279         * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
21280         Declare if it doesn't exist.
21281         (file-remote-p): Remove defalias, which was necessary for GNU Emacs 21.
21282         (redisplay): Make it an alias if it doesn't exist.
21284         * lisp/net/tramp.el (tramp-get-remote-tmpdir): Don't use
21285         `file-remote-p' (due to XEmacs compatibility).
21287         * lisp/net/trampver.el (locate-dominating-file)
21288         (tramp-compat-replace-regexp-in-string): Autoload.
21289         (tramp-repository-get-version): Do not dupe byte-compiler.
21291 2015-09-02  K. Handa  <handa@gnu.org>
21293         fix for the case that M17N_FLT_USE_NEW_FEATURE is not defined
21295         * src/ftfont.c (ftfont_drive_otf) [not M17N_FLT_USE_NEW_FEATURE]:
21296         Adjusted for the change of type of elements in the array
21297         MFLTGlyphString.glyphs.
21299 2015-10-04  Eli Zaretskii  <eliz@gnu.org>
21300             Michael Heerdegen  <michael_heerdegen@web.de>
21302         shr: fix too long lines in rendered buffers (Bug#21012)
21304         * lisp/net/shr.el (shr-insert-document, shr-fill-text):
21305         Correct calculation of available width.
21306         (shr-find-fill-point): Don't overflow window edge if shr-kinsoku-shorten
21307         is nil.
21309 2015-10-04  Vincent Belaïche  <vincentb1@users.sourceforge.net>
21311         Restore blank line before next section, erroneously erased
21312         in my previous commit
21314         * etc/compilation.txt (symbol ant): Add an additional trailing blank
21315         line to this section, so that there are two of them immediately before
21316         the next section.
21318 2015-10-04  Vincent Belaïche  <vincentb1@users.sourceforge.net>
21320         Support MSW filename style for ant compilation error regexp
21322         * etc/compilation.txt (symbol ant):
21323         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
21324         Support MSW filename style.
21326 2015-10-03  Paul Eggert  <eggert@cs.ucla.edu>
21328         * nt/INSTALL: Minor spelling and quote fixes.
21330         * lisp/ibuffer.el: Fix docstring length (Bug#21541).
21332 2015-10-03  Simen Heggestøyl  <simenheg@gmail.com>
21334         Maintain ordering of JSON object keys by default
21336         * lisp/json.el (json-object-type): Mention order handling in doc-string.
21337         (json--plist-reverse): New utility function.
21338         (json-read-object): Maintain ordering for alists and plists.
21339         (json-pretty-print): Ensure that ordering is maintained.
21341         * test/automated/json-tests.el (test-json-plist-reverse): New test for
21342         `json--plist-reverse'.
21343         (json-read-simple-alist): Update test to accommodate for changes in
21344         `json-read-object'.
21346         * etc/NEWS: Document the new behavior of the pretty printing functions.
21348 2015-10-03  Andreas Schwab  <schwab@linux-m68k.org>
21350         * src/coding.c (complement_process_encoding_system): Revert last change.
21352 2015-10-03  Ulf Jasper  <ulf.jasper@web.de>
21354         * admin/MAINTAINERS: Add entry for Ulf Jasper.
21356 2015-10-03  Xue Fuqiao  <xfq.free@gmail.com>
21358         Doc fix for `defmacro'
21360         * doc/lispref/objects.texi (Macro Type): `defmacro' is a macro now.
21362 2015-10-03  Andreas Schwab  <schwab@linux-m68k.org>
21364         More validatation of coding systems
21366         * src/fileio.c (Finsert_file_contents): Remove redundant
21367         coding-system check.
21368         (choose_write_coding_system): Likewise.
21369         * src/coding.c (complement_process_encoding_system): Check argument
21370         for valid coding system.
21372 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
21374         Avoid crashes in coding_inherit_eol_type
21376         * src/coding.c (coding_inherit_eol_type): Check the validity of
21377         the arguments.  Suggested by Andreas Schwab <schwab@linux-m68k.org>.
21378         (Bug#21602)
21380 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
21382         More validatation of coding system in 'write-region'
21384         * src/coding.c (choose_write_coding_system): More validation of
21385         coding-system from various sources.  Suggested by Andreas Schwab
21386         <schwab@linux-m68k.org>.  (Bug#21602)
21388 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
21390         Avoid crashes due to invalid coding-system
21392         * src/fileio.c (choose_write_coding_system)
21393         (Finsert_file_contents): Check validity of coding-system-for-write
21394         and coding-system-for-read bound by the caller.  (Bug#21602)
21396 2015-10-03  Tassilo Horn  <tsdh@gnu.org>
21398         Adapt to new prettify-symbols-unprettify-at-point default
21400         * etc/NEWS: Mention that unprettication of symbol at point is off
21401         by default.
21403 2015-10-03  Tassilo Horn  <tsdh@gnu.org>
21405         Revert my two recent process.c changes
21407         Revert "Improve last commit to process.c" and "Remove callback-handled
21408         channels from Available set" because they did not fix bug#21313.
21410         This reverts commits bfa1aa8e2bdaf14adbbf1e9e824051d3f740694c and
21411         27f871907cc24f33a7d12ac3a4ab71a88f0bc554.
21413 2015-10-02  Markus Triska  <triska@metalevel.at>
21415         * lisp/progmodes/prolog.el: Update and extend operator table.
21416         (prolog-smie-grammar): Add multifile, public etc.
21418 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
21420         Allow autogen even when Git is not installed
21422         * autogen.sh: Test ‘git status’ before trying to use Git.
21424 2015-10-02  Stefan Monnier  <monnier@iro.umontreal.ca>
21426         * lisp/vc/vc-git.el (vc-git-region-history): Handle local changes.
21427         Adjust lto/lfrom when we have uncommitted changes.
21429 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
21431         Fix problems found by clang 3.5.0
21433         * src/cmds.c (Fdelete_char): Don’t assume XINT returns int.
21434         * src/font.c (font_parse_family_registry):
21435         Use &"str"[X] instead of "str"+X, to pacify clang -Wstring-plus-int.
21437 2015-10-02  Eli Zaretskii  <eliz@gnu.org>
21439         * nt/INSTALL: Update instructions for running autogen.sh.
21441         * nt/INSTALL: Point to ezwinports for libXpm binaries.
21443 2015-10-02  Daniel Colascione  <dancol@dancol.org>
21445         Fix winner in cl-lib not loaded case
21447         * lisp/winner.el (winner-change-fun): Don't use cl-lib functions
21448         without requiring CL
21450 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
21452         Fix a few problems with directed quotes
21454         This is in response to a problem report by Kaushal Modi in:
21455         https://bugs.gnu.org/21588#25
21456         * lisp/cedet/mode-local.el (describe-mode-local-overload):
21457         * lisp/emacs-lisp/bytecomp.el (byte-compile-fix-header):
21458         * lisp/info-xref.el (info-xref-check-all-custom):
21459         * lisp/mail/emacsbug.el (report-emacs-bug-hook):
21460         Prefer directed to undirected single quotes in diagnostics.
21462 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
21464         Revert "Attempt to fix slow redisplay caused by last changes"
21466         * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
21467         (try_cursor_movement): Don't relax requirements for redisplay
21468         optimizations for the selected frame.  (Bug#21597)
21470         This reverts commit c4c1fb97727ff52bcfa83ad5ed94a64a93d12e59.
21472 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
21474         Fix slow redisplay when daemon frame exists
21476         * src/xdisp.c (redisplay_internal): Don't consider daemon frames
21477         when looking for frames that need to be redisplayed.  (Bug#21597)
21479 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
21481         Attempt to fix slow redisplay caused by last changes
21483         * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
21484         (try_cursor_movement): Relax requirements for redisplay
21485         optimizations for the selected frame.  (Bug#21597)
21487 2015-10-01  Stephen Leake  <stephen_leake@stephe-leake.org>
21489         * src/dired.c (Ffile_name_completion, Ffile_name_all_completions):
21490         Improve doc string.
21492 2015-10-01  Stephen Leake  <stephen_leake@stephe-leake.org>
21494         * lisp/minibuffer.el (minibuffer-completion-help):
21495         Set default base-size, in case completion table does not set it.
21497 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
21499         Fix GUD display of GDB output with non-ASCII text
21501         * lisp/progmodes/gdb-mi.el (gdb-mi-decode-strings): New defcustom.
21502         (gdb-mi-decode): New function.
21503         (gud-gdbmi-marker-filter): If gdb-mi-decode-strings is non-nil,
21504         decode octal escapes in GDB output.  (Bug#21572)
21506 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
21508         * nt/INSTALL: Document where to find XPM support files.
21510 2015-10-01  Tassilo Horn  <tsdh@gnu.org>
21512         Un- and re-prettification are not exclusive
21514         * lisp/progmodes/prog-mode.el (prettify-symbols--post-command-hook):
21515         Re-apply prettification to previous symbol also when unprettifying
21516         next one.
21518 2015-10-01  Tassilo Horn  <tsdh@gnu.org>
21520         Don't unprettify symbol at point by default
21522         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
21523         Default to disabled (nil).
21525 2015-09-30  Artur Malabarba  <bruce.connor.am@gmail.com>
21527         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
21528         Support unprettifying when point is after a symbol.
21530         * etc/NEWS: Document `prettify-symbols-unprettify-at-point'.
21532 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
21534         Avoid assertion violations in push_prefix_prop
21536         * src/xdisp.c (push_prefix_prop): Avoid assertion violations when
21537         a line that has a line-prefix defined starts with an image.  (Bug#21428)
21539 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
21541         Disable some display optimizations when frames need redisplay
21543         These optimizations were previously disabled by the
21544         windows_or_buffers_changed flag, which now is not set
21545         when only some frames need to be redrawn.
21546         * src/xdisp.c (redisplay_internal): Redisplay any frame whose
21547         'redisplay' flag is set.
21548         (try_window_reusing_current_matrix, try_window_id)
21549         (try_cursor_movement): Disable these optimizations when the
21550         frame's 'redisplay' flag is set.
21552 2015-09-30  Tassilo Horn  <tsdh@gnu.org>
21554         Don't modify buffer by unprettification
21556         * lisp/progmodes/prog-mode.el (prettify-symbols--compose-symbol):
21557         (prettify-symbols--post-command-hook, prettify-symbols-mode): Don't
21558         modify buffer when setting/removing custom prettify-symbols-start/end
21559         text properties.  Add them to font-lock-extra-managed-props, too.
21561 2015-09-30  Stefan Monnier  <monnier@iro.umontreal.ca>
21563         Try to avoid redisplaying all frames when creating a new one
21565         * src/xfns.c (x_set_menu_bar_lines, x_change_tool_bar_height):
21566         * src/xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
21567         (Finternal_set_lisp_face_attribute, update_face_from_frame_parameter):
21568         * src/frame.c (x_set_screen_gamma): Set the specific frame's
21569         `redisplay' bit rather than windows_or_buffers_changed.
21571         * src/window.c (apply_window_adjustment): Remove redundant setting of
21572         windows_or_buffers_changed.
21574         * src/xdisp.c (redisplay_internal): Set the specific frame's
21575         `redisplay' bit rather than update_mode_lines in response to
21576         cursor_type_changed.
21577         (syms_of_xdisp): Use hash-tables for redisplay_*_cause tables.
21578         (AINC): Adjust accordingly.
21580 2015-09-30  Tassilo Horn  <tsdh@gnu.org>
21582         Implement unprettification of symbol at point
21584         * lisp/progmodes/prog-mode.el: Implement feature for unprettifying the
21585         symbol at point.
21586         (prettify-symbols--current-symbol-bounds): New variable.
21587         (prettify-symbols--post-command-hook): New function.
21588         (prettify-symbols-unprettify-at-point): New defcustom.
21589         (prettify-symbols-mode): Use it.
21590         (prettify-symbols--compose-symbol): Use them.
21592 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
21594         * src/macfont.m (mac_font_descriptor_supports_languages):
21595         Regard "zh" as synonym of "zh-Hans".
21597 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
21599         Work around crash when displaying etc/HELLO on OS X 10.11
21601         * src/macfont.m (mac_font_get_weight)
21602         (mac_font_descriptor_get_adjusted_weight): New functions.
21603         (macfont_store_descriptor_attributes): Adjust weight.
21605 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
21607         * src/macfont.m: Fix compilation with USE_CT_GLYPH_INFO.
21609 2015-09-30  Nicolas Petton  <nicolas@petton.fr>
21611         * lisp/arc-mode.el (archive-rar-summarize): Better alignment
21612         of the columns.
21614 2015-09-30  Nicolas Petton  <nicolas@petton.fr>
21616         Use unar and lsar to handle RAR archives in arc-mode
21618         * lisp/arc-mode.el (archive-rar-extract, archive-extract-by-file): Rely
21619         on unar and lsar instead of unrar-free for RAR archives (bug#17663).
21621 2015-09-30  Wieland Hoffmann  <themineo@gmail.com>  (tiny change)
21623         Clarify :create in auth-source's docs
21625         * lisp/gnus/auth-source.el (auth-source-search):
21626         Clarify :create's meaning.
21628 2015-09-30  Phil Sainty  <psainty@orcon.net.nz>
21630         Avoid empty -path arguments in rgrep
21632         * lisp/progmodes/grep.el (rgrep-default-command): Remove nil from
21633         the list produced according to grep-find-ignored-directories,
21634         before passing it to Find/Grep invocation.  (Bug#21548)
21636 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
21638         Clarify documentation of pos-visible-in-window-p
21640         * src/window.c (Fpos_visible_in_window_p): Clarify the meaning of
21641         t for POS.  See
21642         https://lists.gnu.org/r/emacs-devel/2015-09/msg01040.html
21643         for the original report.
21645         * doc/lispref/windows.texi (Window Start and End): Clarify the
21646         meaning of t for the POSITION argument of pos-visible-in-window-p.
21648 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
21650         * lisp/progmodes/prolog.el: Fix various indentation cases.
21651         (prolog-operator-chars): New const (add \\).
21652         (prolog-smie-forward-token, prolog-smie-backward-token): Use it.
21653         (prolog-smie-rules): Add rules according to bug#21526.
21655 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
21657         * lisp/progmodes/sh-script.el: Old "dumb" continued line indent.
21658         (sh-indent-after-continuation): Add new value `always' (bug#17620)
21659         (sh-smie-sh-rules): Remove old handling of continued lines.
21660         (sh-smie--indent-continuation): New function.
21661         (sh-set-shell): Use it.
21663 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
21665         * lisp/progmodes/octave.el: Use grammar more; Handle enumeration fun.
21666         Remove redundant :group keyword args.
21667         (octave-begin-keywords, octave-else-keywords, octave-end-keywords):
21668         Remove variables.
21669         (octave-operator-table, octave-smie-bnf-table): Use let-when-compile to
21670         turn them into compile-time variables.
21671         Auto-generate the "foo ... end" rules from the "foo ... endfoo" rules.
21672         Add rules for break, continue, return, global, and persistent.
21673         Refine the rule for "until".
21674         (octave-smie--funcall-p, octave-smie--end-index-p)
21675         (octave-smie--in-parens-p): New functions.
21676         (octave-smie-backward-token, octave-smie-forward-token): Use them to
21677         distinguish the "enumeration" function and the "end" index from
21678         their corresponding keywords.
21679         (octave--block-offset-keywords): New constant.
21680         (octave-smie-rules): Use it.  Adjust rules for new global/persistent
21681         parsing.
21682         (octave-reserved-words): Redefine using octave-smie-grammar.
21683         (octave-font-lock-keywords): Use octave-smie--funcall-p and
21684         octave-smie--end-index-p.
21686 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
21688         * lisp/emacs-lisp/lisp-mode.el (let-when-compile): Work like let*.
21690 2015-09-29  Eli Zaretskii  <eliz@gnu.org>
21692         * nt/INSTALL: Remove references to GTK site.
21693         That site no longer offers Windows downloads.
21695 2015-09-29  Eli Zaretskii  <eliz@gnu.org>
21697         * nt/INSTALL: Add instructions for installing Git.
21699 2015-09-29  Katsumi Yamaoka  <yamaoka@jpl.org>
21701         * lisp/net/shr.el (shr-colorize-region): Allow 88-color tty to
21702         use colors.  Suggested by Eli Zaretskii.
21704 2015-09-28  Katsumi Yamaoka  <yamaoka@jpl.org>
21706         * lisp/net/shr.el (shr-colorize-region): Don't do it on a system
21707         not supporting 256 above colors (bug#21557).
21709 2015-09-28  Dmitry Gutov  <dgutov@yandex.ru>
21711         Revert "Don't rely on defaults in decoding UTF-8 encoded Lisp files"
21713         This reverts commit db828f62f6f17414fbbc3206dac123dc73dd6055.
21715 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
21717         Add documentation for seq.el
21719         * doc/lispref/sequences.texi: Add documentation regarding extending
21720         seq.el, as well as missing documentation for seq-elt, seq-length, seq-p,
21721         seq-do and seq-map.
21723 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
21725         Better documentation for seq-some
21727         * doc/lispref/sequences.texi:
21728         * lisp/emacs-lisp/seq.el: Update the documentation of seq-some to
21729         guarantee that the returned value is the first non-nil value that
21730         resulted from applying the predicate.
21732 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
21734         * lisp/arc-mode.el: Sharp-quote function arguments.
21736 2015-09-28  Eli Zaretskii  <eliz@gnu.org>
21738         Avoid redisplay error in ediff-regions-wordwise
21740         * lisp/vc/ediff-util.el
21741         (ediff-clone-buffer-for-region-comparison): Make sure the mark is
21742         set before activating it.  (Bug#21567)
21744 2015-09-28  Eli Zaretskii  <eliz@gnu.org>
21746         Another attempt to fix crashes due to prematurely freed faces
21748         * src/xdisp.c (redisplay_internal): Inhibit freeing of realized
21749         faces for as long as we might have desired matrices that reference
21750         those faces.  (Bug#21428)
21752 2015-09-28  Tassilo Horn  <tsdh@gnu.org>
21754         Add auctex development list email address
21756 2015-09-28  Tassilo Horn  <tsdh@gnu.org>
21758         * admin/MAINTAINERS: Add entries for AUCTeX team and myself.
21760 2015-09-28  Arash Esbati  <esbati@gmx.de>  (tiny change)
21762         Improve wrapfig package support and caption parsing
21764         * lisp/textmodes/reftex-vars.el (reftex-label-alist-builtin):
21765         Correct description string and add wraptable environment.
21766         (reftex-default-context-regexps): Improve caption regexp.
21768 2015-09-28  Anders Lindgren  <andlind@gmail.com>
21770         Respect value of frame_resize_pixelwise when handling fullscreen state
21772         * src/nsterm.m (handleFS): Respect frame_resize_pixelwise when
21773         setting size increments.
21775 2015-09-27  Michael Albinus  <michael.albinus@gmx.de>
21777         * src/gfilenotify.c (Fgfile_add_watch): Cleanup temporary variable.
21779 2015-09-27  Simen Heggestøyl  <simenheg@gmail.com>
21781         Add prettify-symbols-alist for js-mode
21783         * lisp/progmodes/js.el (js--prettify-symbols-alist): New defconst.
21784         (js-mode): Use it.
21786 2015-09-27  Eli Zaretskii  <eliz@gnu.org>
21788         * nt/subdirs.el: File deleted (no longer used).
21790 2015-09-26  Alan Mackenzie  <acm@muc.de>
21792         Fix follow-scroll-up/down, making them replacements for scroll-up/down
21794         1. Allow point to move between follow windows in scroll operations.
21795         2. Fix bug where `right-char' just before EOB caused spurious scrolling,
21796         when EOB was isolated in the last follow window.
21798         * lisp/follow.el (follow-fixed-window): New variable.
21799         (follow-get-scrolled-point): New function.
21800         (follow-scrol-up, follow-scroll-down): Add autoload cookies.
21801         Reformulate the code.  Put `scroll-command' properties on the functions.
21802         Correct minor errors in ...-down's doc string and code.
21803         (follow-calc-win-end): Amend incomplete doc string.  Use
21804         `pos-visible-in-window-p' to check whether EOB is in the window.
21805         (follow-estimate-first-window-start): Correct an off-by-1 error.
21806         (follow-adjust-window): Add handling for explicit scrolling operations.
21808 2015-09-26  Paul Eggert  <eggert@cs.ucla.edu>
21810         * admin/MAINTAINERS: Add self, plus list some more files
21811         sans maintaners.
21813 2015-09-26  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
21815         New DWIM commands for changing letter-case
21817         * lisp/simple.el (upcase-dwim, downcase-dwim, capitalize-dwim):
21818         New functions.  (Bug#21501)
21820 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
21822         * etc/PROBLEMS: Document problems with pasting on MS-Windows.
21824 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
21826         Make face realization be more frame-specific
21828         * src/frame.h (struct f): New flag face_change.
21829         * src/xfaces.c (Finternal_make_lisp_face)
21830         (Finternal_copy_lisp_face, Finternal_set_lisp_face_attribute)
21831         (update_face_from_frame_parameter): Set the face_change flag only
21832         for the frame whose faces are affected.
21833         * src/xdisp.c (init_iterator): If a frame's face_change flag is
21834         set, free faces only on that frame.
21835         (redisplay_internal): Disable "display optimization 1" if the
21836         frame's face_change flag is set.
21837         (redisplay_window): Don't allow skipping a window's redisplay if
21838         its frame's face_change flag is set.
21839         * src/frame.c (x_set_screen_gamma): Instead of calling
21840         Fclear_face_cache, call clear_face_cache and set
21841         windows_or_buffers_changed to a non-zero value.  This avoids
21842         setting the global face_change flag that triggers face realization
21843         on all frames and thorough redisplay of all of them.
21845         * lisp/term/tty-colors.el (tty-register-default-colors): Don't
21846         clear face cache if the selected frame is a GUI frame.
21848 2015-09-26  Tassilo Horn  <tsdh@gnu.org>
21850         Remove font-latex specific check
21852         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
21853         Use syntax-ppss data to identify verbatim contents.
21855 2015-09-25  Tassilo Horn  <tsdh@gnu.org>
21857         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
21858         Fix some false negatives.
21860 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
21862         Reorder Windows version in Emacs manifests
21864         * nt/emacs-x64.manifest:
21865         * nt/emacs-x86.manifest: Reorder Windows version from lowest to
21866         highest.
21868 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
21870         Update Emacs manifest files for Windows 10
21872         * nt/emacs-x86.manifest:
21873         * nt/emacs-x64.manifest: Declare compatibility with Windows 10.
21875 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
21877         Avoid non-ASCII decoding errors in C src files
21879         * src/nsterm.m:
21880         * src/lisp.h:
21881         * src/editfns.c:
21882         * src/doprnt.c: Add 'coding' cookies -- these files include
21883         Unicode characters and should be decoded as UTF-8.
21885 2015-09-25  Alan Mackenzie  <acm@muc.de>
21887         Resurrect edebug-set-initial-mode, repurposing it to set the global mode
21889         * lisp/emacs-lisp/edebug.el (edebug-initial-mode-alist): Uncomment, and
21890         amend to match current modes and functions.
21891         (edebug-set-initial-mode): Uncomment and change from setting a defun's
21892         `edebug-initial-mode''s property to setting the variable
21893         `edebug-initial-mode'.
21894         (top level): Create new binding C-x C-a C-m for
21895         `edebug-set-initial-mode'.
21897         * doc/lispref/edebug.texi (Edebug Execution Modes): Document
21898         `edebug-set-initial-mode' and its new key binding.
21899         (Edebug Options): Mention the new command in the pertinent place.
21901         * etc/NEWS: Write entry for this change.
21903 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
21905         Avoid non-ASCII decoding errors in Texinfo files
21907         * doc/misc/tramp.texi:
21908         * doc/lispref/strings.texi:
21909         * doc/lispref/positions.texi:
21910         * doc/lispref/help.texi:
21911         * doc/lispref/functions.texi:
21912         * doc/lispintro/emacs-lisp-intro.texi:
21913         * doc/emacs/text.texi:
21914         * doc/emacs/modes.texi:
21915         * doc/emacs/mini.texi:
21916         * doc/emacs/display.texi:
21917         * doc/emacs/custom.texi:
21918         * doc/emacs/basic.texi: Add 'coding' cookies -- these files use
21919         Unicode characters and should be decoded as UTF-8.
21920         * doc/lispref/frames.texi (Size Parameters): Don't use a non-ASCII
21921         apostrophe unnecessarily.
21923 2015-09-25  Paul Eggert  <eggert@cs.ucla.edu>
21925         Merge from gnulib
21927         This incorporates:
21928         2015-09-25 c-ctype: rewrite to use inline functions
21929         2015-09-24 maint: add coding cookies to non-ASCII sources
21930         2015-09-24 gitlog-to-changelog: trim only trailing whitespaces
21931         * build-aux/gitlog-to-changelog, doc/misc/texinfo.tex:
21932         * lib/acl-internal.c, lib/acl-internal.h, lib/c-ctype.c:
21933         * lib/c-ctype.h, lib/get-permissions.c, lib/qcopy-acl.c:
21934         * lib/set-permissions.c:
21935         Copy from gnulib.
21937 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
21939         Update publicsuffix.txt from upstream
21941         * etc/publicsuffix.txt: Update from
21942         https://publicsuffix.org/list/effective_tld_names.dat
21943         dated 2015-09-24 17:29:21 UTC.
21945 2015-09-24  Eli Zaretskii  <eliz@gnu.org>
21947         Prevent timers from messing up TTY menus
21949         * src/term.c (tty_menu_activate): Inhibit redisplay for as long as
21950         the TTY menu is open.  (Bug#21530)
21952 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
21954         No need to mention K&R C in c-mode intro
21956 2015-09-24  Stefan Monnier  <monnier@iro.umontreal.ca>
21958         Fix recent bootstrap problems
21960         * src/syntax.c (parse_sexp_propertize): Fix last fix.
21961         * lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): Fix paren typo.
21962         * lisp/emacs-lisp/lisp-mode.el: Require cl-lib for cl-progv.
21964 2015-09-24  Michael Albinus  <michael.albinus@gmx.de>
21966         * src/gfilenotify.c (Fgfile_add_watch): Decrease polling rate.
21968 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
21970         Properly quote nested xml comments (Bug#6267) (Bug#20001)
21972         * lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): New function.
21973         (nxml-mode): Set comment-quote-nested-function.
21975 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
21977         Allow major-modes full control over quoting nested comments
21979         * lisp/newcomment.el (comment-quote-nested-function): New variable.
21980         (comment-quote-nested-default): New function.
21981         (comment-quote-nested): Use `comment-quote-nested-function'.
21983 2015-09-23  Paul Eggert  <eggert@cs.ucla.edu>
21985         Prefer CALLN in a few more places
21987         * src/macfont.m (macfont_set_family_cache):
21988         * src/nsterm.m (append2):
21989         * src/xterm.c (x_cr_export_frames):
21990         Prefer CALLN to allocating the arg arrays by hand.
21992 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
21994         Adapt file-notify-test02-events test case
21996         * test/automated/file-notify-tests.el (file-notify-test02-events):
21997         Create a new watch for every test.
21999 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
22001         Continue gfilenotify.c implementation of missing parts
22003         * lisp/filenotify.el (file-notify-add-watch): Append `flags' to
22004         `gfile-add-watch' call.
22005         (file-notify-rm-watch): Modify `file-notify-descriptors' only
22006         after calling the low level functions.
22008         * src/gfilenotify.c (dir_monitor_callback): Check, whether
22009         event_type is expected.
22010         (Fgfile_add_watch): Allow also `change'and `attribute-change' for FLAGS.
22011         (Fgfile_rm_watch): Fix typo.
22012         (syms_of_gfilenotify): Declare Qchange and Qattribute_change.
22014 2015-09-23  Stefan Monnier  <monnier@iro.umontreal.ca>
22016         * src/syntax.c (parse_sexp_propertize): Handle spurious
22017         e_property_truncated flag.
22018         (update_syntax_table_forward): Remove invalid assertion.
22020 2015-09-23  Eli Zaretskii  <eliz@gnu.org>
22022         * src/xdisp.c (produce_stretch_glyph): Support ':relative-width'
22023         space display spec on text-mode terminals, by calling
22024         PRODUCE_GLYPHS instead of x_produce_glyphs.  Remove the
22025         HAVE_WINDOW_SYSTEM guards from the supporting code, as well as the
22026         test for a GUI frame.
22028 2015-09-23  Oleh Krehel  <ohwoeowho@gmail.com>
22030         Move let-when-compile to lisp-mode.el
22032         This fixes the bootstrapping problem of `let-when-compile' using
22033         `cl-progv' while being in subr.el (i.e. before cl stuff was loaded).
22035 2015-09-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
22037         * lisp/url/url-http.el (url-http-parse-headers): Do not
22038         automatically include Authorization header in redirect.
22039         (Bug#21350)
22041 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
22043         Clarify documentation of ':relative-width'
22045         * doc/lispref/display.texi (Specified Space): Document that
22046         ':relative-width' is only supported on GUI frames.
22048 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
22050         Fix 'current-column' in presence of :relative-width
22052         * src/indent.c (check_display_width): Support ':relative-width'
22053         in a display spec that specifies a stretch glyph.  (Bug#21533)
22055 2015-09-22  Ken Manheimer  <ken.manheimer@gmail.com>
22057         Reformat the pdbtrack remote-file fix ChangeLog.2 entry
22059         ... to conform better to CONTRIBUTE guidelines.
22061 2015-09-22  Stefan Monnier  <monnier@iro.umontreal.ca>
22063         * lisp/progmodes/prolog.el: Fix indentation of empty line
22065         * lisp/emacs-lisp/smie.el (smie-rules-function): Document new
22066         `empty-line-token' element.
22067         (smie-indent-empty-line): New function.
22068         (smie-indent-functions): Add it.
22070         * lisp/progmodes/prolog.el (prolog-smie-rules): Fix :list-intro
22071         behavior and use the new `empty-line-token' element (bug#21526).
22072         (prolog-mode-variables): Fix comment-start-skip setting to match
22073         comment-start.
22075         * test/indent/prolog.prolog: Add nested indentation tests.
22077         * lisp/newcomment.el (comment-normalize-vars): Fix default value of
22078         comment-start-skip not to misuse submatch 1.
22080 2015-09-22  Alan Mackenzie  <acm@muc.de>
22082         Make description of `edebug-initial-mode' user friendly
22084         Fixes bug#21365.
22086         * doc/lispref/edebug.texi (Edebug Execution Modes): Change the
22087         description of `edebug-initial-mode' from that of its implementation
22088         to that of its visual effect and use.  Move the paragraph higher up.
22090 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
22092         lisp/progmodes/gud.el (gud-format-command): Fix last commit
22094         * lisp/progmodes/gud.el (gud-format-command): Don't use Tramp internal
22095         functions 'tramp-file-name-localname' and 'tramp-dissect-file-name'.
22097 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
22099         Improve last commit to process.c
22101 2015-09-22  Michael Albinus  <michael.albinus@gmx.de>
22103         Implement gfile-valid-p
22105         * lisp/filenotify.el (file-notify-callback): Fix typo.
22106         (gfile-valid-p): Remove defalias.
22108         * src/gfilenotify.c (dir_monitor_callback): Cancel the monitor if
22109         the file or directory to be watched is deleted.
22110         (Fgfile_add_watch): Make watch_object a triple.
22111         (Fgfile_rm_watch): Check, whether watch is cancelled already.
22112         (Fgfile_valid_p): New defun.
22113         (syms_of_gfilenotify): Declare Sgfile_valid_p.
22115 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
22117         Remove callback-handled channels from Available set
22119         * src/process.c (wait_reading_process_output): Remove channel from
22120         Available set if it is handled by a callback, e.g., dbus or
22121         inotify (bug#21313).
22123 2015-09-21  Mark Oteiza  <mvoteiza@udel.edu>
22125         Use lunate epsilon for TeX \epsilon
22127         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
22128         Add \varepsilon using GREEK SMALL LETTER EPSILON, and change
22129         \epsilon to use GREEK LUNATE EPSILON SYMBOL
22131 2015-09-21  Stefan Monnier  <monnier@iro.umontreal.ca>
22133         * lisp/progmodes/prolog.el: Fix nested electric if-then-else
22135         * lisp/progmodes/prolog.el (prolog-find-unmatched-paren): Use innermost
22136         rather than outermost paren (bug#21526).
22138 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
22140         Improve git diff hunk headers for .el, .texi
22142         Problem reported by Alan Mackenzie in:
22143         https://lists.gnu.org/r/emacs-devel/2015-09/msg00826.html
22144         * .gitattributes (*.el, *.texi): New patterns.
22145         * autogen.sh: Configure diff.elisp.xfuncname and
22146         diff.texinfo.xfuncname if using Git.
22148 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
22150         Don't rely on defaults in decoding UTF-8 encoded Lisp files
22152         * lisp/replace.el:
22153         * lisp/textmodes/rst.el:
22154         * lisp/whitespace.el: Add an explicit UTF-8 encoding tag.
22156 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
22158         Clarify or replace a few \u escapes
22160         * doc/lispref/nonascii.texi (Character Properties)
22161         More-detailed commentary for \u escapes.
22162         * lisp/progmodes/python.el (python--prettify-symbols-alist):
22163         * lisp/replace.el (query-replace-from-to-separator):
22164         * lisp/textmodes/rst.el (rst-bullets, rst-re-alist-def)
22165         (rst-mode-syntax-table):
22166         * lisp/whitespace.el (whitespace-display-mappings):
22167         Prefer actual character to \u escape when this makes the code
22168         easier to follow in the usual case where Unicode chars can be
22169         displayed.
22171 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
22173         Pacify GCC -Wmaybe-uninitialized in xdisp.c
22175         * src/xdisp.c (face_before_or_after_it_pos): Use do-while rather
22176         than while loop to avoid GCC -Wmaybe-uninitialized diagnostic with
22177         charpos.  The loop should always execute at least once anyway.
22179 2015-09-21  Tassilo Horn  <tsdh@gnu.org>
22181         Signal error on invalid regexp
22183         * lisp/textmodes/reftex-cite.el (reftex-extract-bib-entries):
22184         Signal an error when the user tries searching with a regexp
22185         matching the empty string.
22187 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
22189         Another fix of file-notify-tests for w32notify
22191         * test/automated/file-notify-tests.el (file-notify-test02-events):
22192         Further adaptation for w32notify: reduce the number of expected
22193         'changed' events.  (Bug#21435)
22195 2015-09-21  Michael Albinus  <michael.albinus@gmx.de>
22197         Adapt tests and manual for w32notify
22199         * doc/lispref/os.texi (File Notifications): w32notify does not
22200         send `attribute-changed' events.
22202         * test/automated/file-notify-tests.el (file-notify--test-with-events):
22203         Simplify parameters.  Adapt all callees.
22204         (file-notify-test02-events): w32notify does not send
22205         `attribute-changed' events.
22206         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
22207         Do not skip in case of w32notify.  Simply ignore this part of the test.
22209 2015-09-21  Dima Kogan  <dima@secretsauce.net>
22211         Fix setting breakpoints when remote-debugging
22213         * lisp/progmodes/gud.el (gud-format-command): Send localized file
22214         names to the debugger running on the remote.  (Bug#13304)
22216 2015-09-21  Nicolas Petton  <nicolas@petton.fr>
22218         Better docstring and parameter name for seq-find
22220         * lisp/emacs-lisp/seq.el (seq-find): Improve the docstring and rename
22221         the parameter `sentinel' to `default'.
22223         * doc/lispref/sequences.texi (Sequence Functions): Update the
22224           documentation for `seq-find' accordingly.
22226 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
22228         Avoid infinite recursion while displaying box face
22230         * src/xdisp.c (face_before_or_after_it_pos): Fix calculation of
22231         the previous string/buffer character position under bidi
22232         iteration.  (Bug#21428)
22234 2015-09-21  Anders Lindgren  <andlind@gmail.com>
22236         Keep upper edge unchanged when changing size of NS frame
22238         * src/nsterm.m (x_set_window_size): Keep upper frame edge unchanged
22239         (Bug#21415).
22241 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
22243         * lisp/progmodes/prolog.el: Improve handling of if/then/else.
22244         (prolog-smie-rules): Accommodate standard if/then/else special
22245         indentation.
22246         (prolog-mode): Add . to electric-indent-chars.
22247         (prolog-electric--if-then-else): Re-indent the line before adding space
22248         after the new char (bug#21526).
22250 2015-09-20  Mark Oteiza  <mvoteiza@udel.edu>
22252         Add prettify symbols to python-mode
22254         * lisp/progmodes/python.el (python-prettify-symbols-alist):
22255         New variable.
22256         (python-mode): Use it
22258 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
22260         * lisp/emacs-lisp/syntax.el (syntax-begin-function): Make obsolete.
22262 2015-09-20  Jostein Kjønigsen  <jostein@secure.kjonigsen.net>  (tiny change)
22264         (compilation-error-regexp-alist-alist): Tone down guile-file
22266         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
22267         Make guile-file a bit less enthusiastic (bug#21496).
22269 2015-09-20  Drew Csillag  <drew@thecsillags.com>
22271         * lisp/progmodes/m4-mode.el (m4-font-lock-keywords):
22272         Fix m4_* highlighting.
22274         * lisp/progmodes/m4-mode.el (m4-font-lock-keywords): Fix recognition
22275         of commands when they have a "m4_" prefix.
22277 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
22279         '.' -> `.' in doc string
22281         * lisp/emacs-lisp/timer.el (run-at-time): In doc string, quote
22282         individual chars with grave quotes instead of straight quotes, as
22283         this works better when they are translated to curved quotes.
22285 2015-09-20  Michael Albinus  <michael.albinus@gmx.de>
22287         Improve file notifications, especially for Tramp
22289         * doc/lispref/files.texi (Magic File Names):
22290         Mention `file-notify-valid-p'.
22292         * doc/lispref/os.texi (File Notifications):
22293         Describe `file-notify-valid-p'.
22295         * etc/NEWS: Add `file-notify-valid-p'.
22297         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-notify-add-watch):
22298         Improve implementation.
22299         (tramp-gvfs-monitor-file-process-filter): Rename from
22300         `tramp-gvfs-file-gvfs-monitor-file-process-filter'.  Delete
22301         process if appropriate.
22303         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
22304         Improve implementation.
22305         (tramp-sh-gvfs-monitor-dir-process-filter): Rename from
22306         `tramp-sh-file-gvfs-monitor-dir-process-filter'.  Delete process
22307         if appropriate.
22308         (tramp-sh-inotifywait-process-filter): Rename from
22309         `tramp-sh-file-inotifywait-process-filter'.  Delete process if
22310         appropriate.
22312         * lisp/net/tramp.el (tramp-handle-file-notify-rm-watch):
22313         Use `delete-process'.
22314         (tramp-handle-file-notify-valid-p): Check also, that file or
22315         directory to be watched still exists.
22317         * test/automated/file-notify-tests.el (file-notify--test-timeout):
22318         New defun.  Use it at all places a timeout is needed.
22319         (file-notify--test-cleanup): Delete directories recursively.
22320         Cleanup also Tramp connections.
22321         (file-notify-test02-events): Add tests for `attribute-change'.
22322         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
22323         Add tests for `file-notify-rm-watch'.
22325 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
22327         Use %s to format strings instead of splicing them
22329         If FOO might contain quotes that are part of a file or variable
22330         name, the quotes should not be translated when showing FOO’s name
22331         in a diagnostic.  So, for example, (message (concat (FOO ": bar")))
22332         is not quite right, as it would translate FOO’s quotes.
22333         Change it to (message "%s: bar" FOO) instead.
22334         * lisp/allout.el (allout-process-exposed):
22335         * lisp/calc/calc-ext.el (calc-do-prefix-help):
22336         * lisp/calc/calc-store.el (calc-store-into):
22337         * lisp/calendar/todo-mode.el (todo-category-completions):
22338         * lisp/cedet/semantic/complete.el (semantic-completion-message):
22339         * lisp/org/ob-latex.el (convert-pdf):
22340         * lisp/org/org-crypt.el (org-crypt-check-auto-save):
22341         * lisp/org/ox-latex.el (org-latex-compile):
22342         * lisp/org/ox-man.el (org-man-compile):
22343         * lisp/org/ox-odt.el (org-odt--export-wrap):
22344         * lisp/org/ox-texinfo.el (org-texinfo-compile):
22345         * lisp/progmodes/ruby-mode.el (ruby-in-ppss-context-p):
22346         * lisp/progmodes/verilog-mode.el (verilog-batch-execute-func)
22347         (verilog-signals-combine-bus, verilog-read-defines)
22348         (verilog-getopt-file, verilog-expand-dirnames)
22349         (verilog-modi-lookup, verilog-modi-modport-lookup-one):
22350         * lisp/term/ns-win.el (ns-spi-service-call):
22351         Use %s to avoid translating quotes of file names etc. in diagnostics.
22353 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
22355         * lisp/progmodes/js.el (js--syntax-begin-function): Remove.
22356         (js-mode): Don't set syntax-begin-function.
22358 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
22360         * lisp/font-lock.el (font-lock-compile-keywords): Don't assume
22361         syntax-begin-function is a symbol.
22363 2015-09-20  Eli Zaretskii  <eliz@gnu.org>
22365         Improve documentation of 'run-at-time'
22366         * lisp/emacs-lisp/timer.el (run-at-time): Improve the doc string.
22367         In particular, don't refer to 'diary-entry-time', because it is
22368         unavailable until diary-lib is loaded.  Also, refer to
22369         'timer-duration-words', not 'timer-duration', as the latter's doc
22370         string says nothing about the accepted strings.
22372 2015-09-19  Jay Belanger  <jay.p.belanger@gmail.com>
22374         * lisp/calc/calc-ext.el (calc-do-prefix-help): Tidy up error message.
22376 2015-09-19  Ken Manheimer  <ken.manheimer@gmail.com>
22378         Repair pdbtrack remote file tracking
22379         * lisp/progmodes/python.el (python-pdbtrack-set-tracked-buffer):
22380         Rectify pdbtrack so it follows transitions from one remote source
22381         file to the next.
22383 2015-09-19  Artur Malabarba  <bruce.connor.am@gmail.com>
22385         * lisp/emacs-lisp/timer.el (run-at-time): Docstring formatting.
22387 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
22389         Adapt vc-src to the old-new vc-checkin API
22390         * lisp/vc/vc-src.el (vc-src-checkin): Accept and ignore an
22391         additional optional parameter.
22393 2015-09-19  Simen Heggestøyl  <simenheg@gmail.com>
22395         Add overflow module to CSS property list
22396         * lisp/textmodes/css-mode.el (css-property-ids): Add properties
22397         from CSS Overflow Module Level 3.
22399 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
22401         Fix documentation of "C-u C-x v v"
22402         * doc/emacs/maintaining.texi (Advanced C-x v v): Make the
22403         documentation of "C-u C-x v v" match what the code does.
22405         Resurrect the ability to specify a revision in vc-next-action
22406         * lisp/vc/vc-bzr.el (vc-bzr-checkin):
22407         * lisp/vc/vc-dav.el (vc-dav-checkin):
22408         * lisp/vc/vc-git.el (vc-git-checkin):
22409         * lisp/vc/vc-hg.el (vc-hg-checkin):
22410         * lisp/vc/vc-mtn.el (vc-mtn-checkin): Accept and silently ignore
22411         an additional optional argument, the revision to checkin.
22412         * lisp/vc/vc-sccs.el (vc-sccs-checkin):
22413         * lisp/vc/vc-cvs.el (vc-cvs-checkin):
22414         * lisp/vc/vc-rcs.el (vc-rcs-checkin): Allow to optionally specify
22415         a revision to checkin.
22416         * lisp/vc/vc.el (vc-next-action): Allow to optionally specify the
22417         revision when checking in files.
22418         See https://lists.gnu.org/r/emacs-devel/2015-09/msg00688.html
22419         for the details.
22421 2015-09-18  Wilson Snyder  <wsnyder@wsnyder.org>
22423         * lisp/progmodes/verilog-mode.el (verilog-forward-sexp-function)
22424         (verilog-decls-princ, verilog-modport-princ)
22425         (verilog-modi-modport-lookup-one): Fix checkdoc warnings.
22427 2015-09-17  Jay Belanger  <jay.p.belanger@gmail.com>
22429         Fix the routine for help on Calc's prefixes
22430         * lisp/calc/calc-ext.el (calc-prefix-help-retry): New variable.
22431         (calc-do-prefix-help): Use `read-char' to determine the next Calc
22432         command.
22434 2015-09-17  Stefan Monnier  <monnier@iro.umontreal.ca>
22436         * lisp/font-lock.el (font-lock-beginning-of-syntax-function): Remove.
22437         (font-lock-fontify-block): Don't let-bind it.
22438         (font-lock-compile-keywords): Don't use it.
22439         (font-lock-set-defaults): Don't set it.  Allow the variable alist to
22440         start one slot earlier, instead.
22441         * lisp/emacs-lisp/syntax.el (font-lock-beginning-of-syntax-function):
22442         Don't declare.
22443         (syntax-ppss): Don't use it either.
22444         * lisp/font-core.el (font-lock-defaults): Remove SYNTAX-BEGIN
22445         from docstring.
22446         * doc/emacs/display.texi (Font Lock): Don't mention
22447         font-lock-beginning-of-syntax-function.
22448         * doc/lispref/modes.texi (Font Lock Basics): Update description of
22449         font-lock-defaults.
22450         (Syntactic Font Lock): Remove font-lock-beginning-of-syntax-function.
22451         * lisp/loadhist.el (unload-feature-special-hooks):
22452         Remove font-lock-beginning-of-syntax-function.
22453         * lisp/obsolete/lazy-lock.el (lazy-lock-fontify-region):
22454         * lisp/emacs-lisp/lisp.el (beginning-of-defun-raw): Don't let-bind
22455         font-lock-beginning-of-syntax-function.
22457 2015-09-17  Paul Eggert  <eggert@cs.ucla.edu>
22459         Backslash cleanup in Elisp source files
22460         This patch should not change behavior.  It typically omits backslashes
22461         where they are redundant (e.g., in the string literal "^\$").
22462         In a few places, insert backslashes where they make regular
22463         expressions clearer: e.g., replace "^\*" (equivalent to "^*") with
22464         "^\\*", which has the same effect as a regular expression.
22465         Also, use ‘\ %’ instead of ‘\%’ when avoiding confusion with SCCS IDs,
22466         and similarly use ‘\ $’ instead of ‘\$’ when avoiding confusion with
22467         RCS IDs, as that makes it clearer that the backslash is intended.
22469         Some more minor backslash fixes
22470         * test/automated/compile-tests.el (compile-tests--test-regexps-data):
22471         * test/automated/info-xref.el (info-xref-test-write-file):
22472         Double backslashes in strings.
22474         Fix several backslash typos in Elisp strings
22475         * lisp/calendar/todo-mode.el (todo-files, todo-rename-file)
22476         (todo-find-filtered-items-file, todo-reset-nondiary-marker)
22477         (todo-reset-done-string, todo-reset-comment-string)
22478         (todo-reset-highlight-item):
22479         * lisp/erc/erc-networks.el (erc-networks-alist):
22480         * lisp/gnus/gnus-art.el (gnus-button-handle-library):
22481         * lisp/gnus/gnus-group.el (gnus-read-ephemeral-gmane-group-url):
22482         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
22483         (nntp-telnet-shell-prompt):
22484         * lisp/gnus/spam-report.el (spam-report-gmane-regex):
22485         * lisp/image-dired.el (image-dired-rotate-original):
22486         (image-dired-get-exif-file-name):
22487         * lisp/international/latin1-disp.el (latin1-display-ucs-per-lynx):
22488         * lisp/mail/undigest.el (rmail-digest-parse-rfc1153strict):
22489         * lisp/mh-e/mh-letter.el (mh-file-is-vcard-p):
22490         * lisp/mh-e/mh-mime.el (mh-file-mime-type-substitutions):
22491         * lisp/net/shr-color.el (shr-color->hexadecimal):
22492         * lisp/org/org-bibtex.el (org-bibtex-fields):
22493         * lisp/org/org-docview.el (org-docview-export):
22494         * lisp/org/org-entities.el (org-entities):
22495         * lisp/org/ox-icalendar.el (org-icalendar-cleanup-string):
22496         * lisp/progmodes/cperl-mode.el (cperl-indent-exp):
22497         * lisp/progmodes/ebnf2ps.el (ebnf-file-suffix-regexp)
22498         (ebnf-style-database):
22499         * lisp/progmodes/idlw-help.el (idlwave-do-context-help1):
22500         * lisp/progmodes/ruby-mode.el (ruby-imenu-create-index-in-block):
22501         * lisp/progmodes/sql.el (sql-product-alist):
22502         * lisp/progmodes/verilog-mode.el (verilog-error-regexp-emacs-alist)
22503         (verilog-error-font-lock-keywords)
22504         (verilog-assignment-operator-re):
22505         * lisp/progmodes/vhdl-mode.el (vhdl-compiler-alist):
22506         * lisp/textmodes/reftex-parse.el (reftex-parse-from-file):
22507         * lisp/vc/add-log.el (change-log-version-number-regexp-list):
22508         Fix typo by replacing ‘\’ with ‘\\’ in a string literal.
22509         For example, to get the regular expression ‘\.’ use the string
22510         literal "\\.", not "\." (which is equivalent to ".").
22511         * lisp/emulation/viper-util.el (viper-glob-unix-files):
22512         Remove stray ‘\j’ from string.
22513         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
22514         (nntp-telnet-shell-prompt):
22515         Treat > like $ when matching a shell prompt.
22516         * lisp/progmodes/make-mode.el (makefile-browse):
22517         Properly quote a diagnostic.
22519         Fix minor quoting problems in diagnostics
22520         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
22521         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
22522         Follow text-quoting-style in diagnostic, and quote a file name.
22524 2015-09-17  Eli Zaretskii  <eliz@gnu.org>
22526         * doc/lispref/frames.texi (Cursor Parameters):
22527         Document 'x-stretch-cursor'.
22529 2015-09-16  Paul Eggert  <eggert@cs.ucla.edu>
22531         Omit unnecessary \ before paren in C docstrings
22532         Although \( is needed in docstrings in Elisp code, it is not needed in
22533         docstrings in C code, since C function definitiions do not start with
22534         a parenthesis.  The backslashes made the docstrings a bit harder to
22535         read and to format in columns.  Also, some C docstrings had ( in
22536         column 1 and this did not appear to be causing any problems.  So,
22537         simplify C docstrings by replacing \( with ( and \) with ).
22539         A few more minor quoting fixes in a script and a text file
22541         Minor quoting fixes in scripts and doc
22542         Prefer straight quotes in random script files, as they are not
22543         converted.  Prefer grave quotes in a couple of places in the manual
22544         that were missed earlier, as these quotes are converted.
22546         Minor backslash fixes in manuals and scripts
22547         * Makefile.in (install-arch-indep):
22548         * admin/charsets/compact.awk:
22549         * admin/charsets/gb180302.awk (gb_to_index):
22550         * admin/charsets/gb180304.awk (gb_to_index):
22551         Avoid undefined behavior in Awk regular expression backslashes.
22552         * doc/misc/efaq.texi (Matching parentheses):
22553         Omit unnecessary backslashes.
22554         * doc/misc/gnus-faq.texi (FAQ 5-8):
22555         Avoid undefined behavior in suggested sed backslash usage.
22557         Add -Wswitch to --enable-gcc-warnings
22558         Make --enable-gcc-warnings a bit pickier, by also using -Wswitch.
22559         * configure.ac (WERROR_CFLAGS): Don’t add -Wno-switch.
22560         * lib-src/etags.c (main, consider_token, C_entries):
22561         * src/coding.c (encode_invocation_designation):
22562         * src/data.c (Ftype_of):
22563         * src/eval.c (Fdefvaralias, default_toplevel_binding)
22564         (Fbacktrace__locals, mark_specpdl):
22565         * src/lisp.h (record_xmalloc):
22566         * src/syntax.c (scan_lists, scan_sexps_forward):
22567         * src/window.c (window_relative_x_coord):
22568         * src/xdisp.c (push_it, pop_it):
22569         * src/xterm.c (xg_scroll_callback, x_check_fullscreen):
22570         Error out or do nothing (as appropriate) if a switch statement
22571         with an enum value does not cover all of the enum.
22572         * src/dispextern.h (struct iterator_stack_entry.u.comp):
22573         Remove unused member discovered by using -Wswitch.
22574         * src/lisp.h (record_xmalloc): Add a ‘+ 0’ to pacify -Wswitch.
22575         * src/vm-limit.c (check_memory_limits):
22576         Simplify warning-diagnostic computation by using a table.
22578         etags ‘fatal’ function is now printf-like
22579         * lib-src/etags.c (fatal): Now printf-like.  All callers changed.
22580         Also, now static; not clear why it needed to be extern.
22581         (verror): New function, with most of the old contents of ‘error’.
22582         (fatal, error): Use it.
22584 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
22586         More adaptations in file-notify-tests.el
22587         * test/automated/file-notify-tests.el
22588         (file-notify-test05-dir-validity): Skip for w32notify in
22589         batch-mode.  (Bug#21432)
22591 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
22593         Adapt test in file-notify-tests.el
22594         * test/automated/file-notify-tests.el
22595         (file-notify-test04-file-validity): Skip for w32notify in
22596         batch-mode.  Add test lost last commit.
22598 2015-09-16  Dima Kogan  <dima@secretsauce.net>
22600         winner no longer holds on to dead frames
22601         * lisp/winner.el (winner-change-fun): Cull dead frames.
22602         This prevents a potentially massive memory leak.  See:
22603         https://lists.gnu.org/r/emacs-devel/2015-09/msg00619.html
22605 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
22607         Use common report_file_notify_error function
22608         * src/fileio.c (report_file_notify_error): New function.
22609         * src/inotify.c (report_inotify_error): Remove function.
22610         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
22611         (Finotify_rm_watch): Use report_file_notify_error.
22612         * src/lisp.h (report_file_notify_error): Declare external function.
22613         * src/w32notify.c (report_w32notify_error): Remove function.
22614         (Fw32notify_add_watch, Fw32notify_rm_watch):
22615         Use report_file_notify_error.
22617 2015-09-16  Jay Belanger  <jay.p.belanger@gmail.com>
22619         Fix documentation.
22620         * doc/misc/calc.texi (Single-Variable Statistics): Fix the wording of
22621         the documentation of the root mean square.
22623 2015-09-16  Martin Rudalics  <rudalics@gmx.at>
22625         Remove tool_bar_redisplayed_once and associated code.
22626         * src/frame.h (tool_bar_redisplayed_once): Remove slot.
22627         * src/frame.c (make_frame, x_set_font): Remove initialization of
22628         f->tool_bar_redisplayed_once.
22629         * src/w32fns.c (x_change_tool_bar_height):
22630         * src/xfns.c (x_change_tool_bar_height): Don't check for
22631         f->tool_bar_redisplayed_once.
22632         * src/xdisp.c (redisplay_internal): Remove handling of
22633         f->tool_bar_redisplayed_once.
22635 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
22637         Restore some of the quoting in the manuals
22638         * doc/lispref/windows.texi (Coordinates and Windows)
22639         (Coordinates and Windows):
22640         * doc/lispref/variables.texi (Lexical Binding)
22641         (File Local Variables):
22642         * doc/lispref/text.texi (Format Properties):
22643         * doc/lispref/symbols.texi (Symbol Components):
22644         * doc/lispref/strings.texi (Creating Strings):
22645         * doc/lispref/sequences.texi (Sequence Functions):
22646         * doc/lispref/searching.texi (Regexp Special, Regexp Search)
22647         (Search and Replace):
22648         * doc/lispref/processes.texi (Bindat Spec):
22649         * doc/lispref/os.texi (Idle Timers):
22650         * doc/lispref/objects.texi (Basic Char Syntax):
22651         * doc/lispref/numbers.texi (Float Basics, Random Numbers):
22652         * doc/lispref/nonascii.texi (Character Properties):
22653         * doc/lispref/modes.texi (Major Mode Conventions, Mode Hooks)
22654         (Mode Line Variables):
22655         * doc/lispref/minibuf.texi (Text from Minibuffer):
22656         * doc/lispref/loading.texi (Autoload):
22657         * doc/lispref/keymaps.texi (Controlling Active Maps):
22658         * doc/lispref/frames.texi (Frame Layout, Size and Position)
22659         (Size Parameters, Implied Frame Resizing):
22660         * doc/lispref/files.texi (Changing Files, Magic File Names):
22661         * doc/lispref/eval.texi (Self-Evaluating Forms):
22662         * doc/lispref/display.texi (Progress, Abstract Display)
22663         (Abstract Display Example, Bidirectional Display):
22664         * doc/lispref/commands.texi (Event Mod):
22665         * doc/emacs/windows.texi (Displaying Buffers):
22666         * doc/emacs/trouble.texi (Bug Criteria, Checklist):
22667         * doc/emacs/text.texi (Enriched Text):
22668         * doc/emacs/programs.texi (MixedCase Words):
22669         * doc/emacs/picture-xtra.texi (Insert in Picture)
22670         (Tabs in Picture):
22671         * doc/emacs/misc.texi (Emacs Server, Printing):
22672         * doc/emacs/mini.texi (Minibuffer History):
22673         * doc/emacs/maintaining.texi (Old Revisions, VC Change Log)
22674         (Pulling / Pushing):
22675         * doc/emacs/killing.texi (Yanking, Cut and Paste, Clipboard):
22676         * doc/emacs/help.texi (Help, Help Echo):
22677         * doc/emacs/glossary.texi (Glossary):
22678         * doc/emacs/frames.texi (Mouse Commands, Creating Frames)
22679         (Frame Commands):
22680         * doc/emacs/files.texi (Reverting, Saving, Directories):
22681         * doc/emacs/entering.texi (Exiting):
22682         * doc/emacs/emacs.texi (Top):
22683         * doc/emacs/cmdargs.texi (Window Size X, Icons X):
22684         * doc/emacs/anti.texi (Antinews): Restore quoting of text where
22685         appropriate or replace quoting with @dfn.
22686         * doc/misc/ediff.texi (Window and Frame Configuration):
22687         * doc/lispref/processes.texi (Network Feature Testing):
22688         * doc/lispref/display.texi (Display Margins): Quote the phrase
22689         after "a.k.a." where appropriate.
22691 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
22693         Clarify reftex-extra-bindings docs
22694         * lisp/textmodes/reftex-vars.el (reftex-extra-bindings):
22695         * doc/misc/reftex.texi (Key Bindings): Document that the variable
22696         only has an effect at load-time.
22698 2015-09-16  Daniel McClanahan  <danieldmcclanahan@gmail.com>  (tiny change)
22700         * lisp/emacs-lisp/lisp-mode.el (lisp--el-match-keyword): Fix
22701         search argument.  (Bug#21492) (Bug#21493)
22703 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
22705         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
22706         Add pretty symbols for \qquad and \varrho.
22708 2015-09-15  Jay Belanger  <jay.p.belanger@gmail.com>
22710         Add new functions for the root mean square of a (Calc) vector
22711         * lisp/calc/calc-stat.el (calcFunc-rms, calc-vector-rms):
22712         New functions.
22713         * lisp/calc/calc-ext.el (calc-init-extensions): Add keybinding for
22714         `calc-vector-rms', add autoloads for `calc-vector-rms' and
22715         `calcFunc-rms'.
22716         * lisp/calc/calc-map.el (calc-u-oper-keys): Add entry for
22717         `calcFunc-rms'.
22718         * lisp/calc/calc-menu.el (calc-vectors-menu): Add entry for
22719         `calc-vector-rms'.
22720         * doc/misc/calc.texi (Single-Variable Statistics): Document the rms
22721         command.
22723 2015-09-15  Stephen Leake  <stephen_leake@stephe-leake.org>
22725         Add monotone EDE generic project
22726         * lisp/cedet/ede/generic.el (ede-enable-generic-projects):
22727         Add monotone generic project.
22729         Revert premature commit
22730         * doc/lispref/files.texi: Revert premature commit of change to
22731         file-name-all-completions.
22733         Fix a bug in elisp--xref-find-definitions related to cl-generic defaults
22734         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions): Fix bug
22735         with cl-generic defaults.
22736         (elisp--xref-find-references): Add doc string.
22737         * test/automated/elisp-mode-tests.el (xref-elisp-generic-*): Improve
22738         tests to find bug.
22740         Fix bugs in eieio-oref-default related to class symbols
22741         * lisp/emacs-lisp/eieio-core.el (class-p): Handle symbol properly.
22742         (eieio-oref-default): Handle class properly.
22744 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
22746         Quote “fullboth” when defining it
22747         * doc/lispref/frames.texi (Size Parameters): Use @dfn for “fullboth”
22748         and rewrite the containing paragraph, which was awkward.  (Bug#21472).
22750 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
22752         Minor doc fix in emacs/ack.texi
22753         * doc/emacs/ack.texi (Acknowledgments): Fix an xref missing the
22754         first argument.
22756 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
22758         Adapt tests in auto-revert-tests.el
22759         * test/automated/auto-revert-tests.el (auto-revert--timeout):
22760         Make it a defconst.
22761         (auto-revert--wait-for-revert): New defun.
22762         (auto-revert-test00-auto-revert-mode)
22763         (auto-revert-test01-auto-revert-tail-mode)
22764         (auto-revert-test02-auto-revert-mode-dired): Use it.
22766 2015-09-15  Stefan Monnier  <monnier@iro.umontreal.ca>
22768         * lisp/emacs-lisp/lisp-mode.el (lisp-mode-symbol-regexp): New const.
22769         Use it everywhere "\\(\\sw\\|\\s_\\|\\\\.\\)+" was used.
22770         (cl-lib-fdefs): Add defgeneric.
22771         (cl-kw): Add all elements of eieio-kw and cl-lib-kw.
22772         (eieio-kw, cl-lib-kw, el-kw): Remove.
22774 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
22776         Quote less in manuals
22777         The manuals often used quotes ``...'' when it is better to use @dfn or
22778         @code or capitalized words or no quoting at all.  For example, there is
22779         no need for the `` and '' in “if a variable has one effect for
22780         @code{nil} values and another effect for ``non-@code{nil}'' values”.
22781         Reword the Emacs, Lisp intro, and Lisp reference manuals to eliminate
22782         unnecessary quoting like this, and to use @dfn etc. instead when called
22783         for (Bug#21472).
22785 2015-09-15  Mark Oteiza  <mvoteiza@udel.edu>
22787         * lisp/custom.el (load-theme): Only compute hash when needed.
22789 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
22791         Pacify --enable-gcc-warnings
22792         * src/inotify.c (report_inotify_error): Declare it _Noreturn.
22794 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
22796         Improve error reports in inotify.c
22797         * src/inotify.c (report_inotify_error): New function.  Clone of
22798         report_w32notify_error.
22799         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
22800         (Finotify_rm_watch): Use it.
22802 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
22804         Fix the file-notify tests for watch validation on w32
22805         * test/automated/file-notify-tests.el
22806         (file-notify-test04-file-validity): Move the directory deletion
22807         out of the file-notify--test-with-events macro.
22808         (file-notify-test04-file-validity)
22809         (file-notify-test05-dir-validity): Enlarge the timeout of
22810         read-event to 0.5, as 0.1 is borderline on w32.  (Bug#21432)
22812 2015-09-15  Tassilo Horn  <tsdh@gnu.org>
22814         Use OPEN BOX instead of space for \quad.
22815         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist): Use OPEN BOX
22816         character for \quad instead of a space.
22818 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
22820         Add missing *.pbm images
22821         * etc/images/connect.pbm: New file.
22822         * etc/images/custom/down-pushed.pbm: New file.
22823         * etc/images/custom/down.pbm: New file.
22824         * etc/images/custom/right-pushed.pbm: New file.
22825         * etc/images/custom/right.pbm: New file.
22826         * etc/images/describe.pbm: New file.
22827         * etc/images/disconnect.pbm: New file.
22828         * etc/images/ezimage/bits.pbm: New file.
22829         * etc/images/ezimage/bitsbang.pbm: New file.
22830         * etc/images/ezimage/box-minus.pbm: New file.
22831         * etc/images/ezimage/box-plus.pbm: New file.
22832         * etc/images/ezimage/box.pbm: New file.
22833         * etc/images/ezimage/checkmark.pbm: New file.
22834         * etc/images/ezimage/dir-minus.pbm: New file.
22835         * etc/images/ezimage/dir-plus.pbm: New file.
22836         * etc/images/ezimage/dir.pbm: New file.
22837         * etc/images/ezimage/doc-minus.pbm: New file.
22838         * etc/images/ezimage/doc-plus.pbm: New file.
22839         * etc/images/ezimage/doc.pbm: New file.
22840         * etc/images/ezimage/info.pbm: New file.
22841         * etc/images/ezimage/key.pbm: New file.
22842         * etc/images/ezimage/label.pbm: New file.
22843         * etc/images/ezimage/lock.pbm: New file.
22844         * etc/images/ezimage/mail.pbm: New file.
22845         * etc/images/ezimage/page-minus.pbm: New file.
22846         * etc/images/ezimage/page-plus.pbm: New file.
22847         * etc/images/ezimage/page.pbm: New file.
22848         * etc/images/ezimage/tag-gt.pbm: New file.
22849         * etc/images/ezimage/tag-minus.pbm: New file.
22850         * etc/images/ezimage/tag-plus.pbm: New file.
22851         * etc/images/ezimage/tag-type.pbm: New file.
22852         * etc/images/ezimage/tag-v.pbm: New file.
22853         * etc/images/ezimage/tag.pbm: New file.
22854         * etc/images/ezimage/unlock.pbm: New file.
22855         * etc/images/gnus/important.pbm: New file.
22856         * etc/images/gnus/mail-send.pbm: New file.
22857         * etc/images/gnus/receipt.pbm: New file.
22858         * etc/images/gnus/toggle-subscription.pbm: New file.
22859         * etc/images/gnus/unimportant.pbm: New file.
22860         * etc/images/gud/all.pbm: New file.
22861         * etc/images/gud/rcont.pbm: New file.
22862         * etc/images/gud/recstart.pbm: New file.
22863         * etc/images/gud/recstop.pbm: New file.
22864         * etc/images/gud/rfinish.pbm: New file.
22865         * etc/images/gud/rnext.pbm: New file.
22866         * etc/images/gud/rnexti.pbm: New file.
22867         * etc/images/gud/rstep.pbm: New file.
22868         * etc/images/gud/rstepi.pbm: New file.
22869         * etc/images/gud/thread.pbm: New file.
22870         * etc/images/lock-broken.pbm: New file.
22871         * etc/images/lock-ok.pbm: New file.
22872         * etc/images/lock.pbm: New file.
22873         * etc/images/mail/copy.pbm: New file.
22874         * etc/images/mail/forward.pbm: New file.
22875         * etc/images/mail/not-spam.pbm: New file.
22876         * etc/images/mail/outbox.pbm: New file.
22877         * etc/images/mail/preview.pbm: New file.
22878         * etc/images/mail/save-draft.pbm: New file.
22879         * etc/images/mh-logo.pbm: New file.
22880         * etc/images/mpc/add.pbm: New file.
22881         * etc/images/mpc/ffwd.pbm: New file.
22882         * etc/images/mpc/next.pbm: New file.
22883         * etc/images/mpc/pause.pbm: New file.
22884         * etc/images/mpc/play.pbm: New file.
22885         * etc/images/mpc/prev.pbm: New file.
22886         * etc/images/mpc/rewind.pbm: New file.
22887         * etc/images/mpc/stop.pbm: New file.
22888         * etc/images/redo.pbm: New file.
22889         * etc/images/smilies/braindamaged.pbm: New file.
22890         * etc/images/smilies/cry.pbm: New file.
22891         * etc/images/smilies/dead.pbm: New file.
22892         * etc/images/smilies/evil.pbm: New file.
22893         * etc/images/smilies/forced.pbm: New file.
22894         * etc/images/smilies/grin.pbm: New file.
22895         * etc/images/smilies/indifferent.pbm: New file.
22896         * etc/images/sort-ascending.pbm: New file.
22897         * etc/images/sort-column-ascending.pbm: New file.
22898         * etc/images/sort-criteria.pbm: New file.
22899         * etc/images/sort-descending.pbm: New file.
22900         * etc/images/sort-row-ascending.pbm: New file.
22901         * etc/images/unchecked.pbm: New file.
22902         * etc/images/zoom-in.pbm: New file.
22903         * etc/images/README: Update instructions for PBM files.
22905         Add separator.pbm tool-bar image
22906         * etc/images/separator.pbm: New file.  Having it avoids the side
22907         effect of changing the tool-bar height when the default font's size
22908         changes and XPM image support is not available, due to the SPC
22909         characters that are left in the Lisp string used to display the tool
22910         bar, because there are no images to display instead of those SPC
22911         characters.
22913         Make show-paren-match face visible on mono-color displays
22914         * lisp/faces.el (show-paren-match): Use the underline face for
22915         mono-color displays.  (Bug#21481)
22917 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
22919         Don’t double-encode non-ASCII mail clipboard
22920         * lisp/mail/mailclient.el (mailclient-send-it):
22921         Also fix the case when mailclient-place-body-on-clipboard-flag
22922         is non-nil.  Problem reported by Eli Zaretskii (Bug#21471#37).
22924 2015-09-14  Michael Albinus  <michael.albinus@gmx.de>
22926         Adapt file-notify-tests.el test cases
22927         * lisp/filenotify.el (file-notify-rm-watch): Ignore `file-notify-error'.
22928         * src/inotify.c (Finotify_valid_p): Adapt docstring.
22929         * test/automated/file-notify-tests.el
22930         (file-notify-test03-autorevert)
22931         (file-notify-test04-file-validity)
22932         (file-notify-test04-file-validity-remote)
22933         (file-notify-test05-dir-validity)
22934         (file-notify-test05-dir-validity-remote): Adapt docstring.
22935         (file-notify-test04-file-validity): Let events arrive before
22936         calling final `file-notify-valid-p'.  Do not ignore errors.
22937         (file-notify-test05-dir-validity): Do not manipulate
22938         `temporary-file-directory', it isn't necessary.  Let events arrive
22939         before calling final `file-notify-valid-p'.  Do not ignore errors.
22941 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
22943         Don’t double-encode non-ASCII for mail client
22944         * lisp/mail/mailclient.el (mailclient-encode-string-as-url):
22945         Use RFC 6068’s list of unreserved characters.
22946         (mailclient-send-it): When encoding the body as a URL,
22947         first decode it as per Content-Type: and Content-Transfer-Encoding:,
22948         as URLs must use percent-encoded UTF-8 (Bug#21471).
22949         * doc/misc/url.texi (mailto): Update RFC number.
22951 2015-09-14  Stefan Monnier  <monnier@iro.umontreal.ca>
22953         * lisp/progmodes/cc-langs.el (c-make-init-lang-vars-fun): Use dolist.
22955 2015-09-14  Alan Mackenzie  <acm@muc.de>
22957         Replace `cadar' with `cadr/car', since `cadar' is problematic on Emacs
22958         (c-make-init-lang-vars-fun): Replace two occurrences of `cadar' with
22959         `cadr/car'.
22961 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
22963         Clarify documentation of char-table extra slots
22964         * doc/lispref/sequences.texi (Char-Tables): Clarify that extra
22965         slot numbers are zero-based.  (Bug#21467)
22967 2015-09-14  Alan Mackenzie  <acm@muc.de>
22969         Elisp mode: Make font-lock and imenu handle escaped characters in symbols
22970         Fixes bug#21449.
22971         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression)
22972         (lisp--el-match-keyword, lisp-el-font-lock-keywords-1)
22973         (lisp-cl-font-lock-keywords-1, lisp-el-font-lock-keywords-2)
22974         (lisp-cl-font-lock-keywords-2, lisp-string-in-doc-position-p):
22975         Insert "\\|\\\\." into regexps which match symbols.
22977 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
22979         Improve the doc string of w32notify-valid-p
22980         * src/w32notify.c (Fw32notify_valid_p): Mention in the doc string
22981         that removing a watch makes its object invalid.
22983 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
22985         Fix tests for file-notify-valid-p
22986         * test/automated/file-notify-tests.el (file-notify--test-cleanup):
22987         Use delete-directory to delete file-notify--test-tmpfile if it is
22988         a directory.  Likewise for file-notify--test-tmpfile1.
22989         (file-notify-test04-file-validity)
22990         (file-notify-test05-dir-validity): Delete the parent directory of
22991         the test.  Ignore errors when cleaning up after the test.
22993 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
22995         Report file-notify-error in w32notify.c
22996         * src/w32notify.c (report_w32notify_error): New function.
22997         (Fw32notify_add_watch, Fw32notify_rm_watch): Use it to report
22998         errors, instead of calling report_file_error.  (Bug#21432)
23000         Implement w32notify-valid-p
23001         * src/w32notify.c (Fw32notify_valid_p): New function.  (Bug#21432)
23002         * lisp/filenotify.el (w32notify-valid-p): No longer an alias for
23003         'identity'.
23005 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
23007         Test file-notify-valid-p
23008         * test/automated/file-notify-tests.el
23009         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
23010         New tests.
23012 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
23014         Fix markup in ELisp manual
23015         * doc/lispref/frames.texi (Font and Color Parameters): Fix markup
23016         of the 'alpha' parameter value.  (Bug#21470)
23018 2015-09-13  Michael Albinus  <michael.albinus@gmx.de>
23020         Introduce `file-notify-valid-p'
23021         * lisp/filenotify.el (file-notify-valid-p): New defun.
23022         (gfile-valid-p, w32notify-valid-p): Make them an alias to `identity'.
23023         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist)
23024         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist)
23025         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist)
23026         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist)
23027         <file-notify-valid-p>: Add handler.
23028         * lisp/net/tramp.el (tramp-file-name-for-operation):
23029         Add `file-notify-valid-p'.
23030         (tramp-handle-file-notify-valid-p): New defun.
23031         * src/inotify.c (Finotify_valid_p): New defun.
23032         (syms_of_inotify): Declare Sinotify_valid_p.
23034 2015-09-13  Paul Eggert  <eggert@cs.ucla.edu>
23036         Port Unicode char detection to FreeBSD+svgalib
23037         Problem reported by Ashish SHUKLA in:
23038         https://lists.gnu.org/r/emacs-devel/2015-09/msg00531.html
23039         * configure.ac: Check for struct unipair.unicode instead of for
23040         <linux/kd.h>, since that’s more specific to what the code
23041         actually needs.
23042         * src/terminal.c: Use HAVE_STRUCT_UNIPAIR_UNICODE, not HAVE_LINUX_KD_H.
23044         * src/indent.c (Fvertical_motion): Simplify bugfix (Bug#21468).
23046 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
23048         Fix vertical cursor motion across overlay strings with newlines
23049         * src/indent.c (Fvertical_motion): Don't leave point in the middle
23050         of an overlay string with newlines, as that will position the
23051         cursor after the string at whatever column is there.  (Bug#21468)
23053 2015-09-12  Michael Albinus  <michael.albinus@gmx.de>
23055         Fix tests in file-notify-tests.el
23056         * test/automated/file-notify-tests.el: Remove Tramp declarations.
23057         (file-notify-test00-availability): Print remote command w/o Tramp
23058         internal functions.
23059         (file-notify-test02-events, file-notify-test02-events-remote):
23060         Adapt docstring.
23061         (file-notify-test03-autorevert): Use `format-message' when
23062         inspecting *Messages* buffer.
23064 2015-09-12  Stefan Monnier  <monnier@iro.umontreal.ca>
23066         Bind inhibit-modification-hooks rather than a/b-c-f
23067         * lisp/wid-edit.el (widget-editable-list-insert-before)
23068         (widget-editable-list-delete-at):
23069         * lisp/progmodes/cperl-mode.el (cperl-find-pods-heres)
23070         (cperl-font-lock-unfontify-region-function):
23071         * lisp/progmodes/antlr-mode.el (save-buffer-state-x):
23072         * lisp/obsolete/longlines.el (longlines-mode):
23073         * lisp/obsolete/fast-lock.el (save-buffer-state):
23074         * lisp/mouse.el (mouse-save-then-kill-delete-region):
23075         * lisp/gnus/message.el (message-hide-headers):
23076         * lisp/eshell/esh-mode.el (eshell-send-input, eshell-output-filter):
23077         * lisp/ibuffer.el (ibuffer-update-title-and-summary)
23078         (ibuffer-redisplay-engine): Bind inhibit-modification-hooks to t rather
23079         than after/before-change-functions to nil.
23081 2015-09-11  Stefan Monnier  <monnier@iro.umontreal.ca>
23083         (jit-lock-deferred-fontify): Pay attention to skipped redisplays
23084         * lisp/jit-lock.el (jit-lock-deferred-fontify): Make sure we refresh
23085         the buffers, even if the forced redisplay is interrupted.
23087         * lisp/emacs-lisp/eieio-core.el (class-p): Accept class objects
23089         Merge syntax-propertize--done and parse-sexp-propertize-done
23090         * lisp/emacs-lisp/syntax.el (syntax-propertize--done): Remove.
23091         (syntax-propertize): Set syntax-propertize--done even if
23092         syntax-propertize-function is nil.  Avoid recursive invocations.
23093         (syntax-propertize-chunks): New var.
23094         (internal--syntax-propertize): Use it.  Rename from syntax--jit-propertize.
23095         Simplify.
23096         (parse-sexp-propertize-function): Don't set any more.
23097         * src/syntax.c (SETUP_SYNTAX_TABLE): Call parse_sexp_propertize as needed.
23098         (parse_sexp_propertize): Don't assume charpos is not yet propertized.
23099         Call Qinternal__syntax_propertize instead of
23100         Vparse_sexp_propertize_function.  Truncate e_property if needed.
23101         (update_syntax_table_forward): Streamline.
23102         (syms_of_syntax): Define Qinternal__syntax_propertize.
23103         (syntax_propertize__done): Rename from parse_sexp_propertize_done.
23105 2015-09-11  Paul Eggert  <eggert@cs.ucla.edu>
23107         Prefer straight quoting in some text files
23108         Mostly this just changes ` to ' in static text.  Some exceptions:
23109         * INSTALL.REPO: Use curved quotes, as the diagnostic in question
23110         typically does that now.
23111         * admin/quick-install-emacs (TRY, top level):
23112         Use straight quoting in diagnostics.
23113         * src/README: Fix working-directory confusion.
23115         * CONTRIBUTE: Move send-email here from git-workflow.
23117 2015-09-11  Michael Albinus  <michael.albinus@gmx.de>
23119         Improve file notifications in Tramp
23120         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
23121         Set proper events to watch for.
23122         (tramp-sh-file-gvfs-monitor-dir-process-filter): Report only
23123         watched events.
23125 2015-09-11  Eli Zaretskii  <eliz@gnu.org>
23127         Fix NS build with --enable-checking='glyphs'
23128         * src/nsfns.m (unwind_create_frame): Make the preprocessor
23129         conditionals for referencing 'dpyinfo' consistent throughout the
23130         function.  (Bug#21426)
23132 2015-09-10  Nicolas Petton  <nicolas@petton.fr>
23134         Add seq-find
23135         This function is similar to `seq-some' but returns the found element.
23136         In the cases where nil can be the found element, a sentinel optional
23137         argument can be provided to avoid ambiguities.
23138         * lisp/emacs-lisp/seq.el (seq-find): New function.
23139         * test/automated/seq-tests.el (test-seq-find): Add tests for `seq-find'.
23140         * doc/lispref/sequences.texi (Sequence Functions): Add documentation for
23141         seq-find.
23143 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
23145         Document file-notify--test-with-events.
23146         * test/automated/file-notify-tests.el (file-notify--test-with-events):
23147         Add docstring.
23149 2015-09-10  Michael Albinus  <michael.albinus@gmx.de>
23151         Report used native library in file-notify-tests.el
23152         * test/automated/file-notify-tests.el
23153         (tramp-get-remote-gvfs-monitor-dir)
23154         (tramp-get-remote-inotifywait): Declare them.
23155         (file-notify-test00-availability): Print used native library.
23157 2015-09-10  Mark Oteiza  <mvoteiza@udel.edu>
23159         * lisp/mpc.el (mpc--proc-connect): Use file-name-absolute-p.
23160         (mpc-file-local-copy): Check for absolute path.  Check more config
23161         locations.
23163 2015-09-10  Eli Zaretskii  <eliz@gnu.org>
23165         Improve documentation of categories
23166         * doc/lispref/syntax.texi (Categories): Clarify the example of
23167         using define-category and modify-category-entry.  (Bug#21448)
23169 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
23171         Revert some stray curved quotes I missed earlier
23172         Problem reported by David Kastrup in:
23173         https://lists.gnu.org/r/emacs-devel/2015-09/msg00440.html
23174         * lisp/international/mule-cmds.el (leim-list-header):
23175         Use format-message with an ASCII-only format.
23177         Prefer NUMBERP to spelling it out
23178         * src/editfns.c (styled_format):
23179         * src/frame.h (NUMVAL):
23180         * src/image.c (parse_image_spec):
23181         * src/lisp.h (CHECK_NUMBER_OR_FLOAT)
23182         (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER):
23183         * src/process.c (Fsignal_process):
23184         * src/xdisp.c (calc_pixel_width_or_height, on_hot_spot_p):
23185         * src/xfaces.c (check_lface_attrs):
23186         * src/xselect.c (x_fill_property_data, x_send_client_event):
23187         Use NUMBERP rather than INTEGERP || FLOATP.
23189 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
23191         Improve file-notify-tests
23192         * test/automated/file-notify-tests.el: Use lexical-binding.
23193         (file-notify--test-cleanup): New function.
23194         (file-notify-test00-availability, file-notify-test01-add-watch)
23195         (file-notify-test02-events, file-notify-test03-autorevert): Use it.
23196         (file-notify--test-with-events): New macro.
23197         (file-notify-test02-events): Use it.
23199 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
23201         Add patch-sending instructions to git-workflow
23202         From a suggestion by Mitchel Humpherys in:
23203         https://lists.gnu.org/r/emacs-devel/2015-09/msg00421.html
23204         * admin/notes/git-workflow (Sending patches): New section.
23206         Port to GIFLIB 5.0.6 and later
23207         Problem reported by Mitchel Humpherys in:
23208         https://lists.gnu.org/r/emacs-devel/2015-09/msg00420.html
23209         * src/image.c (HAVE_GIFERRORSTRING) [HAVE_GIF]: New macro.
23210         (GifErrorString, init_gif_functions) [HAVE_GIF && WINDOWSNT]:
23211         (gif_load) [HAVE_GIF]: Use it.
23213 2015-09-10  Glenn Morris  <rgm@gnu.org>
23215         * lisp/cedet/ede/auto.el (ede-project-autoload): Doc fix.
23217 2015-09-09  Glenn Morris  <rgm@gnu.org>
23219         * test/automated/file-notify-tests.el (file-notify-test02-events):
23220         Fix recent change.
23222 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
23224         Refix movemail GCC pacification
23225         Problem reported by Ken Brown in:
23226         https://lists.gnu.org/r/emacs-devel/2015-09/msg00406.html
23227         * lib-src/movemail.c (main): Fix previous change.
23229 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
23231         * lisp/calendar/time-date.el (time-to-seconds, time-less-p):
23232         Mark unused vars with underscore.
23234         * src/syntax.c (SETUP_SYNTAX_TABLE): Move truncation...
23235         (parse_sexp_propertize): ...from here.
23237         * lisp/filenotify.el: Use lexical-binding
23238         (file-notify-add-watch): Avoid add-to-list.
23240 2015-09-09  Tassilo Horn  <tsdh@gnu.org>
23242         Start checking event types in file-notify tests
23243         * test/automated/file-notify-tests.el (file-notify--test-events):
23244         New variable.
23245         (file-notify--test-event-handler): Append received event to
23246         file-notify--test-events for later analysis.
23247         (file-notify-test02-events): Assert that the expected notifications have
23248         arrived in the expected order.
23250 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
23252         Merge from gnulib and texinfo
23253         This incorporates:
23254         2015-08-03 Improve port of stdalign to C++11
23255         * lib/stdalign.in.h: Copy from gnulib.
23256         * doc/misc/texinfo.tex: Copy from texinfo.
23258 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
23260         Make syntax.c call syntax-propertize on demand
23261         * lisp/emacs-lisp/syntax.el (syntax--jit-propertize): New function.
23262         (parse-sexp-propertize-function): Use it.
23263         (syntax-propertize): Disable parse-sexp-propertize-function.
23264         * src/syntax.c (parse_sexp_propertize, update_syntax_table_forward):
23265         New functions.
23266         (syms_of_syntax): New vars `parse-sexp-propertize-done' and
23267         `parse-sexp-propertize-function'.
23268         * src/syntax.h (struct gl_state_s): Add `e_property_truncated' field.
23269         (UPDATE_SYNTAX_TABLE_FORWARD): Use update_syntax_table_forward.
23270         (SETUP_BUFFER_SYNTAX_TABLE): Set e_property_truncated.
23271         * lisp/progmodes/elisp-mode.el (elisp-byte-code-syntax-propertize):
23272         Don't assume `point' is set.
23274 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
23276         Fix indentation of an @example in ELisp manual
23277         * doc/lispref/syntax.texi (Categories): Untabify the example.
23278         (Bug#21448)
23280 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
23282         Define internal-char-font even if --without-x
23283         The function is used now even in non-graphical environments.
23284         Problem reported by Glenn Morris in:
23285         https://lists.gnu.org/r/emacs-devel/2015-09/msg00401.html
23286         * src/font.c (Finternal_char_font): Move here ...
23287         * src/fontset.c (Finternal_char_font): ... from here.
23289 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
23291         * lisp/emacs-lisp/cl-generic.el (cl-generic-generalizers):
23292         Remove warning.
23294 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
23296         Fix display of complex local data types in GDB-MI
23297         * lisp/progmodes/gdb-mi.el (gdb-locals-handler-custom): If a
23298         variable has no value, display "<complex data type>" as a
23299         placeholder, instead of a confusing "nil".  (Bug#21438)
23301 2015-09-09  Oleh Krehel  <ohwoeowho@gmail.com>
23303         Remove redundant redefinition of seq-drop-while from seq.el
23304         * lisp/emacs-lisp/seq.el (seq-drop-while): Define only once.
23306 2015-09-09  Phil Sainty  <psainty@orcon.net.nz>
23308         * lisp/emacs-lisp/package.el (package--ensure-init-file):
23309         More robust check for `package-initialize' calls in init file.
23310         This function accepts an optional argument, but calls passing
23311         an argument would not have been detected.
23313 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
23315         Port movemail to RHEL 6 with --enable-gcc-warnings
23316         * lib-src/movemail.c (main): Declare local only if needed.
23318         Port recent Linux console changes to RHEL 6
23319         * src/terminal.c [HAVE_LINUX_KD_H]: Include <sys/ioctl.h>.
23321         Improvements for curved quotes on Linux consule
23322         This should help Emacs work better out-of-the-box on Linux consoles,
23323         which have only limited support for displaying Unicode characters.
23324         Also, undo the recent change that caused text-quoting-style to
23325         affect quote display on terminals, so that the two features are
23326         independent.  See Alan Mackenzie in:
23327         https://lists.gnu.org/r/emacs-devel/2015-09/msg00244.html
23328         Finally, add a style parameter to startup--setup-quote-display,
23329         so that this function can also be invoked after startup, with
23330         different styles depending on user preference at the time.
23331         * configure.ac: Check for linux/kd.h header.
23332         * doc/emacs/display.texi (Text Display): Document quote display.
23333         * doc/lispref/display.texi (Active Display Table):
23334         * etc/NEWS:
23335         * lisp/startup.el (startup--setup-quote-display, command-line):
23336         text-quoting-style no longer affects quote display.
23337         * doc/lispref/frames.texi (Terminal Parameters): Fix typo.
23338         * lisp/international/mule-util.el (char-displayable-p):
23339         * lisp/startup.el (startup--setup-quote-display):
23340         On a text terminal supporting glyph codes, use the reported
23341         glyph codes instead of the terminal coding system, as this
23342         is more accurate on the Linux console.
23343         * lisp/startup.el (startup--setup-quote-display):
23344         New optional arg STYLE.
23345         * src/fontset.c (Finternal_char_font):
23346         Report glyph codes for a text terminal, if they are available.
23347         Currently this is supported only for the Linux console.
23348         * src/termhooks.h (struct terminal): New member glyph-code-table.
23349         * src/terminal.c [HAVE_LINUX_KD_H]: Include <errno.h>, <linux/kd.h>.
23350         (calculate_glyph_code_table) [HAVE_LINUX_KD_H]: New function.
23351         (terminal_glyph_code): New function.
23353 2015-09-08  Juri Linkov  <juri@linkov.net>
23355         * lisp/info.el (Info-fontify-node): Don't stop at the non-title
23356         underline.  (Bug#21433)
23358 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
23360         * lisp/calendar/time-date.el (with-decoded-time-value): Fix debug spec.
23362 2015-09-08  Tassilo Horn  <tsdh@gnu.org>
23364         Fix double-reporting of rename events with inotify
23365         * lisp/filenotify.el (file-notify-callback): Fix double-reporting
23366         of rename events with inotify (bug#21435).
23368 2015-09-08  Vasilij Schneidermann  <v.schneidermann@gmail.com>  (tiny change)
23370         * lisp/play/tetris.el (tetris-move-down): New command (bug#21360).
23371         (tetris-mode-map): Use it.
23373 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
23375         Remove a few simple cases of global redisplay
23376         * src/dispnew.c (redraw_frame): Don't redisplay all frames.
23377         * src/xdisp.c (echo_area_display): Set the frame's `redisplay' bit
23378         rather than returning a "resized_p" boolean.
23379         (redisplay_internal): Adjust call accordingly.
23380         * src/xfaces.c (free_realized_faces): Don't redisplay all frames.
23381         (free_all_realized_faces): Set windows_or_buffers_changed so as to ease
23382         tracking of this undesirable situation.
23384         * src/process.c (status_notify): Avoid global redisplay (bug#11822)
23385         * src/process.c (status_notify): Only set the update_mode_line on the
23386         relevant buffers rather than setting it globally.
23388 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
23390         * lisp/electric.el (electric-quote-post-self-insert-function):
23391         Don't use syntax-ppss if comment-use-syntax is nil (e.g. message-mode).
23392         (electric-quote-mode): Activate everywhere in message-mode.
23394 2015-09-07  Paul Eggert  <eggert@cs.ucla.edu>
23396         Go back to grave quoting in source-code docstrings etc.
23397         This reverts almost all my recent changes to use curved quotes
23398         in docstrings and/or strings used for error diagnostics.
23399         There are a few exceptions, e.g., Bahá’í proper names.
23400         * admin/unidata/unidata-gen.el (unidata-gen-table):
23401         * lisp/abbrev.el (expand-region-abbrevs):
23402         * lisp/align.el (align-region):
23403         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet)
23404         (outlineify-sticky):
23405         * lisp/apropos.el (apropos-library):
23406         * lisp/bookmark.el (bookmark-default-annotation-text):
23407         * lisp/button.el (button-category-symbol, button-put)
23408         (make-text-button):
23409         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
23410         * lisp/calc/calc-embed.el (calc-do-embedded):
23411         * lisp/calc/calc-ext.el (calc-user-function-list):
23412         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
23413         * lisp/calc/calc-help.el (calc-describe-key)
23414         (calc-describe-thing, calc-full-help):
23415         * lisp/calc/calc-lang.el (calc-c-language)
23416         (math-parse-fortran-vector-end, math-parse-tex-sum)
23417         (math-parse-eqn-matrix, math-parse-eqn-prime)
23418         (calc-yacas-language, calc-maxima-language, calc-giac-language)
23419         (math-read-giac-subscr, math-read-math-subscr)
23420         (math-read-big-rec, math-read-big-balance):
23421         * lisp/calc/calc-misc.el (calc-help, report-calc-bug):
23422         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
23423         (calc-auto-recompute):
23424         * lisp/calc/calc-prog.el (calc-fix-token-name)
23425         (calc-read-parse-table-part, calc-user-define-invocation)
23426         (math-do-arg-check):
23427         * lisp/calc/calc-store.el (calc-edit-variable):
23428         * lisp/calc/calc-units.el (math-build-units-table-buffer):
23429         * lisp/calc/calc-vec.el (math-read-brackets):
23430         * lisp/calc/calc-yank.el (calc-edit-mode):
23431         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
23432         * lisp/calendar/appt.el (appt-display-message):
23433         * lisp/calendar/diary-lib.el (diary-check-diary-file)
23434         (diary-mail-entries, diary-from-outlook):
23435         * lisp/calendar/icalendar.el (icalendar-export-region)
23436         (icalendar--convert-float-to-ical)
23437         (icalendar--convert-date-to-ical)
23438         (icalendar--convert-ical-to-diary)
23439         (icalendar--convert-recurring-to-diary)
23440         (icalendar--add-diary-entry):
23441         * lisp/calendar/time-date.el (format-seconds):
23442         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
23443         (timeclock-make-hours-explicit, timeclock-log-data):
23444         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
23445         (todo-item-mark, todo-check-format)
23446         (todo-insert-item--next-param, todo-edit-item--next-key)
23447         (todo-mode):
23448         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
23449         * lisp/cedet/mode-local.el (describe-mode-local-overload)
23450         (mode-local-print-binding, mode-local-describe-bindings-2):
23451         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
23452         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
23453         * lisp/cus-start.el (standard):
23454         * lisp/cus-theme.el (describe-theme-1):
23455         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
23456         (custom--sort-vars-1, load-theme):
23457         * lisp/descr-text.el (describe-text-properties-1, describe-char):
23458         * lisp/dired-x.el (dired-do-run-mail):
23459         * lisp/dired.el (dired-log):
23460         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
23461         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
23462         (ad-disable-advice, ad-remove-advice, ad-set-argument)
23463         (ad-set-arguments, ad--defalias-fset, ad-activate)
23464         (ad-deactivate):
23465         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
23466         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
23467         (byte-optimize-while, byte-optimize-apply):
23468         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
23469         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
23470         (byte-compile-log-file, byte-compile-format-warn)
23471         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
23472         (byte-compile-cl-warn)
23473         (byte-compile-warn-about-unresolved-functions)
23474         (byte-compile-file, byte-compile--declare-var)
23475         (byte-compile-file-form-defmumble, byte-compile-form)
23476         (byte-compile-normal-call, byte-compile-check-variable)
23477         (byte-compile-variable-ref, byte-compile-variable-set)
23478         (byte-compile-subr-wrong-args, byte-compile-setq-default)
23479         (byte-compile-negation-optimizer)
23480         (byte-compile-condition-case--old)
23481         (byte-compile-condition-case--new, byte-compile-save-excursion)
23482         (byte-compile-defvar, byte-compile-autoload)
23483         (byte-compile-lambda-form)
23484         (byte-compile-make-variable-buffer-local, display-call-tree)
23485         (batch-byte-compile):
23486         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use):
23487         * lisp/emacs-lisp/chart.el (chart-space-usage):
23488         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
23489         (check-declare-warn, check-declare-file)
23490         (check-declare-directory):
23491         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
23492         (checkdoc-message-text-engine):
23493         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer)
23494         (cl--describe-class):
23495         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
23496         (cl--generic-describe, cl-generic-generalizers):
23497         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
23498         (cl-symbol-macrolet):
23499         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
23500         * lisp/emacs-lisp/copyright.el (copyright)
23501         (copyright-update-directory):
23502         * lisp/emacs-lisp/edebug.el (edebug-read-list):
23503         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
23504         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
23505         (eieio-oref):
23506         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
23507         * lisp/emacs-lisp/eieio-speedbar.el:
23508         (eieio-speedbar-child-make-tag-lines)
23509         (eieio-speedbar-child-description):
23510         * lisp/emacs-lisp/eieio.el (defclass, change-class):
23511         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
23512         (elint-init-form, elint-check-defalias-form)
23513         (elint-check-let-form):
23514         * lisp/emacs-lisp/ert.el (ert-get-test, ert-results-mode-menu)
23515         (ert-results-pop-to-backtrace-for-test-at-point)
23516         (ert-results-pop-to-messages-for-test-at-point)
23517         (ert-results-pop-to-should-forms-for-test-at-point)
23518         (ert-describe-test):
23519         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
23520         (find-function-library):
23521         * lisp/emacs-lisp/generator.el (iter-yield):
23522         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
23523         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
23524         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
23525         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
23526         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
23527         (advice--make, define-advice):
23528         * lisp/emacs-lisp/package-x.el (package-upload-file):
23529         * lisp/emacs-lisp/package.el (package-version-join)
23530         (package-disabled-p, package-activate-1, package-activate)
23531         (package--download-one-archive)
23532         (package--download-and-read-archives)
23533         (package-compute-transaction, package-install-from-archive)
23534         (package-install, package-install-selected-packages)
23535         (package-delete, package-autoremove, describe-package-1)
23536         (package-install-button-action, package-delete-button-action)
23537         (package-menu-hide-package, package-menu--list-to-prompt)
23538         (package-menu--perform-transaction)
23539         (package-menu--find-and-notify-upgrades):
23540         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
23541         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
23542         * lisp/emacs-lisp/ring.el (ring-previous, ring-next):
23543         * lisp/emacs-lisp/rx.el (rx-check, rx-anything)
23544         (rx-check-any-string, rx-check-any, rx-check-not, rx-=)
23545         (rx-repeat, rx-check-backref, rx-syntax, rx-check-category)
23546         (rx-form):
23547         * lisp/emacs-lisp/smie.el (smie-config-save):
23548         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
23549         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
23550         * lisp/emacs-lisp/testcover.el (testcover-1value):
23551         * lisp/emacs-lisp/timer.el (timer-event-handler):
23552         * lisp/emulation/viper-cmd.el (viper-toggle-parse-sexp-ignore-comments)
23553         (viper-toggle-search-style, viper-kill-buffer)
23554         (viper-brac-function):
23555         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
23556         * lisp/env.el (setenv):
23557         * lisp/erc/erc-button.el (erc-nick-popup):
23558         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login, english):
23559         * lisp/eshell/em-dirs.el (eshell/cd):
23560         * lisp/eshell/em-glob.el (eshell-glob-regexp)
23561         (eshell-glob-entries):
23562         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
23563         * lisp/eshell/esh-opt.el (eshell-show-usage):
23564         * lisp/facemenu.el (facemenu-add-new-face)
23565         (facemenu-add-new-color):
23566         * lisp/faces.el (read-face-name, read-face-font, describe-face)
23567         (x-resolve-font-name):
23568         * lisp/files-x.el (modify-file-local-variable):
23569         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
23570         (set-auto-mode, hack-one-local-variable--obsolete)
23571         (dir-locals-set-directory-class, write-file, basic-save-buffer)
23572         (delete-directory, copy-directory, recover-session)
23573         (recover-session-finish, insert-directory)
23574         (file-modes-char-to-who, file-modes-symbolic-to-number)
23575         (move-file-to-trash):
23576         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer):
23577         * lisp/find-cmd.el (find-generic, find-to-string):
23578         * lisp/finder.el (finder-commentary):
23579         * lisp/font-lock.el (font-lock-fontify-buffer):
23580         * lisp/format.el (format-write-file, format-find-file)
23581         (format-insert-file):
23582         * lisp/frame.el (get-device-terminal, select-frame-by-name):
23583         * lisp/fringe.el (fringe--check-style):
23584         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
23585         * lisp/help-fns.el (help-fns--key-bindings)
23586         (help-fns--compiler-macro, help-fns--parent-mode)
23587         (help-fns--obsolete, help-fns--interactive-only)
23588         (describe-function-1, describe-variable):
23589         * lisp/help.el (describe-mode)
23590         (describe-minor-mode-from-indicator):
23591         * lisp/image.el (image-type):
23592         * lisp/international/ccl.el (ccl-dump):
23593         * lisp/international/fontset.el (x-must-resolve-font-name):
23594         * lisp/international/mule-cmds.el (prefer-coding-system)
23595         (select-safe-coding-system-interactively)
23596         (select-safe-coding-system, activate-input-method)
23597         (toggle-input-method, describe-current-input-method)
23598         (describe-language-environment):
23599         * lisp/international/mule-conf.el (code-offset):
23600         * lisp/international/mule-diag.el (describe-character-set)
23601         (list-input-methods-1):
23602         * lisp/mail/feedmail.el (feedmail-run-the-queue):
23603         * lisp/mouse.el (minor-mode-menu-from-indicator):
23604         * lisp/mpc.el (mpc-playlist-rename):
23605         * lisp/msb.el (msb--choose-menu):
23606         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
23607         * lisp/net/imap.el (imap-interactive-login):
23608         * lisp/net/mairix.el (mairix-widget-create-query):
23609         * lisp/net/newst-backend.el (newsticker--sentinel-work):
23610         * lisp/net/newst-treeview.el (newsticker--treeview-load):
23611         * lisp/net/rlogin.el (rlogin):
23612         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
23613         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
23614         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
23615         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
23616         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
23617         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
23618         (org-babel-goto-named-result):
23619         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
23620         * lisp/org/ob-ref.el (org-babel-ref-resolve):
23621         * lisp/org/org-agenda.el (org-agenda-prepare):
23622         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
23623         (org-clock-resolve):
23624         * lisp/org/org-ctags.el (org-ctags-ask-rebuild-tags-file-then-find-tag):
23625         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
23626         * lisp/org/org-habit.el (org-habit-parse-todo):
23627         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
23628         (org-mouse-context-menu):
23629         * lisp/org/org-table.el (org-table-edit-formulas):
23630         * lisp/org/ox.el (org-export-async-start):
23631         * lisp/proced.el (proced-log):
23632         * lisp/progmodes/ada-mode.el (ada-get-indent-case)
23633         (ada-check-matching-start, ada-goto-matching-start):
23634         * lisp/progmodes/ada-prj.el (ada-prj-display-page):
23635         * lisp/progmodes/ada-xref.el (ada-find-executable):
23636         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
23637         * lisp/progmodes/etags.el (etags-tags-apropos-additional):
23638         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
23639         (flymake-start-syntax-check-process):
23640         * lisp/progmodes/python.el (python-shell-get-process-or-error)
23641         (python-define-auxiliary-skeleton):
23642         * lisp/progmodes/sql.el (sql-comint):
23643         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
23644         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate):
23645         * lisp/recentf.el (recentf-open-files):
23646         * lisp/replace.el (query-replace-read-from)
23647         (occur-after-change-function, occur-1):
23648         * lisp/scroll-bar.el (scroll-bar-columns):
23649         * lisp/server.el (server-get-auth-key):
23650         * lisp/simple.el (execute-extended-command)
23651         (undo-outer-limit-truncate, list-processes--refresh)
23652         (compose-mail, set-variable, choose-completion-string)
23653         (define-alternatives):
23654         * lisp/startup.el (site-run-file, tty-handle-args, command-line)
23655         (command-line-1):
23656         * lisp/subr.el (noreturn, define-error, add-to-list)
23657         (read-char-choice, version-to-list):
23658         * lisp/term/common-win.el (x-handle-xrm-switch)
23659         (x-handle-name-switch, x-handle-args):
23660         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
23661         * lisp/textmodes/reftex-ref.el (reftex-label):
23662         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
23663         * lisp/textmodes/two-column.el (2C-split):
23664         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
23665         (tutorial--find-changed-keys):
23666         * lisp/type-break.el (type-break-noninteractive-query):
23667         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
23668         (wdired-do-perm-changes):
23669         * lisp/whitespace.el (whitespace-report-region):
23670         Prefer grave quoting in source-code strings used to generate help
23671         and diagnostics.
23672         * lisp/faces.el (face-documentation):
23673         No need to convert quotes, since the result is a docstring.
23674         * lisp/info.el (Info-virtual-index-find-node)
23675         (Info-virtual-index, info-apropos):
23676         Simplify by generating only curved quotes, since info files are
23677         typically that ways nowadays anyway.
23678         * lisp/international/mule-diag.el (list-input-methods):
23679         Don’t assume text quoting style is curved.
23680         * lisp/org/org-bibtex.el (org-bibtex-fields):
23681         Revert my recent changes, going back to the old quoting style.
23683 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
23685         * lisp/emacs-lisp/package.el: Reduce autoloading before compiling.
23686         (package--autoloads-file-name)
23687         (package--activate-autoloads-and-load-path): New function.
23688         (package-activate-1): Delegate autoloading and load-path
23689         configuration to `package--activate-autoloads-and-load-path'.
23690         (package--compile): Before compilation, call
23691         `package--activate-autoloads-and-load-path' instead of
23692         `package-activate-1'.
23694 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
23696         * src/keyboard.c (read_key_sequence): Complete last fix (bug#21403).
23698 2015-09-07  Eli Zaretskii  <eliz@gnu.org>
23700         Fix deletion of symlinks to directories on MS-Windows
23701         * src/w32.c (sys_unlink): If 'unlink' fails, and the argument is a
23702         symlink to a directory, try again with 'rmdir'.
23703         (is_symlink): If the argument is a symlink to a directory, set a
23704         bit in the return value to indicate that fact.
23706 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
23708         * lisp/emacs-lisp/package.el (package-initialize): Set enable-at-startup
23709         When `package-initialize' is called as part of loading the init file,
23710         the user probably doesn't want it to be called again afterwards.
23711         In this situation, `package-initialize' now sets
23712         `package-enable-at-startup' to nil to prevent that.  The user can have
23713         the old behavior by setting this variable to t after the call to
23714         `package-initialize'.  (Bug#21423)
23715         * doc/emacs/package.texi (Package Installation): Document it.
23716         * doc/lispref/package.texi (Packaging Basics): Document it.
23717         * etc/NEWS: Document it.
23719 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
23721         Bump version of ntlm.el to 2.00
23722         * lisp/net/ntlm.el: Bump version to 2.00.  New maintainer.
23723         Add comm keyword.
23725 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
23727         * doc/misc/gnus.texi (Mail Source Specifiers):
23728         Allow :mailbox to be a list.
23730 2015-09-06  Dmitry Gutov  <dgutov@yandex.ru>
23732         * lisp/progmodes/etags.el (etags-tags-completion-table):
23733         Allow even one non-regular character before the implicit tag name.
23734         Reported at http://emacs.stackexchange.com/questions/15269/.
23736 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
23738         Add support for NTLMv2 authentication
23739         * lisp/net/ntlm.el (ntlm): New customization group.
23740         (ntlm-compatibility-level): New defcustom.
23741         (ntlm-compute-timestamp): New function.
23742         (ntlm-generate-nonce): Likewise.
23743         (ntlm-build-auth-response): Add support for NTLMv2 authentication.
23745 2015-09-06  Artur Malabarba  <bruce.connor.am@gmail.com>
23747         * lisp/emacs-lisp/package.el: Rename custom faces.
23748         All of the recently introduced faces, like `package-name-face', have
23749         been renamed to no end in `-face' to comply with the convention
23750         described in (info "(elisp) Defining Faces").
23751         (package-name, package-description)
23752         (package-status-built-in, package-status-external)
23753         (package-status-available, package-status-new)
23754         (package-status-held, package-status-disabled)
23755         (package-status-installed, package-status-dependency)
23756         (package-status-unsigned, package-status-incompat)
23757         (package-status-avail-obso): New faces.
23758         (package-menu--print-info-simple): Use them.
23760 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
23762         mail-source.el: Make the imap mail-source's :mailbox handle a list
23763         * lisp/gnus/mail-source.el (mail-source-fetch-imap):
23764         Allow :mailbox to be  a list.
23766 2015-09-06  Eric Abrahamsen  <eric@ericabrahamsen.net>
23768         nnimap.el: Handle nil arg to nnimap-request-group
23769         * lisp/gnus/nnimap.el (nnimap-request-group): Handle nil "info" arg.
23770         This arg isn't always passed in, check it's not nil before making it
23771         into a list.  The active arg will also be nil if the group is new,
23772         check for that.
23774 2015-09-06  Michael Albinus  <michael.albinus@gmx.de>
23776         File notifications: Support renaming over directory boundaries
23777         * lisp/filenotify.el (file-notify-handle-event):
23778         (file-notify--pending-event): Adapt docstring.
23779         (file-notify--descriptor, file-notify-callback): Reimplement in
23780         order to support renaming over directory boundaries.
23781         (file-notify-add-watch): Adapt `file-notify--descriptor' call.
23782         * doc/lispref/os.texi (File Notifications): Remove limitation of
23783         file renaming to the same directory.
23785 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
23787         Spelling fix (Bug#21420)
23789 2015-09-05  Nicolas Petton  <nicolas@petton.fr>
23791         Improve the semantic of map-some
23792         Update map-some to return the returned by the predicate, similar to
23793         seq-some.
23794         * lisp/emacs-lisp/map.el (map-some): Update the function to return the
23795           return value of the predicate.
23796         * test/automated/map-tests.el (test-map-some): Update the test to check
23797           for non-nil values only.
23799         Rename map-contains-key-p and map-some-p
23800         Remove the "-p" suffix from both function names.
23801         * lisp/emacs-lisp/map.el (map-contains-key, map-some):
23802           Rename the functions.
23803         * test/automated/map-tests.el (test-map-contains-key, test-map-some):
23804           Update both test functions.
23806         Improve the semantic of seq-some
23807         Update seq-some to return non-nil if the predicate returns non-nil for
23808         any element of the seq, in which case the returned value is the one
23809         returned by the predicate.
23810         * lisp/emacs-lisp/seq.el (seq-some): Update the function and its
23811           docstring.
23812         * test/automated/seq-tests.el (test-seq-some): Add a regression test.
23813         * doc/lispref/sequences.texi (Sequence Functions): Update the
23814           documentation for seq-some.
23816         Rename seq-some-p to seq-some and seq-contains-p to seq-contains
23817         * lisp/emacs-lisp/seq.el (seq-some, seq-contains): Rename the functions
23818           without the "-p" prefix.
23819         * test/automated/seq-tests.el (test-seq-some, test-seq-contains): Update
23820           the tests accordingly.
23821         * doc/lispref/sequences.texi (Sequence Functions): Update the
23822           documentation for seq.el.
23824 2015-09-05  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
23826         text-quoting-style for usage of fn names with ‘’
23827         * lisp/help.el (help--docstring-quote): Don’t assume
23828         text-quoting-style is ‘curve’ when generating usage strings for
23829         functions whose names contain curved quotes.
23831 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
23833         Fix fix for describe-function keybinding confusion
23834         This fixes a bug introduced by the previous patch.
23835         * lisp/help-fns.el (help-fns--signature):
23836         Last arg of help-fns--signature is now a buffer, or nil if a
23837         raw signature is wanted.  All callers changed.
23838         (describe-function-1): Use this to do the right thing with signatures.
23840 2015-09-05  Johan Bockgård  <bojohan@gnu.org>
23842         * doc/lispref/frames.texi (Mouse Tracking): Fix typo.
23844         Use PAT rather than UPAT in pcase macros
23845         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
23846         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>: Use PAT rather
23847           than UPAT.
23849 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
23851         Fix describe-function keybinding confusion
23852         * lisp/help-fns.el (describe-function-1): Compute signature
23853         in the original buffer, not in standard-output, so that
23854         substitute-command-keys uses the proper keybindings.
23855         This fixes Bug#21412, introduced in commit
23856         2015-06-11T10:23:46-0700!eggert@cs.ucla.edu.
23858 2015-09-05  Xue Fuqiao  <xfq.free@gmail.com>
23860         * doc/emacs/programs.texi (Program Modes): Remove an index entry.
23862 2015-09-05  Robert Pluim  <rpluim@gmail.com>  (tiny change)
23864         Avoid read error messages from 'inotify'
23865         * src/process.c (wait_reading_process_output): Add a
23866         'tls_available' set and manipulate it instead of 'Available' when
23867         checking TLS inputs.  Assign the value to 'Available' only if we
23868         find any TLS data waiting to be read.  This avoids error messages
23869         from 'inotify' that tries to read data it shouldn't.  (Bug#21337)
23871 2015-09-05  Eli Zaretskii  <eliz@gnu.org>
23873         Avoid errors in thing-at-point with 2nd argument non-nil
23874         * lisp/thingatpt.el (thing-at-point): Only call 'length' on
23875         sequences.  (Bug#21391)
23877 2015-09-05  Pip Cet  <pipcet@gmail.com>  (tiny change)
23879         Fix segfaults due to using a stale face ID
23880         * src/xdisp.c (forget_escape_and_glyphless_faces): New function.
23881         (display_echo_area_1, redisplay_internal): Call it to avoid
23882         reusing stale face IDs for 'escape-glyph' and 'glyphless-char'
23883         faces, which could case a segfault if the frame's face cache was
23884         freed since the last redisplay.  (Bug#21394)
23885         * src/xfaces.c (free_realized_faces):
23886         Call forget_escape_and_glyphless_faces.
23887         * src/dispextern.h (forget_escape_and_glyphless_faces): Add prototype.
23889 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
23891         Fix minor problems with " in manual
23893 2015-09-04  Michael Albinus  <michael.albinus@gmx.de>
23895         * doc/misc/tramp.texi (Frequently Asked Questions): New item for ad-hoc
23896         multi-hop files.
23898 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
23900         Support automated ‘make check’ in non-C locale
23901         This lets the builder optionally test Emacs behavior in other locales.
23902         The C locale is still the default for tests.
23903         * test/automated/Makefile.in (TEST_LOCALE): New macro.
23904         (emacs): Use it.
23905         * test/automated/flymake-tests.el (flymake-tests--current-face):
23906         Use C locale for subprocesses so that tests behave as expected.
23907         * test/automated/python-tests.el:
23908         (python-shell-prompt-validate-regexps-1)
23909         (python-shell-prompt-validate-regexps-2)
23910         (python-shell-prompt-validate-regexps-3)
23911         (python-shell-prompt-validate-regexps-4)
23912         (python-shell-prompt-validate-regexps-5)
23913         (python-shell-prompt-validate-regexps-6)
23914         (python-shell-prompt-set-calculated-regexps-1):
23915         Adjust expected output to match locale.
23916         * test/automated/tildify-tests.el (tildify-test--test)
23917         (tildify-space-test--test, tildify-space-undo-test--test):
23918         This test assumes UTF-8 encoding.
23920 2015-09-03  Paul Eggert  <eggert@cs.ucla.edu>
23922         Fix some more docstring etc. quoting problems
23923         Mostly these fixes prevent the transliteration of apostrophes
23924         that should stay apostrophes.  Also, prefer curved quotes in
23925         Bahá’í proper names, as that’s the preferred Bahá’í style and
23926         these names are chock-full of non-ASCII characters anyway.
23927         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-autoload)
23928         (eieio-defclass-internal):
23929         * lisp/emacs-lisp/eieio.el (defclass):
23930         * lisp/hi-lock.el (hi-lock-mode):
23931         Don’t transliterate Lisp apostrophes when generating a
23932         doc string or diagnostic.
23933         * lisp/international/mule-diag.el (list-coding-systems-1):
23934         * lisp/international/ogonek.el (ogonek-jak, ogonek-how):
23935         * lisp/mail/sendmail.el (sendmail-query-user-about-smtp):
23936         * lisp/vc/ediff-mult.el (ediff-redraw-registry-buffer):
23937         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
23938         Substitute quotes before putting them in the help buffer.
23940 2015-09-03  Stefan Monnier  <monnier@iro.umontreal.ca>
23942         Re-add the notion of echo_prompt lost in the translation
23943         * src/keyboard.h (struct kboard): Replace echo_after_prompt with new
23944         echo_prompt which contains the actual string.  Update all uses.
23945         * src/keyboard.c (kset_echo_prompt): New function.
23946         (echo_update): Add echo_prompt at the very beginning.
23947         (read_char): Remove workaround for bug#19875, not needed any more.
23948         (read_key_sequence): Set echo_prompt rather than echo_string
23949         (bug#21403).
23950         (mark_kboards): Mark echo_prompt.
23952         Fix disassembly of non-compiled lexical functions (bug#21377)
23953         * lisp/emacs-lisp/bytecomp.el (byte-compile): Handle `closure' arg.
23954         * lisp/emacs-lisp/disass.el: Use lexical-binding.
23955         (disassemble): Recognize `closure's as well.
23956         (disassemble-internal): Use indirect-function and
23957         help-function-arglist, and accept `closure's.
23958         (disassemble-internal): Use interactive-form.
23959         (disassemble-1): Use functionp.
23961         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
23962         Don't compose inside verbatim blocks!
23964 2015-09-03  Mark Oteiza  <mvoteiza@udel.edu>
23966         * lisp/thingatpt.el (thing-at-point-uri-schemes): Add "man:"
23967         (bug#19441).
23969         * lisp/mpc.el (mpc--proc-connect): Handle unix sockets (bug#19394).
23971 2015-09-03  Dmitry Gutov  <dgutov@yandex.ru>
23973         vc-git-mode-line-string: Explicitly re-apply the face
23974         * lisp/vc/vc-git.el (vc-git-mode-line-string): Explicitly re-apply
23975         the face (bug#21404).
23977 2015-09-02  Paul Eggert  <eggert@cs.ucla.edu>
23979         Treat initial-scratch-message as a doc string
23980         * doc/emacs/building.texi (Lisp Interaction):
23981         * doc/lispref/os.texi (Startup Summary):
23982         * etc/NEWS: Document this.
23983         * lisp/startup.el (initial-scratch-message):
23984         Look up find-file’s key rather than hardcoding it.
23985         (command-line-1): Substitute the doc string.
23986         This also substitutes the quotes, which will help test display
23987         quoting at startup.
23989         Fix describe-char bug with glyphs on terminals
23990         * lisp/descr-text.el (describe-char): Terminals can have glyphs in
23991         buffers too, so don’t treat them differently from graphic displays.
23992         Without this fix, describe-char would throw an error on a terminal
23993         if given a glyph with a non-default face.
23995         Follow text-quoting-style in display table init
23996         This attempts to fix a problem reported by Alan Mackenzie in:
23997         https://lists.gnu.org/r/emacs-devel/2015-09/msg00112.html
23998         * doc/lispref/display.texi (Active Display Table):
23999         Mention how text-quoting-style affects it.
24000         * doc/lispref/help.texi (Keys in Documentation):
24001         Say how to set text-quoting-style in ~/.emacs.
24002         * etc/NEWS: Document the change.
24003         * lisp/startup.el (startup--setup-quote-display):
24004         Follow user preference if text-quoting-style is set.
24005         (command-line): Setup quote display again if user expresses
24006         a preference in .emacs.
24008 2015-09-02  K. Handa  <handa@gnu.org>
24010         Fix typo
24011         * src/ftfont.c (ftfont_drive_otf): otf_positioning_type_components_mask
24012         -> OTF_positioning_type_components_mask.
24014         Fix previous change
24015         * src/ftfont.c (ftfont_drive_otf): Remember some bits of
24016         OTF_Glyph->positioning_type in MFLTGlyphFT->libotf_positioning_type.
24018 2015-09-01  David Caldwell  <david@porkrind.org>  (tiny change)
24020         * lisp/vc/vc-hooks.el (vc-refresh-state): New command.
24021         Rename from vc-find-file-hook and make interactive.
24022         (vc-find-file-hook): Redefine as obsolete alias.
24024 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
24026         Escape ` and ' in doc
24027         Escape apostrophes and grave accents in docstrings if they are
24028         are supposed to stand for themselves and are not quotes.  Remove
24029         apostrophes from docstring examples like ‘'(calendar-nth-named-day
24030         -1 0 10 year)’ that confuse source code with data.  Do some other
24031         minor docstring fixups as well, e.g., insert a missing close quote.
24033 2015-09-01  Stefan Monnier  <monnier@iro.umontreal.ca>
24035         Generalize the prefix-command machinery of C-u
24036         * lisp/simple.el (prefix-command-echo-keystrokes-functions)
24037         (prefix-command-preserve-state-hook): New hooks.
24038         (internal-echo-keystrokes-prefix): New function.
24039         (prefix-command--needs-update, prefix-command--last-echo): New vars.
24040         (prefix-command-update, prefix-command-preserve): New functions.
24041         (reset-this-command-lengths): New compatibility definition.
24042         (universal-argument--mode): Call prefix-command-update.
24043         (universal-argument, universal-argument-more, negative-argument)
24044         (digit-argument): Call prefix-command-preserve-state.
24045         * src/keyboard.c: Call internal-echo-keystrokes-prefix to build
24046         the "prefix argument" to echo.
24047         (this_command_key_count_reset, before_command_key_count)
24048         (before_command_echo_length): Delete variables.
24049         (echo_add_key): Always add a space.
24050         (echo_char): Remove.
24051         (echo_dash): Don't give up when this_command_key_count is 0, since that
24052         is now the case after a prefix command.
24053         (echo_update): New function, extracted from echo_now.
24054         (echo_now): Use it.
24055         (add_command_key, read_char, record_menu_key): Remove old disabled code.
24056         (command_loop_1): Don't refrain from pushing an undo boundary when
24057         prefix-arg is set.  Remove other prefix-arg special case, now handled
24058         directly in the prefix commands instead.  But call echo_now if there's
24059         a prefix state to echo.
24060         (read_char, record_menu_key): Use echo_update instead of echo_char.
24061         (read_key_sequence): Use echo_now rather than echo_dash/echo_char.
24062         (Freset_this_command_lengths): Delete function.
24063         (syms_of_keyboard): Define Qinternal_echo_keystrokes_prefix.
24064         (syms_of_keyboard): Don't defsubr Sreset_this_command_lengths.
24065         * lisp/simple.el: Use those new hooks for C-u.
24066         (universal-argument--description): New function.
24067         (prefix-command-echo-keystrokes-functions): Use it.
24068         (universal-argument--preserve): New function.
24069         (prefix-command-preserve-state-hook): Use it.
24070         (command-execute): Call prefix-command-update if needed.
24071         * lisp/kmacro.el (kmacro-step-edit-prefix-commands)
24072         (kmacro-step-edit-prefix-index): Delete variables.
24073         (kmacro-step-edit-query, kmacro-step-edit-insert): Remove ad-hoc
24074         support for prefix arg commands.
24075         (kmacro-step-edit-macro): Don't bind kmacro-step-edit-prefix-index.
24076         * lisp/emulation/cua-base.el (cua--prefix-override-replay)
24077         (cua--shift-control-prefix): Use prefix-command-preserve-state.
24078         Remove now unused arg `arg'.
24079         (cua--prefix-override-handler, cua--prefix-repeat-handler)
24080         (cua--shift-control-c-prefix, cua--shift-control-x-prefix):
24081         Update accordingly.
24082         (cua--prefix-override-timeout): Don't call reset-this-command-lengths
24083         any more.
24084         (cua--keep-active, cua-exchange-point-and-mark): Don't set mark-active
24085         if the mark is not set.
24087 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
24089         Rework quoting in Emacs Lisp Introduction
24090         * doc/lispintro/emacs-lisp-intro.texi (Sample let Expression)
24091         (if in more detail, type-of-animal in detail, else): Rework the
24092         early example to use " rather than ' so that we don’t burden
24093         complete novices with the low-priority detail of text quoting style.
24094         (Complete zap-to-char, kill-region, Complete copy-region-as-kill)
24095         (kill-new function, kill-ring-yank-pointer)
24096         (Complete forward-sentence, Loading Files)
24097         (Code for current-kill, Code for current-kill, yank):
24098         Resurrect the Emacs 22 versions of the code, which uses grave
24099         quoting style in doc strings.
24100         (Complete zap-to-char): Mention how quoting works in doc strings.
24102         Setup quote display only if interactive
24103         * lisp/startup.el (command-line):
24104         Skip call to startup--setup-quote-display if noninteractive.
24105         Without this change, python-shell-prompt-validate-regexps-1
24106         fails in test/automated/python-tests.el when run in an
24107         en_US.utf8 locale on Fedora.
24109 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
24111         Use defalias at the top level
24112         * lisp/gnus/gnus-util.el (gnus-format-message):
24113         * lisp/net/tls.el (tls-format-message): Use defalias at the top level
24114         so as to make eval-and-compile unnecessary.  Thanks to Stefan Monnier.
24116 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
24118         terminal-init-w32console mimics command-line
24119         Problem reported by Eli Zaretskii.
24120         * lisp/startup.el (startup--setup-quote-display):
24121         New function, refactored from a part of ‘command-line’.
24122         (command-line): Use it.
24123         * lisp/term/w32console.el (terminal-init-w32console):
24124         Use it, so that this function stays consistent with ‘command-line’.
24126         Display replacement quotes with shadow glyphs
24127         * lisp/startup.el (command-line): When displaying ASCII
24128         replacements for curved quotes, use a shadow glyph instead of a
24129         regular one, to avoid ambiguity.
24131 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
24133         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Mask "Password:".
24135 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
24137         Docstring fixes re quotes in C code
24138         Fix some docstring quoting problems, mostly by escaping apostrophe.
24140 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
24142         Some Tramp password fixes
24143         * lisp/net/tramp.el (tramp-clear-passwd): Clear also the passwords
24144         of the hops.
24145         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Move "-p" "Password:"
24146         at the beginning of the command.  Otherwise, it could be
24147         interpreted as password prompt if the remote host echoes the
24148         command.
24149         (tramp-remote-coding-commands): Add "openssl enc -base64".
24151 2015-09-01  Dmitry Gutov  <dgutov@yandex.ru>
24153         Make vc-git-working-revision always return the commit hash
24154         * lisp/vc/vc-git.el (vc-git-working-revision):
24155         Return the commit hash (bug#21383).
24156         (vc-git--symbolic-ref): New function, extracted from above.
24157         (vc-git-mode-line-string): Use it.
24159 2015-09-01  K. Handa  <handa@gnu.org>
24161         Use the new type MFLTGlyphFT for MFLTGlyphString.glyphs
24162         * src/ftfont.c (MFLTGlyphFT): New type.
24163         (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_drive_otf)
24164         (ftfont_shape_by_flt): Make MFLTGlyphFT the actual type of
24165         elements in the array MFLTGlyphString.glyphs.
24167 2015-09-01  Stephen Leake  <stephen_leake@stephe-leake.org>
24169         Improve comments in elisp-mode.el, elisp-mode-tests.el
24170         * lisp/progmodes/elisp-mode.el: Clean up FIXMEs, comments.
24172         Delete Emacs 25 test in mode-local.el
24173         * lisp/cedet/mode-local.el (describe-mode-local-overload):
24174         Fix missed an edit in previous commit.
24176         Show all known mode-local overrides in *Help*
24177         * lisp/cedet/mode-local.el (describe-mode-local-overload):
24178         Assume Emacs 25. Add all known mode-local overrides.
24180 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
24182         * lisp/gnus/gnus-sum.el (gnus-summary-search-article):
24183         Ensure that the article where the search word is found is displayed
24184         and pointed to in the summary buffer.
24186 2015-08-31  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
24188         * lisp/newcomment.el (comment-dwim): Use `use-region-p'.
24189         When the region is active, but is empty (length 0), act as though
24190         the region was not active; that is, put a comment at the end of
24191         the line.  (Bug#21119)
24193 2015-08-31  Katsumi Yamaoka  <yamaoka@jpl.org>
24195         Port tls.el to older Emacs
24196         * lisp/net/tls.el (tls-format-message):
24197         Alias to format-message, or format if not available.
24198         (open-tls-stream): Use it.
24200 2015-08-31  Rüdiger Sonderfeld  <ruediger@c-plusplus.net>
24202         hideif.el: Recognize .h++ as C++ header
24203         * lisp/progmodes/hideif.el (hide-ifdef-header-regexp): Add .h++.
24205         isearch: Document character folding mode
24206         * lisp/isearch.el (isearch-forward):
24207         Mention `isearch-toggle-character-fold' in doc string.
24209 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
24211         Quoting fixes in ERC and Eshell
24212         * lisp/erc/erc-autoaway.el (erc-autoaway-set-away):
24213         * lisp/erc/erc-backend.el (define-erc-response-handler):
24214         * lisp/erc/erc-fill.el (erc-fill-static-center):
24215         * lisp/eshell/em-dirs.el (eshell-save-some-last-dir):
24216         * lisp/eshell/em-glob.el (eshell-glob-entries):
24217         * lisp/eshell/em-hist.el (eshell-save-some-history):
24218         * lisp/eshell/em-unix.el (eshell-remove-entries, eshell/rm)
24219         (eshell-shuffle-files):
24220         * lisp/eshell/esh-cmd.el (eshell-do-eval):
24221         * lisp/eshell/esh-proc.el (eshell-process-interact)
24222         (eshell-query-kill-processes):
24223         Respect ‘text-quoting-style’ in diagnostics and doc strings.
24225         Quoting fixes in Gnus
24226         * lisp/gnus/gnus-agent.el:
24227         (gnus-agent-possibly-synchronize-flags-server):
24228         * lisp/gnus/gnus-art.el (gnus-article-browse-delete-temp-files):
24229         * lisp/gnus/gnus-eform.el (gnus-edit-form):
24230         * lisp/gnus/gnus-group.el (gnus-group-edit-group)
24231         (gnus-group-nnimap-edit-acl):
24232         * lisp/gnus/gnus-topic.el (gnus-topic-edit-parameters):
24233         * lisp/gnus/mail-source.el (mail-source-delete-old-incoming):
24234         * lisp/gnus/message.el (message-strip-subject-encoded-words)
24235         (message-check-recipients, message-send-form-letter):
24236         * lisp/gnus/mm-decode.el (mm-display-part):
24237         * lisp/gnus/mm-uu.el (mm-uu-pgp-signed-extract-1):
24238         * lisp/gnus/mml-smime.el (mml-smime-get-dns-cert)
24239         (mml-smime-get-ldap-cert):
24240         * lisp/gnus/spam-report.el (spam-report-process-queue):
24241         Respect ‘text-quoting-style’ in diagnostics.
24242         * lisp/gnus/gnus-art.el (article-display-face)
24243         * lisp/gnus/gnus-fun.el (gnus-display-x-face-in-from):
24244         Use straight quoting in email.
24245         * lisp/gnus/rfc2231.el (rfc2231-decode-encoded-string):
24246         Escape apostrophes in doc strings.
24248         Quoting fixes in lisp mail, mh-e, net, url
24249         * lisp/mail/emacsbug.el (report-emacs-bug)
24250         (report-emacs-bug-hook): Use straight quotes in outgoing email,
24251         * lisp/mail/feedmail.el (feedmail-message-action-help-blat):
24252         * lisp/mail/rmail.el (rmail-unknown-mail-followup-to):
24253         * lisp/mail/rmailout.el (rmail-output-read-file-name):
24254         * lisp/net/imap.el (imap-interactive-login):
24255         * lisp/net/tls.el (open-tls-stream):
24256         * lisp/url/url-auth.el (url-register-auth-scheme):
24257         Respect ‘text-quoting-style’ in diagnostics.
24258         * lisp/mh-e/mh-e.el (mh-sortm-args):
24259         Quote docstring example using text quotes, not as a Lisp quote.
24261 2015-08-31  Stephen Leake  <stephen_leake@stephe-leake.org>
24263         Fix some byte-compiler warnings in EDE
24264         This fixes a bug that caused ede-generic-new-autoloader to overwrite the
24265         existing autoloader list, rather than add to it.
24266         * lisp/cedet/ede/auto.el (ede-project-class-files): Delete obsolete name
24267         argument to eieio class constructor.
24268         (ede-show-supported-projects): New.
24269         (ede-add-project-autoload): Replace obsolete `eieio-object-name-string'
24270         with (oref ... name).
24271         (ede-auto-load-project): Use slot name, not initarg key.
24272         * lisp/cedet/ede/generic.el (ede-generic-load)
24273         (ede-generic-find-matching-target): Use slot name, not initarg key.
24274         (ede-find-target): Use oref-default on class name.
24275         (ede-generic-new-autoloader): Delete obsolete name argument to eieio
24276         class constructor.
24277         (ede-enable-generic-projects): Make project type names unique.
24279 2015-08-31  Eli Zaretskii  <eliz@gnu.org>
24281         Fix directory accessibility tests for w32 network volumes
24282         * src/w32.c (faccessat): Don't fail with network volumes without a
24283         share.
24284         (w32_accessible_directory_p): Handle network volumes without a
24285         share.
24287         Fix handling long file names in readdir on MS-Windows
24288         * src/w32.c (sys_readdir): Append "\*" to the directory after
24289         converting it to UTF-16/ANSI, not before, to avoid overflowing the
24290         260-character limit on file names in filename_to_utf16/ansi.
24292         Make file-accessible-directory-p reliable on MS-Windows
24293         * src/w32.c (w32_accessible_directory_p): New function.
24294         * src/w32.h (w32_accessible_directory_p): Add prototype.
24295         * src/fileio.c (file_accessible_directory_p) [WINDOWSNT]: Call
24296         w32_accessible_directory_p to test a directory for accessibility
24297         by the current user.  (Bug#21346)
24298         (Ffile_accessible_directory_p): Remove the w32 specific caveat
24299         from the doc string.
24301 2015-08-31  Martin Rudalics  <rudalics@gmx.at>
24303         Don't call do_pending_window_change in signal handlers (Bug#21380)
24304         * src/gtkutil.c (xg_frame_resized):
24305         * src/xterm.c (x_set_window_size):
24306         * src/w32term.c (x_set_window_size): Don't call
24307         do_pending_window_change.
24309 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
24311         Quoting fixes in lisp/org
24312         * lisp/org/org-agenda.el (org-search-view, org-todo-list)
24313         (org-tags-view):
24314         * lisp/org/org-capture.el (org-capture-mode)
24315         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
24316         (org-ctags-ask-append-topic):
24317         * lisp/org/org.el (org-time-string-to-time)
24318         (org-time-string-to-absolute):
24319         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
24320         (org-ctags-ask-append-topic):
24321         * lisp/org/org.el (org-time-string-to-time)
24322         (org-time-string-to-absolute):
24323         Respect ‘text-quoting-style’ in diagnostics.
24324         * lisp/org/org-agenda.el (org-agenda-custom-commands)
24325         (org-agenda-dim-blocked-tasks): Plural of TODO is TODOs, not TODO’s.
24326         * lisp/org/org-capture.el (org-capture-fill-template):
24327         Avoid contraction in output file that might be ASCII.
24328         * lisp/org/org-compat.el (format-message):
24329         Define if not already defined, for backward compatibility.
24330         * lisp/org/org-src.el (org-edit-src-save):
24331         * lisp/org/org.el (org-cycle, org-ctrl-c-ctrl-c):
24332         Escape apostrophes in diagnostics.
24334         Treat “instead” strings as docstrings
24335         * lisp/emacs-lisp/bytecomp.el (byte-compile-form):
24336         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
24337         Substitute quotes in instead strings.
24339 2015-08-31  Nicolas Petton  <nicolas@petton.fr>
24341         Better documentation of seq-let
24342         * doc/lispref/sequences.texi (Sequence Functions): Rephrase the
24343         documentation of seq-let.
24345 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
24347         * lisp/international/ccl.el: Fix quoting.
24349         Quoting fixes in lisp/international and lisp/leim
24350         * lisp/international/ccl.el (ccl-dump, ccl-dump-call):
24351         * lisp/international/ja-dic-utl.el (skkdic-lookup-key):
24352         * lisp/international/mule-cmds.el:
24353         (select-safe-coding-system-interactively, leim-list-file-name):
24354         * lisp/international/quail.el (quail-use-package, quail-help):
24355         * lisp/international/titdic-cnv.el (tit-process-header)
24356         (miscdic-convert):
24357         Respect text quoting style in doc strings and diagnostics.
24358         * lisp/international/quail.el (lisp/international/quail.el):
24359         * lisp/leim/quail/ethiopic.el ("ethiopic"):
24360         Escape apostrophes in doc strings.
24362         Make ‘text-quoting-style’ a plain defvar
24363         It doesn’t need customization, as it’s likely useful only by experts.
24364         Suggested by Stefan Monnier in:
24365         https://lists.gnu.org/r/emacs-devel/2015-08/msg01020.html
24366         * lisp/cus-start.el: Remove doc.c section for builtin customized vars.
24368         Quoting fixes in lisp/textmodes
24369         * lisp/textmodes/bibtex.el (bibtex-validate)
24370         (bibtex-validate-globally, bibtex-search-entries):
24371         * lisp/textmodes/ispell.el (ispell-command-loop):
24372         * lisp/textmodes/page-ext.el (search-pages, pages-directory):
24373         * lisp/textmodes/texinfmt.el (texinfmt-version)
24374         (texinfo-format-region, texinfo-format-buffer-1):
24375         * lisp/textmodes/two-column.el (2C-split):
24376         Respect text quoting style in doc strings and diagnostics.
24377         * lisp/textmodes/conf-mode.el (conf-mode-map, conf-quote-normal):
24378         * lisp/textmodes/sgml-mode.el (sgml-specials, sgml-mode):
24379         Escape apostrophes in doc strings.
24381         Documentation fixes re quotes
24382         Prefer curved quotes in examples if users will typically see
24383         curved quotes when the examples run.
24384         Mention format-message when appropriate.
24385         Don’t use @code in examples.
24386         Quote an apostrophe with @kbd.
24388         Quoting fixes in lisp/progmodes
24389         * lisp/progmodes/cc-engine.el (c-bos-report-error):
24390         * lisp/progmodes/cpp.el (cpp-edit-reset):
24391         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
24392         * lisp/progmodes/etags.el (etags-tags-apropos-additional)
24393         (etags-tags-apropos, list-tags, tags-apropos):
24394         * lisp/progmodes/executable.el (executable-set-magic):
24395         * lisp/progmodes/octave.el (octave-sync-function-file-names)
24396         (octave-help, octave-find-definition-default-filename)
24397         (octave-find-definition):
24398         Respect text quoting style in doc strings and diagnostics.
24399         * lisp/progmodes/cc-langs.el (c-populate-syntax-table):
24400         * lisp/progmodes/verilog-mode.el (verilog-auto-reset-widths):
24401         * lisp/progmodes/vhdl-mode.el (vhdl-electric-quote):
24402         Escape apostrophes in doc strings.
24403         * lisp/progmodes/cmacexp.el (c-macro-expansion):
24404         Use straight quoting in ASCII comment.
24405         * lisp/progmodes/idlwave.el (idlwave-auto-fill-split-string)
24406         (idlwave-pad-keyword):
24407         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate)
24408         (vhdl-electric-open-bracket, vhdl-electric-close-bracket):
24409         (vhdl-electric-semicolon, vhdl-electric-comma)
24410         (vhdl-electric-period, vhdl-electric-equal):
24411         Use directed quotes in diagnostics and doc strings.
24413 2015-08-30  Xue Fuqiao  <xfq.free@gmail.com>
24415         Minor documentation and NEWS tweak
24416         * doc/lispintro/emacs-lisp-intro.texi (fwd-para let):
24417         Add an index entry.
24418         * etc/NEWS: Fix a typo in character-fold-to-regexp.
24420 2015-08-30  Michael Albinus  <michael.albinus@gmx.de>
24422         * lisp/net/tramp-sh.el (tramp-convert-file-attributes):
24423         Revert patch from 2015-08-24.  Tramp shall behave like for local files.
24424         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
24425         Adapt test.
24427 2015-08-30  Paul Eggert  <eggert@cs.ucla.edu>
24429         Text quoting fixes in cedet, emulation, emacs-lisp
24430         * lisp/cedet/ede.el (ede-check-project-directory):
24431         * lisp/cedet/semantic/analyze/debug.el
24432         (semantic-analyzer-debug-insert-include-summary):
24433         * lisp/cedet/semantic/bovine/c.el (semantic-c-describe-environment):
24434         * lisp/cedet/semantic/decorate/include.el
24435         (semantic-decoration-unknown-include-describe)
24436         (semantic-decoration-all-include-summary):
24437         * lisp/cedet/semantic/ia.el (semantic-ia-fast-jump):
24438         * lisp/emulation/edt.el (edt-load-keys):
24439         * lisp/emulation/viper-cmd.el
24440         (viper-display-current-destructive-command)
24441         (viper-query-replace, viper-brac-function):
24442         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-compile):
24443         * lisp/emulation/viper-macs.el (viper-unrecord-kbd-macro):
24444         Respect text quoting style in doc string or diagnostic.
24445         * lisp/cedet/mode-local.el (describe-mode-local-overload):
24446         Use format-message to avoid overtranslating quotes.
24447         * lisp/emacs-lisp/checkdoc.el (checkdoc-in-sample-code-p):
24448         Escape an apostrophe in a docstring.
24449         * lisp/emacs-lisp/warnings.el (lwarn): Fix doc string.
24451 2015-08-29  Daniel Colascione  <dancol@dancol.org>
24453         Fix which-func for curly quotes: look for symbol, not message
24454         * lisp/progmodes/which-func.el (which-func-ff-hook): Look for new
24455         imenu-unavailable error symbol instead of trying to match message
24456         exactly.
24457         * lisp/imenu.el (imenu-unavailable): New error.
24458         (imenu-unavailable-error): New function.
24460 2015-08-29  Eli Zaretskii  <eliz@gnu.org>
24462         Fix Python tests on MS-Windows
24463         * test/automated/python-tests.el
24464         (python-shell-calculate-command-1): Run python-shell-interpreter
24465         through shell-quote-argument before comparing with what
24466         python-shell-calculate-command returns.
24467         (python-shell-calculate-pythonpath-1)
24468         (python-shell-calculate-pythonpath-2)
24469         (python-shell-calculate-process-environment-2): Use path-separator
24470         instead of a literal ':'.
24471         (python-shell-calculate-exec-path-2)
24472         (python-shell-calculate-exec-path-3)
24473         (python-shell-calculate-exec-path-4)
24474         (python-shell-with-environment-1)
24475         (python-shell-with-environment-2): Run "/env/bin" through
24476         expand-file-name before comparing with exec-path.  (Bug#21375)
24478 2015-08-29  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
24480         Use Core Text types/functions/variables/enumerators directly
24481         * src/macfont.h (FontDescriptorRef, FontRef, FontSymbolicTraits)
24482         (CharacterCollection): Remove typedefs.  All uses replaced with
24483         definitions.
24484         (MAC_FONT_NAME_ATTRIBUTE, MAC_FONT_FAMILY_NAME_ATTRIBUTE)
24485         (MAC_FONT_TRAITS_ATTRIBUTE, MAC_FONT_SIZE_ATTRIBUTE)
24486         (MAC_FONT_CASCADE_LIST_ATTRIBUTE)
24487         (MAC_FONT_CHARACTER_SET_ATTRIBUTE, MAC_FONT_LANGUAGES_ATTRIBUTE)
24488         (MAC_FONT_FORMAT_ATTRIBUTE, MAC_FONT_SYMBOLIC_TRAIT)
24489         (MAC_FONT_WEIGHT_TRAIT, MAC_FONT_WIDTH_TRAIT)
24490         (MAC_FONT_SLANT_TRAIT): Remove macros.  All uses replaced with
24491         definitions.
24492         (MAC_FONT_TRAIT_ITALIC, MAC_FONT_TRAIT_BOLD)
24493         (MAC_FONT_TRAIT_MONO_SPACE, MAC_FONT_TRAIT_COLOR_GLYPHS)
24494         (MAC_FONT_FORMAT_BITMAP)
24495         (MAC_CHARACTER_COLLECTION_IDENTITY_MAPPING)
24496         (MAC_CHARACTER_COLLECTION_ADOBE_JAPAN1): Remove enumerators.
24497         All uses replaced with definitions.
24498         (kCTFontTraitItalic, kCTFontTraitBold, kCTFontTraitMonoSpace)
24499         (kCTFontTraitColorGlyphs, kCTCharacterCollectionIdentityMapping)
24500         (kCTCharacterCollectionAdobeJapan1 kCTFontOrientationDefault):
24501         Add compatibility enumerators for older versions.
24502         (mac_font_descriptor_create_with_attributes)
24503         (mac_font_descriptor_create_matching_font_descriptors)
24504         (mac_font_descriptor_create_matching_font_descriptor)
24505         (mac_font_descriptor_copy_attribute)
24506         (mac_font_descriptor_supports_languages)
24507         (mac_font_create_with_name, mac_font_get_size)
24508         (mac_font_copy_family_name, mac_font_copy_character_set)
24509         (mac_font_get_glyphs_for_characters, mac_font_get_ascent)
24510         (mac_font_get_descent, mac_font_get_leading)
24511         (mac_font_get_underline_position)
24512         (mac_font_get_underline_thickness, mac_font_copy_graphics_font)
24513         (mac_font_copy_non_synthetic_table): Remove macros.  All uses
24514         replaced with definitions.
24515         (mac_font_create_preferred_family_for_attributes)
24516         (mac_font_get_advance_width_for_glyph)
24517         (mac_font_get_bounding_rect_for_glyph)
24518         (mac_font_create_available_families, mac_font_shape):
24519         Remove macros for renamed functions.
24520         (mac_nsctfont_copy_font_descriptor): Remove unused macro.
24521         * src/macfont.m (mac_font_descriptor_supports_languages):
24522         Rename from mac_ctfont_descriptor_supports_languages.
24523         (mac_font_create_preferred_family_for_attributes): Rename from
24524         mac_ctfont_create_preferred_family_for_attributes.
24525         (mac_font_get_advance_width_for_glyph): Rename from
24526         mac_ctfont_get_advance_width_for_glyph.
24527         Use kCTFontOrientationDefault also for older versions.
24528         (mac_font_get_bounding_rect_for_glyph): Rename from
24529         mac_ctfont_get_bounding_rect_for_glyph.
24530         Use kCTFontOrientationDefault also for older versions.
24531         (mac_font_create_available_families): Rename from
24532         mac_ctfont_create_available_families.
24533         (mac_font_equal_in_postscript_name): Rename from
24534         mac_ctfont_equal_in_postscript_name.  All uses changed.
24535         (mac_font_create_line_with_string_and_font): Rename from
24536         mac_ctfont_create_line_with_string_and_font.  All uses changed.
24537         (mac_font_shape): Rename from mac_ctfont_shape.
24538         (mac_font_family_compare): Remove unused declaration.
24540 2015-08-29  Paul Eggert  <eggert@cs.ucla.edu>
24542         Fix minor text quoting in calc, calendar, vc
24543         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
24544         * lisp/calc/calc-help.el (calc-j-prefix-help):
24545         * lisp/calc/calc-misc.el (calc-help):
24546         * lisp/calc/calc.el (calc-algebraic-mode, calc-mode):
24547         Escape an apostrophe in a docstring.
24548         * lisp/calc/calc-forms.el (calc-hms-notation):
24549         * lisp/calc/calc-mode.el (calc-display-raw, calc-algebraic-mode):
24550         Escape an apostrophe in a diagnostic.
24551         * lisp/calc/calc-misc.el (calc-help):
24552         * lisp/calendar/diary-lib.el (diary-include-files):
24553         * lisp/calendar/todo-mode.el (todo-prefix, todo-item-mark):
24554         * lisp/vc/diff-mode.el (diff-delete-trailing-whitespace):
24555         * lisp/vc/ediff-diff.el (ediff-same-contents):
24556         * lisp/vc/ediff-merg.el (ediff-re-merge):
24557         * lisp/vc/ediff-ptch.el (ediff-patch-file-internal):
24558         * lisp/vc/ediff-util.el (ediff-test-save-region)
24559         (ediff-status-info):
24560         * lisp/vc/ediff.el (ediff-merge-revisions)
24561         (ediff-merge-revisions-with-ancestor):
24562         * lisp/vc/pcvs.el (cvs-mode-checkout, cvs-vc-command-advice):
24563         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
24564         Respect text quoting style in doc string or diagnostic.
24565         * lisp/calc/calc-prog.el (calc-kbd-push, calc-kbd-pop):
24566         * lisp/vc/add-log.el (change-log-goto-source):
24567         Avoid double-formatting.
24568         * lisp/vc/ediff-init.el (format-message):
24569         New backward-compatibility alias.
24571 2015-08-28  Paul Eggert  <eggert@cs.ucla.edu>
24573         Fix minor text quoting problems in lisp top level
24574         * lisp/apropos.el (apropos-describe-plist):
24575         * lisp/cus-theme.el (customize-themes):
24576         * lisp/dired.el (dired-log):
24577         * lisp/help-fns.el (describe-variable):
24578         * lisp/hexl.el (hexl-insert-multibyte-char):
24579         * lisp/info.el (Info-finder-find-node):
24580         * lisp/json.el (json-read-string):
24581         * lisp/novice.el (disabled-command-function)
24582         (disabled-command-function):
24583         * lisp/startup.el (normal-mouse-startup-screen):
24584         * lisp/woman.el (WoMan-log, WoMan-warn):
24585         Respect text quoting style in doc string or diagnostic.
24586         * lisp/replace.el (replace-character-fold):
24587         * src/syntax.c (Fmodify_syntax_entry):
24588         Escape an apostrophe in a docstring.
24589         * lisp/tempo.el (tempo-define-template):
24590         Remove confusing apostrophe from docstring.
24591         * lisp/whitespace.el (whitespace-mark-x):
24592         Use directed quotes in docstring.
24594 2015-08-28  Simen Heggestøyl  <simenheg@gmail.com>
24596         Fix indentation rule in css-mode
24597         * lisp/textmodes/css-mode.el (css-smie-rules): Fix indentation of
24598         brackets in presence of pseudo-selectors.  (Bug#21328)
24600 2015-08-28  Eli Zaretskii  <eliz@gnu.org>
24602         Fix a bug in recording a macro while flyspell-mode is active
24603         * lisp/subr.el (sit-for): Don't call read-event when recording a
24604         macro.  (Bug#21329)
24606 2015-08-27  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
24608         Tweak startup screen quoting
24609         * lisp/startup.el (normal-splash-screen): Use standard
24610         "M-" abbrevation rather than a confusingly-different one.
24611         (normal-no-mouse-startup-screen): Follow ‘text-quoting-style’.
24613 2015-08-27  Paul Eggert  <eggert@cs.ucla.edu>
24615         Add test case for ‘format’ bug and refactor
24616         * src/editfns.c (styled_format): Refactor internally, mostly by
24617         moving declarations closer to uses.  This should not affect behavior.
24618         * test/automated/textprop-tests.el (textprop-tests-format): New test.
24620         Fix ‘format’ bug with property offsets
24621         * src/editfns.c (styled_format): Fix recently-introduced ‘format’
24622         bug in calculating string property offsets (Bug#21351).
24624         Use straight quotes in lib-src diagnostics
24625         These auxiliary programs can’t use Emacs’s text-quoting-style,
24626         and it’s too much trouble to redo that mechanism by hand.
24627         So just use straight quotes for now.
24628         * lib-src/ebrowse.c (main):
24629         * lib-src/emacsclient.c (decode_options, main):
24630         * lib-src/etags.c (Ada_help, default_C_help, Cplusplus_help)
24631         (Forth_help, HTML_help, Lisp_help, Makefile_help, Objc_help)
24632         (Perl_help, PHP_help, Python_help, Scheme_help, TeX_help, auto_help)
24633         (none_help, print_language_names, print_help, add_regex)
24634         (suggest_asking_for_help):
24635         * lib-src/make-docfile.c (write_c_args, scan_c_stream):
24636         Use straight quotes in diagnostics.
24638         ‘text-quoting-style’ fixes for admin
24639         * admin/admin.el (cusver-scan, cusver-check):
24640         * admin/authors.el (authors-canonical-file-name):
24641         * admin/bzrmerge.el (bzrmerge-missing):
24642         Respect ‘text-quoting-style’ in diagnostics.
24644 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
24646         Assume GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS
24647         This removes the need for GCPRO1 etc.  Suggested by Stefan Monnier in:
24648         https://lists.gnu.org/r/emacs-devel/2015-08/msg00918.html
24649         * doc/lispref/internals.texi (Writing Emacs Primitives):
24650         * etc/NEWS:
24651         Document the change.
24652         * src/alloc.c (gcprolist, dump_zombies, MAX_ZOMBIES, zombies)
24653         (nzombies, ngcs, avg_zombies, max_live, max_zombies, avg_live)
24654         (Fgc_status, check_gcpros, relocatable_string_data_p, gc-precise):
24655         * src/bytecode.c (mark_byte_stack) [BYTE_MARK_STACK]:
24656         * src/eval.c (gcpro_level) [DEBUG_GCPRO]:
24657         * src/lisp.h (struct handler.gcpro, struct gcpro, GC_MARK_STACK)
24658         (GC_USE_GCPROS_AS_BEFORE, GC_MAKE_GCPROS_NOOPS)
24659         (GC_MARK_STACK_CHECK_GCPROS, GC_USE_GCPROS_CHECK_ZOMBIES)
24660         (BYTE_MARK_STACK, GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5, GCPRO6)
24661         (GCPRO7, UNGCPRO, RETURN_UNGCPRO):
24662         Remove.  All uses removed.  The code now assumes
24663         GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS.
24664         * src/bytecode.c (relocate_byte_stack):
24665         Rename from unmark_byte_stack, since it now only relocates.
24666         All callers changed.
24667         * src/frame.c (make_frame): Add an IF_LINT to pacify GCC 5.2
24668         with GCPROs removed.
24669         * src/systime.h: Use EMACS_LISP_H as the canary instead of GCPRO1.
24670         * test/automated/finalizer-tests.el (finalizer-basic)
24671         (finalizer-circular-reference, finalizer-cross-reference)
24672         (finalizer-error):
24673         * test/automated/generator-tests.el (cps-test-iter-close-finalizer):
24674         Remove tests, as they depend on gc-precise.
24676 2015-08-26  Nicolas Petton  <nicolas@petton.fr>
24678         Improve seq-concatenate for new sequence types
24679         Use the new `seq-into-sequence' in seqs passed to `seq-concatenate' to
24680         ensure that concatenation happens on sequences only.  This makes it
24681         possible to use `seq-concatenate' for new types of seqs.
24682         * lisp/emacs-lisp/seq.el (seq-into-sequence, seq-concatenate):
24683         New function used in `seq-concatenate'.
24684         * test/automated/seq-tests.el (test-seq-into-sequence): New unit test
24685         for seq-into-sequence.
24687 2015-08-26  Stephen Leake  <stephen_leake@stephe-leake.org>
24689         Add mode local overrides to xref-find-definitions
24690         * lisp/cedet/mode-local.el (xref-mode-local--override-present)
24691         (xref-mode-local-overload): New; add mode local overrides to
24692         xref-find-definitions.
24693         * test/automated/elisp-mode-tests.el: Add mode local override tests.
24694         (xref-elisp-test-run): Handle indented defuns.
24695         (xref-elisp-generic-*): Improve doc strings.
24696         * lisp/progmodes/elisp-mode.el (elisp-xref-find-def-functions): New.
24697         (elisp--xref-find-definitions): Use it.
24699         Add mode local overrides to describe-function
24700         * lisp/cedet/mode-local.el (describe-mode-local-overload):
24701         New; add mode local overrides to describe-function.
24702         * etc/NEWS: Document change.
24704 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
24706         Prefer straight quoting in some etc text files
24707         These files are plain text and might be used by non-Emacs apps.
24708         They’re mostly ASCII, so just use straight quotes.
24710         Fix quoting in ‘message_with_string’
24711         * src/nsfont.m (nsfont_open): Use directed quotes in format; they
24712         should work now.
24713         * src/xdisp.c (message_to_stderr): New function, refactored from
24714         part of ‘message3_nolog’.
24715         (message3_nolog): Use it.
24716         (message_with_string): Use it.  Don’t mishandle NUL bytes when
24717         noninteractive.  Prefer AUTO_STRING when it’s most likely faster.
24718         Use ‘format-message’, not ‘format’, so that quotes are translated.
24720 2015-08-26  Eli Zaretskii  <eliz@gnu.org>
24722         Mention false positives of file-accessible-directory on w32
24723         * src/fileio.c (Ffile_accessible_directory_p): Doc fix.
24724         (Bug#21346)
24726 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
24728         Treat error strings as help
24729         * src/print.c (print_error_message): Translate quotes and command
24730         keys in errmsg so that users see, e.g., "Symbol’s value as
24731         variable is void: foo" when text-quoting-style is curved.
24733 2015-08-26  Michael Albinus  <michael.albinus@gmx.de>
24735         * lisp/net/tramp-cache.el (top): Use `message', not `format-message'.
24737 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
24739         Top-level elisp files respect ‘text-quoting-style’
24740         In top-level elisp files, use format-message in diagnostic formats,
24741         so that they follow user preference as per ‘text-quoting-style’
24742         rather than being hard-coded to quote `like this'.
24743         * lisp/allout.el (allout-get-configvar-values):
24744         * lisp/apropos.el (apropos-symbols-internal):
24745         * lisp/dired-aux.el (dired-do-shell-command, dired-create-files)
24746         (dired-do-create-files-regexp, dired-create-files-non-directory):
24747         * lisp/dired-x.el (dired-do-run-mail):
24748         * lisp/dired.el (dired-log, dired-dnd-handle-local-file):
24749         * lisp/disp-table.el (standard-display-european):
24750         * lisp/find-dired.el (find-dired):
24751         * lisp/forms.el (forms-mode):
24752         * lisp/ido.el (ido-buffer-internal):
24753         * lisp/info.el (Info-index-next):
24754         * lisp/outline.el (outline-invent-heading):
24755         * lisp/printing.el (pr-ps-outfile-preprint, pr-i-ps-send):
24756         * lisp/proced.el (proced-log):
24757         * lisp/ps-print.el (ps-print-preprint, ps-get-size):
24758         * lisp/recentf.el (recentf-open-files, recentf-save-list):
24759         * lisp/savehist.el (savehist-save):
24760         * lisp/server.el (server-ensure-safe-dir):
24761         * lisp/ses.el (ses-rename-cell):
24762         * lisp/simple.el (list-processes--refresh):
24763         * lisp/startup.el (command-line):
24764         * lisp/strokes.el (strokes-unset-last-stroke)
24765         (strokes-execute-stroke):
24766         Use format-message so that quotes are restyled.
24767         * lisp/cus-edit.el (custom-raised-buttons, customize-browse):
24768         Don’t quote ‘raised’.
24769         * lisp/descr-text.el (describe-char):
24770         * lisp/dirtrack.el (dirtrack-debug-message):
24771         * lisp/hexl.el (hexl-insert-multibyte-char):
24772         Apply substitute-command-keys to help string.
24773         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
24774         (wdired-do-perm-changes):
24775         Let dired-log do the formatting.
24777 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
24779         Go back to grave quoting in Tramp
24780         * lisp/net/tramp-adb.el:
24781         * lisp/net/tramp-cache.el:
24782         * lisp/net/tramp-compat.el:
24783         * lisp/net/tramp-gvfs.el:
24784         * lisp/net/tramp-gw.el:
24785         * lisp/net/tramp-sh.el:
24786         * lisp/net/tramp-smb.el:
24787         * lisp/net/tramp.el:
24788         Stick with grave quoting in diagnostics strings.  This is more
24789         portable to older Emacs, desirable for Tramp.
24790         * lisp/net/tramp-cache.el: Use ‘format-message’, not ‘format’,
24791         for diagnostic that needs requoting.
24792         * lisp/net/tramp-compat.el (format-message):
24793         Fall back on simple ‘format’, since that’s good enough now.
24795         Go back to grave quoting in Gnus
24796         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
24797         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
24798         (gnus-agent-fetch-headers):
24799         * lisp/gnus/gnus-int.el (gnus-start-news-server):
24800         * lisp/gnus/gnus-registry.el:
24801         (gnus-registry--split-fancy-with-parent-internal)
24802         (gnus-registry-post-process-groups):
24803         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
24804         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
24805         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
24806         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
24807         * lisp/gnus/spam.el (spam-check-blackholes):
24808         Stick with grave quoting in diagnostics strings.  This is more
24809         portable to older Emacs, desirable for Gnus.
24811         Fix customization of text-quoting-style
24812         * lisp/cus-edit.el (custom-guess-type, custom-variable-documentation):
24813         * lisp/wid-edit.el (widget-docstring):
24814         Get raw docstring here since it’s cooked later and should not be
24815         cooked twice.
24816         * lisp/cus-edit.el (custom-group-value-create):
24817         Cook the docstring before inserting it.
24818         * lisp/cus-start.el (text-quoting-style): Quote the customization
24819         docstrings according to the new rules.  Give curved examples.
24821         format-message now curves ` and '
24822         That way, the caller doesn’t have to use curved quotes to
24823         get diagnostics that match the text-quoting-style preferences.
24824         Suggested by Dmitry Gutov in:
24825         https://lists.gnu.org/r/emacs-devel/2015-08/msg00893.html
24826         This means we no longer need %qs, so remove that format.
24827         While we’re at it, fix an unlikely bug and lessen the pressure
24828         on the garbage collector by processing the string once rather
24829         than twice in the usual case.
24830         * doc/lispref/strings.texi (Formatting Strings):
24831         * etc/NEWS: Document this.
24832         * lisp/subr.el (format-message): Remove; now done in C.
24833         * src/callint.c (Fcall_interactively):
24834         * src/editfns.c (Fmessage, Fmessage_box):
24835         Use Fformat_message instead of Finternal__text_restyle
24836         followed by Fformat.
24837         * src/doc.c (LSQM, RSQM): Remove; all uses changed to use
24838         uLSQM and uRSQM.
24839         (Fsubstitute_command_keys): Prefer AUTO_STRING to build_string
24840         when pure ASCII now suffices.  Fix unlikely bug when parsing
24841         unibyte string containing non-ASCII bytes.  Use inline code
24842         rather than memcpy, as it’s a tiny number of bytes.
24843         (Finternal__text_restyle): Remove; no longer used.
24844         (syms_of_doc): Don’t declare it.
24845         * src/editfns.c (Fformat): Rewrite in terms of new function
24846         ‘styled_format’.
24847         (Fformat_message): New function, moved here from subr.el.
24848         (styled_format): New function, with the old guts of Fformat,
24849         except it now optionally transliterates quotes, and it transliterates
24850         traditional grave accent and apostrophe quoting as well.
24851         Remove recently-added q flag; no longer needed or used.
24852         (syms_of_editfns): Define format-message.
24853         * src/lisp.h (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
24854         Remove; no longer need to be global symbols.
24855         * src/xdisp.c (vadd_to_log): Use Fformat_message, not Fformat,
24856         so that callers can use `%s'.
24857         * src/image.c (image_size_error, xbm_load_image, xbm_load)
24858         (xpm_load, pbm_load, png_load_body, jpeg_load_body, tiff_load)
24859         (gif_load, imagemagick_load_image, imagemagick_load, svg_load)
24860         (svg_load_image, gs_load, x_kill_gs_process):
24861         * src/lread.c (load_warn_old_style_backquotes):
24862         * src/xfaces.c (load_pixmap):
24863         * src/xselect.c (x_clipboard_manager_error_1):
24864         Use `%s' instead of %qs in formats.
24866 2015-08-25  Eli Zaretskii  <eliz@gnu.org>
24868         Minor fixes in doc/emacs/search.texi
24869         * doc/emacs/search.texi (Basic Isearch): Fix a typo.
24870         (Special Isearch): Use @w{} to generate several consecutive spaces
24871         with Texinfo 6.  (Bug#21345)
24873 2015-08-25  Michael Albinus  <michael.albinus@gmx.de>
24875         * lisp/net/tramp-sh.el (tramp-awk-encode, tramp-awk-decode)
24876         (tramp-awk-coding-test): New defconsts.
24877         (tramp-remote-coding-commands): Use them.
24878         (tramp-find-inline-encoding): Check for Perl only if necessary.
24880 2015-08-25  Xue Fuqiao  <xfq.free@gmail.com>
24882         * doc/lispintro/emacs-lisp-intro.texi (Run a Program): Add some
24883         index entries for the special form `quote'.
24885 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
24887         Spelling fixes
24889         Gnus format-message typo fix
24890         * lisp/gnus/gnus-util.el (gnus-format-message):
24891         Fix typo when running in older Emacs.
24893         Prefer directed to neutral quotes in docstings and diagnostics.
24894         In docstrings, escape apostrophes that would otherwise be translated
24895         to curved quotes using the newer, simpler rules.
24896         * admin/unidata/unidata-gen.el (unidata-gen-table):
24897         * lisp/align.el (align-region):
24898         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet):
24899         * lisp/bookmark.el (bookmark-default-annotation-text):
24900         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
24901         * lisp/calc/calc-lang.el (math-read-giac-subscr)
24902         (math-read-math-subscr):
24903         * lisp/calc/calc-misc.el (report-calc-bug):
24904         * lisp/calc/calc-prog.el (calc-fix-token-name)
24905         (calc-read-parse-table-part):
24906         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
24907         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
24908         * lisp/dabbrev.el (dabbrev-expand):
24909         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
24910         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
24911         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
24912         * lisp/emulation/viper-cmd.el (viper-toggle-search-style):
24913         * lisp/erc/erc-button.el (erc-nick-popup):
24914         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login):
24915         * lisp/eshell/em-dirs.el (eshell/cd):
24916         * lisp/eshell/em-glob.el (eshell-glob-regexp):
24917         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
24918         * lisp/eshell/esh-arg.el (eshell-parse-arguments):
24919         * lisp/eshell/esh-opt.el (eshell-show-usage):
24920         * lisp/files-x.el (modify-file-local-variable):
24921         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer)
24922         (filesets-update-pre010505):
24923         * lisp/find-cmd.el (find-generic, find-to-string):
24924         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
24925         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
24926         (gnus-agent-fetch-headers):
24927         * lisp/gnus/gnus-int.el (gnus-start-news-server):
24928         * lisp/gnus/gnus-registry.el:
24929         (gnus-registry--split-fancy-with-parent-internal):
24930         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
24931         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
24932         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
24933         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
24934         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
24935         * lisp/gnus/spam.el (spam-check-blackholes):
24936         * lisp/mail/feedmail.el (feedmail-run-the-queue):
24937         * lisp/mpc.el (mpc-playlist-rename):
24938         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
24939         * lisp/net/mairix.el (mairix-widget-create-query):
24940         * lisp/net/tramp-cache.el:
24941         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
24942         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
24943         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
24944         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
24945         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
24946         (org-babel-goto-named-result):
24947         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
24948         * lisp/org/ob-ref.el (org-babel-ref-resolve):
24949         * lisp/org/org-agenda.el (org-agenda-prepare):
24950         * lisp/org/org-bibtex.el (org-bibtex-fields):
24951         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
24952         (org-clock-resolve):
24953         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
24954         * lisp/org/org-habit.el (org-habit-parse-todo):
24955         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
24956         (org-mouse-context-menu):
24957         * lisp/org/org-table.el (org-table-edit-formulas):
24958         * lisp/org/ox.el (org-export-async-start):
24959         * lisp/play/dunnet.el (dun-score, dun-help, dun-endgame-question)
24960         (dun-rooms, dun-endgame-questions):
24961         * lisp/progmodes/ada-mode.el (ada-goto-matching-start):
24962         * lisp/progmodes/ada-xref.el (ada-find-executable):
24963         * lisp/progmodes/antlr-mode.el (antlr-options-alists):
24964         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
24965         (flymake-start-syntax-check-process):
24966         * lisp/progmodes/python.el (python-define-auxiliary-skeleton):
24967         * lisp/progmodes/sql.el (sql-comint):
24968         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
24969         * lisp/server.el (server-get-auth-key):
24970         * lisp/subr.el (version-to-list):
24971         * lisp/textmodes/reftex-ref.el (reftex-label):
24972         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
24973         * lisp/vc/ediff-diff.el (ediff-same-contents):
24974         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
24975         * test/automated/tramp-tests.el (tramp-test33-asynchronous-requests):
24976         Use directed rather than neutral quotes in diagnostics.
24978         Treat ' like ’ even when not matching `
24979         This is simpler and easier to explain, and should encourage better
24980         typography.  Do this in Electric Quote mode and when translating
24981         quotes in docstrings.  Inspired by a suggestion by Dmitry Gutov in:
24982         https://lists.gnu.org/r/emacs-devel/2015-08/msg00806.html
24983         * doc/emacs/text.texi (Quotation Marks):
24984         * doc/lispref/help.texi (Keys in Documentation):
24985         * etc/NEWS:
24986         Document this.
24987         * lisp/electric.el (electric-quote-post-self-insert-function):
24988         * src/doc.c (Fsubstitute_command_keys):
24989         Always treat ' like ’ even when not matched by an open quote.
24991 2015-08-25  Glenn Morris  <rgm@gnu.org>
24993         * doc/emacs/cal-xtra.texi (Holiday Customizing): Fix typo in example.
24994         * lisp/calendar/holidays.el (calendar-holidays): Fix doc typo.
24996 2015-08-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
24998         * src/macfont.m (macfont_create_family_with_symbol):
24999         Accept localized names.
25001 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
25003         Tramp diagnostics as per ‘text-quoting-style’
25004         * lisp/net/tramp-adb.el (tramp-adb-handle-file-truename)
25005         (tramp-adb-get-ls-command, tramp-adb-handle-make-directory)
25006         (tramp-adb-handle-delete-directory)
25007         (tramp-adb-handle-delete-file)
25008         (tramp-adb-handle-file-local-copy)
25009         (tramp-adb-handle-write-region, tramp-adb-handle-copy-file)
25010         (tramp-adb-send-command-and-check, tramp-adb-wait-for-output)
25011         (tramp-adb-maybe-open-connection):
25012         * lisp/net/tramp-cache.el:
25013         * lisp/net/tramp-compat.el (tramp-compat-temporary-file-directory)
25014         (tramp-compat-octal-to-decimal)
25015         (tramp-compat-coding-system-change-eol-conversion):
25016         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler)
25017         (tramp-gvfs-do-copy-or-rename-file)
25018         (tramp-gvfs-handle-delete-directory)
25019         (tramp-gvfs-handle-delete-file)
25020         (tramp-gvfs-handle-expand-file-name)
25021         (tramp-gvfs-handle-file-local-copy)
25022         (tramp-gvfs-handle-file-notify-add-watch)
25023         (tramp-gvfs-handle-make-directory)
25024         (tramp-gvfs-handle-write-region, tramp-gvfs-url-file-name):
25025         * lisp/net/tramp-gw.el (tramp-gw-gw-proc-sentinel)
25026         (tramp-gw-aux-proc-sentinel, tramp-gw-open-connection):
25027         * lisp/net/tramp-sh.el (tramp-sh-handle-file-truename)
25028         (tramp-sh-handle-set-visited-file-modtime)
25029         (tramp-sh-handle-set-file-modes)
25030         (tramp-sh-handle-file-name-all-completions)
25031         (tramp-sh-handle-add-name-to-file, tramp-do-copy-or-rename-file)
25032         (tramp-do-copy-or-rename-file-directly)
25033         (tramp-do-copy-or-rename-file-out-of-band)
25034         (tramp-sh-handle-make-directory)
25035         (tramp-sh-handle-delete-directory, tramp-sh-handle-delete-file)
25036         (tramp-sh-handle-insert-directory, tramp-process-sentinel)
25037         (tramp-sh-handle-start-file-process)
25038         (tramp-sh-handle-file-local-copy)
25039         (tramp-sh-handle-write-region, tramp-sh-handle-vc-registered)
25040         (tramp-sh-handle-file-notify-add-watch, tramp-maybe-send-script)
25041         (tramp-find-file-exists-command, tramp-open-shell)
25042         (tramp-find-shell)
25043         (tramp-open-connection-setup-interactive-shell)
25044         (tramp-find-inline-encoding, tramp-find-inline-compress)
25045         (tramp-compute-multi-hops, tramp-maybe-open-connection)
25046         (tramp-wait-for-output, tramp-send-command-and-check)
25047         (tramp-send-command-and-read, tramp-get-remote-path)
25048         (tramp-get-ls-command, tramp-get-ls-command-with-dired)
25049         (tramp-get-ls-command-with-quoting-style)
25050         (tramp-get-test-command, tramp-get-remote-ln)
25051         (tramp-get-remote-perl, tramp-get-remote-stat)
25052         (tramp-get-remote-readlink, tramp-get-remote-trash)
25053         (tramp-get-remote-touch, tramp-get-remote-gvfs-monitor-dir)
25054         (tramp-get-remote-inotifywait, tramp-get-remote-id)
25055         (tramp-get-remote-python):
25056         * lisp/net/tramp-smb.el (tramp-smb-errors)
25057         (tramp-smb-handle-add-name-to-file, tramp-smb-handle-copy-file)
25058         (tramp-smb-handle-delete-directory)
25059         (tramp-smb-handle-delete-file)
25060         (tramp-smb-handle-file-local-copy)
25061         (tramp-smb-handle-make-directory)
25062         (tramp-smb-handle-make-directory-internal)
25063         (tramp-smb-handle-make-symbolic-link)
25064         (tramp-smb-handle-rename-file, tramp-smb-handle-set-file-acl)
25065         (tramp-smb-handle-set-file-modes)
25066         (tramp-smb-handle-write-region, tramp-smb-get-file-entries):
25067         * lisp/net/tramp.el (tramp-debug-message, tramp-error)
25068         (tramp-process-actions):
25069         Generate diagnostics according to ‘text-quoting-style’, by
25070         using curved quotes in format strings and ‘format-message’
25071         when appropriate.
25072         * lisp/net/tramp-compat.el (format-message):
25073         Define a replacement, if it’s an older version of Emacs
25074         that doesn’t have it already.
25076         * etc/NEWS: Clarify text-quoting-style and electric-quote-mode.
25078 2015-08-24  Xue Fuqiao  <xfq.free@gmail.com>
25080         Fix documentation for `save-excursion'
25081         * doc/lispref/positions.texi (Excursions):
25082         * doc/lispintro/emacs-lisp-intro.texi (save-excursion)
25083         (Template for save-excursion, Point and mark): `save-excursion'
25084         does not save&restore the mark any more.
25086 2015-08-24  Michael Albinus  <michael.albinus@gmx.de>
25088         * lisp/net/tramp-sh.el (tramp-stat-marker, tramp-stat-quoted-marker):
25089         New defconsts.
25090         (tramp-do-file-attributes-with-stat)
25091         (tramp-do-directory-files-and-attributes-with-stat): Use them.
25092         (tramp-convert-file-attributes): Remove double slashes in symlinks.
25093         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
25094         Handle symlinks with "//" in the file name.
25096         Revert fbb5531fa11d13854b274d28ccd329c9b6652cfc for tramp.el.
25098 2015-08-24  Nicolas Petton  <nicolas@petton.fr>
25100         Fix cl-subseq and cl-concatenate
25101         * lisp/emacs-lisp/cl-extra.el (cl-subseq, cl-concatenate): Do not use
25102         seq functions.
25103         * lisp/emacs-lisp/seq.el (seq-concatenate): Call cl-concatenate in
25104         seq-concatenate.
25106 2015-08-24  Pip Cet  <pipcet@gmail.com>  (tiny change)
25108         Fix full-screen code when there is no window manager (Bug#21317)
25109         * src/xterm.h (x_wm_supports): Declare external.
25110         * src/xterm.c (wm_suppports): Rename to `x_wm_supports', export.
25111         (do_ewmh_fullscreen, x_ewmh_activate_frame): Adjust for rename.
25112         (x_check_fullscreen): Call `x_wm_set_size_hint', restore
25113         `fullscreen' frame parameter.
25114         * src/gtkutil.c (x_wm_set_size_hint): Set size hints when running
25115         without a window manager.
25117 2015-08-24  Glenn Morris  <rgm@gnu.org>
25119         * lisp/version.el (emacs-version): No longer include build host.
25120         * doc/lispref/intro.texi (Version Info): Update example.
25122 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
25124         * doc/lispref/elisp.texi: Fix typo in previous change.
25126         More-conservative ‘format’ quote restyling
25127         Instead of restyling curved quotes for every call to ‘format’,
25128         create a new function ‘format-message’ that does the restyling,
25129         and using the new function instead of ‘format’ only in contexts
25130         where this seems appropriate.
25131         Problem reported by Dmitry Gutov and Andreas Schwab in:
25132         https://lists.gnu.org/r/emacs-devel/2015-08/msg00826.html
25133         https://lists.gnu.org/r/emacs-devel/2015-08/msg00827.html
25134         * doc/lispref/commands.texi (Using Interactive):
25135         * doc/lispref/control.texi (Signaling Errors, Signaling Errors):
25136         * doc/lispref/display.texi (Displaying Messages, Progress):
25137         * doc/lispref/elisp.texi:
25138         * doc/lispref/help.texi (Keys in Documentation):
25139         * doc/lispref/minibuf.texi (Minibuffer Misc):
25140         * doc/lispref/strings.texi (Formatting Strings):
25141         * etc/NEWS:
25142         Document the changes.
25143         * lisp/abbrev.el (expand-region-abbrevs):
25144         * lisp/apropos.el (apropos-library):
25145         * lisp/calc/calc-ext.el (calc-record-message)
25146         (calc-user-function-list):
25147         * lisp/calc/calc-help.el (calc-describe-key, calc-full-help):
25148         * lisp/calc/calc-lang.el (math-read-big-balance):
25149         * lisp/calc/calc-store.el (calc-edit-variable):
25150         * lisp/calc/calc-units.el (math-build-units-table-buffer):
25151         * lisp/calc/calc-yank.el (calc-edit-mode):
25152         * lisp/calendar/icalendar.el (icalendar-export-region)
25153         (icalendar--add-diary-entry):
25154         * lisp/cedet/mode-local.el (mode-local-print-binding)
25155         (mode-local-describe-bindings-2):
25156         * lisp/cedet/semantic/complete.el (semantic-completion-message):
25157         * lisp/cedet/semantic/edit.el (semantic-parse-changes-failed):
25158         * lisp/cedet/semantic/wisent/comp.el (wisent-log):
25159         * lisp/cedet/srecode/insert.el (srecode-insert-show-error-report):
25160         * lisp/descr-text.el (describe-text-properties-1, describe-char):
25161         * lisp/dframe.el (dframe-message):
25162         * lisp/dired-aux.el (dired-query):
25163         * lisp/emacs-lisp/byte-opt.el (byte-compile-log-lap-1):
25164         * lisp/emacs-lisp/bytecomp.el (byte-compile-log)
25165         (byte-compile-log-file, byte-compile-warn, byte-compile-form):
25166         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
25167         (cconv-analyze-form):
25168         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
25169         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
25170         * lisp/emacs-lisp/cl-macs.el (cl-symbol-macrolet):
25171         * lisp/emacs-lisp/edebug.el (edebug-format):
25172         * lisp/emacs-lisp/eieio-core.el (eieio-oref):
25173         * lisp/emacs-lisp/eldoc.el (eldoc-minibuffer-message)
25174         (eldoc-message):
25175         * lisp/emacs-lisp/elint.el (elint-file, elint-log):
25176         * lisp/emacs-lisp/find-func.el (find-function-library):
25177         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
25178         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
25179         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
25180         * lisp/emacs-lisp/package.el (package-compute-transaction)
25181         (package-install-button-action, package-delete-button-action)
25182         (package-menu--list-to-prompt):
25183         * lisp/emacs-lisp/timer.el (timer-event-handler):
25184         * lisp/emacs-lisp/warnings.el (lwarn, warn):
25185         * lisp/emulation/viper-cmd.el:
25186         (viper-toggle-parse-sexp-ignore-comments)
25187         (viper-kill-buffer, viper-brac-function):
25188         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
25189         * lisp/facemenu.el (facemenu-add-new-face):
25190         * lisp/faces.el (face-documentation, read-face-name)
25191         (face-read-string, read-face-font, describe-face):
25192         * lisp/files.el (find-alternate-file, hack-local-variables)
25193         (hack-one-local-variable--obsolete, write-file)
25194         (basic-save-buffer, delete-directory):
25195         * lisp/format.el (format-write-file, format-find-file)
25196         (format-insert-file):
25197         * lisp/help-fns.el (help-fns--key-bindings)
25198         (help-fns--compiler-macro, help-fns--obsolete)
25199         (help-fns--interactive-only, describe-function-1)
25200         (describe-variable):
25201         * lisp/help.el (describe-mode):
25202         * lisp/info-xref.el (info-xref-output):
25203         * lisp/info.el (Info-virtual-index-find-node)
25204         (Info-virtual-index, info-apropos):
25205         * lisp/international/kkc.el (kkc-error):
25206         * lisp/international/mule-cmds.el:
25207         (select-safe-coding-system-interactively)
25208         (select-safe-coding-system, describe-input-method):
25209         * lisp/international/mule-conf.el (code-offset):
25210         * lisp/international/mule-diag.el (describe-character-set)
25211         (list-input-methods-1):
25212         * lisp/international/quail.el (quail-error):
25213         * lisp/minibuffer.el (minibuffer-message):
25214         * lisp/mpc.el (mpc--debug):
25215         * lisp/msb.el (msb--choose-menu):
25216         * lisp/net/ange-ftp.el (ange-ftp-message):
25217         * lisp/net/gnutls.el (gnutls-message-maybe):
25218         * lisp/net/newst-backend.el (newsticker--sentinel-work):
25219         * lisp/net/newst-treeview.el (newsticker--treeview-load):
25220         * lisp/net/nsm.el (nsm-query-user):
25221         * lisp/net/rlogin.el (rlogin):
25222         * lisp/net/soap-client.el (soap-warning):
25223         * lisp/net/tramp.el (tramp-debug-message):
25224         * lisp/nxml/nxml-outln.el (nxml-report-outline-error):
25225         * lisp/nxml/nxml-parse.el (nxml-parse-error):
25226         * lisp/nxml/rng-cmpct.el (rng-c-error):
25227         * lisp/nxml/rng-match.el (rng-compile-error):
25228         * lisp/nxml/rng-uri.el (rng-uri-error):
25229         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
25230         * lisp/org/org-ctags.el:
25231         (org-ctags-ask-rebuild-tags-file-then-find-tag):
25232         * lisp/proced.el (proced-log):
25233         * lisp/progmodes/ebnf2ps.el (ebnf-log):
25234         * lisp/progmodes/flymake.el (flymake-log):
25235         * lisp/progmodes/vhdl-mode.el (vhdl-warning-when-idle):
25236         * lisp/replace.el (occur-1):
25237         * lisp/simple.el (execute-extended-command)
25238         (undo-outer-limit-truncate, define-alternatives):
25239         * lisp/startup.el (command-line):
25240         * lisp/subr.el (error, user-error, add-to-list):
25241         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
25242         (tutorial--find-changed-keys):
25243         * src/callint.c (Fcall_interactively):
25244         * src/editfns.c (Fmessage, Fmessage_box):
25245         Restyle the quotes of format strings intended for use as a
25246         diagnostic, when restyling seems appropriate.
25247         * lisp/subr.el (format-message): New function.
25248         * src/doc.c (Finternal__text_restyle): New function.
25249         (syms_of_doc): Define it.
25251 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
25253         * etc/NEWS: The new ‘q’ flag is not an incompatible change.
25255 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
25257         python.el: Fix python-shell-buffer-substring on indented code
25258         (Bug#21086)
25259         * lisp/progmodes/python.el (python-shell-buffer-substring):
25260         Respect current line indentation when calculating string.
25261         * test/automated/python-tests.el
25262         (python-shell-buffer-substring-10)
25263         (python-shell-buffer-substring-11)
25264         (python-shell-buffer-substring-12): New tests.
25266 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
25268         Fix minor glitches from ‘format’ reversion
25269         * doc/lispref/strings.texi (Formatting Strings):
25270         After reversion, ‘text-quoting-style’ is documented in ‘Keys in
25271         Documentation’, not below.
25272         * src/syntax.c (Finternal_describe_syntax_value):
25273         Prefer AUTO_STRING to build_string where either will do, as
25274         AUTO_STRING is a bit faster.
25276 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
25278         python.el: Defer shell setup code until first interactive prompt
25279         * lisp/progmodes/python.el
25280         (python-shell-comint-watch-for-first-prompt-output-filter):
25281         New function.
25282         (inferior-python-mode): Use it.
25283         (python-shell-first-prompt-hook): New hook.
25284         (python-shell-send-setup-code)
25285         (python-shell-completion-native-turn-on-maybe-with-msg): Attach to
25286         this hook instead of inferior-python-hook.
25288 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
25290         Remove the calls to `seq-into` from `seq-concatenate`
25291         Since most new types of seq would have to be defined as sequences (cons
25292         cells or CL structs, mostly), there is no need to convert the seqs to
25293         sequences (which can be a fairly expensive operation).
25294         * lisp/emacs-lisp/seq.el (seq-concatenate): Do not ensure that seqs are
25295         sequences.
25297 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
25299         python.el: Fix completion for pdb interactions
25300         * lisp/progmodes/python.el (python-shell-completion-setup-code):
25301         Simplify.  Toggle print_mode for native wrapped completer.
25302         (python-shell-completion-native-setup): Ensure process buffer.
25303         Add print_mode attribute to completer wrapper to toggle returning
25304         or printing candidates.
25305         (python-shell-completion-native-get-completions): Cleanup.
25306         (python-shell-completion-get-completions): Cleanup.
25307         (python-shell-completion-at-point): Perform prompt checks.
25308         Force fallback completion in pdb interactions.
25310 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
25312         Make seq.el more extensible by using cl-defmethod
25313         * lisp/emacs-lisp/seq.el: Define seq.el functions using cl-defmethod to
25314         make it easier to extend seq.el with new "seq types".
25315         * test/automated/seq-tests.el (test-setf-seq-elt): New test.
25316         * lisp/emacs-lisp/cl-extra.el (cl-subseq): Move back the definition of
25317         subseq in cl-extra.el, and use it in seq.el.
25319 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
25321         python.el: Fix prompt detection with user overridden interpreter
25322         * lisp/progmodes/python.el (python-shell-prompt-detect):
25323         Honor buffer local python-shell-interpreter and
25324         python-shell-interpreter-interactive-arg.
25326 2015-08-23  Eli Zaretskii  <eliz@gnu.org>
25328         Support exec-directory with non-ASCII characters on Windows
25329         * src/w32proc.c (sys_spawnve): Make sure exec-directory is encoded
25330         in the system's ANSI codepage, when it is used for invoking
25331         cmdproxy.
25333 2015-08-23  Andreas Schwab  <schwab@linux-m68k.org>
25335         Revert "Extend ‘format’ to translate curved quotes"
25336         This reverts commit 244c801689d2f7a80480d83cd7d092d4762ebe08.
25338         Revert "Prefer ‘format’ to ‘substitute-command-keys’"
25339         This reverts commit 6af5aad26411ffe21c3fe4bc5438347110910111.
25341 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
25343         * doc/lispintro/emacs-lisp-intro.texi (Switching Buffers):
25344         Clarify "invisible window".
25346 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
25348         * doc/emacs/modes.texi (Choosing Modes): Minor doc fix for
25349         magic-fallback-mode-alist.
25351 2015-08-22  Fabián Ezequiel Gallina  <fgallina@gnu.org>
25353         python.el: fallback completion, ffap and eldoc setup enhancements
25354         Setup codes are now sent continuously so that the current frame is
25355         always taken into account.  This allows working within debuggers
25356         and always keeping a fresh version of setup codes that will return
25357         proper results.
25358         * lisp/progmodes/python.el (python-shell-setup-codes): Cleanup.
25359         (python-shell-send-setup-code): Send code only when
25360         python-shell-setup-codes is non-nil.
25361         (python-shell-completion-string-code): Cleanup trailing newline.
25362         (python-shell-completion-get-completions): Always use
25363         python-shell-completion-setup-code.
25364         (python-ffap-setup-code): Work with any object, not only modules.
25365         (python-ffap-string-code): Cleanup trailing newline.
25366         (python-ffap-module-path): Always use python-ffap-setup-code.
25367         (python-eldoc-string-code): Cleanup trailing newline.
25368         (python-eldoc--get-doc-at-point): Always use
25369         python-eldoc-setup-code.  Return non-nil only if docstring is
25370         found.
25372         python.el: Increase native completion robustness
25373         * lisp/progmodes/python.el (python-shell-completion-native-setup):
25374         Make completer print real candidates and just return dummy ones to
25375         avoid input modification.
25376         (python-shell-completion-native-get-completions): Set
25377         comint-redirect-insert-matching-regexp to non-nil and make
25378         comint-redirect-finished-regexp match the last dummy candidate.
25379         Use python-shell-accept-process-output to wait for the full list
25380         of candidates.
25382 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
25384         Fix invocation of programs via cmdproxy.exe
25385         * src/w32proc.c (sys_spawnve): Use exec-directory, not
25386         invocation-directory, for finding cmdproxy.exe.  When Emacs is
25387         run from the source tree, look for cmdproxy.exe in the same source
25388         tree.  (Bug#21323)
25390 2015-08-22  Simen Heggestøyl  <simenheg@gmail.com>
25392         Handle comments inside unquoted URIs in css-mode
25393         * lisp/textmodes/css-mode.el (css--uri-re): New defconst.
25394         (css-syntax-propertize-function): New defconst.
25395         (css--font-lock-keywords): Handle parens around unquoted URIs.
25396         (css-mode): Set `syntax-propertize-function'.
25398 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
25400         Support invocation of Hunspell with multiple dictionaries
25401         * lisp/textmodes/ispell.el (ispell-parse-hunspell-affix-file):
25402         Support lists of dictionaries of the form "DICT1,DICT2,...".
25403         (ispell-hunspell-add-multi-dic): New command.  (Bug#20495)
25405         Minor formatting changes in ispell.el
25406         * lisp/textmodes/ispell.el (ispell-create-debug-buffer)
25407         (ispell-print-if-debug, ispell-aspell-find-dictionary)
25408         (ispell-aspell-add-aliases, ispell-hunspell-dict-paths-alist)
25409         (ispell-hunspell-dictionary-alist)
25410         (ispell-hunspell-fill-dictionary-entry)
25411         (ispell-find-hunspell-dictionaries, ispell-send-replacement)
25412         (ispell-buffer-with-debug, ispell-complete-word)
25413         (ispell-current-dictionary, ispell-current-personal-dictionary)
25414         (ispell-accept-output, ispell-minor-mode)
25415         (ispell-personal-dictionary, ispell-dictionary-alist)
25416         (ispell-really-aspell, ispell-really-hunspell)
25417         (ispell-encoding8-command, ispell-aspell-supports-utf8)
25418         (ispell-aspell-dictionary-alist, ispell-set-spellchecker-params):
25419         Fix whitespace, inconsistent capitalization, and arguments in doc
25420         strings.
25422 2015-08-22  Martin Rudalics  <rudalics@gmx.at>
25424         * lisp/window.el (adjust-window-trailing-edge): Fix bug where this
25425         function refused to resize a size-preserved window.
25427 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
25429         * doc/lispref/windows.texi (Selecting Windows): Improve
25430         documentation and indexing of 'window-use-time'.
25432 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
25434         * lisp/progmodes/cc-vars.el, lisp/progmodes/cc-styles.el:
25435         * lisp/progmodes/cc-mode.el, lisp/progmodes/cc-menus.el:
25436         * lisp/progmodes/cc-langs.el, lisp/progmodes/cc-guess.el:
25437         * lisp/progmodes/cc-fonts.el, lisp/progmodes/cc-engine.el:
25438         * lisp/progmodes/cc-defs.el, lisp/progmodes/cc-cmds.el:
25439         * lisp/progmodes/cc-bytecomp.el, lisp/progmodes/cc-awk.el:
25440         * lisp/progmodes/cc-align.el, lisp/net/soap-client.el:
25441         Fix up commenting style.
25443 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
25445         text-quoting-style in emacs-lisp diagnostics
25446         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
25447         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
25448         (ad-disable-advice, ad-remove-advice, ad-set-argument)
25449         (ad-set-arguments):
25450         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
25451         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
25452         (byte-optimize-while, byte-optimize-apply):
25453         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
25454         (byte-compile-log-file, byte-compile-format-warn)
25455         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
25456         (byte-compile-cl-warn)
25457         (byte-compile-warn-about-unresolved-functions)
25458         (byte-compile-file, byte-compile-fix-header)
25459         (byte-compile--declare-var, byte-compile-file-form-defmumble)
25460         (byte-compile-form, byte-compile-normal-call)
25461         (byte-compile-variable-ref, byte-compile-variable-set)
25462         (byte-compile-subr-wrong-args, byte-compile-setq-default)
25463         (byte-compile-negation-optimizer)
25464         (byte-compile-condition-case--old)
25465         (byte-compile-condition-case--new, byte-compile-save-excursion)
25466         (byte-compile-defvar, byte-compile-autoload)
25467         (byte-compile-lambda-form)
25468         (byte-compile-make-variable-buffer-local, display-call-tree)
25469         (batch-byte-compile):
25470         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
25471         (cconv-analyze-form):
25472         * lisp/emacs-lisp/chart.el (chart-space-usage):
25473         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
25474         (check-declare-warn, check-declare-file)
25475         (check-declare-directory):
25476         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
25477         (checkdoc-message-text-engine):
25478         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer):
25479         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
25480         (cl-symbol-macrolet):
25481         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
25482         * lisp/emacs-lisp/copyright.el (copyright)
25483         (copyright-update-directory):
25484         * lisp/emacs-lisp/edebug.el (edebug-read-list):
25485         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
25486         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
25487         (eieio-oref, eieio-oset-default):
25488         * lisp/emacs-lisp/eieio-speedbar.el:
25489         (eieio-speedbar-child-make-tag-lines)
25490         (eieio-speedbar-child-description):
25491         * lisp/emacs-lisp/eieio.el (defclass, change-class):
25492         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
25493         (elint-init-form, elint-check-defalias-form)
25494         (elint-check-let-form):
25495         * lisp/emacs-lisp/ert.el (ert-get-test):
25496         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
25497         (find-function-library):
25498         * lisp/emacs-lisp/generator.el (iter-yield):
25499         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
25500         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
25501         * lisp/emacs-lisp/package-x.el (package-upload-file):
25502         * lisp/emacs-lisp/package.el (package-version-join)
25503         (package-disabled-p, package-activate-1, package-activate)
25504         (package--download-one-archive)
25505         (package--download-and-read-archives)
25506         (package-compute-transaction, package-install-from-archive)
25507         (package-install, package-install-selected-packages)
25508         (package-delete, package-autoremove)
25509         (package-install-button-action, package-delete-button-action)
25510         (package-menu-hide-package, package-menu--list-to-prompt)
25511         (package-menu--perform-transaction)
25512         (package-menu--find-and-notify-upgrades):
25513         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
25514         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
25515         * lisp/emacs-lisp/ring.el (ring-next, ring-previous):
25516         * lisp/emacs-lisp/rx.el (rx-check, rx-anything):
25517         * lisp/emacs-lisp/smie.el (smie-config-save):
25518         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
25519         * lisp/emacs-lisp/testcover.el (testcover-1value):
25520         Use curved quotes in diagnostic format strings.
25522 2015-08-21  Fabián Ezequiel Gallina  <fgallina@gnu.org>
25524         python.el: Ensure remote process-environment on non-interactive processes
25525         * lisp/progmodes/python.el
25526         (python-shell-tramp-refresh-process-environment): New function.
25527         (python-shell-with-environment): Use it.
25528         * test/automated/python-tests.el (python-shell-with-environment-2):
25529         Update.
25531         python.el: Enhancements to process environment setup.
25532         * lisp/progmodes/python.el (python-shell-process-environment)
25533         (python-shell-extra-pythonpaths, python-shell-exec-path)
25534         (python-shell-virtualenv-root): Update docstring.  Remove :safe.
25535         (python-shell-setup-codes): Remove :safe.
25536         (python-shell-remote-exec-path): New defcustom.
25537         (python-shell--add-to-path-with-priority): New macro.
25538         (python-shell-calculate-pythonpath): Give priority to
25539         python-shell-extra-pythonpaths.  Update docstring.
25540         (python-shell-calculate-process-environment): Give priority to
25541         python-shell-process-environment.  Update docstring.
25542         (python-shell-calculate-exec-path): Give priority to
25543         python-shell-exec-path and calculated virtualenv bin directory.
25544         Update docstring.
25545         (python-shell-tramp-refresh-remote-path): New function.
25546         (python-shell-with-environment): Use it when working remotely and
25547         do not modify tramp-remote-path.  Allow nesting.
25548         (python-shell-calculate-command): Remove useless
25549         python-shell-with-environment call.
25550         * test/automated/python-tests.el (python-shell-calculate-pythonpath-1)
25551         (python-shell-calculate-pythonpath-2)
25552         (python-shell-calculate-process-environment-6)
25553         (python-shell-calculate-process-environment-7)
25554         (python-shell-calculate-process-environment-8)
25555         (python-shell-calculate-exec-path-3)
25556         (python-shell-calculate-exec-path-4)
25557         (python-shell-calculate-exec-path-5)
25558         (python-shell-calculate-exec-path-6)
25559         (python-shell-with-environment-3): New tests.
25560         (python-shell-calculate-process-environment-2)
25561         (python-shell-calculate-process-environment-3)
25562         (python-shell-calculate-process-environment-4)
25563         (python-shell-calculate-process-environment-5)
25564         (python-shell-calculate-exec-path-1)
25565         (python-shell-calculate-exec-path-2)
25566         (python-shell-with-environment-1)
25567         (python-shell-with-environment-2): Update and simplify.
25569 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
25571         Avoid hard-coding "M-x command" in docstrings
25572         * lisp/calendar/todo-mode.el (todo-mode):
25573         * lisp/desktop.el (desktop-save-mode):
25574         * lisp/edmacro.el (edit-kbd-macro):
25575         * lisp/emacs-lisp/package.el (package-menu-execute):
25576         * lisp/emulation/viper-cmd.el (viper-ask-level):
25577         * lisp/emulation/viper-init.el (viper-expert-level):
25578         * lisp/filesets.el (filesets-add-buffer):
25579         * lisp/follow.el (follow-mode):
25580         * lisp/gnus/auth-source.el (auth-sources):
25581         * lisp/international/ogonek.el (ogonek-informacja)
25582         (ogonek-information):
25583         * lisp/net/tramp.el (tramp-process-actions):
25584         * lisp/org/org-gnus.el (org-gnus-no-new-news):
25585         * lisp/org/org.el (org-ellipsis):
25586         * lisp/progmodes/python.el (python-shell-get-process-or-error):
25587         * lisp/progmodes/vhdl-mode.el (vhdl-mode):
25588         * lisp/server.el (server-start):
25589         * lisp/type-break.el (type-break-noninteractive-query):
25590         * lisp/userlock.el (ask-user-about-supersession-help):
25591         * lisp/whitespace.el (whitespace-report-region):
25592         Prefer (substitute-command-keys "`\\[foo-command]'")
25593         to "`M-x foo-command'" in docstrings and the like.
25595 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
25597         Use add-function for prettify-symbols-compose-predicate
25598         * lisp/textmodes/tex-mode.el (tex-common-initialization): Set
25599         prettify-symbols-compose-predicate in terms of add-function.
25600         * etc/NEWS: Mention prettify-symbols-compose-predicate and
25601         prettify-symbols-mode support in tex-mode.
25603 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
25605         * lisp/emacs-lisp/smie.el (smie-indent-current-column): New fun.
25606         (smie-indent-exps, smie-indent-keyword): Use it.
25607         * test/indent/css-mode.css: Test alignment with leading comment.
25609 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
25611         Respect text-quoting-style in (*Finder*) menus
25612         * lisp/info.el (info--prettify-description):
25613         Treat description as a docstring, so that it's requoted as
25614         per text-quoting-style.
25616 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
25618         Document `window-use-time' in Elisp manual
25619         * doc/lispref/windows.texi (Selecting Windows): Document
25620         `window-use-time'.
25622 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
25624         * src/w32uniscribe.c (_WIN32_WINNT): Define to 0x0600.
25625         This is a cleaner fix for Bug#21260 than the previous change.
25627 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
25629         Respect text-quoting-style in calc
25630         In calc, tespect text-quoting-style preference in diagnostic
25631         formats and fix a few similar problems in docstrings.
25632         * lisp/calc/calc-aent.el (math-read-factor):
25633         * lisp/calc/calc-embed.el (calc-do-embedded):
25634         * lisp/calc/calc-ext.el (calc-user-function-list)
25635         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
25636         * lisp/calc/calc-help.el (calc-describe-key)
25637         (calc-describe-thing):
25638         * lisp/calc/calc-lang.el (calc-c-language)
25639         (math-parse-fortran-vector-end, math-parse-tex-sum)
25640         (math-parse-eqn-matrix, math-parse-eqn-prime)
25641         (calc-yacas-language, calc-maxima-language, calc-giac-language)
25642         (math-read-big-rec, math-read-big-balance):
25643         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
25644         (calc-auto-recompute):
25645         * lisp/calc/calc-prog.el (calc-user-define-invocation)
25646         (math-do-arg-check):
25647         * lisp/calc/calc-store.el (calc-edit-variable):
25648         * lisp/calc/calc-units.el (math-build-units-table-buffer):
25649         * lisp/calc/calc-vec.el (math-read-brackets):
25650         * lisp/calc/calc-yank.el (calc-edit-mode):
25651         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
25652         Use curved quotes in diagnostic format strings.
25653         * lisp/calc/calc-help.el (calc-describe-thing):
25654         Format docstrings with substitute-command-keys.
25655         * lisp/calc/calc-help.el (calc-j-prefix-help):
25656         * lisp/calc/calc-misc.el (calc-help):
25657         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
25658         Escape a docstring "`".
25660 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
25662         Fix documentation of 'menu-set-font' and 'set-frame-font'
25663         * lisp/menu-bar.el (menu-set-font): Doc fix.  (Bug#21303)
25664         * doc/lispref/frames.texi (Frame Font): Document that
25665         set-frame-font with the last argument 't' will also make the font
25666         the default for the future GUI frames.
25668         Document '--create-frame' option to emacsclient
25669         * doc/emacs/misc.texi (emacsclient Options): Document the
25670         '--create-frame' option.  (Bug#21308)
25672 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
25674         * lisp/progmodes/js.el (js-mode): Don't eagerly syntax propertize.
25676 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
25678         Document 'get-mru-window' in the ELisp manual
25679         * doc/lispref/windows.texi (Cyclic Window Ordering): Document
25680         'get-mru-window'.  (Bug#21306)
25682         Clarify documentation of 'get-buffer-window-list'
25683         * doc/lispref/windows.texi (Buffers and Windows): Mention that the
25684         current window, if relevant, will be the first in the list
25685         returned by 'get-buffer-window-list'.
25686         * lisp/window.el (get-buffer-window-list): Doc fix.  (Bug#21305)
25688 2015-08-21  Vasilij Schneidermann  <v.schneidermann@gmail.com>
25690         In `ielm' use `pop-to-buffer-same-window' (Bug#20848)
25691         * lisp/ielm.el (ielm): Use `pop-to-buffer-same-window' instead of
25692         `switch-to-buffer'.
25694 2015-08-21  Kaushal Modi  <kaushal.modi@gmail.com>  (tiny change)
25696         In woman.el use `display-buffer' instead of `switch-to-buffer' (Bug#21047)
25697         * lisp/woman.el (woman-really-find-file, WoMan-find-buffer): Use
25698         `display-buffer' instead of `switch-to-buffer'.
25700 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
25702         Follow user preference in calendar diagnostics
25703         Respect text-quoting-style preference in diagnostic formats by
25704         using curved quotes (which are translated as per text-quoting-style)
25705         instead of grave accent and apostrophe (which are not).
25706         * lisp/calendar/appt.el (appt-display-message):
25707         * lisp/calendar/diary-lib.el (diary-check-diary-file)
25708         (diary-mail-entries, diary-from-outlook):
25709         * lisp/calendar/icalendar.el (icalendar-export-region)
25710         (icalendar--convert-float-to-ical)
25711         (icalendar--convert-date-to-ical)
25712         (icalendar--convert-ical-to-diary)
25713         (icalendar--convert-recurring-to-diary)
25714         (icalendar--add-diary-entry):
25715         * lisp/calendar/time-date.el (format-seconds):
25716         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
25717         (timeclock-make-hours-explicit):
25718         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
25719         (todo-item-mark, todo-check-format)
25720         (todo-insert-item--next-param, todo-edit-item--next-key)
25721         (todo-mode):
25722         Use curved quotes in diagnostic format strings.
25723         * lisp/calendar/icalendar.el (icalendar-import-format-sample):
25724         * test/automated/icalendar-tests.el (icalendar--import-format-sample):
25725         Just use straight quoting for simple test case.
25727 2015-08-21  Michael Albinus  <michael.albinus@gmx.de>
25729         * src/gfilenotify.c (Fgfile_add_watch):
25730         Handle errors from g_file_monitor.
25732 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
25734         In frames.texi use "minibuffer-less frame" instead of "non-minibuffer frame"
25735         * doc/lispref/frames.texi (Frame Layout): Use "minibuffer-less
25736         frame" instead of "non-minibuffer frame".
25738         Fix frame geometry related text
25739         * doc/lispref/frames.texi (Frame Layout):
25740         Rename `x-frame-geometry' to `frame-geometry'.
25741         * doc/lispref/frames.texi (Mouse Position):
25742         * doc/lispref/windows.texi (Coordinates and Windows):
25743         Use `set-mouse-absolute-pixel-position' instead of
25744         `x-set-mouse-absolute-pixel-position'.
25746         Sanitize frame geometry related functions
25747         * src/nsfns.m (Fx_frame_geometry): Rename to Fns_frame_geometry.
25748         (Fx_frame_edges): Rename to Fns_frame_edges.
25749         * src/w32fns.c (Fx_frame_geometry): Rename to Fw32_frame_geometry.
25750         (Fx_frame_edges): Rename to Fw32_frame_edges.
25751         (Fx_mouse_absolute_pixel_position): Rename to
25752         Fw32_mouse_absolute_pixel_position.
25753         (Fx_set_mouse_absolute_pixel_position): Rename to
25754         Fw32_set_mouse_absolute_pixel_position.
25755         * lisp/frame.el (x-frame-geometry, w32-frame-geometry)
25756         (ns-frame-geometry, x-frame-edges, w32-frame-edges)
25757         (ns-frame-edges, w32-mouse-absolute-pixel-position)
25758         (x-mouse-absolute-pixel-position)
25759         (w32-set-mouse-absolute-pixel-position)
25760         (x-set-mouse-absolute-pixel-position): Declare.
25761         (frame-geometry, mouse-absolute-pixel-position)
25762         (set-mouse-absolute-pixel-position): New functions.
25763         (frame-edges): Rewrite in terms of x-/w32-/ns-frame-edges.
25765 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
25767         Fix MinGW64 build broken by latest w32uniscribe.c changes
25768         * src/w32uniscribe.c (UNISCRIBE_OPENTYPE): Define to 0x0100, for
25769         MinGW64.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
25770         (Bug#21260)
25772 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
25774         Add TeX defaults for prettify-symbol-mode
25775         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
25776         Rename from tex-prettify-symbols-alist.
25777         (tex--prettify-symbols-compose-p): New function.
25778         (tex-common-initialization): Use them as prettify-symbols-alist
25779         and prettify-symbols-compose-predicate.
25781         Generalize prettify-symbols to arbitrary modes
25782         * lisp/progmodes/prog-mode.el
25783         (prettify-symbols-default-compose-p): New function.
25784         (prettify-symbols-compose-predicate): New variable.
25785         (prettify-symbols--compose-symbol): Use it.
25787 2015-08-20  Paul Eggert  <eggert@cs.ucla.edu>
25789         Don't quote symbols 'like-this' in docstrings etc.
25790         * admin/unidata/uvs.el (uvs-insert-fields-as-bytes):
25791         * lisp/allout-widgets.el (allout-widgets-count-buttons-in-region):
25792         * lisp/allout.el (allout-add-resumptions, allout-mode):
25793         * lisp/calculator.el (calculator-operators):
25794         * lisp/cedet/data-debug.el (dd-propertize):
25795         * lisp/cedet/ede/proj-prog.el (ede-proj-target-makefile-program):
25796         * lisp/cedet/semantic/analyze/debug.el:
25797         (semantic-analyzer-debug-global-miss-text):
25798         * lisp/cedet/semantic/lex-spp.el:
25799         (semantic-lex-spp-replace-or-symbol-or-keyword):
25800         * lisp/cedet/semantic/symref.el:
25801         (semantic-symref-cleanup-recent-buffers-fcn):
25802         * lisp/cedet/semantic/tag.el (semantic-tag-class):
25803         * lisp/cedet/srecode/el.el (srecode-semantic-handle-:el-custom):
25804         * lisp/gnus/nnmairix.el (nnmairix-propagate-marks-upon-close):
25805         * lisp/gnus/pop3.el (pop3-authentication-scheme):
25806         * lisp/help-fns.el (describe-function-orig-buffer):
25807         * lisp/imenu.el (imenu--history-list):
25808         * lisp/mail/feedmail.el (feedmail-confirm-outgoing)
25809         (feedmail-display-full-frame, feedmail-deduce-bcc-where)
25810         (feedmail-queue-default-file-slug)
25811         (feedmail-queue-buffer-file-name):
25812         * lisp/net/mairix.el (mairix-searches-mode-map):
25813         * lisp/net/newst-backend.el (newsticker-retrieval-method)
25814         (newsticker-auto-mark-filter-list):
25815         * lisp/obsolete/vi.el (vi-mode):
25816         * lisp/progmodes/cc-engine.el (c-literal-type):
25817         * lisp/progmodes/cpp.el (cpp-face):
25818         * lisp/progmodes/ebrowse.el (ebrowse-electric-list-looper):
25819         * lisp/progmodes/elisp-mode.el (elisp--xref-make-xref):
25820         * lisp/progmodes/pascal.el (pascal-auto-lineup):
25821         * lisp/progmodes/prog-mode.el (prog-widen):
25822         * lisp/progmodes/verilog-mode.el (verilog-regexp-words)
25823         (verilog-auto-lineup, verilog-auto-reset-widths)
25824         (verilog-auto-arg-format, verilog-auto-inst-template-numbers):
25825         * lisp/textmodes/flyspell.el (flyspell-maybe-correct-transposition)
25826         (flyspell-maybe-correct-doubling):
25827         * lisp/textmodes/table.el (table-justify, table-justify-cell)
25828         (table-justify-row, table-justify-column, table-insert-sequence)
25829         (table--justify-cell-contents):
25830         * lisp/url/url-auth.el (url-get-authentication):
25831         * lisp/window.el (display-buffer-record-window):
25832         * lisp/xml.el (xml-parse-file, xml-parse-region):
25833         * src/gfilenotify.c (Fgfile_add_watch):
25834         Don't quote symbols with apostrophes in doc strings.
25835         Use asymmetric quotes instead.
25836         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
25837         Likewise for symbol in diagnostic.
25838         * lisp/image.el (image-extension-data):
25839         * lisp/register.el (frame-configuration-to-register):
25840         * src/buffer.c (syms_of_buffer):
25841         Remove bogus apostrophes after symbols.
25842         * lisp/thumbs.el (thumbs-conversion-program):
25843         Quote Lisp string values using double-quotes, not apostrophes.
25845 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
25847         Describe frame geometry and related functions in Elisp manual
25848         * doc/lispref/display.texi (Size of Displayed Text, Line Height)
25849         (Showing Images): Update references.
25850         * doc/lispref/elisp.texi (Top): Update node listing.
25851         * doc/lispref/frames.texi (Frame Geometry): New node.
25852         Move `Size and Position' section here.
25853         (Size Parameters): Update references.
25854         (Mouse Position): Update references and nomenclature.
25855         Describe new functions `x-mouse-absolute-pixel-position' and
25856         `x-set-mouse-absolute-pixel-position'.
25857         * doc/lispref/windows.texi (Window Sizes): Update references.
25858         (Resizing Windows): Update references.  Move description of
25859         `fit-frame-to-buffer' here.
25860         (Coordinates and Windows): Update nomenclature and references.
25861         Describe new arguments of `window-edges'.  Comment out
25862         descriptions of `window-left-column', `window-top-line',
25863         `window-pixel-left' and `window-pixel-top'.  Describe
25864         `window-absolute-pixel-position'.
25866 2015-08-20  Alan Mackenzie  <acm@muc.de>
25868         Handling of `c-parse-state'.  Fix low level bug.
25869         * lisp/progmodes/cc-engine.el (c-remove-stale-state-cache-backwards):
25870         Add "CASE 3.5" to handle `cache-pos' being only slightly before `here'.
25872 2015-08-20  Andreas Politz  <politza@hochschule-trier.de>
25874         * lisp/wid-edit.el (widget-color--choose-action): Quit *Color*
25875         window instead of deleting it.
25877 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
25879         In w32fns.c's Fx_frame_geometry rewrite check whether frame has a titlebar
25880         * src/w32fns.c (Fx_frame_geometry): Use title_bar.rgstate[0] to
25881         determine whether frame has a titlebar.
25882         Suggested by Eli Zaretskii <eliz@gnu.org>
25884 2015-08-20  Tassilo Horn  <tsdh@gnu.org>
25886         Add a prettify-symbols-alist for (La)TeX
25887         * lisp/textmodes/tex-mode.el (tex-prettify-symbols-alist):
25888         New variable holding an alist suitable as prettify-symbols-alist in
25889         (La)TeX modes.
25891 2015-08-19  Alan Mackenzie  <acm@muc.de>
25893         Make electric-pair-mode, delete-selection-mode and CC Mode cooperate.
25894         Fixes debbugs#21275.
25895         In Emacs >= 25, let electric-pair-mode take precedence over
25896         delete-selection-mode.
25897         * lisp/delsel.el (delete-selection-uses-region-p): New function,
25898         previously a lambda expression in a property value for
25899         `self-insert-command'.
25900         (top-level): Set the `delete-selection' property of
25901         `self-insert-command' to `delete-selection-uses-region-p'.
25902         * lisp/progmodes/cc-cmds.el (top-level): Give the `delete-selection'
25903         property for c-electric-\(brace\|paren\) the value
25904         `delete-selection-uses-region-p' when the latter function exists.
25906 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
25908         Fix key binding quoting in tutorial *Help*
25909         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
25910         When generating help for custom key bindings, use the user-preferred
25911         quoting style rather than hardcoding the grave style.
25913 2015-08-19  Eli Zaretskii  <eliz@gnu.org>
25915         Improve and future-proof OTF fonts support in w32uniscribe.c
25916         * src/w32uniscribe.c (uniscribe_otf_capability): Add commentary
25917         about the expected results and why the new Uniscribe APIs are not
25918         used in this function.
25919         (ScriptGetFontScriptTags_Proc, ScriptGetFontLanguageTags_Proc)
25920         (ScriptGetFontFeatureTags_Proc): New function typedefs.
25921         (uniscribe_new_apis): New static variable.
25922         (uniscribe_check_features): New function, implements OTF features
25923         verification while correctly accounting for features in the list
25924         after the nil member, if any.
25925         (uniscribe_check_otf_1): New function, retrieves the features
25926         supported by the font for the requested script and language using
25927         the Uniscribe APIs available from Windows Vista onwards.
25928         (uniscribe_check_otf): If the new Uniscribe APIs are available,
25929         use them in preference to reading the font data directly.  Call
25930         uniscribe_check_features to verify that the requested features are
25931         supported, replacing the original incomplete code.
25932         (syms_of_w32uniscribe): Initialize function pointers for the new
25933         Uniscribe APIs.  (Bug#21260)
25934         (otf_features): Scan the script, langsys, and feature arrays back
25935         to front, so that the result we return has them in alphabetical
25936         order, like ftfont.c does.
25937         * src/w32fns.c (syms_of_w32fns) <w32-disable-new-uniscribe-apis>:
25938         New variable for debugging w32uniscribe.c code.
25940 2015-08-19  Artur Malabarba  <bruce.connor.am@gmail.com>
25942         * lisp/isearch.el (isearch-search-fun-default): Revert a5bdb87
25943         Remove usage of `isearch-lax-whitespace' inside the `isearch-word'
25944         clause of `isearch-search-fun-default'.  That lax variable does not
25945         refer to lax-whitespacing.  Related to (bug#21277).
25946         This reverts commit a5bdb872edb9f031fe041faf9a8c0be432e5f64c.
25947         * lisp/character-fold.el (character-fold-search): Set to nil.
25948         Default to nil for now, until someone implements proper
25949         lax-whitespacing with char-fold searching.
25951 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
25953         Fix doc-string of `help-mode-finish'.
25954         * lisp/help-mode.el (help-mode-finish): Fix doc-string.
25956         In nsimage.m include coding.h (Bug#21292)
25957         * src/nsimage.m (top-level): Include coding.h (Bug#21292).
25959         Move window edge functions to Elisp.
25960         * src/window.c (Fwindow_edges, Fwindow_pixel_edges)
25961         (Fwindow_absolute_pixel_edges, Fwindow_inside_edges)
25962         (Fwindow_inside_pixel_edges, Fwindow_inside_absolute_pixel_edges):
25963         Move to window.el.
25964         (calc_absolute_offset): Remove.
25965         * lisp/frame.el (frame-edges): New function.
25966         * lisp/window.el (window-edges, window-pixel-edges)
25967         (window-absolute-pixel-edges): Move here from window.c.
25968         (window-body-edges, window-body-pixel-edges)
25969         (window-absolute-body-pixel-edges): Move here from window.c and
25970         rename "inside" to "body".  Keep old names as aliases.
25971         (window-absolute-pixel-position): New function.
25973 2015-08-19  Katsumi Yamaoka  <yamaoka@jpl.org>
25975         [Gnus]: Use overlay functions directly
25976         * lisp/gnus/gnus-art.el (gnus-mime-inline-part, gnus-mm-display-part)
25977         (gnus-insert-mime-button, gnus-mime-buttonize-attachments-in-header)
25978         (gnus-article-highlight-signature, gnus-article-extend-url-button)
25979         (gnus-article-add-button, gnus-insert-prev-page-button)
25980         (gnus-insert-next-page-button, gnus-insert-mime-security-button):
25981         * lisp/gnus/gnus-cite.el (gnus-cite-delete-overlays)
25982         (gnus-cite-add-face):
25983         * lisp/gnus/gnus-html.el (gnus-html-wash-tags):
25984         * lisp/gnus/gnus-salt.el (gnus-tree-read-summary-keys)
25985         (gnus-tree-recenter, gnus-highlight-selected-tree):
25986         * lisp/gnus/gnus-sum.el (gnus-summary-show-all-threads)
25987         (gnus-summary-show-thread, gnus-summary-hide-thread)
25988         (gnus-highlight-selected-summary):
25989         * lisp/gnus/gnus-util.el (gnus-put-overlay-excluding-newlines):
25990         * lisp/gnus/message.el (message-fix-before-sending)
25991         (message-toggle-image-thumbnails):
25992         * lisp/gnus/mm-decode.el (mm-convert-shr-links):
25993         * lisp/gnus/sieve.el (sieve-highlight, sieve-insert-scripts):
25994         Use overlay functions directly instead of using gnus-overlay-*,
25995         message-overlay-*, and sieve-overlay-*.
25996         * lisp/gnus/gnus-sum.el (gnus-remove-overlays):
25997         * lisp/gnus/gnus.el (gnus-make-overlay, gnus-copy-overlay)
25998         (gnus-delete-overlay, gnus-overlay-get, gnus-overlay-put)
25999         (gnus-move-overlay, gnus-overlay-buffer, gnus-overlay-start)
26000         (gnus-overlay-end, gnus-overlays-at, gnus-overlays-in):
26001         * lisp/gnus/message.el (message-delete-overlay, message-make-overlay)
26002         (message-overlay-get, message-overlay-put, message-overlays-in):
26003         * lisp/gnus/sieve.el (sieve-make-overlay, sieve-overlay-put)
26004         (sieve-overlays-at): Remove.
26006 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
26008         In w32fns.c condition TITLEBAR_INFO declaration on WINDOWS version
26009         * src/w32fns.c (TITLEBAR_INFO): Make it a typedef so MinGW64
26010         builds can use the declaration from the system headers.
26011         (GetTitleBarInfo_Proc, Fx_frame_geometry): Adapt to new
26012         definition of TITLEBAR_INFO.
26013         Suggested by Eli Zaretskii  <eliz@gnu.org>
26015 2015-08-19  Glenn Morris  <rgm@gnu.org>
26017         * lisp/gnus/nnmaildir.el (nnmaildir-flag-mark-mapping): Add "P".
26019 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
26021         Use new q ‘format’ flag when fixing quotes in C
26022         * src/image.c (image_size_error): New function.  All uses of
26023         image_error with "Invalid image size ..."  changed to use it.
26024         * src/image.c (image_size_error, xbm_load_image, xbm_load)
26025         (xpm_load, xpm_load_image, xpm_load, pbm_load, png_load_body)
26026         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
26027         (imagemagick_load, svg_load, svg_load_image, gs_load)
26028         (x_kill_gs_process):
26029         * src/lread.c (load_warn_old_style_backquotes):
26030         * src/xfaces.c (load_pixmap):
26031         * src/xselect.c (x_clipboard_manager_error_1):
26032         Use %qs, not uLSQM and uRSQM.
26033         * src/syntax.c (Finternal_describe_syntax_value):
26034         Prefer Fsubstitute_command_keys to Fformat, as this lets
26035         us use AUTO_STRING.
26036         * src/xdisp.c (vadd_to_log): Use AUTO_STRING on the format argument,
26037         as it's now guaranteed to be ASCII.
26038         * src/xselect.c (x_clipboard_manager_error_2):
26039         Avoid grave accent in low-level stderr diagnostic.
26041 2015-08-19  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
26043         New q flag for ‘format’
26044         * doc/lispref/processes.texi (Sentinels):
26045         Don't hardwire grave quoting style in example.
26046         * doc/lispref/strings.texi (Formatting Strings):
26047         * etc/NEWS:
26048         Document new q flag.
26049         * src/editfns.c (Fformat): Implement it.
26051 2015-08-18  Daiki Ueno  <ueno@gnu.org>
26053         pinentry.el: Add debugging support
26054         * lisp/net/pinentry.el (pinentry-debug): New variable.
26055         (pinentry-debug-buffer): New variable.
26056         (pinentry--process-filter): Send input to the debug buffer, if
26057         `pinentry-debug' is set.
26059         pinentry.el: Improve multiline prompt
26060         * lisp/net/pinentry.el (pinentry--prompt): Simplify the interface.
26061         (pinentry--process-filter): Use `pinentry--prompt' for CONFIRM
26062         command.
26064 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
26066         Fix multibyte confusion in diagnostics
26067         * src/print.c (print_error_message):
26068         Don't assume that the caller's name is unibyte.
26069         * src/xdisp.c (vadd_to_log):
26070         Don't assume that the formatted diagnostic is unibyte.
26072         Fix file name encodings in diagnostics
26073         Also, close some minor races when opening image files, by opening
26074         them once instead of multiple times.
26075         * src/gtkutil.c (xg_get_image_for_pixmap):
26076         * src/image.c (xpm_load, tiff_load, gif_load, imagemagick_load)
26077         (svg_load):
26078         * src/nsimage.m (allocInitFromFile:):
26079         * src/xfns.c (xg_set_icon):
26080         Encode file name, since x_find_image_file no longer does that.
26081         * src/image.c (x_find_image_fd): New function.
26082         (x_find_image_file): Use it.  Do not encode resulting file name,
26083         since callers sometimes need it decoded.
26084         (slurp_file): File arg is now a fd, not a file name.
26085         All callers changed.  This saves us having to open the file twice.
26086         (xbm_load, xpm_load, pbm_load, png_load_body, jpeg_load_body)
26087         (svg_load):
26088         Use x_find_image_fd and fdopen to save a file-open.
26089         Report file name that failed.
26090         * src/lread.c (openp): If PREDICATE is t, open the file in binary mode.
26092 2015-08-18  Dmitry Gutov  <dgutov@yandex.ru>
26094         Allow blink-matching-paren to jump off screen
26095         * doc/emacs/programs.texi (Matching): Mention the
26096         `blink-matching-paren' value `jump-offscreen'.
26097         * lisp/simple.el (blink-matching-paren): New possible value.
26098         (blink-matching-paren-on-screen): Clarify the docstring.
26099         (blink-matching-open): Handle `jump-offscreen' (bug#21286).
26101         Refine the previous change
26102         * lisp/simple.el (blink-matching-open): Use minibuffer-message
26103         outside of save-excursion (bug#21286).
26105 2015-08-18  Martin Rudalics  <rudalics@gmx.at>
26107         Rewrite and add frame geometry related functions.
26108         * src/frame.c (Fframe_position): New function.
26109         (Fset_frame_position): Rename parameters and rewrite doc-string.
26110         (syms_of_frame): Remove Qframe_position, Qframe_outer_size,
26111         Qtitle_height and Qframe_inner_size.  Add Qouter_edges,
26112         Qouter_position, Qouter_size, Qnative_edges, Qinner_edges,
26113         Qtitle_bar_size.
26114         * src/nsfns.m (frame_geometry): New function.
26115         (Fx_frame_geometry): Call frame_geometry.
26116         (Fx_frame_edges): New function.
26117         * src/w32fns.c (C_CHILDREN_TITLEBAR, TITLEBAR_INFO)
26118         (GetTitleBarInfo_Proc): Define these so we can use the
26119         GetTitleBarInfo API.
26120         (Fw32_frame_menu_bar_size, Fw32_frame_rect): Remove.
26121         (Fx_frame_geometry): Rewrite.
26122         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
26123         (Fx_set_mouse_absolute_pixel_position): New functions.
26124         * src/xfns.c (frame_geometry): New function.
26125         (Fx_frame_geometry): Call frame_geometry.
26126         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
26127         (Fx_set_mouse_absolute_pixel_position): New functions.
26129 2015-08-18  Michael Albinus  <michael.albinus@gmx.de>
26131         Improve Tramp's compatibility
26132         * lisp/net/tramp.el (tramp-get-method-parameter):
26133         * lisp/net/tramp-adb.el (tramp-adb-parse-device-names)
26134         (tramp-adb-get-device):
26135         * lisp/net/trampver.el (tramp-repository-get-version):
26136         Use `tramp-compat-replace-regexp-in-string'.
26138 2015-08-18  Pierre Téchoueyres  <pierre.techoueyres@free.fr>  (tiny change)
26140         * lisp/net/tramp-cmds.el (tramp-reporter-dump-variable):
26141         Encode/decode string.
26143 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
26145         Clarify what happens to match data on failure
26146         Problem reported by Ernesto Alfonso (Bug#21279).
26147         * doc/lispref/searching.texi (Regexp Search, Simple Match Data):
26148         Document more carefully what happens to match data after a failed
26149         search.
26150         * src/search.c (Fmatch_beginning, Fmatch_end): Document that
26151         the return value is undefined if the last search failed.
26152         (Fmatch_data): Simplify doc string line 1.
26154 2015-08-18  Daiki Ueno  <ueno@gnu.org>
26156         Revert "pinentry.el: Support external passphrase cache"
26157         This reverts commit e086e55a664ec27fbca7b3231c4b32cb78a89337.
26158         pinentry.el shouldn't directly interact with the secrets service,
26159         but ask the caller to cache the passphrase.
26161 2015-08-17  Xue Fuqiao  <xfq.free@gmail.com>
26163         * doc/emacs/sending.texi (Mail Misc): Fix two index entries for
26164         Message mode hooks.
26166 2015-08-17  Daiki Ueno  <ueno@gnu.org>
26168         epg.el: Make gpgconf output parsing future proof
26169         * lisp/epg.el (epg--start): Count the number of fields in "gpgconf
26170         --list-options" output.
26172         pinentry.el: Support external passphrase cache
26173         * lisp/net/pinentry.el (pinentry-use-secrets): New user option.
26174         (pinentry--allow-external-password-cache): New local variable.
26175         (pinentry--key-info): New local variable.
26176         (secrets-enabled, secrets-search-items, secrets-get-secret):
26177         Declare.
26178         (pinentry--send-passphrase): New function, split from
26179         `pinentry--process-filter'.
26180         (pinentry--process-filter): Use secrets.el to retrieve passphrase
26181         from login keyring.
26183         pinentry.el: Popup window for multiline prompt
26184         * lisp/net/pinentry.el (pinentry): New custom group.
26185         (pinentry-popup-prompt-window): New user option.
26186         (pinentry-prompt-window-height): New user option.
26187         (pinentry--prompt-buffer): New variable.
26188         (pinentry-prompt-mode-map): New variable.
26189         (pinentry-prompt-mode): New function.
26190         (pinentry--prompt): New function.
26191         (pinentry--process-filter): Use `pinentry--prompt' instead of
26192         `read-passwd' and `y-or-n-p'.
26194 2015-08-17  Katsumi Yamaoka  <yamaoka@jpl.org>
26196         message.el: Silent the byte compiler
26197         * lisp/gnus/message.el (message-overlay-put, message-make-overlay)
26198         (message-kill-all-overlays, message-overlays-in, message-overlay-get)
26199         (message-delete-overlay, message-window-inside-pixel-edges):
26200         Declare before using.
26202         * lisp/gnus/message.el (message-overlay-get, message-overlays-in)
26203         (message-window-inside-pixel-edges): XEmacs compatible functions.
26205 2015-08-17  Lars Magne Ingebrigtsen  <larsi@gnus.org>
26207         * lisp/gnus/message.el (message-toggle-image-thumbnails): New command.
26209 2015-08-17  Noah Friedman  <friedman@splode.com>
26211         * lisp/simple.el (blink-matching-open): Restore point before
26212         calling minibuffer-message.
26214 2015-08-17  Ronnie Schnell  <ronnie@driver-aces.com>
26216         * lisp/play/dunnet.el: Update version number in header (now
26217         matches help).
26219 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
26221         Curved quotes in --batch diagnostics in non-UTF-8
26222         When run with --batch, check that curved quotes are compatible with
26223         the system locale before outputting them in diagnostics.
26224         Problem reported by Eli Zaretskii in:
26225         https://lists.gnu.org/r/emacs-devel/2015-08/msg00594.html
26226         * lisp/startup.el (command-line): Set internal--text-quoting-flag
26227         after the standard display table is initialized.
26228         * src/doc.c (default_to_grave_quoting_style): New function.
26229         (text_quoting_style): Use it.
26230         (text_quoting_flag): New static var, visible to Lisp as
26231         internal--text-quoting-flag.
26232         * src/emacs.c: Include <wchar.h> if available.
26233         (using_utf8): New function.
26234         (main): Use it to initialize text_quoting_flag.
26235         * src/regex.h (btowc) [WIDE_CHAR_SUPPORT && emacs]:
26236         Don't define, as it's not needed and it clashes with wchar.h.
26238 2015-08-17  Glenn Morris  <rgm@gnu.org>
26240         * doc/misc/tramp.texi (Configuration): Reword to avoid warning
26241         from makeinfo about spurious "Note:" cross-reference, and for grammar.
26243 2015-08-17  Ilya Zakharevich  <ilya@math.berkeley.edu>
26245         Minor change in variable initialization on MS-Windows
26246         * src/w32fns.c <after_dead_key>: Initialize to -1.
26247         (deliver_wm_chars): If after_deadkey is zero, don't set after_dead
26248         non-zero.
26250         Fix a bug with LWindow key remapping on MS-Windows
26251         * src/w32fns.c (deliver_wm_chars): Fix a typo.  (Bug#21276)
26253 2015-08-17  Eli Zaretskii  <eliz@gnu.org>
26255         Improve fontset support for latest OTF script tags
26256         * lisp/international/fontset.el (otf-script-alist): Add some
26257         missing script tags.
26258         (setup-default-fontset): Include settings for v2 versions of the
26259         script tags used by some modern OTF/TTF fonts.
26261 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
26263         Spelling fixes
26265 2015-08-16  Paul Eggert  <eggert@cs.ucla.edu>
26267         Use curved quotes in core elisp diagnostics
26268         In the core elisp files, use curved quotes in diagnostic formats,
26269         so that they follow user preference as per ‘text-quoting-style’
26270         rather than being hard-coded to quote `like this'.
26271         * lisp/abbrev.el (expand-region-abbrevs):
26272         * lisp/button.el (button-category-symbol, button-put)
26273         (make-text-button):
26274         * lisp/cus-start.el:
26275         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
26276         (custom--sort-vars-1, load-theme):
26277         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
26278         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
26279         (cl-generic-generalizers):
26280         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
26281         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
26282         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
26283         (advice--make, define-advice):
26284         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
26285         * lisp/emacs-lisp/timer.el (timer-event-handler):
26286         * lisp/env.el (setenv):
26287         * lisp/facemenu.el (facemenu-add-new-face)
26288         (facemenu-add-new-color):
26289         * lisp/faces.el (face-documentation, read-face-name)
26290         (face-read-string, read-face-font, face-spec-set-match-display)
26291         (read-color, x-resolve-font-name):
26292         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
26293         (set-auto-mode, hack-local-variables)
26294         (hack-one-local-variable--obsolete)
26295         (dir-locals-set-directory-class, write-file)
26296         (basic-save-buffer, delete-directory, copy-directory)
26297         (recover-session, recover-session-finish, insert-directory)
26298         (file-modes-char-to-who, file-modes-symbolic-to-number)
26299         (move-file-to-trash):
26300         * lisp/font-lock.el (font-lock-fontify-buffer):
26301         * lisp/format.el (format-write-file, format-find-file)
26302         (format-insert-file):
26303         * lisp/frame.el (get-device-terminal, select-frame-by-name):
26304         * lisp/fringe.el (fringe--check-style):
26305         * lisp/help.el (describe-minor-mode-from-indicator):
26306         * lisp/image.el (image-type):
26307         * lisp/international/fontset.el (x-must-resolve-font-name):
26308         * lisp/international/mule-cmds.el (prefer-coding-system)
26309         (select-safe-coding-system-interactively)
26310         (select-safe-coding-system, activate-input-method)
26311         (toggle-input-method, describe-current-input-method):
26312         * lisp/international/mule-conf.el (code-offset):
26313         * lisp/mouse.el (minor-mode-menu-from-indicator):
26314         * lisp/replace.el (query-replace-read-from)
26315         (occur-after-change-function, occur-1):
26316         * lisp/scroll-bar.el (scroll-bar-columns):
26317         * lisp/simple.el (execute-extended-command)
26318         (undo-outer-limit-truncate, compose-mail, set-variable)
26319         (choose-completion-string, define-alternatives):
26320         * lisp/startup.el (site-run-file, tty-handle-args)
26321         (command-line, command-line-1):
26322         * lisp/subr.el (noreturn, define-error, add-to-list)
26323         (read-char-choice):
26324         * lisp/term/common-win.el (x-handle-xrm-switch)
26325         (x-handle-name-switch, x-handle-args):
26326         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
26327         Use curved quotes in diagnostics.
26328         * lisp/international/mule.el (find-auto-coding):
26329         Use " to quote in a diagnostic, to be consistent with the rest of
26330         this file.
26332         Convert lisp/term/x-win.el to UTF-8
26333         * lisp/term/x-win.el: Convert to UTF-8.  This doesn't affect
26334         runtime behavior, and the file is multilingual so compile-time
26335         appearance shouldn't be an issue.
26336         * admin/notes/unicode: Document this.
26338 2015-08-16  Wilson Snyder  <wsnyder@wsnyder.org>
26340         Update verilog-mode.el to 2015-05-14-6232468-vpo-GNU.
26341         * lisp/progmodes/verilog-mode.el: Fix some non-automated indent
26342         issues and comments, bug#943.
26343         (verilog-type-font-keywords): Cycle delay operators like ##1 and
26344         ##[0:$] are now highlighted in their entirety similarly to the #
26345         delay-control operator.  Likewise, the followed-by operators #-#
26346         and #=# are no longer partially highlighed.
26347         (verilog-backward-syntactic-ws-quick)
26348         (verilog-skip-backward-comments): Minor performance improvements
26349         to buffer traversal functions for reduced latency.
26350         (verilog-calc-1, verilog-in-deferred-immediate-final-p): When the
26351         keyword 'final' follows 'assert/assume/cover', then it is part of
26352         a deferred immediate assertion item and should not be treated as a
26353         final construct for indentation.  Reported by Yuri Sugihara.
26354         (verilog-do-indent): Virtual task/function/class definition lines
26355         should not be considered as declarations.  Reported by Enzo Chi.
26356         (verilog-do-indent): Do not falsely indent to '=' of
26357         property/sequence operators on subsequent lines of a multi-line
26358         statement.
26359         (verilog-assignment-operator-re): Fix '!==' operator and add
26360         support for '<->', ':/', '#-#', and '#=#' operators.
26361         (verilog-calculate-indent, verilog-label-be): Enable
26362         case-sensitive regular expression parsing when looking for
26363         keywords.
26364         (verilog-calc-1): Detect 'pure virtual method' declarations which
26365         exist in abstract classes.  Reported by Enzo Chi and Kaushal Modi.
26366         (verilog-backward-ws&directives): When moving back to the start of
26367         a line and the preceding line ended with an escaped-newline, then
26368         jump up one line.  This properly consumes a multi-line
26369         pre-processor directive.  Reported by Kaushal Modi.
26370         (verilog-dpi-import-export-re, verilog-extended-complete-re)
26371         (verilog-calc-1): Teach verilog-mode to properly indent after a
26372         DPI import/export statement that resides outside of a module.
26373         Reported by Kaushal Modi.
26374         (verilog-extended-complete-re): Update regexp to match both
26375         "DPI-C" and "DPI".  Reported by Kaushal Modi.
26377 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
26379         substitute-command-keys a few more doc strings
26380         * lisp/allout.el (outlineify-sticky):
26381         * lisp/files.el (hack-one-local-variable--obsolete):
26382         * lisp/help-fns.el (help-fns--obsolete, describe-variable):
26383         Use substitute-command-keys on some doc strings so that
26384         they don't use hard-coded key bindings or quoting styles.
26386         Fix quoting in Fformat calls
26387         * src/image.c (xbm_read_bitmap_data, xbm_load_image, xbm_load)
26388         (xpm_load, xpm_load_image, pbm_load, png_load_body)
26389         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
26390         (imagemagick_load, svg_load, svg_load_image, gs_load)
26391         (x_kill_gs_process):
26392         * src/lread.c (load_warn_old_style_backquotes):
26393         * src/xfaces.c (load_pixmap):
26394         * src/xselect.c (x_clipboard_manager_error_1):
26395         Quote diagnostics according to user preference when calling
26396         Fformat or its derivatives.
26398 2015-08-15  Glenn Morris  <rgm@gnu.org>
26400         * admin/admin.el (set-version, set-copyright): Remove deleted files.
26402 2015-08-15  Stephen Leake  <stephen_leake@stephe-leake.org>
26404         Allow describe-function helpers to access buffer-local values
26405         This will be used by cedet/mode-local.el `describe-mode-local-override'
26406         on `help-fns-describe-function-functions' in upstream CEDET.
26407         * lisp/help-fns.el (describe-function-orig-buffer): New, let-bound in
26408         `describe-function'.
26409         (describe-function): Bind it, save it on the help xref stack.
26411         Handle pulse-background being nil
26412         * lisp/cedet/pulse.el (pulse-lighten-highlight): Inherit
26413         pulse-background, handle it being nil.
26415 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
26417         Fix "\`" confusion in Lisp strings
26418         * admin/authors.el (authors-canonical-author-name):
26419         Fix typo by using "\\`" not "\`" in string RE.
26420         * lisp/obsolete/complete.el (PC-complete-as-file-name):
26421         * lisp/obsolete/vi.el (vi-backward-blank-delimited-word):
26422         * lisp/progmodes/verilog-mode.el (verilog-mode-map):
26423         Use plain "`", not the equivalent-but-confusing "\`", in strings.
26424         * lisp/textmodes/texinfmt.el: Fix comment likewise.
26426 2015-08-15  Dani Moncayo  <dmoncayo@gmail.com>
26428         * nt/zipdist.bat: Remove -- no longer used.
26430 2015-08-15  Jürgen Hötzel  <juergen@archlinux.org>
26432         * lisp/net/tramp-sh.el (tramp-remote-selinux-p): Use "selinuxenabled"
26433         rather than "getenforce".
26434         (tramp-sh-handle-set-file-selinux-context): Do not
26435         cache SELinux context if not all context components are given.
26437 2015-08-15  Eli Zaretskii  <eliz@gnu.org>
26439         Add doc strings to 2 help-mode.el functions
26440         * lisp/help-mode.el (help-mode-setup, help-mode-finish): Add doc
26441         strings.  (Bug#21263)
26443         Remove files used by the old MS-Windows specific build procedure
26444         * admin/unidata/makefile.w32-in:
26445         * doc/emacs/makefile.w32-in:
26446         * doc/lispintro/makefile.w32-in:
26447         * doc/lispref/makefile.w32-in:
26448         * doc/misc/makefile.w32-in:
26449         * leim/makefile.w32-in:
26450         * lib-src/makefile.w32-in:
26451         * lib/makefile.w32-in:
26452         * lisp/makefile.w32-in:
26453         * nt/INSTALL.OLD:
26454         * nt/config.nt:
26455         * nt/emacs-src.tags:
26456         * nt/envadd.bat:
26457         * nt/gmake.defs:
26458         * nt/makefile.w32-in:
26459         * nt/multi-install-info.bat:
26460         * nt/nmake.defs:
26461         * nt/paths.h:
26462         * src/makefile.w32-in: Files deleted.
26463         * nt/configure.bat: Remove everything except the blurb about the
26464         new build procedure.
26465         * make-dist: Remove references to makefile.w32-in in various
26466         directories, and to files in nt/ that were deleted.
26467         * etc/NEWS: Mention the fact that the files were dropped.
26469 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
26471         * doc/emacs/mule.texi (Charsets): Give fuller title for ISO-IR.
26472         (Bug#21248)
26474 2015-08-14  Paul Eggert  <eggert@cs.ucla.edu>
26476         Default to inotify instead of gfile
26477         * configure.ac (with_file_notification): Fix typo that
26478         prevented suppression of file notification if HAVE_NS.
26479         (NOTIFY_OBJ): Prefer inotify to gfile if both exist and
26480         with_file_notification is 'yes' (Bug#21241).
26481         * etc/NEWS: Mention this.
26483         Fix broken URLs for ISO-IR
26484         * doc/emacs/mule.texi (Charsets):
26485         * lisp/international/mule-conf.el:
26486         Fix broken URL (Bug#21248).
26488         Low-level diagnostics now use ‘text-quoting-style’
26489         * src/doprnt.c (doprnt):
26490         Format ` and ' as per ‘text-quoting-style’.
26491         * src/xdisp.c (vmessage, message): Mention that the format should
26492         not contain ` or '.
26494         Prefer ‘format’ to ‘substitute-command-keys’
26495         * src/character.h (uLSQM, uRSQM): Move here ...
26496         * src/doc.c (uLSQM, uRSQM): ... from here.
26497         * src/doc.c (Fsubstitute_command_keys):
26498         * src/syntax.c (Finternal_describe_syntax_value):
26499         * lisp/cedet/mode-local.el (mode-local-print-binding)
26500         (mode-local-describe-bindings-2):
26501         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
26502         * lisp/cus-theme.el (describe-theme-1):
26503         * lisp/descr-text.el (describe-text-properties-1, describe-char):
26504         * lisp/emacs-lisp/cl-extra.el (cl--describe-class):
26505         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
26506         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
26507         * lisp/emacs-lisp/package.el (describe-package-1):
26508         * lisp/faces.el (describe-face):
26509         * lisp/help-fns.el (help-fns--key-bindings)
26510         (help-fns--compiler-macro, help-fns--parent-mode)
26511         (help-fns--obsolete, help-fns--interactive-only)
26512         (describe-function-1, describe-variable):
26513         * lisp/help.el (describe-mode):
26514         Prefer ‘format’ to ‘substitute-command-keys’ when either will do
26515         to implement quoting style.  This generally makes the code simpler.
26517         Extend ‘format’ to translate curved quotes
26518         This is a followup to the recent doc string change, and deals with
26519         diagnostics and the like.  This patch is more conservative than
26520         the doc string change, in that the behavior of ‘format’ changes
26521         only if its first arg contains curved quotes and the user prefers
26522         straight or grave quotes.  (Come to think of it, perhaps we should
26523         be similarly conservative with doc strings too, but that can wait.)
26524         The upside of this conservatism is that existing usage is almost
26525         surely unaffected.  The downside is that we'll eventually have to
26526         change Emacs's format strings to use curved quotes in places where
26527         the user might want curved quotes, but that's a simple and
26528         mechanical translation that I'm willing to do later.  (Bug#21222)
26529         * doc/lispref/help.texi (Keys in Documentation):
26530         Move description of text-quoting-style from here ...
26531         * doc/lispref/strings.texi (Formatting Strings):
26532         ... to here, and describe new behavior of ‘format’.
26533         * etc/NEWS: Describe new behavior.
26534         * lisp/calc/calc-help.el (calc-describe-thing):
26535         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
26536         * lisp/info.el (Info-find-index-name):
26537         Use ‘concat’ rather than ‘format’ to avoid misinterpretation
26538         of recently-added curved quotes.
26539         * src/doc.c (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
26540         Move from here ...
26541         * src/lisp.h: ... to here.
26542         * src/doc.c (text_quoting_style): New function.
26543         (Fsubstitute_command_keys): Use it.
26544         * src/editfns.c (Fformat): Implement new behavior.
26545         * src/lisp.h (enum text_quoting_style): New enum.
26547 2015-08-14  Stefan Monnier  <monnier@iro.umontreal.ca>
26549         * src/keyboard.c: Use false/true instead of 0/1 for booleans.
26550         * src/keyboard.h (struct kboard): Mark kbd_queue_has_data as boolean.
26552 2015-08-14  Michael Albinus  <michael.albinus@gmx.de>
26554         * lisp/net/tramp-sh.el (tramp-sh-handle-file-acl): Do not redirect
26555         stderr to /dev/null, this is done in `tramp-send-command-and-check'.
26557 2015-08-14  Jürgen Hötzel  <juergen@archlinux.org>
26559         Flush file properties in Tramp
26560         * lisp/net/tramp-sh.el (tramp-sh-handle-set-file-modes)
26561         (tramp-sh-handle-set-file-times):
26562         * lisp/net/tramp-adb.el (tramp-adb-handle-set-file-modes)
26563         (tramp-adb-handle-set-file-times): Flush the file properties of
26564         the directory.
26566 2015-08-14  Ronnie Schnell  <ronnie@driver-aces.com>
26568         * doc/emacs/misc.texi (Amusements): Fixed typo.
26570 2015-08-14  Eli Zaretskii  <eliz@gnu.org>
26572         Don't miss warnings about removing string text properties while dumping
26573         * src/alloc.c (purecopy): Warn about removing a string's text
26574         properties even when the same string was already pure-copied
26575         earlier.
26576         * lisp/progmodes/elisp-mode.el (elisp--xref-format)
26577         (elisp--xref-format-extra): Fix the commentary.
26579 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
26581         * lisp/progmodes/sh-script.el (sh-mode): Handle .cshrc (bug#21049).
26583 2015-08-13  Magnus Henoch  <magnus.henoch@gmail.com>
26585         * lisp/progmodes/compile.el: Use lexical-binding.
26586         (compilation-move-to-column): Assume 8-wide TABs (bug#21038).
26588 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
26590         (uniquify-ask-about-buffer-names-p): Remove, unused (bug#21037)
26591         * lisp/uniquify.el: Remove redundant `:group's.
26593 2015-08-13  Jürgen Hötzel  <juergen@archlinux.org>
26595         * lisp/net/tramp-adb.el
26596         (tramp-adb-handle-directory-files-and-attributes): Make a copy of
26597         result to prevent modification of the tramp-cache by side effects.
26598         Use the correct cache key.
26600 2015-08-13  Paul Eggert  <eggert@cs.ucla.edu>
26602         Make add_to_log varargs
26603         * src/alloc.c (run_finalizer_handler):
26604         * src/charset.c (load_charset_map_from_vector):
26605         * src/nsimage.m (ns_load_image):
26606         * src/xfaces.c (load_pixmap, load_color2):
26607         Simplify, now that add_to_log has a variable number of args.
26608         * src/image.c (image_error): Take a variable number of args.
26609         Callers simplified.
26610         * src/lisp.h (add_to_log, vadd_to_log): Adjust to new APIs.
26611         * src/xdisp.c (format_nargs, vadd_to_log): New functions.
26612         (add_to_log): Make varargs, and reimplement in terms of vadd_to_log.
26613         * src/xfaces.c (merge_face_ref): Fix typo that omitted color name.
26615         Optional args for holiday-greek-orthodox-easter
26616         * etc/NEWS: Document this.
26617         * lisp/calendar/holidays.el (holiday-greek-orthodox-easter):
26618         Add optional args N and STRING, mimicking the API and code of
26619         ‘holiday-easter-etc’.  From suggestion by Foivos S. Zakkak (Bug#21256).
26621 2015-08-13  Stephen Leake  <stephen_leake@stephe-leake.org>
26623         xref-find-definitions: Exclude more generic function items.
26624         * lisp/emacs-lisp/cl-generic.el (cl--generic-search-method):
26625         Add doc string.
26626         (cl--generic-find-defgeneric-regexp): New.
26627         (find-function-regexp-alist): Add it.
26628         * lisp/emacs-lisp/find-func.el (find-feature-regexp): Move here from
26629         elisp-mode.el, change to search for ";;; Code:"
26630         (find-alias-regexp): Move here from elisp-mode.el, cleaned up.
26631         (find-function-regexp-alist): Add them.
26632         * lisp/progmodes/elisp-mode.el:
26633         (elisp--xref-format, elisp--xref-format-extra): Change back to
26634         defvar due to bug#21237.
26635         (elisp--xref-find-definitions): Exclude co-located default methods for
26636         generic functions.  Also exclude implicitly declared defgeneric.
26637         (elisp--xref-find-definitions): Handle C source properly.  Exclude minor
26638         mode variables defined by 'define-minor-mode'.
26639         * test/automated/elisp-mode-tests.el: Declare generic functions, add
26640         tests for them.
26641         (xref-elisp-test-run): Fix bug.
26642         (emacs-test-dir): Improve initial value.
26643         (find-defs-defun-defvar-el): Don't expect defvar.
26644         (find-defs-feature-el): Match change to find-feature-regexp.
26646 2015-08-13  Eli Zaretskii  <eliz@gnu.org>
26648         Improve warning about purecopy of strings with properties
26649         * src/alloc.c (purecopy): Show the offending string with the
26650         warning about removing its text properties.
26652 2015-08-12  Alan Mackenzie  <acm@muc.de>
26654         Introduce new macros to cover Emacs's new names in cl-lib.el
26655         This also eliminates `mapcan' warnings in XEmacs.
26656         * lisp/progmodes/cc-defs.el (c--mapcan-status): New variable to
26657         characterize [X]Emacs versions.
26658         (top-level): Require either 'cl or 'cl-lib, depending on
26659         c--mapcan-status.
26660         Change this back to cc-external-require from an eval-when-compile
26661         require.
26662         (c--mapcan, c--set-difference, c--intersection, c--macroexpand-all)
26663         (c--delete-duplicates): New macros which expand into either old or new
26664         names.
26665         (c-make-keywords-re, c-lang-defconst, c-lang-const): Use the new macros
26666         rather than the old names.
26667         * lisp/progmodes/cc-engine.el (c-declare-lang-variables): Use c--mapcan
26668         rather than mapcan.
26669         * lisp/progmodes/cc-fonts.el (c-compose-keywords-list): Use c--mapcan.
26670         * lisp/progmodes/cc-langs.el (top-level): Require either 'cl or 'cl-lib,
26671         depending on c--mapcan-status.
26672         (c-filter-ops, c-all-op-syntax-tokens, c-assignment-op-regexp)
26673         (c-type-start-kwds, c-prefix-spec-kwds, c-specifier-key)
26674         (c-not-decl-init-keywords, c-not-primitive-type-keywords)
26675         (c-paren-any-kwds, c-<>-sexp-kwds, c-block-stmt-kwds, c-expr-kwds)
26676         (c-decl-block-key, c-keywords, c-keywords-obarray)
26677         (c-regular-keywords-regexp, c-primary-expr-regexp)
26678         (c-primary-expr-regexp, c-block-prefix-disallowed-chars)
26679         (c-known-type-key, c-nonlabel-token-key)
26680         (c-make-init-lang-vars-fun): Use the new macros rather than the old
26681         names.
26683 2015-08-12  Oleh Krehel  <ohwoeowho@gmail.com>
26685         loadhist.el (read-feature): Conform to completing-read
26686         * lisp/loadhist.el (read-feature): According to `completing-read'
26687         documentation, if collection is a list, then it must be a list of
26688         strings, not a list of symbols like before.
26690 2015-08-12  David Kastrup  <dak@gnu.org>
26692         Deal gracefully with up-events (Bug#19746)
26693         * src/keyboard.c (apply_modifiers_uncached, parse_solitary_modifier)
26694         (parse_modifiers_uncached): React gracefully to "up-" modifiers:
26695         those may easily be injected by user-level Lisp code.
26696         (read_key_sequence): Discard unbound up-events like unbound
26697         down-events: they are even more likely only relevant for special
26698         purposes.
26699         While Emacs will not produce up-events on its own currently (those are
26700         converted to drag or click events before being converted to
26701         Lisp-readable structures), the input queue can be made to contain them
26702         by synthesizing events to `unread-command-events'.  Emacs should deal
26703         consistently with such events.
26705 2015-08-12  Eli Zaretskii  <eliz@gnu.org>
26707         Fix display of thin lines whose newline has line-height property of t
26708         * src/xdisp.c (append_space_for_newline): Don't try to fix ascent
26709         and descent values of non-empty glyph rows, since they could have
26710         forced low values deliberately.  (Bug#21243)
26712 2015-08-12  Richard Stallman  <rms@gnu.org>
26714         Offer to combine multiple To or CC fields.
26715         * lisp/mail/sendmail.el (mail-combine-fields): New function.
26716         (mail-send): Call 'mail-combine-fields'.
26718         Don't decrypt encrypted files.
26719         * lisp/mail/mail-utils.el (mail-file-babyl-p): Bind epa-inhibit to t.
26721         Handle encrypted mbox files.
26722         * lisp/mail/rmailout.el (rmail-output-as-mbox): Decrypt and reencrypt
26723         the mbox file if necessary.
26725         Re-enable mime processing after decryption.  Add 'decrypt' keyword.
26726         * lisp/mail/rmail.el (rmail-epa-decrypt-1): New subroutine.
26727         (rmail-epa-decrypt): rmail-epa-decrypt-1 broken out.
26728         In a mime message, reenable Mime and show the parts that
26729         were shown before.
26730         Add keyword "decrypt" if anything decrypted.
26732         epa-inhibit inhibits auto-recognition of .gpg files
26733         * lisp/epa-file.el (epa-inhibit): New variable.
26734         (epa-file-handler): Check epa-inhibit.
26736 2015-08-12  Artur Malabarba  <bruce.connor.am@gmail.com>
26738         * lisp/emacs-lisp/lisp-mnt.el (lm-header): Add save-excursion.
26740 2015-08-11  Fabián Ezequiel Gallina  <fgallina@gnu.org>
26742         Respect python.el imenu when semantic-mode is off
26743         Fixes bug#21220
26744         * lisp/cedet/semantic/wisent/python.el: Do not force
26745         wisent-python-default-setup on python-mode-hook.
26747 2015-08-11  Paul Eggert  <eggert@cs.ucla.edu>
26749         Give names to Unicode code points in C code
26750         * src/character.h (NO_BREAK_SPACE, SOFT_HYPHEN)
26751         (ZERO_WIDTH_NON_JOINER, ZERO_WIDTH_JOINER, HYPHEN)
26752         (NON_BREAKING_HYPHEN, LEFT_SINGLE_QUOTATION_MARK)
26753         (RIGHT_SINGLE_QUOTATION_MARK, PARAGRAPH_SEPARATOR)
26754         (LEFT_POINTING_ANGLE_BRACKET, RIGHT_POINTING_ANGLE_BRACKET)
26755         (LEFT_ANGLE_BRACKET, RIGHT_ANGLE_BRACKET)
26756         (OBJECT_REPLACEMENT_CHARACTER):
26757         New named constants for Unicode code points.
26758         * src/bidi.c (bidi_fetch_char, CANONICAL_EQU):
26759         * src/composite.c (char_composable_p):
26760         * src/lread.c (readevalloop, read1):
26761         * src/xdisp.c (get_next_display_element):
26762         Use them.
26763         * src/doc.c (LEFT_SINGLE_QUOTATION_POINT):
26764         Remove; now in character.h.
26766 2015-08-11  Stephen Leake  <stephen_leake@stephe-leake.org>
26768         elisp--xref-find-definitions handle cl-defstuct default constructor
26769         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Add FIXME.
26770         (elisp--xref-format-extra): Rename from elisp--xref-format-cl-defmethod.
26771         (elisp--xref-find-definitions): Handle cl-defstuct default constructor.
26772         * test/automated/elisp-mode-tests.el (xref-elisp-test-run): Split out
26773         from xref-elisp-test for ease of debugging.
26774         (xref-elisp-deftest): Rename from xref-elisp-test.
26775         (find-defs-constructor): New test.
26776         (find-defs-defgeneric-el): Match batch test config.
26777         (compile): Required for find-defs compilation-minor-mode test.
26778         (find-defs-defvar-el): Match code change.
26779         (find-defs-face-el): Match code change.
26780         * lisp/progmodes/xref.el (xref-find-function, xref-find-definitions):
26781         Improve doc string.
26783 2015-08-11  Stefan Monnier  <monnier@iro.umontreal.ca>
26785         * lisp/replace.el (perform-replace): Document `replacements'.
26786         (perform-replace): Move the description of the format of `replacements'
26787         from the body's comment to the doc string.
26789 2015-08-11  Jürgen Hötzel  <juergen@archlinux.org>
26791         * lisp/net/tramp-adb.el (tramp-adb-prompt): Match leading escape
26792         sequence.  Recent adb version send initial escape sequences, even
26793         when terminal type is set to TERM=dumb.
26795 2015-08-10  Stephen Leake  <stephen_leake@stephe-leake.org>
26797         Rewrite elisp--xref-find-definitions to handle many more cases; add tests
26798         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
26799         Function deleted.
26800         (elisp--xref-format-cl-defmethod): New defconst.
26801         (find-feature-regexp, find-alias-regexp): New defcustoms.
26802         (elisp--xref-make-xref): New function.
26803         (elisp--xref-find-definitions): Rewrite using the above, handle many
26804         more cases.  Always output all available definitions.
26805         (xref-location-marker): No need for special cases.
26806         * test/automated/elisp-mode-tests.el: Add more tests of
26807         elisp--xref-find-definitions, improve current tests.
26809 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
26811         Fix recording of events pushed onto unread-command-events
26812         * src/keyboard.c (read_char): Make sure events read from
26813         unread-command-events and unread-post-input-method-events are
26814         always recorded by record_char.  Reported by David Kastrup
26815         <dak@gnu.org>, see
26816         https://lists.gnu.org/r/emacs-devel/2015-08/msg00193.html.
26818 2015-08-10  Samer Masterson  <samer@samertm.com>
26820         Set file buffer as current for "--file"
26821         * lisp/startup.el (command-line-1): Set file buffer as current before
26822         it is displayed so it can be used with options like "--eval".
26823         (Bug#21095)
26825 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
26827         Avoid setting LC_NUMERIC on MS-Windows to anything but "C"
26828         * src/emacs.c (synchronize_locale) [WINDOWSNT]: Call fixup_locale
26829         after setting LC_ALL to the desired locale, to avoid affecting how
26830         numbers are read and printed.  (Bug#21223)
26832 2015-08-10  Alan Mackenzie  <acm@muc.de>
26834         Fix "Invalid search bound (wrong side of point)" in fontification
26835         * lisp/progmodes/cc-fonts.el (c-font-lock-declarators): After skipping
26836         an initialization expression, check point is not beyond the
26837         fontification limit.
26839 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
26841         Fix DPI calculation when Xft/DPI is default
26842         * src/xsettings.c (parse_settings): Don't use Xft/DPI default
26843         value of -1, which evaluates to 2**32 - 1 (Bug#21152).
26844         Remove unnecessary cast while we're in the neighborhood.
26846 2015-08-09  Dmitry Gutov  <dgutov@yandex.ru>
26848         Add project-vc-search-path and project-vc-ignores
26849         * lisp/progmodes/project.el (project-vc): New group.
26850         (project-vc-search-path, project-vc-ignores): New variables.
26851         (project--value-in-dir): Utility function.
26852         (project-search-path, project-ignores): Use them.
26853         * lisp/progmodes/xref.el (xref--rgrep-command): Only replace `./'
26854         at bos.  Don't add extra `/'.  Don't prepend with `*' if replaced.
26856 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
26858         Fix some minor quoting issues with grave accent
26859         * src/dispnew.c (add_window_display_history) [GLYPH_DEBUG]:
26860         Remove redundant quotes.
26861         * src/doc.c (uLSQM, uRSQM): New macros.
26862         * src/doc.c (Fsubstitute_command_keys):
26863         * src/syntax.c (Finternal_describe_syntax_value): Follow the user
26864         preference for quotes rather than hardcoding the ‘grave’ style.
26865         * src/regex.c (PUSH_FAILURE_POINT, POP_FAILURE_POINT)
26866         (re_match_2_internal) [DEBUG]: In debugging output, quote C
26867         strings with "...", not `...'.
26869         ChangeLog.2 ignores remote-tracking merges
26870         * build-aux/gitlog-to-emacslog: Ignore commit logs matching
26871         "Merge remote-tracking branch '.*'" too.  See Eli Zaretskii in:
26872         https://lists.gnu.org/r/emacs-devel/2015-08/msg00384.html
26874 2015-08-09  Nicolas Richard  <youngfrog@members.fsf.org>
26876         Use kpsewhich in ffap-latex-mode, if available
26877         * lisp/ffap.el (ffap-latex-guess-rules): New variable.
26878         (ffap-latex-mode): Use kpsewhich if available.
26880         ffap: disallow braces in filenames for tex modes
26881         * lisp/ffap.el (ffap-string-at-point-mode-alist): Don't allow
26882         braces in tex-related modes.
26884         Remove useless backslashes from ffap-string-at-point-mode-alist
26885         * lisp/ffap.el (ffap-string-at-point-mode-alist): Remove useless and
26886         misleading backslashes from default value.
26888         Augment docstring of ffap-string-at-point-mode-alist
26889         * lisp/ffap.el (ffap-string-at-point-mode-alist): Describe how BEG
26890         and END are handled.
26892 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
26894         * lisp/org/org-src.el (org-edit-src-code)
26895         (org-edit-fixed-width-region):
26896         * lisp/simple.el (completion-setup-function):
26897         Remove calls to substitute-command-keys that always just return
26898         their argument.
26900 2015-08-09  Daiki Ueno  <ueno@gnu.org>
26902         * lisp/epa.el (epa-exit-buffer-function): Set to `quit-window'.
26903         (Bug#21210)
26905 2015-08-09  Ivan Kanis  <ivan@kanis.fr>
26907         Fix link to source code in help window
26908         * lisp/help-fns.el (find-lisp-object-file-name): Remove code that
26909         will never work due to Glenn Morris change a6d63d9 on Apr 20 2013
26910         'No longer include timestamp in header of .elc files'.  Add code
26911         that will return .el source file in load-path.
26913 2015-08-09  Artur Malabarba  <bruce.connor.am@gmail.com>
26915         * lisp/isearch.el (isearch-search-fun-default): (Bug#21164)
26916         Respect `isearch-lax-whitespace' when searching through
26917         `isearch-word'.
26919 2015-08-08  Stefan Monnier  <monnier@iro.umontreal.ca>
26921         * test/automated/ert-tests.el (ert-test-deftest): Add FIXME.
26923         * lisp/org/org.el: Fix up some lexical scoping warnings, and use dolist
26924         * lisp/org/org.el (org-set-regexps-and-options-for-tags, org-goto-map)
26925         (org-set-regexps-and-options, org-assign-fast-keys)
26926         (org-contextualize-keys, org-contextualize-validate-key)
26927         (org-notes-order-reversed-p, org-local-logging, org-map-entries)
26928         (org-find-olp, org-find-exact-heading-in-directory)
26929         (org-cycle-agenda-files, org-release-buffers, org-fill-template)
26930         (org-agenda-prepare-buffers, org-occur-in-agenda-files)
26931         (org-replace-escapes): Use dolist.
26932         (org-mode): Optimize away XEmacs-only code.
26933         (org-refile-get-targets): Remove unused var `f'.
26934         (org-fast-todo-selection): Remove unused var `e'.
26935         (org-make-tags-matcher): Use dolist.  Remove unused var `term'.
26936         (org-fast-tag-selection): Use dolist.  Remove unused var `e'.
26937         (org-format-latex): Use dolist.  Remove unused var `e'.
26938         (org-toggle-heading): Access vars lexically rather than dynamically.
26939         (org-backward-sentence, org-forward-sentence, org-meta-return)
26940         (org-kill-line): Mark arg as unused.
26941         (org-submit-bug-report): Silence compiler warning.
26942         (org-occur-in-agenda-files): Don't use add-to-list on local vars.
26943         (org-get-cursor-date): Remove unused var `tm'.
26944         (org-comment-or-uncomment-region): Use standard name `_'.
26945         (reftex-docstruct-symbol, reftex-cite-format): Declare to
26946         silence byte-compiler.
26947         (org-reftex-citation): Add `org--' prefix to dynamically scoped
26948         `rds' var.
26950 2015-08-08  Paul Eggert  <eggert@cs.ucla.edu>
26952         Electric quote if coding is undecided or no conv
26953         * lisp/electric.el (electric--insertable-p): Also say that a
26954         string is insertable if the buffer file coding system is undecided
26955         or uses no conversion, as curved quotes will work in either case.
26957         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Simplify configuration.
26959 2015-08-08  Eli Zaretskii  <eliz@gnu.org>
26961         Fix overlay string display regressions introduced in Emacs 24.5
26962         * src/xdisp.c (pop_it): Reset the flag to ignore overlays at this
26963         buffer position, if we move the iterator to a new position as
26964         result of jumping over text covered by a "replacing" display
26965         property.
26966         * test/redisplay-testsuite.el (test-redisplay-4): Add 2 new tests.
26968         Support recovery from C stack overflow on MS-Windows
26969         * src/w32fns.c (w32_reset_stack_overflow_guard)
26970         (stack_overflow_handler): New functions for handling C stack
26971         overflow exceptions.
26972         (my_exception_handler): Handle EXCEPTION_STACK_OVERFLOW exceptions
26973         specially, and zero out except_addr if we do.
26974         (globals_of_w32fns): Initialize dwMainThreadId in non-interactive
26975         mode.
26976         * src/sysdep.c [HAVE_STACK_OVERFLOW_HANDLING]: Add !WINDOWSNT to
26977         the condition, as HAVE_STACK_OVERFLOW_HANDLING is now defined for
26978         the MinGW build, but the code guarded by that is for Posix hosts.
26979         * src/keyboard.c (command_loop) [WINDOWSNT]:
26980         Call w32_reset_stack_overflow_guard.
26981         * nt/inc/ms-w32.h (sigjmp_buf): New typedef.
26982         (sigsetjmp): New macro.
26983         (w32_reset_stack_overflow_guard): Declare the prototype.
26984         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Set to 1 for MinGW.
26986 2015-08-07  Phillip Lord  <phillip.lord@newcastle.ac.uk>
26988         Improve error signaling for seq-subseq
26989         * lisp/emacs-lisp/seq.el (seq-subseq): The existing behavior is to error
26990         when indexes are too large, but to silently ignore numbers which
26991         are too negative for lists.  String and vector handling errors in
26992         both cases.  This has been regularized.  Error signaling behavior
26993         has been explicitly added to the doc string.
26995         * lisp/emacs-lisp/cl-extra.el (cl-subseq): Defers to (seq-subseq) and is
26996         therefore also impacted by this change.  Update the doc string
26997         to reflect this.
26999         * test/automated/seq-tests.el (test-seq-subseq): Tests have been
27000         added for these exceptional cases, as well as one non exceptional
27001         base case.
27003 2015-08-07  Jürgen Hötzel  <juergen@archlinux.org>
27005         Improve error checking in tramp-adb.el
27006         * lisp/net/tramp-adb.el (tramp-adb-ls-output-name-less-p):
27007         Improve error checking.  "ls -l" on Android in Enforcing mode can
27008         print "lstat './FILENAME failed: Permission denied".
27010 2015-08-07  Stefan Monnier  <monnier@iro.umontreal.ca>
27012         * lisp/emacs-lisp/cl-generic.el (cl--generic-struct-tag): Don't burp on
27013         non-struct vectors.
27015 2015-08-07  Stephen Leake  <stephen_leake@stephe-leake.org>
27017         Fix typo in lisp/window.el, more `display-buffer-use-some-frame'
27018         * lisp/window.el: Fix typo that broke build.
27019         (display-buffer--action-function-custom-type):
27020         Add `display-buffer-use-some-frame'.
27021         (display-buffer): Add `display-buffer-use-some-frame' to doc string.
27023         Add support for 'inhibit-same-window in 'display-buffer-use-some-frame'
27024         * lisp/window.el (display-buffer-use-some-frame): Add support for
27025         'inhibit-same-window in alist.
27026         * doc/lispref/windows.texi (display-buffer-use-some-frame):
27027         Doc support for 'inhibit-same-window in alist.
27029 2015-08-07  Eli Zaretskii  <eliz@gnu.org>
27031         Avoid infinite loop in display of invisible text in strings
27032         * src/xdisp.c (handle_invisible_prop): If the next change of
27033         invisibility spec does not mean the beginning of a visible text,
27034         update the string position from which to start the search for the
27035         next invisibility change.  This avoids an infinite loop when we
27036         have more than one invisibility spec that are made inactive by
27037         buffer-invisibility-spec.  Simplify code.  (Bug#21200)
27038         * test/redisplay-testsuite.el (test-redisplay-4): Add a test case
27039         for the situation that caused bug #21200.
27041 2015-08-06  Artur Malabarba  <bruce.connor.am@gmail.com>
27043         * lisp/emacs-lisp/package.el: Simplify describe-package-1
27044         (package-help-section-name-face): New face.
27045         (package--print-help-section): New function.
27046         (describe-package-1): Refactor section printing.
27047         (package-make-button): Use face instead of font-lock-face, which
27048         doesn't work on buttons.
27050         * lisp/emacs-lisp/package.el: Define custom faces
27051         (package-name-face, package-description-face)
27052         (package-status-built-in-face, package-status-external-face)
27053         (package-status-available-face, package-status-new-face)
27054         (package-status-held-face, package-status-disabled-face)
27055         (package-status-installed-face, package-status-dependency-face)
27056         (package-status-unsigned-face, package-status-incompat-face)
27057         (package-status-avail-obso-face): New faces.
27058         (package-menu--print-info-simple): Use them.
27060 2015-08-05  Paul Eggert  <eggert@cs.ucla.edu>
27062         Fix some confusion with ‘format’
27063         * lisp/allout-widgets.el (allout-widgets-before-change-handler)
27064         (allout-graphics-modification-handler):
27065         Protect arbitrary string in a format context with "%s" format.
27066         * lisp/avoid.el:
27067         * lisp/cedet/semantic/bovine/scm.el: Fix comment.
27068         * lisp/calendar/icalendar.el (icalendar--convert-sexp-to-ical):
27069         * lisp/erc/erc-button.el (erc-button-beats-to-time):
27070         * lisp/gnus/message.el (message-send-form-letter):
27071         * lisp/org/ob-core.el (org-babel-check-evaluate)
27072         (org-babel-confirm-evaluate):
27073         * lisp/org/ob-fortran.el (org-babel-fortran-var-to-fortran):
27074         * lisp/org/ox-latex.el (org-latex-compile):
27075         * lisp/org/ox-man.el (org-man-compile):
27076         * lisp/org/ox-odt.el (org-odt-template):
27077         * lisp/org/ox-texinfo.el (org-texinfo-compile):
27078         * lisp/progmodes/prolog.el (prolog-help-info)
27079         (prolog-view-predspec):
27080         * lisp/progmodes/ruby-mode.el (ruby-parse-partial):
27081         * lisp/progmodes/verilog-mode.el (verilog-showscopes):
27082         * lisp/textmodes/rst.el (rst-replace-lines):
27083         Change (message (format ...)) to (message ...), and likewise
27084         for ‘error’.  This lessens the probability of confusion when the
27085         output of ‘format’ contains ‘%’.
27087 2015-08-05  Artur Malabarba  <bruce.connor.am@gmail.com>
27089         * lisp/replace.el (replace-character-fold): Default to nil.
27091         * lisp/character-fold.el: Fix lax whitespace.
27092         (character-fold-table): Don't make space match other whitespace chars.
27093         (character-fold-to-regexp): Simplify lax behavior.
27095 2015-08-05  Dmitry Gutov  <dgutov@yandex.ru>
27097         Preserve window point in xref-find-definitions-other-window
27098         Fix the problem reported by Ingo Logmar in
27099         https://lists.gnu.org/r/emacs-devel/2015-08/msg00152.html
27100         * lisp/progmodes/xref.el (xref--goto-char): Extract from
27101         xref--goto-location.
27102         (xref--pop-to-location): Use it.  Replace xref--goto-location with
27103         a direct xref-location-marker call.
27104         (xref--show-location): Likewise.
27105         (xref--display-position): Use xref--goto-char.
27107         * lisp/progmodes/project.el: Add a paragraph to the front matter.
27109 2015-08-04  David Kastrup  <dak@gnu.org>
27111         * lisp/vc/emerge.el (emerge-show-file-name):
27112         * lisp/progmodes/vhdl-mode.el (vhdl-electric-dash)
27113         (vhdl-comment-insert, vhdl-hooked-abbrev):
27114         * lisp/progmodes/octave.el (inferior-octave-dynamic-list-input-ring):
27115         * lisp/progmodes/fortran.el (fortran-window-create-momentarily):
27116         * lisp/progmodes/ebrowse.el (ebrowse-hack-electric-buffer-menu):
27117         * lisp/progmodes/cperl-mode.el (cperl-putback-char):
27118         * lisp/obsolete/vip.el (vip-escape-to-emacs)
27119         (vip-prefix-arg-value, vip-prefix-arg-com):
27120         * lisp/obsolete/terminal.el (te-escape-extended-command-unread):
27121         * lisp/leim/quail/tibetan.el (quail-tibetan-update-translation)
27122         (quail-tibkey-update-translation):
27123         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
27124         * lisp/leim/quail/lao.el (quail-lao-update-translation):
27125         * lisp/leim/quail/japanese.el (quail-japanese-update-translation)
27126         (quail-japanese-self-insert-and-switch-to-alpha):
27127         * lisp/leim/quail/hangul.el (hangul2-input-method)
27128         (hangul3-input-method, hangul390-input-method):
27129         * lisp/language/hanja-util.el (hangul-to-hanja-char):
27130         * lisp/international/robin.el (robin-input-method):
27131         * lisp/international/quail.el (quail-start-translation)
27132         (quail-start-conversion):
27133         * lisp/gnus/gnus-art.el (gnus-article-describe-key)
27134         (gnus-article-describe-key-briefly):
27135         * lisp/eshell/em-hist.el (eshell-list-history):
27136         * lisp/term.el (term-dynamic-list-input-ring)
27137         (term-dynamic-list-completions):
27138         * lisp/subr.el (momentary-string-display):
27139         * lisp/simple.el (read-quoted-char):
27140         * lisp/pcomplete.el (pcomplete-show-completions):
27141         * lisp/kmacro.el (kmacro-repeat-on-last-key):
27142         * lisp/info.el (Info-summary):
27143         * lisp/ehelp.el (electric-help-command-loop):
27144         * lisp/ebuff-menu.el (electric-buffer-list)
27145         (Electric-buffer-menu-exit):
27146         * lisp/double.el (double-translate-key):
27147         * lisp/comint.el (comint-dynamic-list-input-ring)
27148         (comint-dynamic-list-completions): Do not overwrite preexisting
27149         contents of `unread-command-events' when putting new events into it.
27151 2015-08-04  Daniel Colascione  <dancol@dancol.org>
27153         Improve ansi-color filtering of unrecognized escape sequences
27154         * lisp/ansi-color.el (ansi-color-drop-regexp): Recognize mode-setting
27155         escape sequences.
27156         (ansi-color-filter-apply, ansi-color-apply): Filter out
27157         unrecognized escape sequences.
27159 2015-08-04  Artur Malabarba  <bruce.connor.am@gmail.com>
27161         * lisp/emacs-lisp/package.el (package-menu-mode-map): Convert menu
27162         definitions to `easy-menu-define', improve a couple to account for
27163         async, and add a couple of new commands.
27165 2015-08-03  Jürgen Hötzel  <juergen@archlinux.org>
27167         * lisp/net/tramp-cache.el (tramp-set-file-property): Fix code typo.
27169 2015-08-03  Ingo Lohmar  <i.lohmar@gmail.com>
27171         Add new 'calendar-weekend-days' option
27172         Make the days receiving the 'calendar-weekend-header' face freely
27173         customizable, as they differ by region/culture.
27174         * doc/emacs/calendar.texi (Move to Beginning or End): Document the
27175         new variable.
27176         * lisp/calendar/calendar.el (calendar-generate-month): New variable
27177         calendar-weekend-days to customize day header fontification.
27179 2015-08-03  Paul Eggert  <eggert@cs.ucla.edu>
27181         Redo text-quoting-style variable
27182         Rename help-quote-translation to text-quoting-style,
27183         and use symbols rather than characters as values.
27184         This follows suggestions along these lines by Alan Mackenzie in:
27185         https://lists.gnu.org/r/emacs-devel/2015-06/msg00343.html
27186         and by Drew Adams in:
27187         https://lists.gnu.org/r/emacs-devel/2015-08/msg00048.html
27188         * doc/lispref/help.texi (Keys in Documentation)
27189         * etc/NEWS:
27190         * lisp/cus-start.el (standard):
27191         * src/doc.c (Fsubstitute_command_keys, syms_of_doc):
27192         Document and/or implement the new behavior instead of the old.
27193         (syms_of_doc): New symbols 'grave' and 'straight'.
27195 2015-08-03  Nikolaus Rath  <Nikolaus@rath.org>
27197         nnimap.el: Use IMAP MOVE extension if available
27198         * lisp/gnus/nnimap.el (nnimap-request-move-article)
27199         (nnimap-process-expiry-targets, nnimap-split-incoming-mail):
27200         Use MOVE extension if available.
27202         nnimap.el: Explicitly ask for server capabilities
27203         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Don't assume full
27204         capabilities will be returned in the login-result.
27206 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
27208         Treat help strings like other doc strings
27209         * doc/lispref/text.texi (Special Properties), etc/NEWS: Document this.
27210         * lisp/epa.el (epa--select-keys): Remove no-longer-needed calls to
27211         substitute-command-keys.
27212         * src/keyboard.c (show_help_echo, parse_menu_item): Call
27213         substitute-command-keys on the help string before displaying it.
27215         Also mention "curly quotes"
27216         See Drew Adams's email in:
27217         https://lists.gnu.org/r/emacs-devel/2015-08/msg00040.html
27218         * doc/lispref/help.texi (Keys in Documentation):
27219         Add index entry "curly quotes".
27220         * etc/NEWS: Use the phrase "curly quotes" too.
27222         ede-proj-target-makefile docstring tweaks
27223         * lisp/cedet/ede/proj.el (ede-proj-target-makefile):
27224         Consistently use "all:" to describe the all: target,
27225         replacing three different and confusingly-quoted usages.
27227 2015-08-02  Evgeny Fraimovitch  <johnlen7@gmail.com>  (tiny change)
27229         Don't abort emacsclientw when -a was specified
27230         * lib-src/emacsclient.c (set_tcp_socket) [WINDOWSNT]: Don't error
27231         out if we are in emacsclientw and -a was specified.
27233 2015-08-02  Eli Zaretskii  <eliz@gnu.org>
27235         Fix handling of 1st keystroke on MS-Windows
27236         * src/w32fns.c (globals_of_w32fns): Initialize after_deadkey to -1.
27237         This is needed to correctly handle the session's first keystroke,
27238         if it has any modifiers.  (Bug#19994)
27240 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
27242         Substitute some customization etc. doc strings
27243         These changes apply substitute-command-keys to some
27244         doc strings that were going through untranslated
27245         when creating customization or other widgets.
27246         * lisp/cus-edit.el (custom-group-value-create):
27247         * lisp/wid-edit.el (widget-default-create):
27248         (widget-push-button-value-create):
27249         Treat the widget tag as a doc string.
27250         * lisp/emacs-lisp/cl-extra.el (cl--describe-class-slot):
27251         Treat the :documentation value as a doc string.
27252         * lisp/wid-edit.el (widget-choose):
27253         Treat the choice names as doc strings.
27254         (widget-default-create): Treat the :doc value as a doc string.
27255         (widget-toggle-value-create): Treat the :on and :off values
27256         as doc strings.
27257         (widget-documentation-string-value-create):
27258         Substitute the doc string.
27260 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
27262         Add a second argument to project-ignores
27263         * lisp/progmodes/project.el (project-ignores): Add a second
27264         argument DIR.
27265         * lisp/progmodes/project.el (project-ignores): Only include the VC
27266         ignores if DIR is the VC root.
27267         * lisp/progmodes/xref.el (xref-find-regexp): Update accordingly.
27269 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
27271         Prevent incorrect display when 'line-spacing' variable is set
27272         * src/xdisp.c (try_window_id): Give up this optimization if the
27273         buffer has its 'line-spacing' variable set non-nil.
27275 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
27277         Don't pass NOVISIT to find-file
27278         * lisp/progmodes/etags.el (next-file):
27279         Don't pass NOVISIT to find-file (bug#21175).
27281         Ignore buffer restriction for tags-loop-eval
27282         * lisp/progmodes/etags.el (tags-loop-continue): Ignore buffer
27283         restriction (bug#21167).
27285 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
27287         Fix a thinko in 'ffap-gopher-at-point'
27288         * lisp/ffap.el (ffap-gopher-at-point): Fix last change.  (Bug#21168)
27290         Honor 'line-spacing' for empty lines
27291         * src/xdisp.c (append_space_for_newline): Honor 'line-height'
27292         property and 'line-spacing' frame parameter or variable or
27293         property for empty lines, by doing the same processing as in
27294         x_produce_glyph for newline characters.  (Bug#21165)
27296 2015-08-01  Paul Eggert  <eggert@cs.ucla.edu>
27298         Simplify by assuming C99 integer division
27299         * src/floatfns.c (ceiling2, floor2, truncate2):
27300         Assume C99 (i.e., Fortran) semantics for integer division.
27301         This simplifies the code.
27303 2015-07-31  Paul Eggert  <eggert@cs.ucla.edu>
27305         Don't overflow if computing approximate percentage
27306         * lisp/align.el (align-region):
27307         * lisp/cedet/semantic.el (semantic-repeat-parse-whole-stream):
27308         * lisp/cedet/semantic/wisent.el (wisent-parse-region):
27309         * lisp/cus-edit.el (custom-buffer-create-internal):
27310         * lisp/emacs-lisp/checkdoc.el (checkdoc-interactive-ispell-loop)
27311         (checkdoc-message-interactive-ispell-loop, checkdoc-next-error)
27312         (checkdoc-next-message-error):
27313         * lisp/emacs-lisp/eieio-opt.el (eieio-display-method-list):
27314         * lisp/epa.el (epa-progress-callback-function):
27315         * lisp/erc/erc-dcc.el (erc-dcc-do-LIST-command):
27316         * lisp/ffap.el (ffap-menu-rescan):
27317         * lisp/gnus/nnbabyl.el (nnbabyl-retrieve-headers):
27318         * lisp/gnus/nndiary.el (nndiary-retrieve-headers):
27319         * lisp/gnus/nneething.el (nneething-retrieve-headers):
27320         * lisp/gnus/nnmbox.el (nnmbox-retrieve-headers):
27321         * lisp/gnus/nnmh.el (nnmh-retrieve-headers):
27322         * lisp/gnus/nnml.el (nnml-retrieve-headers):
27323         * lisp/gnus/nnspool.el (nnspool-retrieve-headers):
27324         * lisp/gnus/nntp.el (nntp-retrieve-headers)
27325         (nntp-retrieve-articles):
27326         * lisp/imenu.el (imenu--relative-position):
27327         * lisp/international/ja-dic-cnv.el (skkdic-collect-okuri-nasi)
27328         (skkdic-convert-okuri-nasi):
27329         * lisp/net/ange-ftp.el (ange-ftp-process-handle-hash):
27330         * lisp/nxml/rng-valid.el (rng-compute-mode-line-string):
27331         * lisp/org/org-list.el (org-update-checkbox-count):
27332         * lisp/org/org.el (org-table-map-tables)
27333         (org-update-parent-todo-statistics):
27334         * lisp/play/decipher.el (decipher-insert-frequency-counts)
27335         (decipher-analyze-buffer):
27336         * lisp/profiler.el (profiler-format-percent):
27337         * lisp/progmodes/cc-cmds.el (c-progress-update):
27338         * lisp/progmodes/cpp.el (cpp-highlight-buffer):
27339         * lisp/progmodes/idlwave.el (idlwave-convert-xml-system-routine-info)
27340         (idlwave-list-load-path-shadows):
27341         * lisp/progmodes/opascal.el (opascal-step-progress):
27342         * lisp/progmodes/vhdl-mode.el (vhdl-update-progress-info)
27343         (vhdl-scan-directory-contents):
27344         * lisp/textmodes/bibtex.el (bibtex-progress-message):
27345         * lisp/textmodes/flyspell.el (flyspell-small-region)
27346         (flyspell-external-point-words):
27347         * lisp/textmodes/table.el (table-recognize):
27348         Prefer (floor (* 100.0 NUMERATOR) DENOMINATOR) when calculating
27349         progress-report percentages and the like.  This avoids problems
27350         if (* 100 NUMERATOR) would overflow.
27351         * lisp/gnus/gnus-registry.el (gnus-registry-import-eld):
27352         * lisp/gnus/registry.el (registry-reindex):
27353         Use (* 100.0 ...) rather than (* 100 ...) to avoid int overflow issues.
27354         * lisp/descr-text.el (describe-char):
27355         * lisp/org/org-colview.el (org-nofm-to-completion):
27356         * lisp/ps-print.el (ps-plot):
27357         * lisp/simple.el (what-cursor-position):
27358         Prefer (round (* 100.0 NUMERATOR) DENOMINATOR) to a
27359         more-complicated and less-accurate approximation.
27361         Fix some int overflows in profiler.c
27362         * src/profiler.c (make_log): Make args EMACS_INT, not int,
27363         to avoid unwanted behavior on 'int' overflow.
27364         (make_log, evict_lower_half, record_backtrace):
27365         Use ptrdiff_t, not int, for object indexes.
27367         Port to pedantic memcpy
27368         * src/keyboard.c (menu_bar_items, tool_bar_items):
27369         * src/xrdb.c (magic_db):
27370         Port to pedantic memcpy implementations that reject memcpy (0, 0, 0).
27372         Merge from gnulib
27373         This incorporates:
27374         2015-07-29 time_rz: port to pedantic memcpy
27375         * lib/time_rz.c: Copy from gnulib.
27377 2015-07-31  Artur Malabarba  <bruce.connor.am@gmail.com>
27379         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
27380         When updating the very last entry, tabulated-list-print would
27381         erase it and then try to look at the next one (which obviously
27382         isn't there).
27384 2015-07-31  Eli Zaretskii  <eliz@gnu.org>
27386         Allow to use the old key processing code on MS-Windows
27387         * src/w32fns.c (syms_of_w32fns) <w32-use-fallback-wm-chars-method>:
27388         New variable.
27389         (w32_wnd_proc): Use it to invoke the old code that processed
27390         character keys, as fallback, when this variable is non-nil.
27391         Fix typos in comments.  (Bug#19994)
27393 2015-07-31  Ilya Zakharevich  <ilya@math.berkeley.edu>
27395         Improve handling of Unicode keyboard input on MS-Windows
27396         * src/w32fns.c (get_wm_chars, deliver_wm_chars): New functions.
27397         (FPRINTF_WM_CHARS) [DEBUG_WM_CHARS]: New macro for debugging.
27398         (w32_wnd_proc): Call deliver_wm_chars to process non-special keys
27399         upon receiving WM_KEYDOWN or WM_SYSKEYDOWN messages.  If that is
27400         successful, don't call TranslateMessage.  (Bug#19994)
27402 2015-07-30  Dmitry Gutov  <dgutov@yandex.ru>
27404         Fix default-directory in changeset diffs after vc-print-log
27405         * lisp/vc/log-view.el (log-view-diff-common): Move the
27406         revision-granularity check back into log-view-diff-changeset.
27407         (log-view-diff-changeset): Bind default-directory to the current
27408         VC root.
27410         Rename project-directories to project-roots
27411         * lisp/progmodes/project.el (project-search-path-function)
27412         (project-search-path): Update the docstring.
27413         (project-directories): Rename to `project-roots', update all
27414         callers and implementations accordingly.
27415         (project-root): Remove.
27416         * lisp/progmodes/xref.el (xref-find-regexp): Use * instead of *.*
27417         as the default file mask.
27419 2015-07-30  Eli Zaretskii  <eliz@gnu.org>
27421         Support long URLs in w32-shell-execute
27422         * src/w32fns.c (Fw32_shell_execute): Don't use filename_to_utf16
27423         and filename_to_ansi to convert the DOCUMENT argument, as it could
27424         be a URL that is not limited to MAX_PATH characters.  Instead, use
27425         MultiByteToWideChar directly, and allocate heap storage as
27426         required to accommodate the converted string.  Likewise with
27427         non-Unicode operation.  Ensure OPERATION is null-terminated, even
27428         if it is longer than 32K bytes.  (Bug#21158)
27430 2015-07-30  Stephen Leake  <stephen_leake@stephe-leake.org>
27432         * lisp/vc/vc-mtn.el (vc-mtn-find-revision): Handle null rev.
27434 2015-07-29  Stephen Leake  <stephen_leake@stephe-leake.org>
27436         Add docs for display-buffer action display-buffer-use-some-frame
27437         * lisp/window.el (display-buffer-use-some-frame): Improve doc string.
27438         * doc/lispref/windows.texi (Display Action Functions):
27439         Add display-buffer-use-some-frame.
27440         * etc/NEWS: Mention display-buffer-use-some-frame.
27442         Add display-buffer action display-buffer-use-some-frame
27443         * lisp/window.el (display-buffer-use-some-frame): New.
27445         Handle vc-mtn error more gently
27446         * lisp/vc/vc-mtn.el (vc-mtn-mode-line-string): Return "" when
27447         branch is nil.
27449 2015-07-29  Michael Albinus  <michael.albinus@gmx.de>
27451         Fix Tramp problems with multihops, and nc
27452         * lisp/net/tramp-cache.el (tramp-get-file-property)
27453         (tramp-set-file-property, tramp-flush-file-property)
27454         (tramp-get-connection-property, tramp-set-connection-property)
27455         (tramp-flush-connection-property): Remove hop from vector.
27456         * lisp/net/tramp-gw.el (tramp-gw-process-filter): Ignore errors.
27457         * lisp/net/tramp-sh.el (tramp-methods) <nc>: Separate STDERR.
27458         (tramp-do-copy-or-rename-file-out-of-band): Increase timeout of
27459         netstat to 60".
27460         (tramp-sh-handle-start-file-process): Do not show hops in prompt.
27461         * lisp/net/tramp.el (tramp-handle-file-name-as-directory)
27462         (tramp-handle-file-name-directory, tramp-handle-file-remote-p):
27463         Keep hop in result.
27464         * test/automated/tramp-tests.el (tramp-test02-file-name-dissect):
27465         Add hop tests.
27467 2015-07-29  Eli Zaretskii  <eliz@gnu.org>
27469         Resurrect highlighting of repeated words by Flyspell Mode
27470         * lisp/textmodes/flyspell.el (flyspell-word): Leave some non-word
27471         characters between point and the doublon candidate, so that
27472         flyspell-word-search-backward finds it.  (Bug#21157)
27474         Fix redisplay of large images on expose events
27475         * src/xdisp.c (expose_window, expose_area): Avoid comparisons
27476         between signed negative values and unsigned values.  This
27477         prevented redisplay on expose events when the window showed a very
27478         large image.
27480 2015-07-29  Paul Eggert  <eggert@cs.ucla.edu>
27482         Remove unnecessary stack overflow dependency
27483         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING):
27484         Don't worry about $ac_cv_header_sys_resource_h and
27485         $ac_cv_func_getrlimit, as they're no longer needed for this.
27486         Problem reported by Eli Zaretskii in:
27487         https://lists.gnu.org/r/emacs-devel/2015-07/msg00443.html
27489 2015-07-28  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
27491         Pacify compilation -Wincompatible-pointer-types warnings
27492         * src/w32proc.c (Fw32_get_codepage_charset): Avoid compilation
27493         warning.
27494         (CompareStringW_Proc): New typedef.
27495         (w32_compare_strings): Use it, to pacify compiler warnings under
27496         "-Wincompatible-pointer-types".
27497         * src/w32fns.c (GetDiskFreeSpaceExW_Proc)
27498         (GetDiskFreeSpaceExA_Proc): New typedefs.
27499         (Ffile_system_info): Use them, to pacify compiler warnings under
27500         "-Wincompatible-pointer-types".
27502 2015-07-28  Paul Eggert  <eggert@cs.ucla.edu>
27504         Fix subscript error in calculate_direct_scrolling
27505         Use slightly-longer cost vectors.  Without this change,
27506         calculate_direct_scrolling can have a subscript violation when
27507         FRAME_LINES (frame) <= delta.
27508         * src/scroll.c (calculate_scrolling, calculate_direct_scrolling)
27509         (line_ins_del, do_line_insertion_deletion_costs):
27510         Allocate and use slightly-larger cost vectors, ones based on
27511         FRAME_TOTAL_LINES instead of FRAME_LINES.
27513         Fix uninitalized value in encode_coding_object
27514         * src/coding.c (encode_coding_object): Also initialize
27515         coding->src_pos and coding->src_pos_byte when NILP (src_object).
27516         This avoids later use of uninitialized storage.
27518 2015-07-27  Xue Fuqiao  <xfq.free@gmail.com>
27520         * doc/lispref/variables.texi (Variable Aliases): Typo fix.
27521         (Bug#21141)
27523 2015-07-27  Paul Eggert  <eggert@cs.ucla.edu>
27525         Merge from gnulib
27526         This incorporates:
27527         2015-07-27 time_rz: port better to MinGW
27528         2015-07-27 time: port __need_time_t to MinGW
27529         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
27530         * lib/strftime.c, lib/time.in.h, lib/time_rz.c: Copy from gnulib.
27531         * lib/time-internal.h: New file, from gnulib.
27533 2015-07-27  Eli Zaretskii  <eliz@gnu.org>
27535         Handle NULL pointers in w32heap.c allocation routines
27536         * src/w32heap.c (FREEABLE_P): Consider a NULL pointer "not
27537         freeable".
27538         (realloc_after_dump, realloc_before_dump, free_before_dump):
27539         Handle NULL pointers gracefully, as Emacs now seems to expect that.
27541         Fix Cairo build without PNG
27542         * src/image.c: Define PNG function when USE_CAIRO is defined, even
27543         if HAVE_PNG is not.  (Bug#21133)
27545         MS-Windows follow-up for recent TZ-related changes
27546         * nt/mingw-cfg.site (ac_cv_header_pthread_h)
27547         (gl_cv_sys_struct_timespec_in_pthread_h): Force to "no", to avoid
27548         picking up 'struct timespec' from pthread.h, if it is installed on
27549         the user's system.  We want either the definitions from MinGW
27550         system headers, if available, or the Gnulib replacements if not.
27551         * nt/inc/ms-w32.h <struct timespec>: Don't define, as we now use
27552         lib/time.h.
27553         * lib/time.in.h: Don't let __need_* symbols affect what happens on
27554         MinGW.  These symbols are defined by MinGW system headers, but we
27555         don't want that to affect whether Gnulib portions of the header
27556         are or aren't used.
27558 2015-07-26  Paul Eggert  <eggert@cs.ucla.edu>
27560         * src/ftfont.c (ftfont_close): Add comment re Bug#20890.
27562         New optional ZONE arg for format-time-string etc.
27563         This simplifies time conversions in other time zones.
27564         It also prevents display-time-world tampering with TZ (Bug#21020).
27565         * admin/admin.el (add-release-logs):
27566         Use improved add-log-time-format API.
27567         * admin/merge-gnulib (GNULIB_MODULES): Add time_rz, timegm.
27568         (GNULIB_TOOL_FLAGS): Avoid flexmember, setenv, unsetenv.
27569         * configure.ac (tzalloc): Remove test for this, since
27570         Emacs no longer uses HAVE_TZALLOC directly.
27571         * doc/lispref/os.texi (Time of Day, Time Conversion)
27572         (Time Parsing):
27573         * etc/NEWS: Document the new behavior.
27574         Merge from gnulib, incorporating:
27575         2015-07-25 strftime: fix newly-introduced bug on Solaris
27576         2015-07-23 fprintftime, strftime: use timezone_t args
27577         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
27578         * lib/strftime.c, lib/strftime.h, lib/time.in.h, m4/sys_time_h.m4:
27579         * m4/time_h.m4:
27580         Update from gnulib.
27581         * lib/time_rz.c, lib/timegm.c, m4/time_rz.m4, m4/timegm.m4:
27582         New files from gnulib.
27583         * lisp/time-stamp.el (time-stamp-string):
27584         * lisp/time.el (display-time-world-list)
27585         (display-time-world-display):
27586         Use new API, with time zone arg.
27587         * lisp/time.el (display-time-world-display):
27588         Fix race when current-time advances while we're running.
27589         * lisp/vc/add-log.el (add-log-iso8601-time-zone)
27590         (add-log-iso8601-time-string): Accept optional time zone arg.
27591         * lisp/vc/add-log.el (add-change-log-entry):
27592         * lisp/vc/log-edit.el (log-edit-changelog-ours-p): Use new arg.
27593         * nt/gnulib.mk: Propagate lib/gnulib.mk changes here.
27594         Add rules for the time module, since they're now needed
27595         for tzalloc etc.
27596         * src/conf_post.h (getenv_TZ, setenv_TZ): New macros.
27597         (emacs_getenv_TZ, emacs_setenv_TZ): New decls.
27598         * src/editfns.c: Include errno.h.
27599         (set_time_zone_rule): Omit unnecessary forward decl.
27600         (initial_tz): Remove, replacing with ...
27601         (local_tz, wall_clock_tz, utc_tz): New static vars and constants.
27602         (tzeqlen): New constant; prefer it to (sizeof "TZ=" - 1).
27603         (emacs_localtime_rz, emacs_mktime_z, xtzalloc, xtzfree)
27604         (tzlookup): New static functions.
27605         (init_editfns): New arg DUMPING.  All uses changed.
27606         (init_editfns): Omit most initialization if dumping, not if
27607         !initialized.  Initialize wall_clock_tz and local_tz.
27608         (emacs_nmemftime, format_time_string): Time zone argument can now
27609         be any time zone, not just a boolean for UTC or local time.  All
27610         callers changed.
27611         (Fformat_time_string, Fencode_time, Fcurrent_time_string)
27612         (Fcurrent_time_zone): New optional arg ZONE.
27613         (Fdecode_time, Fset_time_zone_rule): ZONE arg can now also take
27614         the same form as with the other new additions.
27615         (decode_time_zone): Remove; no longer needed.
27616         (tzvalbuf): Now file-scope.
27617         (emacs_getenv_TZ, emacs_setenv_TZ): New functions.
27618         (syms_of_editfns): Define Qwall.
27619         * src/editfns.c (mktime_z) [!HAVE_TZALLOC]:
27620         * src/systime.h (mktime_z, timezone_t, tzalloc, tzfree)
27621         [!HAVE_TZALLOC]:
27622         Remove; now supplied by gnulib.
27623         * src/emacs.c (main):
27624         * src/lisp.h (init_editfns): Adjust to init_editfns API change.
27626 2015-07-26  Shigeru Fukaya  <shigeru.fukaya@gmail.com>
27628         Fix infinite loop in delete-consecutive-dups
27629         * lisp/subr.el (delete-consecutive-dups): Work even if the last
27630         element is nil (Bug#20588).  Avoid rescan of a circular list in
27631         deletion of last element.
27633 2015-07-26  Martin Rudalics  <rudalics@gmx.at>
27635         Have `x-frame-geometry' return nil for terminal and initial
27636         frames (Bug#21132)
27637         * src/nsfns.m (Fx_frame_geometry):
27638         * src/xfns.c (Fx_frame_geometry): Return nil for initial and
27639         terminal frames.
27640         * src/w32fns.c (Fw32_frame_menu_bar_size, Fw32_frame_rect)
27641         (Fx_frame_geometry): Return nil for terminal frames
27643 2015-07-26  HOSOYA Kei  <hosoyakei.free@gmail.com>  (tiny change)
27645         * etc/tutorials/TUTORIAL.ja: Improve translation.
27647 2015-07-25  Eli Zaretskii  <eliz@gnu.org>
27649         Avoid crashes when w32 GUI functions are called in -batch
27650         * src/w32fns.c (Fx_frame_geometry, Fw32_frame_rect)
27651         (Fw32_frame_menu_bar_size, Fw32_send_sys_command): Don't call
27652         FRAME_W32_WINDOW for initial frame.  (Bug#21132)
27654         Fix flyspell-check-previous-highlighted-word
27655         * lisp/textmodes/flyspell.el
27656         (flyspell-check-previous-highlighted-word): Really accept a
27657         numeric argument, as the doc string describes.  Fix an off-by-one
27658         error in looking up overlays, so invocation with point immediately
27659         after a word would check that word.  Clarify the doc string as
27660         Suggested by N. Jackson <nljlistbox2@gmail.com>.  (Bug#21129)
27662 2015-07-24  Michael Albinus  <michael.albinus@gmx.de>
27664         Minor cleanup in tramp-tests.el
27665         * test/automated/tramp-tests.el (tramp-test31-*, tramp-test32-*):
27666         Implement using the documented interface
27667         `tramp-connection-properties', rather than with internal functions.
27669 2015-07-24  Harald Hanche-Olsen  <hanche@math.ntnu.no>  (tiny change)
27671         Pass lambdas to `skeleton-read'
27672         * lisp/skeleton.el (skeleton-read): Allow PROMPT to be a function.
27673         * lisp/textmodes/sgml-mode.el (sgml-attributes, sgml-value): Pass
27674         lambdas to `skeleton-read' (bug#20386).
27676 2015-07-24  Eli Zaretskii  <eliz@gnu.org>
27678         * INSTALL (DETAILED BUILDING AND INSTALLATION):
27679         Mention --without-imagemagick.
27681         Don't require GUI frames and mouse for Flyspell menus
27682         * lisp/textmodes/flyspell.el (flyspell-correct-word-before-point)
27683         (flyspell-emacs-popup): Require neither a GUI frame nor mouse
27684         support, since pop-up menus work with text terminals and can be
27685         controlled via the keyboard.
27687         Improve documentation of Flyspell commands
27688         * doc/emacs/fixit.texi (Spelling): Mention Flyspell commands that
27689         can be invoked via the keyboard.  Mention those commands by name
27690         and add them to the fn index.  (Bug#21125)
27692 2015-07-23  Michael Albinus  <michael.albinus@gmx.de>
27694         Fix some Tramp problems with HP-UX
27695         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
27696         Add "tab0" to stty call.
27697         * test/automated/tramp-tests.el (tramp-persistency-file-name):
27698         Set to nil.
27699         (tramp--test-hpux-p): New defun.
27700         (tramp--test-utf8): Use it.
27702 2015-07-22  Glenn Morris  <rgm@gnu.org>
27704         * build-aux/update-subdirs: Put "no-update-autoloads: t" in output.
27706 2015-07-22  Eli Zaretskii  <eliz@gnu.org>
27708         Fix point positioning in ffap-next-guess
27709         * lisp/ffap.el (ffap-url-at-point): Set ffap-string-at-point-region,
27710         as our callers expect.  This was clobbered as part of fixing
27711         bug#5673.  (Bug#21107)
27712         (ffap-gopher-at-point): Set ffap-string-at-point-region.
27714 2015-07-22  Martin Rudalics  <rudalics@gmx.at>
27716         * lisp/window.el (even-window-sizes): Fix customization type.
27718         Optionally even widths of `display-buffer' windows.  (Bug#21100)
27719         * lisp/window.el (quit-restore-window): Restore width if
27720         requested.
27721         (display-buffer-record-window): Record width when window is
27722         reused and horizontally combined.
27723         (even-window-sizes): New option to allow evening window widths.
27724         (even-window-heights): Defalias to `even-window-sizes'.
27725         (window--even-window-heights): Rename to
27726         `window--even-window-sizes'.  Handle side-by-side windows.
27727         (display-buffer-use-some-window): Call `window--even-window-sizes'
27728         instead of `window--even-window-heights'.
27729         * lisp/help.el (resize-temp-buffer-window): Fix indentation.
27730         * doc/lispref/windows.texi (Choosing Window Options): Describe
27731         `even-window-sizes'.
27732         (Coordinates and Windows): Fix typo.
27734 2015-07-22  Stephen Leake  <stephen_leake@stephe-leake.org>
27736         Add file name to autoload error messages
27737         * lisp/emacs-lisp/autoload.el (autoload-save-buffers):
27738         Add condition-case to add file name to error message.
27740 2015-07-22  Michael Albinus  <michael.albinus@gmx.de>
27742         * lisp/net/tramp-sh.el (tramp-ssh-controlmaster-options):
27743         Use 0.0.0.1 as test host.
27745 2015-07-21  Stefan Monnier  <monnier@iro.umontreal.ca>
27747         (advice--called-interactively-skip): Fix inf-loop (bug#21083)
27748         * lisp/emacs-lisp/nadvice.el (advice--called-interactively-skip):
27749         Fix inf-loop (bug#21083).
27751 2015-07-21  Glenn Morris  <rgm@gnu.org>
27753         * test/automated/package-test.el (package-test-signed):
27754         Update for recent changes.
27756         * test/automated/elisp-mode-tests.el
27757         (elisp-xref-finds-both-function-and-variable)
27758         (elisp-xref-finds-only-function-for-minor-mode):
27759         Update for recent xref name changes.
27761 2015-07-21  Dmitry Gutov  <dgutov@yandex.ru>
27763         Make eldoc timer non-repeatable
27764         * lisp/emacs-lisp/eldoc.el (eldoc-schedule-timer): Make the timer
27765         non-repeatable.  Since it's on post-command hook, that just wasted
27766         CPU cycles.
27768 2015-07-21  Michael Albinus  <michael.albinus@gmx.de>
27770         Mention `tramp-connection-properties' in NEWS
27772         Sync with Tramp repository
27773         * doc/misc/tramp.texi (Configuration): Note, that Tramp must be
27774         required prior changing its configuration.
27775         (Connection caching, Predefined connection information)
27776         (Remote shell setup): Fix typos.
27777         (Predefined connection information): Describe, how to overwrite
27778         parameters of `tramp-methods'.
27779         (Remote programs, Remote processes, Traces and Profiles):
27780         Simplify example.
27781         (Remote programs): Remove superfluous comment.
27782         * doc/misc/trampver.texi: Update release number.
27783         * lisp/net/tramp-cache.el (tramp-connection-properties):
27784         Adapt docstring.
27785         * lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file): New defun.
27786         (tramp-gvfs-handle-copy-file, tramp-gvfs-handle-rename-file): Use it.
27787         (tramp-gvfs-handle-make-directory): Reimplement PARENTS handling,
27788         "gvfs-mkdir -p ..." does not work robust.
27789         (tramp-gvfs-maybe-open-connection):
27790         Adapt `tramp-get-method-parameter' call.
27791         * lisp/net/tramp-sh.el (tramp-methods):
27792         Add `tramp-remote-shell-login' parameter where it fits.
27793         (tramp-get-remote-path): Use it.
27794         (tramp-make-copy-program-file-name): Fix quoting for "psftp" method.
27795         (all): Adapt `tramp-get-method-parameter' calls.
27796         * lisp/net/tramp.el (tramp-methods): Adapt docstring.
27797         (tramp-get-method-parameter): Replace argument METHOD by VEC.
27798         Check also for hits in `tramp-connection-properties'.  Adapt docstring.
27799         (tramp-get-remote-tmpdir): Cache only the local name of tmpdir.
27800         (all): Adapt `tramp-get-method-parameter' calls.
27801         * lisp/net/trampver.el: Update release number.
27802         * test/automated/tramp-tests.el (tramp--instrument-test-case):
27803         Add "^make-symbolic-link not supported$" to `debug-ignored-errors'.
27804         (tramp-test13-make-directory, tramp--test-adb-p)
27805         (tramp--test-smb-or-windows-nt-p): Simplify.
27806         (tramp--test-ftp-p, tramp--test-gvfs-p): New defuns.
27807         (tramp--test-special-characters): Fix docstring.  Add gvfs and
27808         ftp tests.
27809         (tramp--test-utf8): Fix docstring.
27811 2015-07-20  Dmitry Gutov  <dgutov@yandex.ru>
27813         Add new xref-query-replace command
27814         * lisp/progmodes/xref.el (xref--match-buffer-bounds):
27815         New function, extracted from xref-pulse-momentarily.
27816         (xref-query-replace): New command.
27817         (xref--query-replace-1): New helper function.
27818         (xref--xref-buffer-mode-map): Add `r' binding.
27820 2015-07-20  Paul Eggert  <eggert@cs.ucla.edu>
27822         Simplify icalendar decoding of Z dates
27823         * lisp/calendar/icalendar.el (icalendar--decode-isodatetime):
27824         Simplify calculation of time strings with trailing "Z".
27826 2015-07-19  Dmitry Gutov  <dgutov@yandex.ru>
27828         Do not corrupt grep-find-ignored-files
27829         * lisp/progmodes/project.el (project-ignores): Change the order of
27830         the arguments to nconc, in order not to corrupt grep-find-ignored-files.
27832         Add xref-match-item, and use it
27833         * lisp/progmodes/xref.el (xref-match-bounds): New generic function.
27834         (xref-file-location): Add reader for the column slot.
27835         (xref-match-item): New class.
27836         (xref-match-bounds): A method implementation for it.
27837         (xref-make-match): New constructor function.
27838         (xref--current-item): New private variable.
27839         (xref-pulse-momentarily): Use it.
27840         (xref--pop-to-location): Change the first argument to an xref
27841         item, instead of location, bind xref--current-item.
27842         Update all callers.
27843         (xref-next-line, xref-prev-line, xref--next-error-function)
27844         (xref--mouse-2): Look for the property `xref-item',
27845         instead of `xref-location'.
27846         (xref--item-at-point): Likewise.  This function replaces
27847         `xref-location-at-point'.  Update all callers.
27848         (xref--insert-xrefs): Add the `xref-item' text property, instead
27849         of `xref-location'.
27850         (xref--collect-match): Use xref-make-match.
27852         * lisp/progmodes/xref.el (xref-item): Rename from `xref--xref'.
27853         Update all references.
27855         * lisp/progmodes/xref.el (xref--xref): Rename the `description'
27856         slot to `summary'.
27858         vc-hg: Perform the print-log call asynchronously
27859         * lisp/vc/vc-hg.el (vc-hg-print-log): Perform the call
27860         asynchronously (bug#21067).
27862         Add xref-after-jump-hook and xref-after-return-hook
27863         * lisp/progmodes/xref.el (xref-after-jump-hook)
27864         (xref-after-return-hook): New hooks.
27865         (xref-pulse-on-jump): Remove, in favor of the above.
27866         (xref-pulse-momentarily): Rename from xref--maybe-pulse.
27867         (xref--pop-to-location, xref--display-position)
27868         (xref-pop-marker-stack): Use the new hooks, as requested in
27869         https://lists.gnu.org/r/emacs-devel/2015-07/msg00213.html
27871 2015-07-19  Bozhidar Batsov  <bozhidar@batsov.com>
27873         * lisp/progmodes/js.el (js-mode): Correct the lighter.
27875 2015-07-19  Leo Liu  <sdl.web@gmail.com>
27877         Fix a bug in cfengine3-mode
27878         * lisp/progmodes/cfengine.el (cfengine3-mode): Handle nil
27879         eldoc-documentation-function.
27881 2015-07-18  Julien Danjou  <julien@danjou.info>
27883         sieve-mode: support "body" test command
27884         * lisp/gnus/sieve-mode.el (sieve-font-lock-keywords):
27885         Add missing "body" test command.
27887 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
27889         Fix info-apropos when the default encoding is Latin-N
27890         * lisp/info.el (Info-find-node-2): Reset the buffer's encoding to
27891         'undecided', so that it is set to the encoding of the Info file we
27892         are about to insert.  Otherwise, 'info-apropos' will fail to find
27893         some index nodes in some UTF-8 encoded files, if the buffer's
27894         previous encoding is Latin-N or some such.
27896 2015-07-18  Ivan Andrus  <darthandrus@gmail.com>
27898         * lisp/epg.el (epg--start): Check that gpgconf can be found
27899         before calling it.
27901         Expose more file types to OS X that Emacs understands
27902         * nextstep/Cocoa/Emacs.base/Contents/Info.plist: Add editor role for
27903         sty, dtx, json, and org files.  Export UTIs for el, elc, and org files.
27905 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
27907         Fix visual-order cursor movement when lines are truncated
27908         * src/xdisp.c (Fmove_point_visually): When lines are truncated,
27909         simulate display in a window of infinite width, to allow move_it_*
27910         functions reach positions outside of normal window dimensions.
27911         Remove code that tried to handle a subset of these situations by
27912         manual iteration of buffer text.  (Bug#17777)
27914         Fix following Info cross-references to anchors
27915         * lisp/info.el (Info-read-subfile): Add to the returned value the
27916         length of subfile preamble, after converting it to file's byte
27917         offset, as expected by the caller.  Use bufferpos-to-filepos.
27918         (Info-find-node-2): If searching for a node with a
27919         1000-character slop fails, try again with a 10000-character slop,
27920         to account for known bugs in Texinfo 5.0 and 5.1.  (Bug#21055)
27921         * lisp/international/mule-util.el (bufferpos-to-filepos): New
27922         function.
27923         * etc/NEWS: Mention bufferpos-to-filepos.
27925         Fix scrolling backwards on TTY frames under scroll-conservatively
27926         * src/xdisp.c (move_it_vertically_backward): Fix off-by-one error
27927         in moving backwards on TTY frames.  (Bug#21080)
27929 2015-07-17  Dmitry Gutov  <dgutov@yandex.ru>
27931         Consider a jsdoc tag to be a beginning of a paragraph as well
27932         * lisp/progmodes/js.el (js-mode): Change c-paragraph-start to
27933         consider a jsdoc tag to be a beginning of a paragraph as well.
27935 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
27937         * lisp/emacs-lisp/package.el: Fix warnings.
27939         * lisp/emacs-lisp/package.el (package-buffer-info):
27940         Add author and maintainers to `package-buffer-info'.
27942         * lisp/emacs-lisp/package.el: Many small changes.
27943         Replace all instances of 'face with 'font-lock-face.
27944         (describe-package-1): Improve some strings and move the summary
27945         up the list.
27946         (package-install-file): Update docstring.
27947         (package-menu-hide-package): Bind to `H'.
27949         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
27950         Fix error handling.
27952 2015-07-17  Paul Eggert  <eggert@cs.ucla.edu>
27954         Fix hang with large yanks This should fix the bug fixed by Mike
27955         Crowe's patch in:
27956         https://lists.gnu.org/r/emacs-devel/2015-07/msg00106.html
27957         A problem in this area has been reported by several users; see
27958         Bug#16737, Bug#17101, Bug#17026, Bug#17172, Bug#19320, Bug#20283.
27959         This fix differs from Mike Crowe's patch in that it should avoid a
27960         race condition that could lose SIGIO signals.  ignore_sigio dates
27961         back to the 1980s when some platforms couldn't block signals, and
27962         could only ignore them, which led to races when signals arrived
27963         while being ignored.  We shouldn't have to worry about those old
27964         platforms now.
27965         * src/dispextern.h, src/sysdep.c (ignore_sigio): Remove.
27966         * src/emacs.c (shut_down_emacs):
27967         Don't call ignore_sigio; unrequest_sigio should suffice.
27968         * src/keyboard.c (kbd_buffer_store_buffered_event):
27969         Use unrequest_sigio, not ignore_sigio.
27970         (kbd_buffer_get_event):
27971         Call request_sigio when getting the ball rolling again.
27973 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
27975         * lisp/obsolete/longlines.el (longlines-search-function):
27976         Fallback on `isearch-search-fun-default'.
27978 2015-07-17  Tassilo Horn  <tsdh@gnu.org>
27980         Support @-mentions
27981         * lisp/net/rcirc.el (rcirc-completion-at-point): Support completion
27982         of mentions/messages with @nick instead of just nick.
27984 2015-07-16  Michael Albinus  <michael.albinus@gmx.de>
27986         Fix bug#20943
27987         * lisp/autorevert.el (auto-revert-handler): Do not check for
27988         `buffer-modified-p'.
27989         * lisp/files.el (buffer-stale--default-function): Check for
27990         `buffer-modified-p'.
27991         * test/automated/auto-revert-tests.el
27992         (auto-revert-test02-auto-revert-mode-dired): Adapt test.
27994 2015-07-16  Ari Roponen  <ari.roponen@gmail.com>
27996         Fix delete-dups bug on long lists
27997         * lisp/subr.el (delete-dups):
27998         Don't mistakenly keep some dups when applied to long lists.
28000 2015-07-16  Paul Eggert  <eggert@cs.ucla.edu>
28002         Better heuristic for C stack overflow
28003         Improve the heuristic for distinguishing stack overflows from
28004         other SIGSEGV causes (Bug#21004).  Corinna Vinschen explained that
28005         the getrlimit method wasn't portable to Cygwin; see:
28006         https://www.cygwin.com/ml/cygwin/2015-07/msg00092.html
28007         Corinna suggested pthread_getattr_np but this also has problems.
28008         Instead, replace the low-level system stuff with a simple
28009         heuristic based on known good stack addresses.
28010         * src/eval.c, src/lisp.h (near_C_stack_top): New function.
28011         * src/sysdep.c: Don't include <sys/resource.h>.
28012         (stack_direction): Remove.  All uses removed.
28013         (stack_overflow): New function.
28014         (handle_sigsegv): Use it instead of incorrect getrlimit heuristic.
28015         Make SEGV fatal in non-main threads.
28017 2015-07-16  Daiki Ueno  <ueno@gnu.org>
28019         epg: Automatically start pinentry server
28020         * lisp/epg-config.el (epg-gpgconf-program): New variable.
28021         * lisp/epg.el (epg--start): Call `pinentry-start' if
28022         allow-emacs-pinentry is set in ~/.gnupg/gpg-agent.conf.
28024 2015-07-15  Katsumi Yamaoka  <yamaoka@jpl.org>
28026         * lisp/gnus/nnimap.el: Fix my last bogus change.
28027         Reinstall Stefan Monnier's change that was made in
28028         <83d824bc4041332f338ad7e5e830f443535aa300>.
28030 2015-07-15  Paul Eggert  <eggert@cs.ucla.edu>
28032         Merge from gnulib
28033         This incorporates:
28034         2015-07-05 acl-permissions: Document FreeBSD ACL_TYPE_NFS4 acls
28035         2015-07-05 acl-permissions: Fix on FreeBSD
28036         2015-07-05 file-has-acl, acl-permissions: fix some more HP-UX typos
28037         * lib/acl-internal.c, lib/acl-internal.h, lib/get-permissions.c:
28038         * lib/set-permissions.c: Copy from gnulib.
28040         Port to stricter C99
28041         * src/keyboard.h (kbd_buffer_store_event_hold):
28042         Don't return a void expression.
28044 2015-07-15  Xue Fuqiao  <xfq.free@gmail.com>
28046         * doc/emacs/frames.texi (Creating Frames):
28047         Fix the command `C-x 5 m' runs.
28049 2015-07-14  Michael Albinus  <michael.albinus@gmx.de>
28051         New autorevert tests
28052         * test/automated/auto-revert-tests.el: New file.
28054 2015-07-14  Paul Eggert  <eggert@cs.ucla.edu>
28056         Clear gcprolist etc. after stack overflow
28057         After stack overflow, command_loop calls init_eval, and this needs to
28058         clear gcprolist and byte_stack_list (Bug#20996).
28059         * src/alloc.c (init_alloc):
28060         Move gcprolist and byte_stack_list initialization from here ...
28061         * src/eval.c (init_eval): ... to here.
28063 2015-07-13  Xue Fuqiao  <xfq.free@gmail.com>
28065         * doc/emacs/windows.texi (Pop Up Window): Fix the description
28066         of `C-x 4 m'.
28068 2015-07-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
28070         Avoid deprecated enums in mac-ct font backend driver
28071         * src/macfont.m (mac_font_copy_default_descriptors_for_language)
28072         (mac_ctfont_get_advance_width_for_glyph)
28073         (mac_ctfont_get_bounding_rect_for_glyph): Avoid deprecated enums.
28075         Cache font family in mac-ct font backend driver
28076         * src/macfont.m (macfont_family_cache): New variable.
28077         (syms_of_macfont): Initialize it.
28078         (macfont_available_families_cache): New variable.
28079         (macfont_invalidate_family_cache, macfont_get_family_cache_if_present)
28080         (macfont_set_family_cache, macfont_invalidate_available_families_cache)
28081         (macfont_handle_font_change_notification)
28082         (macfont_init_font_change_handler)
28083         (macfont_copy_available_families_cache): New functions.
28084         (macfont_create_family_with_symbol): Use font family caches.
28085         (macfont_list, macfont_list_family):
28086         Use macfont_copy_available_families_cache instead of
28087         mac_font_create_available_families.
28089 2015-07-12  Dmitry Gutov  <dgutov@yandex.ru>
28091         Show the default value in the prompt
28092         * lisp/progmodes/xref.el: Add `M-?' binding for
28093         xref-find-references.  Declare functions `grep-read-files' and
28094         `grep-expand-template'.
28095         (xref--read-identifier): Show the default value in the prompt.
28097         * lisp/progmodes/xref.el (xref-find-regexp): When called with
28098         prefix argument, ask for file patterns to search as well.  When
28099         prompting for the directory, require an existing one.
28100         (xref-collect-matches): Add a new argument, FILES.  Use it in the
28101         above function.
28103         Add `project-ignores'
28104         * lisp/progmodes/project.el (project-ignores): New generic
28105         function, and an implementation for the VC project type.
28106         * lisp/progmodes/xref.el (xref--rgrep-command): Split, as a
28107         variant of rgrep-default-command that handles a generic list of
28108         ignores.
28109         (xref-collect-matches): Use it, and pass through to it the value
28110         of the newly added argument.
28111         (xref-find-regexp): Handle ignored paths within the project.
28112         Remove outdated comment.
28113         * lisp/vc/vc.el (vc-default-ignore-completion-table):
28114         Skip the comments and the empty lines.
28116 2015-07-12  Xue Fuqiao  <xfq.free@gmail.com>
28118         * doc/emacs/buffers.texi (Misc Buffer): Add a cross reference.
28120 2015-07-11  Eric Abrahamsen  <eric@ericabrahamsen.net>
28122         gnus-registry.el: Correct function argument order
28123         * lisp/gnus/gnus-registry.el (gnus-registry--set/remove-mark):
28124         Reverse the order of function arguments.
28126 2015-07-11  Dmitry Gutov  <dgutov@yandex.ru>
28128         Bind grep-highlight-matches to nil
28129         * lisp/progmodes/xref.el (xref-collect-matches):
28130         Bind grep-highlight-matches to nil (bug#20728).
28132 2015-07-11  Nikolaus Rath  <Nikolaus@rath.org>
28134         nnimap.el: Fix IMAP message size parsing
28135         * lisp/gnus/nnimap.el (nnimap-transform-headers):
28136         Don't assume that UID comes before RFC822.SIZE.
28138 2015-07-10  Stefan Monnier  <monnier@iro.umontreal.ca>
28140         * lisp/gnus/nnimap.el: Clean up "unused var" warnings
28141         (auth-source-creation-prompts): Declare.
28142         (nnimap-retrieve-headers, nnimap-status-message)
28143         (nnimap-request-create-group, nnimap-request-delete-group)
28144         (nnimap-close-group, nnimap-request-move-article)
28145         (nnimap-request-accept-article, nnimap-request-newgroups)
28146         (nnimap-request-post, nnimap-dummy-active-number)
28147         (nnimap-save-mail-spec, nnimap-get-groups): Add _ to unused vars.
28148         (nnimap-parse-flags): Remove unused var `p'.
28149         (nnimap-retrieve-group-data-early): Remove unused var `groups'.
28150         (nnimap-flags-to-marks): Remove unused var `totalp'.
28152 2015-07-10  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
28154         * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 20MB.
28156 2015-07-10  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
28158         * src/macfont.m (macfont_list): Ignore font families lacking
28159         font descriptors.
28161 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
28163         Don't check the exit status, it can be misleading
28164         * lisp/progmodes/xref.el (xref-collect-matches): Don't check the
28165         exit status, it can be misleading.
28167         Introduce a Project API
28168         * lisp/progmodes/project.el: New file.
28169         * lisp/cedet/ede.el (project-try-ede): New function.
28170         (project-root): New implementation.
28171         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
28172         Set project-search-path-function.
28173         (elisp--xref-find-references): Delegate some logic to
28174         project-search-path.
28175         (elisp-search-path): New function.
28176         (elisp-xref-find): Don't implement `matches' anymore.
28177         * lisp/progmodes/etags.el: Don't implement `matches'.
28178         Delegate some logic to project-search-path.
28179         (etags-search-path): New function.
28180         * lisp/progmodes/xref.el (xref-find-function):
28181         Remove `matches' from the API.
28182         (xref-find-regexp): Move whatever common logic was in elisp and
28183         etags implementations, and search the directories returned by
28184         project-directories and project-search-path.
28186 2015-07-09  Nicolas Petton  <nicolas@petton.fr>
28188         * test/automated/map-tests.el (test-map-delete-return-value):
28189         Uncomment test.
28191         Add support for gv.el in map.el
28192         * lisp/emacs-lisp/map.el (map-elt, map-delete): Declare a gv-expander.
28193         * lisp/emacs-lisp/map.el (map-put): Refactor using `setf' and `map-elt'.
28194         * test/automated/map-tests.el: Update tests to work with the new
28195         implementations of map-elt and map-put.
28197 2015-07-09  Glenn Morris  <rgm@gnu.org>
28199         * lisp/emacs-lisp/debug.el (debug-help-follow): Use describe-symbol.
28201 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
28203         Syntax-propertize until the end of the line first
28204         * lisp/progmodes/xref.el (xref--collect-match): Syntax-propertize
28205         until the end of the line first.
28207 2015-07-09  Xue Fuqiao  <xfq.free@gmail.com>
28209         * doc/emacs/files.texi (File Archives): Add a cross reference.
28211 2015-07-08  Nikolaus Rath  <Nikolaus@rath.org>
28213         nnimap.el: Handle plain value for nnimap-stream
28214         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Always query
28215         capabilities, so that a 'plain value for the `nnimap-stream' server
28216         variable is handled correctly.
28217         * doc/misc/gnus.texi (Customizing the IMAP Connection):
28218         Document the 'plain option.
28220 2015-07-08  Leo Liu  <sdl.web@gmail.com>
28222         Fix bug in thing-at-point--bounds-of-well-formed-url
28223         * lisp/thingatpt.el (thing-at-point--bounds-of-well-formed-url): Make
28224         sure boundary contains current point.
28226 2015-07-08  Dmitry Gutov  <dgutov@yandex.ru>
28228         * lisp/progmodes/xref.el (xref-collect-matches): Use `nreverse'
28229         in the end.
28231         Declare whitespace-line-column a safe file-local
28232         * lisp/whitespace.el (whitespace-line-column): Declare to be a
28233         safe file-local when the value is an integer.
28235 2015-07-08  Eric Abrahamsen  <eric@ericabrahamsen.net>
28237         gnus-group.el: Check if group names are already strings
28238         * lisp/gnus/gnus-group.el (gnus-group-group-name):
28239         The group name may already be a string.
28240         Specifically, in the group list reached from the *Server* buffer,
28241         the 'gnus-group text property returns a string.  Everywhere else
28242         it returns a symbol.
28244         nnimap.el: Remove unused let variables
28245         * lisp/gnus/nnimap.el (nnimap-request-group): Variables are not used.
28247 2015-07-08  Eli Zaretskii  <eliz@gnu.org>
28249         Support "maximized" property of runemacs's shortcut
28250         * nt/runemacs.c (WinMain): If runemacs is invoked "maximized", pass
28251         the '--maximized' switch to Emacs.
28253         Support "minimized" property of runemacs's shortcut
28254         * nt/runemacs.c (WinMain): If runemacs is invoked "minimized",
28255         pass the '--iconic' switch to Emacs.  (Bug#20991)
28257 2015-07-08  Xue Fuqiao  <xfq.free@gmail.com>
28259         Doc fixes
28260         * doc/emacs/files.texi (Diff Mode): Fix the description of `C-c
28261         C-w' in Diff mode.
28262         * doc/emacs/arevert-xtra.texi (Auto Reverting the Buffer Menu):
28263         Add a cross reference.
28265 2015-07-08  Nicolas Richard  <youngfrog@members.fsf.org>
28267         * lisp/obsolete/landmark.el: Add Obsolete-since header.
28269 2015-07-07  Glenn Morris  <rgm@gnu.org>
28271         * test/automated/ert-tests.el (ert-test-deftest):
28272         Update for recent changes.
28274 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
28276         (gv-setter, gv-synthetic-place, gv-delay-error): New funs/macros
28277         * lisp/emacs-lisp/gv.el (gv-setter): New function.
28278         (gv-invalid-place): New error.
28279         (gv-get): Use them.
28280         (gv-synthetic-place, gv-delay-error): New places.
28281         * lisp/emacs-lisp/cl-generic.el (cl--generic-setf-rewrite): Remove.
28282         (cl-defgeneric, cl-defmethod): Use gv-setter.
28284 2015-07-07  Fabrice Popineau  <fabrice.popineau@gmail.com>
28286         Make vc-tests work with MSYS svn program
28287         * lisp/vc/vc-svn.el (vc-svn-create-repo): Fix the file:// URL when
28288         svn is an MSYS program.
28290 2015-07-07  Ken Brown  <kbrown@cornell.edu>
28292         Improve recent change to emacsclient on Cygwin
28293         * lisp/server.el (server-process-filter): Remove redundant check
28294         that 'cygwin-convert-file-name-from-windows' is defined as a
28295         function on Cygwin.  Don't call that function unless its argument
28296         starts with a drive letter.
28298 2015-07-07  Artur Malabarba  <bruce.connor.am@gmail.com>
28300         * lisp/emacs-lisp/package.el (package-compute-transaction):
28301         Fix void variable due to `found-something' being in the wrong `let'.
28303 2015-07-07  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
28305         * lisp/play/landmark.el: Move to lisp/obsolete/.
28307 2015-07-07  Martin Rudalics  <rudalics@gmx.at>
28309         Have `x-show-tip' handle `right' and `bottom' frame parameters
28310         * src/nsfns.m (compute_tip_xy, Fx_show_tip)
28311         * src/w32fns.c (compute_tip_xy, Fx_show_tip)
28312         * src/xfns.c (compute_tip_xy, Fx_show_tip): Allow aligning
28313         tooltips also via `right' and `bottom' frame parameters.
28315 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
28317         Add online-help support to describe types
28318         * lisp/help-fns.el (describe-symbol-backends): Move to help-mode.el.
28319         (describe-symbol): Improve the selection of default.
28320         * lisp/help-mode.el: Require cl-lib.
28321         (describe-symbol-backends): Move from help-fns.el.
28322         (help-make-xrefs): Use it.
28323         * lisp/emacs-lisp/cl-extra.el (describe-symbol-backends): Add entry
28324         for types.
28325         (cl--typedef-regexp): New const.
28326         (find-function-regexp-alist): Add entry for types.
28327         (cl-help-type, cl-type-definition): New buttons.
28328         (cl-find-class): New function.
28329         (cl-describe-type): New command.
28330         (cl--describe-class, cl--describe-class-slot)
28331         (cl--describe-class-slots): New functions, moved from eieio-opt.el.
28332         * lisp/emacs-lisp/cl-generic.el (cl--generic-method-documentation)
28333         (cl--generic-all-functions, cl--generic-specializers-apply-to-type-p):
28334         New functions.  Moved from eieio-opt.el.
28335         (cl--generic-class-parents): New function, extracted from
28336         cl--generic-struct-specializers.
28337         (cl--generic-struct-specializers): Use it.
28338         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Use pcase-dolist.
28339         Improve constructor's docstrings.
28340         (cl-struct-unknown-slot): New error.
28341         (cl-struct-slot-offset): Use it.
28342         * lisp/emacs-lisp/cl-preloaded.el (cl-struct-define): Record the type
28343         definition in current-load-list.
28344         * lisp/emacs-lisp/eieio-core.el (eieio--known-slot-names): New var.
28345         (eieio--add-new-slot): Set it.
28346         (eieio-defclass-internal): Use new name for current-load-list.
28347         (eieio-oref): Add compiler-macro to warn about unknown slots.
28348         * lisp/emacs-lisp/eieio.el (defclass): Update eieio--known-slot-names
28349         as compile-time as well.  Improve constructor docstrings.
28350         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
28351         (eieio--help-print-slot, eieio-help-class-slots): Move to cl-extra.el.
28352         (eieio-class-def): Remove button.
28353         (eieio-help-constructor): Use new name for load-history element.
28354         (eieio--specializers-apply-to-class-p, eieio-all-generic-functions)
28355         (eieio-method-documentation): Move to cl-generic.el.
28356         (eieio-display-method-list): Use new names.
28357         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression):
28358         Add "define-linline".
28359         (lisp-fdefs): Remove "defsubst".
28360         (el-fdefs): Add "defsubst", "cl-defsubst", and "define-linline".
28361         * lisp/emacs-lisp/macroexp.el (macroexp--warned): New var.
28362         (macroexp--warn-and-return): Use it to avoid inf-loops.
28363         Add `compile-only' argument.
28365 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
28367         python.el: Fix local/remote shell environment setup
28368         * lisp/progmodes/python.el (python-shell-with-environment):
28369         Fix remote/local environment setup.
28370         * test/automated/python-tests.el (python-shell-with-environment-1)
28371         (python-shell-with-environment-2): New tests.
28373 2015-07-06  Glenn Morris  <rgm@gnu.org>
28375         * lisp/simple.el (set-variable): Tweak recent doc fix.
28377 2015-07-06  Ken Brown  <kbrown@cornell.edu>
28379         * src/sysdep.c (handle_sigsegv) [CYGWIN]: Increase STACK_DANGER_ZONE.
28381 2015-07-06  Glenn Morris  <rgm@gnu.org>
28383         * lisp/simple.el (set-variable): Use user-error for type mismatch.
28385 2015-07-06  Ken Brown  <kbrown@cornell.edu>
28387         * src/emacs.c (main): Don't increase the stack size on Cygwin.
28389 2015-07-06  Stefan Monnier  <monnier@iro.umontreal.ca>
28391         (describe-symbol): Rewrite describe-function-or-variable
28392         * lisp/help-fns.el (describe-symbol-backends): New var.
28393         (help-xref-stack-item): Declare.
28394         (describe-symbol): Rename from describe-function-or-variable.
28395         Rewrite using describe-symbol-backends instead of help-xref-interned.
28396         * lisp/help.el (help-map): Use it.
28397         * lisp/help-mode.el (help-symbol, help-follow-symbol): Use it.
28398         (help-xref-interned): Make it into an obsolete alias.
28400         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-save): Don't ignore
28401         `file' arg (bug#20972).  Always use utf-8-emacs.  Use with-temp-buffer
28402         and cl-letf.
28404 2015-07-06  Wolfgang Jenkner  <wjenkner@inode.at>
28406         Fix parsing glitches in dired-mark-sexp (bug#13575)
28407         * lisp/dired-x.el (dired-x--string-to-number): New function.
28408         (dired-mark-sexp): Use it.  Tweak dired-re-inode-size.  Fix usage
28409         of directory-listing-before-filename-regexp.  Consider
28410         forward-word harmful and replace it.  Add more verbiage in
28411         comments and doc string.
28413 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
28415         python.el: Respect process environment for remote shells
28416         * lisp/progmodes/python.el
28417         (python-shell-calculate-process-environment): Calculate
28418         process-environment or tramp-remote-process-environment depending
28419         whether current file is remote.
28420         (python-shell-calculate-exec-path): Calculate exec-path or
28421         tramp-remote-path depending whether current file is remote.
28422         (python-shell-with-environment): New macro.
28423         (python-shell-prompt-detect, python-shell-calculate-command)
28424         (python-shell-make-comint, python-check): Use it.
28426         python.el: Avoid making let-bound defvars buffer local  (Bug#18244)
28427         * lisp/progmodes/python.el (python-shell--interpreter)
28428         (python-shell--interpreter-args): New vars.
28429         (inferior-python-mode, python-shell-make-comint): Use them.
28431         python.el: Fixes for IPython 3.x  (Bug#20580)
28432         * lisp/progmodes/python.el:
28433         (python-shell-completion-native-setup): Fix IPython 3.x setup.
28434         (python-shell-completion-native-get-completions): Fix timeout
28435         logic.
28437         python.el: Fix mark-defun behavior  (Bug#19665)
28438         * lisp/progmodes/python.el (python-mark-defun): New function.
28439         * test/automated/python-tests.el (python-mark-defun-1)
28440         (python-mark-defun-2, python-mark-defun-3): New tests.
28442 2015-07-05  Glenn Morris  <rgm@gnu.org>
28444         * lisp/progmodes/f90.el (f90-type-def-re): Handle attribute lists
28445         such as "extends(parent), private".  (Bug#20969)
28446         * test/automated/f90.el (f90-test-bug20969, f90-test-bug20969b):
28447         New tests.
28449 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
28451         Avoid duplicate calls to current_timespec
28452         * src/process.c (wait_reading_process_output):
28453         Cache current_timespec results as long as we're not waiting.
28455 2015-07-05  Ian Kelling  <ian@iankelling.org>
28457         Avoid returning early reading process output due to SIGIO
28458         * src/process.c (wait_reading_process_output): Extend the behavior of
28459         not breaking due to not finding output when a timer has lowered the
28460         timeout to include when SIGIO lowers the timeout.
28462         Don't return as fast reading any process output
28463         * src/process.c (wait_reading_process_output):
28464         The patch for Bug#17647 returns too fast sometimes when reading
28465         from any processes.  Revert part of it, and limit the timeout more
28466         sensibly (Bug#20978).
28468         Refactor timeouts in wait_reading_process_output
28469         * src/process.c (wait_reading_process_output):
28470         Simplify timeouts with an enum.  Remove a redundant condition.
28471         (Bug#20978)
28473         Remove ADAPTIVE_READ_BUFFERING ifdef
28474         * src/process.c (make-process, make-pipe-process, deactivate_process)
28475         (wait_reading_process_output, read_process_output, send_process)
28476         (init_process_emacs): ifdef ADAPTIVE_READ_BUFFERING was originally
28477         added in case there was an operating system in which it was not
28478         useful.  That was 11 years ago and it hasn't happened.  Make
28479         development easier by not considering the effect of changes on a
28480         theoretical OS where this is disabled (Bug#20978).
28482 2015-07-05  Glenn Morris  <rgm@gnu.org>
28484         * lisp/simple.el (set-variable): Doc fix.
28486         * lisp/progmodes/fortran.el (fortran-line-length): Doc fix.
28488 2015-07-05  Ian Kelling  <ian@iankelling.org>
28490         accept-process-output fix
28491         This is a followon to the fix for bug#17647 (Bug#20976).
28492         * src/process.c (status_notify): Fix too high return in some cases.
28494 2015-07-05  Artur Malabarba  <bruce.connor.am@gmail.com>
28496         * lisp/character-fold.el (character-fold-table):
28497         Only fold decompositions if at least one character is non-spacing.
28498         (Bug#20975)
28500 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
28502         Merge from gnulib
28503         This incorporates:
28504         2015-07-04 file-has-acl, acl-permissions: fix HP-UX typos
28505         2015-07-03 set-permissions.c: adjust acl_from_mode's cpp guard
28506         2015-07-02 update-copyright: fix test failure with perl >= 5.22
28507         2015-07-01 gnulib-common.m4: change the ARFLAGS default to 'cr'
28508         2015-07-01 acl: fix definition of acl_from_mode on FreeBSD
28509         * build-aux/update-copyright, doc/misc/texinfo.tex, lib/acl-internal.h:
28510         * lib/set-permissions.c, m4/gnulib-common.m4: Copy from gnulib.
28512 2015-07-05  Christoph Wedler  <christoph.wedler@sap.com>
28514         Respect `prog-indentation-context' in python.el
28515         * lisp/progmodes/python.el (python-indent-guess-indent-offset)
28516         (python-indent-context, python-indent--calculate-indentation)
28517         (python-info-current-defun)
28518         (python-info-dedenter-opening-block-message)
28519         (python-info-line-ends-backslash-p)
28520         (python-info-beginning-of-backslash)
28521         (python-info-continuation-line-p): Use `prog-widen'.
28522         (python-indent--calculate-indentation)
28523         (python-indent--calculate-levels)
28524         (python-indent-calculate-indentation): Use `prog-first-column'.
28525         (python-indent--calculate-levels): Simplify.
28526         Ignore also initial empty lines for syntax calculation.
28527         * lisp/progmodes/python.el (python-indent-context): Return
28528         :no-indent for first non-empty line, not just in line 1.
28529         * test/automated/python-tests.el (python-indent-base-case)
28530         (python-indent-inside-paren-1, python-indent-inside-paren-2)
28531         (python-indent-inside-paren-3, python-indent-inside-paren-4)
28532         (python-indent-inside-paren-5, python-indent-inside-paren-6)
28533         (python-indent-after-backslash-1)
28534         (python-indent-after-backslash-2)
28535         (python-indent-after-backslash-3)
28536         (python-indent-after-backslash-4, python-indent-inside-string-1):
28537         Expect :no-indent for first non-empty line.
28539 2015-07-04  Daniel Colascione  <dancol@dancol.org>
28541         Factor isearch word description into new function
28542         * lisp/isearch.el (isearch--describe-word-mode): New function.
28543         (isearch-message-prefix, isearch-query-replace): Use it.
28545 2015-07-04  Eli Zaretskii  <eliz@gnu.org>
28547         Fix mouse pointer on w32 when a menu is active
28548         * src/w32fns.c (w32_wnd_proc): Don't change the mouse pointer
28549         shape while a menu is in use.  This started happening since we now
28550         send WM_EMACS_SHOWCURSOR messages when the mouse moves.
28552 2015-07-04  Martin Rudalics  <rudalics@gmx.at>
28554         Fix processing of alpha parameter for Windows tip frames  (Bug#17344)
28555         * src/w32fns.c (x_create_tip_frame): Fix processing alpha
28556         parameter.  (Bug#17344)
28558         Have `compilation-set-window' use right window for getting fringes
28559         (Bug#20829)
28560         * lisp/progmodes/compile.el (compilation-set-window):
28561         Take `window-fringes' from argument window.
28563 2015-07-03  Glenn Morris  <rgm@gnu.org>
28565         Update eieio tests for recent eieio-core change.
28566         * test/automated/eieio-test-persist.el (persist-test-save-and-compare):
28567         * test/automated/eieio-tests.el
28568         (eieio-test-32-slot-attribute-override-2):
28569         Replace the deleted eieio--class-v with cl--find-class.
28571 2015-07-03  Martin Rudalics  <rudalics@gmx.at>
28573         Fix some issues with `window-divider-mode'
28574         * lisp/frame.el (window-divider-default-places): New option.
28575         (window-divider-mode): Remove option.
28576         (window-divider-mode): Make it a "regular" minor mode.
28577         (window-divider-width-valid-p): Drop frame- prefix.
28578         (window-divider-mode-apply): New argument ENABLE.  Drop frame-
28579         prefix.  Handle `window-divider-default-places'.
28580         (frame--window-divider-mode-set-and-apply): Remove.
28581         (window-divider-default-bottom-width)
28582         (window-divider-default-right-width): Drop :group entries.
28583         * lisp/menu-bar.el (menu-bar-bottom-and-right-window-divider)
28584         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
28585         (menu-bar-no-window-divider): Set `window-divider-default-places'
28586         and call `window-divider-mode'.
28587         * doc/emacs/frames.texi (Window Dividers): Document
28588         `window-divider-default-places'.
28590 2015-07-02  Xue Fuqiao  <xfq.free@gmail.com>
28592         * doc/emacs/display.texi (Displaying Boundaries):
28593         * doc/emacs/search.texi (Word Search): Add cross references.
28595 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
28597         -batch should not affect ‘’ -> `' display
28598         * lisp/startup.el (command-line): Do the ‘’ -> `' check even if
28599         -batch (Bug#20926).
28601 2015-07-02  Stefan Monnier  <monnier@iro.umontreal.ca>
28603         * lisp/emacs-lisp/eieio-core.el (eieio--class-v): Remove
28604         * lisp/emacs-lisp/eieio-core.el, lisp/emacs-lisp/eieio.el:
28605         * lisp/emacs-lisp/eieio-opt.el, lisp/emacs-lisp/eieio-compat.el:
28606         Use cl--find-class instead.
28608         * lisp/term/xterm.el (xterm--query): Fix paren typo (bug#20951).
28610 2015-07-02  Martin Rudalics  <rudalics@gmx.at>
28612         Some further fixes in Change Window node (Bug#20183)
28613         * doc/emacs/windows.texi (Change Window): Replace "rearranging"
28614         by "resizing" in section title.  Add some concept indices.
28615         Suggested by N. Jackson (Bug#20183).
28617         * doc/emacs/windows.texi (Change Window): Reference window
28618         dividers.
28620         Document new `window-divider-mode'.
28621         * lisp/frame.el (window-divider-mode): Fix doc-string.
28622         * doc/emacs/frames.texi (Window Dividers): New section.
28624         Improve accessibility of window dividers (Bug#20183)
28625         * lisp/faces.el (window-divider)
28626         (window-divider-first-pixel, window-divider-last-pixel): Change
28627         membership from `frames' to `window-divider' customization group.
28628         * lisp/frame.el (window-divider): New customization group.
28629         (window-divider-mode): New minor mode.
28630         (window-divider-default-bottom-width)
28631         (window-divider-default-right-width): New options.
28632         (frame--window-divider-previous-mode): New variable.
28633         (frame-window-divider-width-valid-p)
28634         (frame--window-divider-mode-apply)
28635         (frame--window-divider-mode-set-and-apply): New functions.
28636         * lisp/menu-bar.el (menu-bar-options-save): Save
28637         window-divider-mode settings.
28638         (menu-bar-window-divider-customize)
28639         (menu-bar-bottom-and-right-window-divider)
28640         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
28641         (menu-bar-no-window-divider): New functions.
28642         (menu-bar-showhide-window-divider-menu): New variable.
28643         (menu-bar-showhide-menu): Show/hide window divider menu.
28644         * lisp/mouse.el (mouse-split-window-vertically)
28645         (mouse-split-window-horizontally): Replace `error' by
28646         `user-error'.  Bind `window-combination-resize' to nil.
28647         (top-level): Add/reorder mouse key bindings on mode- and
28648         vertical-line.
28650 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
28652         Don't display ‘’ as `' under X in en_GB
28653         The curved quote setup code invokes (char-displayable-p ?‘),
28654         but this isn’t reliable until after the X frame replaces the
28655         terminal frame (Bug#20926).
28656         * lisp/international/mule-cmds.el (set-locale-environment):
28657         Move curved quote setup code from here ...
28658         * lisp/startup.el (command-line): ... to here, after creating
28659         the X frame.
28661 2015-07-01  Nicolas Richard  <youngfrog@members.fsf.org>
28663         * lisp/emacs-lisp/seq.el (seq-difference): Fix typo in docstring.
28665         * lisp/ido.el (ido-restrict-to-matches): Add an optional argument
28666         to reverse the meaning (Bug#15631).
28668 2015-07-01  Eli Zaretskii  <eliz@gnu.org>
28670         Be more tolerant to fonts named "Foobar-12"
28671         * src/frame.c (x_set_font): If font_spec_from_name returns nil,
28672         don't barf; instead, request a new fontset to be generated.  This
28673         avoids unnecessarily rejecting fonts named against XLFD rules.  See
28674         https://lists.gnu.org/r/help-emacs-windows/2015-06/msg00001.html,
28675         for the description of the original problem.
28676         * lisp/faces.el (set-face-attribute): Don't be fooled too easily
28677         by a hyphen in a font's name.
28679         Fix value of posn-at-pont in R2L lines
28680         * src/keyboard.c (Fposn_at_x_y, Fposn_at_point): Allow X pixel
28681         coordinate of -1, for a newline in a right-to-left line that
28682         overflowed into the left fringe.
28684 2015-07-01  Stefan Monnier  <monnier@iro.umontreal.ca>
28686         (cl--copy-slot-descriptor): Copy the `props' alist as well
28687         * lisp/emacs-lisp/cl-preloaded.el (cl--copy-slot-descriptor-1):
28688         Rename from cl--copy-slot-descriptor.
28689         (cl--copy-slot-descriptor): New function.  Copy the alist (bug#20914).
28691 2015-06-30  Stefan Monnier  <monnier@iro.umontreal.ca>
28693         * lisp/term/xterm.el (xterm--query): Avoid generating garbage
28694         (xterm-query-timeout): New var.
28695         (xterm--query): Use it.  Fallback on async method if we timeout before
28696         getting the first byte of the reply (bug#12354).
28698 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
28700         Spelling fixes
28701         * lisp/character-fold.el (character-fold-search):
28702         * lisp/emacs-lisp/package.el (package-hidden-regexps):
28703         Fix typos.
28705 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
28707         * doc/emacs/frames.texi (Frame Commands): Typo fix.  (Bug#20946)
28709 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
28711         In strings, prefer plain ` and ' to \` and \'
28712         * lisp/allout.el (allout-insert-listified):
28713         * lisp/emacs-lisp/easy-mmode.el (define-globalized-minor-mode):
28714         * lisp/ls-lisp.el (ls-lisp-UCA-like-collation)
28715         (ls-lisp-string-lessp):
28716         * lisp/menu-bar.el (menu-bar-open):
28717         * lisp/obsolete/otodo-mode.el (todo-top-priorities):
28718         * lisp/progmodes/compile.el (compile):
28719         * lisp/progmodes/etags.el (tags-loop-scan):
28720         * lisp/progmodes/make-mode.el (makefile-browser-insert-continuation):
28721         * lisp/subr.el (posn-actual-col-row):
28722         * lisp/term/pc-win.el (x-list-fonts):
28723         * lisp/textmodes/texinfmt.el (texinfmt-version):
28724         * lisp/textmodes/texnfo-upd.el (texinfo-master-menu):
28725         * lisp/time.el (display-time-world-list):
28726         * lisp/tmm.el (tmm-menubar):
28727         * src/buffer.c (syms_of_buffer):
28728         * src/fileio.c (syms_of_fileio):
28729         Omit unnecessary and confusing backslash before quote.
28730         * lisp/erc/erc.el (erc-cmd-LASTLOG):
28731         * lisp/progmodes/flymake.el (flymake-fix-file-name):
28732         * lisp/progmodes/vhdl-mode.el (vhdl-in-extended-identifier-p):
28733         Fix string that was intended to escape a backslash and not a quote.
28735 2015-06-30  Glenn Morris  <rgm@gnu.org>
28737         * leim/Makefile.in, lisp/Makefile.in: Add missing EXEEXT definition.
28739         * lisp/Makefile.in (MH_E_SRC, TRAMP_SRC, CAL_SRC):
28740         Replace hard-coded lists with wildcard + filter-out.
28742         * configure.ac (system-configuration-features): Add X11, NS.
28744         Improve reproducibility of generated loaddefs file
28745         * lisp/emacs-lisp/autoload.el (autoload-generate-file-autoloads):
28746         Make the return value the modtime of the input file (if no autoloads).
28747         (update-directory-autoloads): In the "no autoloads" section,
28748         use "most recent modtime" rather than "current time".
28750 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
28752         * lisp/emacs-lisp/package.el (package--remove-hidden): Fix logic.
28753         (Bug#20930)
28755 2015-06-30  Nicolas Petton  <nicolas@petton.fr>
28757         * doc/lispref/sequences.texi: Add documentation for seq-min and seq-max.
28759         Add seq-min and seq-max
28760         Bump version number.
28761         * lisp/emacs-lisp/seq.el (seq-min, seq-max): New functions.
28762         * test/automated/seq-tests.el: Add tests for seq-min and seq-max.
28764 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
28766         Make sure sleep-for always delays for as long as it's told
28767         * src/dispnew.c (Fsleep_for): Call wait_reading_process_output in
28768         a loop, to ensure we always wait exactly the required amount of
28769         time.  (Bug#15990)
28771 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
28773         Fix pointer signedness glitch
28774         * src/font.c (font_load_for_lface): Use SSDATA, not SDATA.
28776 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
28778         Don't block changes in mouse pointer inside 'track-mouse'
28779         * etc/NEWS:
28780         * doc/lispref/frames.texi (Mouse Tracking): Document the special
28781         effect of setting 'track-mouse' to 'dragging'.
28782         * lisp/textmodes/artist.el (artist-mouse-draw-continously):
28783         * lisp/ruler-mode.el (ruler-mode-mouse-drag-any-column-iteration):
28784         * lisp/mouse-drag.el (mouse-drag-throw):
28785         * lisp/mouse.el (mouse-drag-line): Set 'track-mouse' to 'dragging'
28786         to avoid changes in the shape of the mouse pointer.
28787         * src/xdisp.c (define_frame_cursor1): Don't change the mouse
28788         pointer shape when do_mouse_tracking has the value of 'dragging',
28789         not just any non-nil value.  (Bug#20934)
28790         (syms_of_xdisp): DEFSYM 'dragging'.
28792 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
28794         * lisp/isearch.el (isearch-toggle-word): Fix toggle.
28796         * lisp/emacs-lisp/package.el (package-compute-transaction):
28797         Don't assume version sorting.
28799         * lisp/emacs-lisp/package.el (package--save-selected-packages):
28800         Don't save before init time, to avoid overwriting configurations.
28801         (Bug#20855)
28803 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
28805         * doc/emacs/display.texi (Standard Faces, Fringes): Add cross
28806         references.
28808 2015-06-29  Ted Zlatanov  <tzz@lifelogs.com>
28810         Update for the upcoming CFEngine 3.7 release: support macros and
28811         quoted context strings; reformat JSON; indent promise attributes 2
28812         units by default; give function parameter descriptions in the eldoc
28813         glue.
28814         * lisp/progmodes/cfengine.el: Update version and docs and fix name.
28815         Autoload `json-pretty-print'.  Support new features in 3.7.
28816         (cfengine-parameters-indent): Set default promise attribute indent to
28817         2 more than the promise itself.
28818         (cfengine3-macro-regex): New variable to match the new macro syntax.
28819         (cfengine3-font-lock-keywords): Use it to highlight macros.
28820         (cfengine3-indent-line): Use it to indent macros to column 0.
28821         (cfengine3-class-selector-regex): Update for the new quoted strings
28822         format.
28823         (cfengine3-reformat-json-string): New function to reformat a JSON
28824         string using `json-pretty-print'.
28825         (cfengine3-format-function-docstring): Use function parameter
28826         description if it's provided by the cf-promises syntax dump.
28828 2015-06-29  Michael R. Mauger  <michael@mauger.com>
28830         Cygwin emacsclient handles w32 file names
28831         * lisp/server.el (server-process-filter): Allow Cygwin's
28832         emacsclient to be used as a file handler on MS-Windows.
28834 2015-06-29  Katsumi Yamaoka  <yamaoka@jpl.org>
28836         * lisp/isearch.el (isearch-exit): Don't call isearch-done twice
28837         (bug#20925).
28839 2015-06-29  Eli Zaretskii  <eliz@gnu.org>
28841         * doc/lispref/text.texi (Sticky Properties): Improve wording.
28842         (Bug#20924)
28844         Allow font names that end in "-NN", where NN is a number
28845         * src/font.c (font_load_for_lface): If the font-spec didn't match
28846         any available fonts, try again without interpreting trailing "-NN"
28847         as the font size.  For the description of the original problem, see
28848         https://lists.gnu.org/r/help-emacs-windows/2015-06/msg00001.html
28850         .gdbinit followup to changes in !USE_LSB_TAG
28851         * src/.gdbinit (xgetsym): Don't left-shift $ptr even under
28852         !USE_LSB_TAG, as Emacs no longer does.
28854 2015-06-29  Wolfgang Jenkner  <wjenkner@inode.at>
28856         * lisp/calc/calc-store.el (calc-insert-permanent-variable): Heed case.
28857         Otherwise `s p' of f and F will stomp on each other's value.
28858         (Bug#20916)
28860 2015-06-29  Artur Malabarba  <bruce.connor.am@gmail.com>
28862         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
28863         Don't block remember-pos if buffer isn't displayed.  (Bug#20921)
28865 2015-06-29  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
28867         * lisp/emacs-lisp/package.el (describe-package): Use symbol-at-point
28868         as additional guess.
28870         * lisp/emacs-lisp/package.el (describe-package): Convert the guess
28871         to a string.
28873 2015-06-28  Paul Eggert  <eggert@cs.ucla.edu>
28875         apropos-library quoting fix
28876         * lisp/apropos.el (apropos-library): Quote library consistently
28877         with the rest of the quoting used by apropos.
28879         Clarify interpreter-mode-alist doc
28880         * lisp/files.el (interpreter-mode-alist):
28881         Reword to avoid confusing quoting that wasn't working anyway.
28883 2015-06-28  Michael Albinus  <michael.albinus@gmx.de>
28885         Sync with Tramp 2.2.12
28886         * doc/misc/trampver.texi:
28887         * lisp/net/trampver.el: Update release number.
28888         * test/automated/tramp-tests.el (tramp-test13-make-directory):
28889         Fix cleanup.
28891 2015-06-28  Artur Malabarba  <bruce.connor.am@gmail.com>
28893         * lisp/isearch.el (isearch-mode): Don't char-fold regexps (bug#20913).
28895 2015-06-27  Dmitry Gutov  <dgutov@yandex.ru>
28897         Bind grep-highlight-matches around the rgrep call
28898         * lisp/progmodes/grep.el (zrgrep): Bind grep-highlight-matches
28899         around the rgrep call (bug#20728).
28901         Put "--color" before the other options in grep-command
28902         * lisp/progmodes/grep.el (grep-compute-defaults): Put "--color"
28903         before the other options in grep-command (bug#20912).
28905         Add --color Grep option to the command dynamically
28906         * lisp/progmodes/grep.el (grep-template, grep-find-template):
28907         Update the description for <C>.  (Bug#20728)
28908         (grep-compute-defaults): Don't add the --color option to
28909         grep-options.  Only add it to grep-command.
28910         (grep-expand-keywords): Expand the env value opts into <C>.
28911         (grep-expand-template): Replace cf in the env with the opts list,
28912         that can include -i and --color.
28913         * lisp/progmodes/xref.el (xref-collect-matches): Do not remove
28914         "--color=always" from the template, because we don't have to.
28916 2015-06-27  Paul Eggert  <eggert@cs.ucla.edu>
28918         cl-extra fixes for most-negative-fixnum
28919         * lisp/emacs-lisp/cl-extra.el (cl-gcd, cl-lcm, cl-random):
28920         Don't mishandle an argument equal to most-negative-fixnum,
28921         whose absolute value equals itself.
28922         (cl-gcd, cl-lcm): Use dolist rather than doing it by hand.
28924         Initialize cl--gensym-counter to 0
28925         Previously it was initialized to a random value, which made it
28926         harder to reproduce earlier Emacs runs.  The need for a random
28927         value went away when Emacs introduced and used the #: syntax for
28928         uninterned symbols (Bug#20862).
28929         * doc/misc/cl.texi (Creating Symbols, Common Lisp Compatibility):
28930         Document that cl--gensym-counter now starts with 0.
28931         * lisp/emacs-lisp/cl-lib.el (cl--gensym-counter): Remove.
28932         (cl--random-time): Move to near only remaining use.
28933         * lisp/emacs-lisp/cl-macs.el (cl--gensym-counter): Initialize to 0.
28935         Improve docstring for macroexp-let2
28936         * lisp/emacs-lisp/macroexp.el (macroexp-let2):
28937         Improve as per suggestion by RMS in:
28938         https://lists.gnu.org/r/emacs-devel/2015-06/msg00621.html
28939         Also, rename args to match new doc string.
28941 2015-06-27  Eli Zaretskii  <eliz@gnu.org>
28943         Fix VC test suite on MS-Windows
28944         * lisp/vc/vc-svn.el (vc-svn-create-repo): Make sure the file: URL
28945         always starts with 3 slashes after the colon.
28946         * test/automated/vc-tests.el (vc-test--create-repo-function): Use
28947         'w32-application-type' to invoke CVS on MS-Windows with properly
28948         formatted CVSROOT directory name.
28950         Add a new function w32-application-type
28951         * src/w32proc.c (Fw32_application_type): New function.
28953         Avoid error in TLS connections due to incorrect format
28954         * src/gnutls.c (Fgnutls_boot): Use the %x conversion specifier in
28955         the call to 'error', instead of the unsupported %u.  Reported by
28956         lo2net <fangtao0901@gmail.com>.  (Bug#20908)
28958 2015-06-26  Artur Malabarba  <bruce.connor.am@gmail.com>
28960         * lisp/replace.el (replace-search): Fix regexp case (bug#20901).
28962 2015-06-26  Leo Liu  <sdl.web@gmail.com>
28964         * lisp/emacs-lisp/cl-indent.el: Fix indentation for
28965         `with-output-to-string' in elisp.
28967         Revert "lisp/emacs-lisp/cl-indent.el: Fix indent of
28968         with-output-to-string".
28969         This reverts commit 659199f2ca5f283fb246faa78a244e5ca25f53dd.
28971 2015-06-26  Eli Zaretskii  <eliz@gnu.org>
28973         Minor corrections in ELisp manual
28974         * doc/lispref/nonascii.texi (Character Properties): Correct
28975         inaccuracies in description of values of the Unicode properties.
28977         Fix invisible mouse pointers on Windows.
28978         * src/w32fns.c: Include windowsx.h.
28979         (w32_wnd_proc): If the mouse moved and the mouse pointer is
28980         invisible, make it visible again even when the main (Lisp)
28981         thread is busy.
28982         * src/w32term.c (w32_toggle_invisible_pointer): Rather then
28983         garbaging the frame have the input thread call SetCursor.
28985 2015-06-26  Martin Rudalics  <rudalics@gmx.at>
28987         Provide invisible mouse pointers on Windows (Bug#6105) (Bug#12922)
28988         * src/w32fns.c (w32_wnd_proc): Handle f->pointer_invisible
28989         for WM_SETCURSOR and WM_EMACS_SETCURSOR cases.
28990         * src/w32term.c (w32_hide_hourglass): Handle f->pointer_invisible.
28991         (w32_toggle_invisible_pointer): New function.
28992         (w32_create_terminal): Add w32_toggle_invisible_pointer as
28993         toggle_invisible_pointer_hook for this terminal.
28995 2015-06-25  Xue Fuqiao  <xfq.free@gmail.com>
28997         Doc fix for deletion commands
28998         'delete-char' does not respect the value of 'delete-active-region'.
28999         * doc/emacs/killing.texi (Deletion):
29000         Fix documentation for some single-char deletion commands.
29002         * doc/emacs/help.texi (Apropos):
29003         Improve documentation of 'apropos-do-all'.
29005         * doc/emacs/help.texi (Help Summary):
29006         Improve documentation of 'describe-mode'.
29008 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
29010         Fix submake dependency bug with .h files
29011         * src/Makefile.in ($(libsrc)/make-docfile$(EXEEXT)):
29012         Depend on $(lib)/libgnu.a, so that we build $(lib)/*/*.h
29013         before the submake in $(libsrc) would spin off a subsubmake
29014         for $(lib) in parallel with our submake for $(lib) (Bug#20894).
29016 2015-06-25  Artur Malabarba  <bruce.connor.am@gmail.com>
29018         * lisp/character-fold.el (character-fold-table): Reuse `table'.
29020 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
29022         Translate undisplayable ‘ to `
29023         * doc/lispref/help.texi (Keys in Documentation):
29024         * lisp/international/mule-cmds.el (set-locale-environment):
29025         * lisp/term/w32console.el (terminal-init-w32console):
29026         * src/doc.c (Fsubstitute_command_keys, Vhelp_quote_translation):
29027         If ‘ is not displayable, transliterate it to `, not to '.  See:
29028         https://lists.gnu.org/r/emacs-devel/2015-06/msg00542.html
29030         Fix C99 incompatibilities in Cairo code
29031         * src/image.c (xpm_load) [USE_CAIRO]:
29032         * src/xterm.c (x_cr_accumulate_data) [USE_CAIRO]:
29033         Fix pointer signedness problem.
29035 2015-06-25  Oleh Krehel  <ohwoeowho@gmail.com>
29037         lisp/emacs-lisp/cl-indent.el: Fix indent of with-output-to-string
29038         * lisp/emacs-lisp/cl-indent.el (common-lisp-indent-function):
29039         `with-output-to-string' should have the same indent as `progn'.
29040         This is in line with the declaration of `with-output-to-string'.
29042 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
29044         Get ‘./configure; make -C src emacs’ to work
29045         Without this fix, lib/fcntl.h isn't built in time (Bug#20894).
29046         * lib-src/Makefile.in (../lib/libgnu.a):
29047         * src/Makefile.in ($(lib)/libgnu.a): Build all, not libgnu.a.
29049 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
29051         Fix GC bugs --with-wide-int and Qnil == 0
29052         Use the same alignment for the !USE_LSB_TAG case as for the
29053         more-typical USE_LSB_TAG case.  The attempt to support arbitrary
29054         alignments with !USE_LSB_TAG had subtle bugs in garbage collection
29055         once we changed the representation of symbols so that Qnil == 0.
29056         Problem reported by Eli Zaretskii (Bug#20862).
29057         * src/alloc.c (XMALLOC_HEADER_ALIGNMENT) [XMALLOC_OVERRUN_CHECK]:
29058         * src/alloc.c (vector_alignment, union aligned_Lisp_Symbol)
29059         (union aligned_Lisp_Misc, maybe_lisp_pointer, pure_alloc):
29060         Use same alignment for !USE_LSB_TAG as for USE_LSB_TAG.
29061         * src/alloc.c (POINTERS_MIGHT_HIDE_IN_OBJECTS): Remove.
29062         This optimization in the !USE_LSB_TAG case is no longer valid when
29063         symbols are represented via offsets.  Change the only use to
29064         assume that pointers might hide in objects.
29065         * src/lisp.h (alignas) [!USE_LSB_TAG]:
29066         Require support in this case, too.
29067         (TAG_SYMOFFSET, XSYMBOL) [!USE_LSB_TAG]: Do not shift the offset.
29068         This is OK, because the !USE_LSB_TAG case now applies only when
29069         Lisp_Object is wider than void *, so there's no longer any need
29070         to shift the offset.  Not shifting the offset means that
29071         symbol representations have the same alignment as pointers,
29072         which the GC assumes.
29074 2015-06-24  Xue Fuqiao  <xfq.free@gmail.com>
29076         * doc/lispintro/emacs-lisp-intro.texi (Data types):
29077         Improve documentation of 'substring'.
29079 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
29081         * lisp/character-fold.el (character-fold-table): Fix table generation.
29083 2015-06-24  Glenn Morris  <rgm@gnu.org>
29085         * nextstep/Makefile.in (all): Make it the first target.
29086         (../src/emacs${EXEEXT}): Add rule for making it.
29088 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
29090         * etc/NEWS: Fix mention to old function name.
29092         * lisp/character-fold.el: New file (Bug#20887)
29093         (character-fold-to-regexp): New function.
29094         * lisp/replace.el (replace-search): Check value of
29095         `character-fold-search'.
29096         * lisp/isearch.el: Move character-folding code to
29097         character-fold.el
29098         (isearch-toggle-character-fold): New command.
29099         (isearch-mode-map): Bind it to "\M-s'".
29100         (isearch-mode): Check value of `character-fold-search'.
29102 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
29104         lisp/subr.el (remove-from-invisibility-spec): Handle the t case
29105         * lisp/subr.el (remove-from-invisibility-spec): Make sure `element'
29106         is visible even if it's not yet in buffer-invisibility-spec (bug#20468).
29108         * lisp/progmodes/xref.el (xref-location-group, xref-location-marker)
29109         (xref--insert-xrefs, xref-collect-references): Avoid init-args in oref.
29111 2015-06-24  Glenn Morris  <rgm@gnu.org>
29113         * Makefile.in (install-arch-dep): Don't set sticky bit on the binary.
29115 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
29117         lisp/gnus/nnmaildir.el: Silence lexical warnings
29118         * lisp/gnus/nnmaildir.el (nnmaildir--prepare): Use a more
29119         functional style.
29120         (nnmaildir--update-nov): Remove unused var `numdir'.
29121         (nnmaildir-request-type, nnmaildir--scan, nnmaildir-request-newgroups)
29122         (nnmaildir-request-group, nnmaildir-request-create-group)
29123         (nnmaildir-request-post, nnmaildir-request-move-article)
29124         (nnmaildir-request-accept-article, nnmaildir-active-number):
29125         Mark unused args.
29126         (nnmaildir-get-new-mail, nnmaildir-group-alist)
29127         (nnmaildir-active-file): Declare.
29128         (nnmaildir-request-scan): Remove unused vars `group' and `grp-dir'.
29129         (nnmaildir-request-update-info): Remove unused vars `dotfile', `num',
29130         `mark', `end', `new-mark', and `mark-sym'.
29131         (nnmaildir-retrieve-headers): Remove unused args `srv-dir', `dir',
29132         `nlist2'.
29133         (nnmaildir-request-expire-articles):
29134         Remove unused vars `article', `stop' and `nlist2'.
29135         (nnmaildir-request-set-mark): Remove unused vars `begin', `article' and
29136         `end'.  Use nnmaildir--article when dyn-binding is needed.
29137         Give the value directly in the `let' for `del-mark', `del-action',
29138         `add-action', and `set-action'.  Don't use `add-to-list' on a local var.
29139         (nnmaildir-close-server): Declare those local vars that need to be
29140         dyn-bound.
29142 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
29144         * src/keyboard.h (kbd_buffer_store_event_hold): Remove unused local.
29146         Port selection info fix to clang
29147         * src/keyboard.h (kbd_buffer_store_event_hold):
29148         Don't assume C11 semantics for alignof (Bug#20756).
29150         Fix bug that munged selection info
29151         On some optimizing C compilers, copying a structure did not
29152         copy the padding bytes between elements, and the type punning
29153         between struct input_data and struct selection_input_data did
29154         not work.  Change the C code to use a proper union type instead.
29155         Problem reported by YAMAMOTO Mitsuharu (Bug#20756).
29156         * src/keyboard.c (kbd_buffer, kbd_fetch_ptr, kbd_store_ptr)
29157         (readable_events, discard_mouse_events, kbd_buffer_events_waiting)
29158         (kbd_buffer_get_event, process_special_events, stuff_buffered_input)
29159         (mark_kboards):
29160         Use union buffered_input_event, not struct input_event.
29161         (clear_event, deliver_input_available_signal, process_special_events):
29162         Remove unnecessary forward decls.
29163         (kbd_buffer_store_buffered_event): New function, mostly just the
29164         old kbd_buffer_store_event_hold, except its argument is of type
29165         union buffered_input_event, not struct input_event.
29166         (kbd_buffer_unget_event): Define only if HAVE_X11, since it's
29167         not needed otherwise.  Argument is now of type
29168         struct selection_input_event *, not struct input_event *.
29169         All callers changed.
29170         (clear_event): Arg is now of type union buffered_input_event *,
29171         not struct input_event *.  All callers changed.
29172         * src/keyboard.h [HAVE_X11]: Include "xterm.h".
29173         (union buffered_input_event): New type.
29174         (kbd_buffer_store_event_hold): Now an inline function,
29175         defined here.
29176         * src/termhooks.h (EVENT_KIND_WIDTH): New constant.
29177         (struct input_event): Use it.
29178         * src/xselect.c (struct selection_event_queue):
29179         Make elements be of type struct selection_input_event,
29180         not struct input_event.
29181         (selection_input_event_equal): New static function.
29182         (x_queue_event): Use it.
29183         (x_queue_event, x_decline_selection_request)
29184         (x_selection_current_request, x_reply_selection_request)
29185         (x_handle_selection_request, x_handle_selection_clear)
29186         (x_handle_selection_event): Use struct selection_input_event,
29187         not struct input_event.  All callers changed.
29188         (x_convert_selection): Omit unused first arg.  All callers changed.
29189         (Fx_disown_selection_internal): Omit unnecessary union.
29190         * src/xterm.c (handle_one_xevent): Use new union buffered_input_event
29191         rather than rolling our own equivalent.  Prefer sie.kind when
29192         setting up that kind of structure.
29193         Call kbd_buffer_store_buffered_event, not kbd_buffer_store_event_hold.
29194         * src/xterm.h (struct selection_input_event: Use EVENT_KIND_WIDTH.
29195         (SELECTION_EVENT_DISPLAY, SELECTION_EVENT_DPYINFO)
29196         (SELECTION_EVENT_REQUESTOR, SELECTION_EVENT_SELECTION)
29197         (SELECTION_EVENT_TARGET, SELECTION_EVENT_PROPERTY)
29198         (SELECTION_EVENT_TIME, x_handle_selection_event):
29199         Arg is now of type struct selection_input_event *)
29200         not struct input_event *.  All callers changed.
29202 2015-06-23  Glenn Morris  <rgm@gnu.org>
29204         * Makefile.in (install-arch-dep): Simplify with Make conditionals.
29206 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
29208         * lisp/isearch.el: Fold many unicode characters to ASCII.
29209         (isearch-character-fold-search, isearch--character-fold-extras)
29210         (isearch--character-fold-table): New variable.
29211         (isearch--character-folded-regexp): New function.
29212         (isearch-search-fun-default): Use them.
29213         * lisp/replace.el (replace-character-fold): New variable.
29214         (replace-search): Use it.
29215         * etc/NEWS: Document it.
29217 2015-06-23  Glenn Morris  <rgm@gnu.org>
29219         Check for an input event before showing a dialog box.  (Bug#20813)
29220         * lisp/subr.el (y-or-n-p):
29221         * src/fns.c (Fyes_or_no_p): Check last-input-event as well
29222         as last-nonmenu-event.
29224 2015-06-23  Jürgen Hartmann  <juergen_hartman_@hotmail.com>  (tiny change)
29226         Respect ‘switch-to-visible-buffer’ more rigidly.  (Bug#20861)
29227         * lisp/window.el (switch-to-visible-buffer): Doc adjustment.
29228         (switch-to-prev-buffer, switch-to-next-buffer): Respect
29229         switch-to-visible-buffer independent of the windows history.
29231 2015-06-23  Paul Eggert  <eggert@cs.ucla.edu>
29233         * src/keyboard.c (last_timer_event): Remove unused var.
29235 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
29237         * test/automated/package-test.el (package-test-update-listing):
29238         Fix test.
29240 2015-06-23  Glenn Morris  <rgm@gnu.org>
29242         Revert 2014-06-25 nextstep/Makefile change.
29243         * nextstep/Makefile.in (${ns_appbindir}): Remove rule.
29244         (${ns_appbindir}/Emacs, links): Create ns_appbindir in the rule,
29245         not as an order-only prerequisite.
29247         * configure.ac (--with-ns): Enable by default on OS X.
29249 2015-06-23  Leo Liu  <sdl.web@gmail.com>
29251         Fix shell-for/backward-command to exclude spaces
29252         * lisp/shell.el (shell-forward-command, shell-backward-command):
29253           Handle the 'move case from re-search-forward/backward.
29254           fixes debbugs:20873
29256 2015-06-22  Juri Linkov  <juri@linkov.net>
29258         * lisp/replace.el (query-replace-read-from): Add separator to
29259         the local binding of text-property-default-nonsticky.  (Bug#20690)
29261         * lisp/simple.el (shell-command-on-region): Replace 'error' with 'user-error'.
29262         (Bug#20785)
29264 2015-06-22  Ken Brown  <kbrown@cornell.edu>
29266         Enable CPU profiling on Cygwin
29267         * src/syssignal.h [CYGWIN] (PROFILER_CPU_SUPPORT): Revert previous
29268         change that undefined this.
29269         (SIGEV_SIGNAL): Ensure that this is defined as a macro.
29270         * src/profiler.c [CYGWIN] (timer_getoverrun): Define as a macro on
29271           Cygwin.
29273         Improve diagnostics of profiler-cpu-start
29274         * src/profiler.c (setup_cpu_timer): Change return type to 'int';
29275         return -1 if the sampling interval is invalid.
29276         (Fprofiler_cpu_start): Improve error message if 'setup_cpu_timer'
29277         fails.  (Bug#20843)
29279 2015-06-22  Artur Malabarba  <bruce.connor.am@gmail.com>
29281         * lisp/emacs-lisp/package.el: Exclude packages by name.
29282         (package-hidden-regexps): New variable.
29283         (package-menu--refresh): Use it.
29284         (package-menu-hide-package): New command.
29286         * lisp/emacs-lisp/package.el: Rename hide-obsolete to toggle-hiding.
29288 2015-06-22  Eli Zaretskii  <eliz@gnu.org>
29290         Fix debug-timer-check on systems without HAVE_TIMERFD
29291         * src/atimer.c (Fdebug_timer_check) [!HAVE_TIMERFD]: Actively run
29292         the expired timers, since wait_reading_process_output doesn't.
29293         (debug_timer_callback): Enlarge the tolerance to 20 msec.
29295         Fix RCS crashes in vc-test
29296         * lisp/vc/vc-rcs.el (vc-rcs-register): Avoid crashes with some old
29297         ports of 'ci' on MS-Windows by always passing the -t- switch.
29299 2015-06-22  Glenn Morris  <rgm@gnu.org>
29301         * doc/emacs/package.texi (Packages):
29302         * doc/emacs/trouble.texi (Known Problems): Remove faq cross-references.
29304         * doc/misc/efaq-w32.texi (Downloading): Copyedits.  (Bug#20851)
29306 2015-06-22  Paul Eggert  <eggert@cs.ucla.edu>
29308         Port tests to help-quote-translation
29309         * test/automated/ert-x-tests.el (ert-test-describe-test):
29310         * test/automated/package-test.el (package-test-describe-package)
29311         (package-test-signed): Allow straight quotes, too.
29313 2015-06-22  Dmitry Gutov  <dgutov@yandex.ru>
29315         Make find-function-on-key use the current window
29316         * lisp/emacs-lisp/find-func.el (find-function-on-key-do-it):
29317         Extract from `find-function-on-key', add a second argument.
29318         (find-function-on-key): Use it (bug#19679).
29319         (find-function-on-key-other-window)
29320         (find-function-on-key-other-frame): New commands.
29322 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
29324         Revert "Define `map-elt' as a generalized variable"
29325         This reverts commit 8b6d82d3ca86f76ed964063b3941a7c6ab0bf1c6.
29327 2015-06-21  Ken Brown  <kbrown@cornell.edu>
29329         Drop support for CPU profiling on Cygwin
29330         * src/syssignal.h (PROFILER_CPU_SUPPORT): Don't define on Cygwin.
29331         (Bug#20843)
29333 2015-06-21  Paul Eggert  <eggert@cs.ucla.edu>
29335         Fix some “nested” quoting confusion in doc strings
29336         * lisp/emacs-lisp/advice.el (ad-map-arglists):
29337         * lisp/kermit.el (kermit-clean-on):
29338         * lisp/mh-e/mh-comp.el (mh-repl-group-formfile):
29339         * src/keyboard.c (Frecursive_edit):
29340         Use curved quotes when quoting text containing apostrophe,
29341         so that the apostrophe isn't curved in the output.
29343 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
29345         Define `map-elt' as a generalized variable
29346         * lisp/emacs-lisp/map.el (map-elt): Define a gv-expander.
29347         * lisp/emacs-lisp/map.el (map--dispatch): Tighten the code.
29348         * lisp/emacs-lisp/map.el (map-put): Redefine it as a function using a
29349         `setf' with `map-elt'.
29350         * test/automated/map-tests.el: Comment out `test-map-put-literal'.
29352 2015-06-21  Michael Albinus  <michael.albinus@gmx.de>
29354         Improve error handling in tramp-adb.el
29355         * lisp/net/tramp-adb.el (tramp-adb-handle-file-local-copy):
29356         Improve error handling.
29358 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
29360         Reuse `alist-get' in map.el
29361         * lisp/emacs-lisp/map.el (map-elt): Use `alist-get' to retrieve alist
29362         elements.
29364 2015-06-21  Eli Zaretskii  <eliz@gnu.org>
29366         Fix bytecomp-tests--warnings when $TMPDIR has a long name
29367         * test/automated/bytecomp-tests.el (bytecomp-tests--warnings):
29368         Allow the warning to begin on the 3rd, not only 2nd line, which
29369         happens if temporary-file-directory has a very long name.
29371         Expect 2 icalendar tests to fail on MS-Windows
29372         * test/automated/icalendar-tests.el (icalendar-import-with-timezone)
29373         (icalendar-real-world): Make them expected failures on MS-Windows.
29375 2015-06-20  Paul Eggert  <eggert@cs.ucla.edu>
29377         Improve port of settings UI to older displays
29378         * lisp/cus-start.el (standard): Don't assume curved quotes are
29379         easily distinguishable when users are tinkering with a setting
29380         that affects how curved quotes are generated.
29382         Fix quoting in electric-quote-mode doc string
29383         * lisp/electric.el (electric-quote-mode): Fix quoting.
29384         This is a fallout from the recent change introducing
29385         ‘help-quote-translation’.
29387         Spelling fix
29389         * doc/misc/texinfo.tex, lib/set-permissions.c: Merge from gnulib.
29391         * src/doc.c (syms_of_doc): Remove unused symbols.
29393 2015-06-20  Martin Rudalics  <rudalics@gmx.at>
29395         * lisp/window.el (window-state-put): Undedicate target window
29396         before putting STATE into it.  (Bug#20848)
29398 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
29400         Merge from origin/emacs-24
29401         a5e6f33 Fixes: debbugs:20832
29402         b9f02cf Fixes: debbugs:20832
29404 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
29406         Fix file-in-directory-p when the directory is UNC
29407         * lisp/files.el (file-in-directory-p): Support files and
29408         directories that begin with "//".  (Bug#20844)
29410 2015-06-19  Stephen Berman  <stephen.berman@gmx.net>
29412         * lisp/calendar/todo-mode.el (todo-show): Don't visit todo file
29413         in the minibuffer.  (Bug#20832)
29415 2015-06-19  Nicolas Richard  <youngfrog@members.fsf.org>
29417         * lisp/calendar/todo-mode.el (todo-show): Signal an error if buffer
29418         for adding new todo file is empty but modified.  (Bug#20832)
29420 2015-06-19  Stefan Monnier  <monnier@iro.umontreal.ca>
29422         (filepos-to-bufferpos): Further tweaks to the utf-16 code
29423         * lisp/international/mule-util.el (filepos-to-bufferpos):
29424         Fix typo.  Move non-exact check to the utf-16 branch (the only one
29425         affected).  Don't use byte-to-position for the utf-16 case.
29427 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
29429         Minor fixes in filepos-to-bufferpos
29430         * lisp/international/mule-util.el (filepos-to-bufferpos): Remove
29431         test for utf-8-emacs.  Exempt single-byte encodings from the
29432         'use-exact' path when QUALITY is 'exact'.  Test UTF-16 encodings
29433         for BOM before subtracting 2 bytes.  Use 'identity' when adjusting
29434         UTF-16 encoded files for CR-LF EOLs.
29436 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
29438         Improve the optional translation of quotes
29439         Fix several problems with the recently-added custom variable
29440         help-quote-translation where the code would quote inconsistently
29441         in help buffers.  Add support for quoting 'like this', which
29442         is common in other GNU programs in ASCII environments.  Change
29443         help-quote-translation to use more mnemonic values: values are now the
29444         initial quoting char, e.g., (setq help-quote-translation ?`) gets the
29445         traditional Emacs help-buffer quoting style `like this'.  Change the
29446         default behavior of substitute-command-keys to match what's done in
29447         set-locale-environment, i.e., quote ‘like this’ if displayable,
29448         'like this' otherwise.
29449         * doc/lispref/help.texi (Keys in Documentation): Document
29450         new behavior of substitute-command-keys, and document
29451         help-quote-translation.
29452         * doc/lispref/tips.texi (Documentation Tips):
29453         Mention the effect of help-quote-translation.
29454         * etc/NEWS: Mention new behavior of substitute-command-keys,
29455         and merge help-quote-translation news into it.
29456         When talking about doc strings, mention new ways to type quotes.
29457         * lisp/cedet/mode-local.el (overload-docstring-extension):
29458         Revert my recent change to this function, which shouldn't be
29459         needed as the result is a doc string.
29460         * lisp/cedet/mode-local.el (mode-local-print-binding)
29461         (mode-local-describe-bindings-2):
29462         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
29463         * lisp/cus-theme.el (describe-theme-1):
29464         * lisp/descr-text.el (describe-text-properties-1, describe-char):
29465         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
29466         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
29467         (eieio-help-constructor):
29468         * lisp/emacs-lisp/package.el (describe-package-1):
29469         * lisp/faces.el (describe-face):
29470         * lisp/help-fns.el (help-fns--key-bindings)
29471         (help-fns--compiler-macro, help-fns--parent-mode)
29472         (help-fns--obsolete, help-fns--interactive-only)
29473         (describe-function-1, describe-variable):
29474         * lisp/help.el (describe-mode):
29475         Use substitute-command-keys to ensure a more-consistent quoting
29476         style in help buffers.
29477         * lisp/cus-start.el (standard):
29478         Document new help-quote-translation behavior.
29479         * lisp/emacs-lisp/lisp-mode.el (lisp-fdefs):
29480         * lisp/help-mode.el (help-xref-symbol-regexp, help-xref-info-regexp)
29481         (help-xref-url-regexp):
29482         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
29483         * lisp/wid-edit.el (widget-documentation-link-regexp):
29484         Also match 'foo', in case we're in a help buffer generated when
29485         help-quote-translation is ?'.
29486         * src/doc.c: Include disptab.h, for DISP_CHAR_VECTOR.
29487         (LEFT_SINGLE_QUOTATION_MARK, uLSQM0, uLSQM1, uLSQM2, uRSQM0)
29488         (uRSQM1, uRSQM2, LSQM, RSQM): New constants.
29489         (Fsubstitute_command_keys): Document and implement new behavior.
29490         (Vhelp_quote_translation): Document new behavior.
29492 2015-06-18  Glenn Morris  <rgm@gnu.org>
29494         * lisp/cus-start.el (help-quote-translation): Add :version.
29496         * src/doc.c (Fsubstitute_command_keys): Make previous change compile.
29498 2015-06-18  Alan Mackenzie  <acm@muc.de>
29500         Make translation of quotes to curly in doc strings optional.
29501         * src/doc.c (traditional, prefer-unicode): New symbols.
29502         (help-quote-translation): New variable.
29503         (Fsubstitute_command_keys): Make translation of quotes dependent on
29504         `help-quote-translation'; also translate curly quotes back to ASCII
29505         ones.
29506         * lisp/cus-start.el (top-level): Add a customization entry for
29507         `help-quote-translation'.
29509 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
29511         * lisp/emacs-lisp/package.el: Don't always propagate async errors
29512         (package--with-work-buffer-async): Only propagate the error if the
29513         callback returns non-nil.
29514         (package--download-one-archive): Return nil on the signature
29515         checking callback if we accept unsigned.
29516         (package--download-and-read-archives): Return non-nil on the
29517         archive download callback.
29519 2015-06-18  Martin Rudalics  <rudalics@gmx.at>
29521         Set image_cache_refcount before x_default_parameter calls.  (Bug#20802)
29522         * src/nsfns.m (Fx_create_frame):
29523         * src/xfns.c (Fx_create_frame, x_create_tip_frame): Move setting
29524         image_cache_refcount before first x_default_parameter call.
29526 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
29528         Improve and extend filepos-to-bufferpos
29529         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
29530         Don't barf if F returns nil for some argument.
29531         (filepos-to-bufferpos): Expand to support UTF-16 and not assume
29532         that every encoding of type 'charset' is single-byte.
29534 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
29536         * lisp/emacs-lisp/package.el (package-menu--perform-transaction):
29537         Properly delete packages.  (Bug#20836)
29539 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
29541         Update data files from just-released Unicode 8.0
29542         * etc/NEWS: Update wording since Unicode 8.0 is no longer in draft
29543         status.
29544         * test/BidiCharacterTest.txt: Update from Unicode 8.0.
29545         * admin/unidata/BidiMirroring.txt:
29546         * admin/unidata/BidiBrackets.txt:
29547         * admin/unidata/UnicodeData.txt: Update from Unicode 8.0.
29549 2015-06-18  Paul Eggert  <eggert@cs.ucla.edu>
29551         Document curved quotes a bit better
29552         * doc/emacs/basic.texi (Inserting Text):
29553         Mention C-x 8.  Change example to use curved quote rather
29554         than infinity, as this lets us give more ways to do it.
29555         * doc/emacs/mule.texi (International Chars): Mention C-x 8 shortcuts
29556         and quotation marks.
29557         * doc/emacs/text.texi (Quotation Marks):
29558         * doc/lispref/tips.texi (Documentation Tips):
29559         Add "curly quotes" and "curved quotes" to the index.
29560         * doc/emacs/text.texi (Quotation Marks):
29561         Give the C-x 8 shorthands for curved quotes.
29562         Cross-reference to "Quotation Marks".
29564 2015-06-17  Daiki Ueno  <ueno@gnu.org>
29566         Add pinentry.el for better GnuPG integration
29567         * lisp/pinentry.el: New file.
29568         * etc/NEWS: Add entry about pinentry.el.
29569         * lisp/epg.el (epg--start): Set INSIDE_EMACS envvar.
29570         (Bug#20550)
29572 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
29574         * lisp/emacs-lisp/package.el: Slightly better error reporting.
29576 2015-06-17  Stefan Monnier  <monnier@iro.umontreal.ca>
29578         (define-minor-mode): Use setq-default for :global minor modes
29579         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
29580         Use setq-default for :global minor modes (bug#20712).
29582 2015-06-17  Eli Zaretskii  <eliz@gnu.org>
29584         Avoid infloop in redisplay with tall images
29585         * src/xdisp.c (try_scrolling): Prevent an infloop when scrolling
29586         down near ZV.  (Bug#20808)
29587         Call bidi_unshelve_cache to avoid memory leaks.  Use IT_CHARPOS
29588         instead of CHARPOS.
29590 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
29592         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
29593         Fix error reporting.
29595         * lisp/emacs-lisp/let-alist.el: Move to lisp/emacs-lisp/let-alist.el
29597         * lisp/emacs-lisp/package.el: Revert buffer after any operation
29598         Call `package-menu--post-refresh' after any operation that changes
29599         the package database (`package-install' and `package-delete').  To
29600         avoid performance issues in large transactions, these functions
29601         add `post-refresh' to `post-command-hook' instead of calling it
29602         immediately.
29603         (package-menu--mark-or-notify-upgrades): New function.
29604         (list-packages): Add it to `package--post-download-archives-hook'.
29605         (package-menu--post-refresh): Lose the upgrade-checking code, add
29606         code to remove itself from `post-command-hook'.
29607         (package-install, package-delete): Add it to `post-command-hook'.
29608         (package-menu-execute): Don't call `package-menu--post-refresh'.
29610 2015-06-17  Stephen Leake  <stephen_leake@stephe-leake.org>
29612         Add missing function xref-location-group for elisp-mode.
29613         * lisp/progmodes/elisp-mode.el: Add missing function xref-location-group.
29615 2015-06-17  Wolfgang Jenkner  <wjenkner@inode.at>
29617         * src/editfns.c (Fbyte_to_position): Fix bytepos not at char boundary.
29618         The behavior now matches the description in the manual.  (Bug#20783)
29620 2015-06-17  Xue Fuqiao  <xfq.free@gmail.com>
29622         * etc/tutorials/TUTORIAL.cn: Update; synchronize with TUTORIAL.
29624 2015-06-17  Glenn Morris  <rgm@gnu.org>
29626         Generate char-script-table from Unicode source.  (Bug#20789)
29627         * admin/unidata/Makefile.in (AWK): New, set by configure.
29628         (all): Add charscript.el.
29629         (blocks): New variable.
29630         (charscript.el, ${unidir}/charscript.el): New targets.
29631         (extraclean): Also remove generated charscript.el.
29632         * admin/unidata/blocks.awk: New script.
29633         * admin/unidata/Blocks.txt: New data file, from unicode.org.
29634         * lisp/international/characters.el: Load charscript.
29635         * src/Makefile.in (charscript): New variable.
29636         (${charscript}): New target.
29637         (${lispintdir}/characters.elc): Depend on charscript.elc.
29638         (temacs$(EXEEXT)): Depend on charscript.
29640         * lisp/international/characters.el (char-script-table): Tweak
29641         some ranges to better match the source.  (Bug#20789#17)
29643         Remove "no-byte-compile: t" from a few files.
29644         * lisp/obsolete/bruce.el, lisp/obsolete/keyswap.el:
29645         * lisp/obsolete/patcomp.el: No reason not to compile these.
29647 2015-06-16  Glenn Morris  <rgm@gnu.org>
29649         Fix some typos in copied Unicode data.  (Bug#20789)
29650         * lisp/international/characters.el (char-script-table):
29651         * lisp/international/fontset.el (script-representative-chars)
29652         (setup-default-fontset): Fix typos.
29654         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
29655         Don't print filename twice (it's in the prefix now).
29657         * lisp/emacs-lisp/pcase.el (pcase--u1): Revert earlier workaround.
29658         No longer needed.
29660         Address a compilation warning.
29661         * lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-defalias):
29662         Replace 't' with '_' in pcase.
29664         Address some check-declare warnings.
29665         * lisp/simple.el (tabulated-list-print):
29666         * lisp/progmodes/elisp-mode.el (xref-collect-matches):
29667         * lisp/term/ns-win.el (ns-selection-owner-p, ns-selection-exists-p)
29668         (ns-get-selection): Update declarations.
29670         Address some compilation warnings.
29671         * lisp/elec-pair.el (electric-pair-post-self-insert-function):
29672         * lisp/vc/vc-git.el (vc-git-file-type-as-string):
29673         Replace 't' with '_' in pcase.
29675         Address some compilation warnings.
29676         * lisp/face-remap.el (text-scale-adjust):
29677         * lisp/menu-bar.el (popup-menu-normalize-position):
29678         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand):
29679         * lisp/emacs-lisp/bytecomp.el (byte-compile-arglist-warn):
29680         * lisp/emacs-lisp/generator.el (cps--transform-1):
29681         * lisp/emacs-lisp/macroexp.el (macroexp--expand-all):
29682         * lisp/obsolete/vc-arch.el (vc-arch-mode-line-string):
29683         * lisp/progmodes/octave.el (octave-goto-function-definition)
29684         (octave-find-definition-default-filename):
29685         Replace 't' with '_' in pcase.
29687         * lisp/emacs-lisp/pcase.el (pcase--u1):
29688         Paper-over today's bootstrap failure.
29690 2015-06-16  Nicolas Petton  <nicolas@petton.fr>
29692         * lisp/emacs-lisp/seq.el: Fix a byte-compiler warnings related to pcase.
29694         * lisp/emacs-lisp/map.el (map-into): Fix a byte-compiler warning.
29696         Better confirmation message in `find-alternate-file' (Bug#20830)
29697         * lisp/files.el (find-alternate-file'): Improve the confirmation
29698         message to show the buffer name.
29700         Better docstring for null.  (Bug#20815)
29701         * src/data.c (null): Improves the docstring, saying what null returns
29702         when OBJECT is non-nil.
29704 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
29706         * lisp/net/newst-treeview.el: Use lexical-binding.
29708         (filepos-to-bufferpos): Add missing cases.  Make sure it terminates.
29709         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
29710         New auxiliary function, extracted from filepos-to-bufferpos.
29711         Make sure it terminates.
29712         (filepos-to-bufferpos): Use it to fix the latin-1-dos case.
29713         Add support for the `exact' quality.
29715 2015-06-16  Cédric Chépied  <cedric.chepied@gmail.com>
29717         Identify feeds in newsticker treeview with :nt-feed property
29718         * lisp/net/newst-treeview.el:
29719         (newsticker--treeview-nodes-eq): Use property :nt-feed instead of :tag.
29721 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
29723         * lisp/emacs-lisp/pcase.el: Improve docs and error handling.
29724         (pcase--self-quoting-p): Floats aren't self-quoting.
29725         (pcase): Tweak docstring.
29726         (pcase--u1): Deprecate the t pattern.  Improve error detection for
29727         the nil pattern.
29728         (\`): Tweak docstring.  Signal an error for unrecognized cases.
29729         (bug#20784)
29731 2015-06-16  Eli Zaretskii  <eliz@gnu.org>
29733         Fix infloop in filepos-to-bufferpos
29734         * lisp/international/mule-util.el (filepos-to-bufferpos): Fix EOL
29735         offset calculation, and make it conditional on the eol-type of the
29736         file's encoding.  (Bug#20825)
29738 2015-06-16  Martin Rudalics  <rudalics@gmx.at>
29740         Fix handling of image cache refcounts.  (Bug#20802)
29741         This backports Eli Zaretskii's solution of this problem for W32
29742         to X and NS.
29743         * src/nsfns.m (image_cache_refcount): Define unconditionally.
29744         (unwind_create_frame): If the image cache's reference count
29745         hasn't been updated yet, do that now.
29746         (Fx_create_frame): Set image_cache_refcount unconditionally.
29747         * src/xfns.c (image_cache_refcount): Define unconditionally.
29748         (unwind_create_frame): If the image cache's reference count
29749         hasn't been updated yet, do that now.
29750         (Fx_create_frame, x_create_tip_frame): Set image_cache_refcount
29751         unconditionally.
29752         * src/w32fns.c (image_cache_refcount): Make it a ptrdiff_t as on
29753         X and NS.
29755 2015-06-16  Nils Ackermann  <nils@ackermath.info>
29757         Improve reftex-label-regexps default value
29758         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Make
29759         keyvals label regexp more strict to better cope with unbalanced
29760         brackets common in math documents.
29762 2015-06-16  Glenn Morris  <rgm@gnu.org>
29764         * doc/emacs/calendar.texi (Format of Diary File):
29765         Move "nonmarking" from here...
29766         (Displaying the Diary): ... to here.
29768         * doc/emacs/calendar.texi (Format of Diary File, Displaying the Diary):
29769         Swap the order of these nodes.
29770         * doc/emacs/emacs.texi: Update detailed menu for the above change.
29772         * doc/emacs/calendar.texi (Specified Dates, Special Diary Entries):
29773         Update date of examples.
29774         (Diary, Format of Diary File): Move example from former to latter.
29775         Reduce duplication.
29777         No need for cp51932.el, eucjp-ms.el to not be compiled any more.
29778         * admin/charsets/cp51932.awk, admin/charsets/eucjp-ms.awk:
29779         Don't set no-byte-compile in the outputs.
29780         * lisp/loadup.el: Don't specify uncompiled cp51932, eucjp-ms.
29782 2015-06-15  Glenn Morris  <rgm@gnu.org>
29784         * lisp/calendar/calendar.el (diary-file): Use locate-user-emacs-file.
29785         * doc/emacs/calendar.texi (Diary, Format of Diary File):
29786         Update for above diary-file change.
29788         * lisp/macros.el (name-last-kbd-macro, kbd-macro-query)
29789         (apply-macro-to-region-lines): Use user-error.
29791         * lisp/textmodes/page-ext.el (add-new-page, pages-directory)
29792         (pages-directory-for-addresses): Doc fixes.
29794 2015-06-15  Stefan Monnier  <monnier@iro.umontreal.ca>
29796         * lisp/info.el: Cleanup bytepos/charpos issues
29797         * lisp/international/mule-util.el: Use lexical-binding.
29798         (filepos-to-bufferpos): New function.
29799         * lisp/info.el (Info-find-in-tag-table-1): Use 0-based file positions.
29800         (Info-find-node-2): Use filepos-to-bufferpos (bug#20704).
29801         (Info-read-subfile, Info-search): Use 0-based file positions.
29803         * lisp/progmodes/perl-mode.el: Refine handling of /re/ and y/abc/def/
29804         (perl--syntax-exp-intro-keywords): New var.
29805         (perl--syntax-exp-intro-regexp, perl-syntax-propertize-function): Use it.
29806         (bug#20800).
29808 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
29810         Fix quoting when making derived mode docstring
29811         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
29812         Nest regexp-quote inside format, not the reverse.
29813         Problem reported by Artur Malabarba in:
29814         https://lists.gnu.org/r/emacs-devel/2015-06/msg00206.html
29816 2015-06-15  Eli Zaretskii  <eliz@gnu.org>
29818         Fix current-iso639-language on MS-Windows
29819         * lisp/international/mule-cmds.el (set-locale-environment):
29820         Downcase the locale name before interning it.  This is so the
29821         'current-iso639-language' on MS-Windows matches the ':lang'
29822         property of font-spec objects.
29824         Limit Symbola usage some more
29825         * lisp/international/fontset.el (setup-default-fontset): Limit
29826         Symbol coverage of Currency Symbols to u+20B6..u+20CF.
29827         (Bug#20727)
29829 2015-06-15  Nicolas Petton  <nicolas@petton.fr>
29831         * lisp/emacs-lisp/map.el (map-let): Better docstring.
29833 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
29835         * test/automated/help-fns.el (abc\\\[universal-argument\]b\`c\'d\\e\"f):
29836         (help-fns-test-funny-names): Spelling fixes.
29838 2015-06-14  Glenn Morris  <rgm@gnu.org>
29840         * lisp/version.el (emacs-repository-version-git): Demote errors.
29841         Check result is a hash.
29843 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
29845         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
29846         Catch errors that happen before going async.  (Bug#20809)
29848 2015-06-14  Eli Zaretskii  <eliz@gnu.org>
29850         Another improvement of documentation of set-fontset-font
29851         * doc/lispref/display.texi (Fontsets): Say explicitly that
29852         CHARACTER can be a single codepoint.
29853         * src/fontset.c (Fset_fontset_font): Doc fix.
29855         Another improvement for symbol and punctuation characters
29856         * lisp/international/fontset.el (setup-default-fontset): Exclude
29857         from Symbola character ranges for symbols and punctuation covered
29858         well by popular Unicode fonts.  Prefer fixed-misc Unicode font, if
29859         installed and where its coverage of symbols and punctuation is
29860         known to be good.  (Bug#20727)
29862 2015-06-14  Christoph Wedler  <christoph.wedler@sap.com>
29864         Some generic support for multi-mode indentation.
29865         * lisp/progmodes/prog-mode.el (prog-indentation-context):
29866         New variable.
29867         (prog-first-column, prog-widen): New convenience functions.
29869 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
29871         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
29872         Don't assume that `tabulated-list-printer' will leave point at the
29873         end of the buffer.  (Bug#20810)
29875 2015-06-13  Glenn Morris  <rgm@gnu.org>
29877         Tweaks for getting repository version; a bit more like it was for bzr
29878         * lisp/version.el (emacs-repository-version-git)
29879         (emacs-repository--version-git-1): New functions,
29880         split from emacs-repository-get-version.
29881         (emacs-repository-get-version): Make the second argument meaningful.
29883         * lisp/startup.el (command-line-1): Inform if skipping relative
29884         file names due to deleted PWD.
29886         * src/xsmfns.c (x_session_initialize): Avoid libSM crash
29887         when starup directory is missing.  (Bug#18851)
29888         (errno.h): Include it.
29890 2015-06-13  Paul Eggert  <eggert@cs.ucla.edu>
29892         Better fix for documenting `X as "`X"
29893         Fix suggested by Stefan Monnier.
29894         * lisp/help-fns.el (help-fns--signature):
29895         Insert "`X", not "(\` X)", when documenting `X (Bug#20759).
29896         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
29897         Don't treat `X specially, as help-fns--signature now handles this.
29899 2015-06-13  Eli Zaretskii  <eliz@gnu.org>
29901         Improve the default fontset when Symbola is not installed
29902         * lisp/international/fontset.el (setup-default-fontset): Only
29903         prepend Symbola and FreeMono font specs for symbols and
29904         punctuation; do not replace the default spec for them.  This
29905         should have better results when Symbola/FreeMono are not
29906         installed.  (Bug#20727)
29908         Improve documentation of ':lang' in font specs
29909         * src/font.c (Ffont_spec): Doc fix: elaborate on the values and
29910         use of the ':lang' property of the font spec.
29911         * doc/emacs/frames.texi (Fonts): Document the language names that
29912         can be in the STYLE part of XLFD.
29913         * doc/lispref/display.texi (Low-Level Font): Document the ':lang'
29914         property.
29916         * nt/README: Don't advertise the (obsolescent) w32 FAQ.
29918         * nt/README.W32: Don't advertise the (obsolescent) w32 FAQ.
29920         Revert last change in fontset.el
29921         * lisp/international/fontset.el (setup-default-fontset): Revert
29922         the change "Configure Symbola font only if installed", since font
29923         search is evidently not yet set up when this function is called.
29924         (Bug#20727)
29926 2015-06-12  Glenn Morris  <rgm@gnu.org>
29928         Ensure early startup warnings are visible at the end.  (Bug#20792)
29929         * lisp/emacs-lisp/warnings.el (display-warning):
29930         If startup isn't complete, delay the warning.
29931         * lisp/startup.el (normal-top-level, command-line):
29932         Let display-warning automatically handle the needed delays.
29933         Run delayed-warnings-hook.
29935         * lisp/version.el (emacs-repository-get-version):
29936         Avoid calling external executable if possible.  (Bug#20799)
29938 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
29940         Document `X as "`X", not as "(` X)"
29941         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
29942         Document (backquote FOO) as "`FOO", not as "(` FOO)" (Bug#20759).
29944         * src/print.c (print_object): Minor simplification.
29946 2015-06-12  Glenn Morris  <rgm@gnu.org>
29948         * src/buffer.c (init_buffer): Add final newline to message.
29950 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
29952         Configure Symbola font only if installed
29953         * lisp/international/fontset.el (setup-default-fontset):
29954         Don't specify the Symbola font if it's not installed.
29955         Likewise for FreeMono.  (Bug#20727)
29957 2015-06-12  Eli Zaretskii  <eliz@gnu.org>
29959         Configure Symbola font only for symbols and punctuation
29960         * lisp/international/fontset.el (setup-default-fontset): Leave
29961         only symbols and punctuation in the fontset setup for Symbola
29962         font; remove "Greek and Coptic" and "Cyrillic Supplement".
29963         (Bug#20798)
29965 2015-06-12  Andreas Schwab  <schwab@linux-m68k.org>
29967         Fix crash in fontset-info
29968         * src/fontset.c (Ffontset_info): Check that the RFONT-DEF elt is
29969         non-nil.
29971 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
29973         Port to Solaris 10 sparc + Sun C 5.13
29974         * configure.ac (SETUP_SLAVE_PTY) [sol2* | unixware]:
29975         Adjust to process.c change.
29976         * src/process.c (create_process): Declare volatile variables at
29977         top level of this function, so that they're less likely to be
29978         reused later in the function in the code executed by the vforked
29979         child.  Do not declare locals used only in the vforked child, as
29980         they might share memory with locals still live in the parent.
29981         Instead, use the same variables in the child as in the parent.
29982         This works around a subtle bug that causes a garbage collector
29983         crash when Emacs is built with Sun C 5.13 sparc on Solaris 10.
29985 2015-06-12  Glenn Morris  <rgm@gnu.org>
29987         * lisp/startup.el (normal-top-level): Don't let *Messages* get
29988         a nil default-directory.
29990 2015-06-11  Glenn Morris  <rgm@gnu.org>
29992         * lisp/startup.el (normal-top-level): Use delay-warning.  (Bug#20792)
29994         Some progress towards starting with PWD deleted.  (Bug#18851)
29995         * src/buffer.c (init_buffer): Handle get_current_dir_name failures.
29996         * lisp/startup.el (normal-top-level, command-line-1):
29997         * lisp/minibuffer.el (read-file-name-default):
29998         Handle default-directory being nil.
30000 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
30002         Fix "not a tty" bug on Solaris 10
30003         * configure.ac (PTY_OPEN): Define to plain 'open'
30004         on SVR4-derived hosts, so that the O_CLOEXEC flag isn't set.
30005         * src/process.c (allocate_pty): Set the O_CLOEXEC flag after
30006         calling PTY_TTY_NAME_SPRINTF, for the benefit of SVR4-derived
30007         hosts that call grantpt which does its work via a setuid subcommand
30008         (Bug#19191, Bug#19927, Bug#20555, Bug#20686).
30009         Also, set O_CLOEXEC even if PTY_OPEN is not defined, since it
30010         seems relevant in that case too.
30012 2015-06-11  Juri Linkov  <juri@linkov.net>
30014         * lisp/bindings.el (debug-ignored-errors): Add mark-inactive.
30015         * lisp/simple.el (kill-region): Replace 'error' with 'user-error'.
30016         (Bug#20785)
30018 2015-06-11  Glenn Morris  <rgm@gnu.org>
30020         * lisp/international/characters.el (char-script-table): Fix typo.
30022 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
30024         Fix quoting of help for functions with odd names
30025         While investigating Bug#20759, I discovered other quoting problems:
30026         C-h f mishandled characters like backslash and quote in function names.
30027         This fix changes the behavior so that 'C-h f pcase RET' now
30028         generates "... (\` QPAT) ..." instead of "... (` QPAT) ...",
30029         because '(format "%S" '(` FOO))' returns "(\\` FOO)".  A comment
30030         in src/lread.c's read1 function says that the backslash will be
30031         needed starting in Emacs 25, which implies that 'format' is
30032         correct and the old pcase documention was wrong to omit the backslash.
30033         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
30034         * lisp/help-fns.el (help-fns--signature):
30035         * lisp/help.el (help-add-fundoc-usage):
30036         * lisp/progmodes/elisp-mode.el (elisp-function-argstring):
30037         Use help--make-usage-docstring rather than formatting
30038         help-make-usage.
30039         * lisp/emacs-lisp/pcase.el (pcase--make-docstring):
30040         Return raw docstring.
30041         * lisp/help-fns.el (help-fns--signature): New arg RAW, to return
30042         raw docstring.  Take more care to distinguish raw from cooked dstrings.
30043         (describe-function-1): Let help-fns--signature substitute
30044         command keys.
30045         * lisp/help.el (help--docstring-quote): New function.
30046         (help-split-fundoc): Use it, to quote funny characters more
30047         systematically.
30048         (help--make-usage): Rename from help-make-usage, since this
30049         should be private.  Leave an obsolete alias for the old name.
30050         (help--make-usage-docstring): New function.
30051         * test/automated/help-fns.el (help-fns-test-funny-names): New test.
30053 2015-06-11  Stefan Monnier  <monnier@iro.umontreal.ca>
30055         * lisp/thingatpt.el (in-string-p): Revert last change,
30056         since in-string-p is not used in thingatpt.el but only from outside.
30057         Also, use lexical binding.
30059 2015-06-11  Artur Malabarba  <bruce.connor.am@gmail.com>
30061         * lisp/emacs-lisp/let-alist.el (let-alist--deep-dot-search): Fix cons.
30062         * test/automated/let-alist.el (let-alist-cons): Test it.
30064 2015-06-11  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
30066         * src/syntax.c (Fbackward_prefix_chars): Reword docstring.
30068 2015-06-10  Glenn Morris  <rgm@gnu.org>
30070         * build-aux/gitlog-to-emacslog: Also ignore pointless merge commits.
30072         Improve generated ChangeLog for gitmerge.el commits.  (Bug#20717)
30073         * build-aux/gitlog-to-changelog: Handle gitmerge.el skipped commits.
30074         * admin/gitmerge.el (gitmerge-commit-message):
30075         Exclude "skipped" messages from ChangeLog once again.
30077         Slight namespace cleanup for thingatpt.el.
30078         * lisp/thingatpt.el (thing-at-point--in-string-p)
30079         (thing-at-point--end-of-sexp, thing-at-point--beginning-of-sexp)
30080         (thing-at-point--read-from-whole-string): Rename from
30081         old versions without "thing-at-point--" prefix.
30082         Keep old versions as obsolete aliases.  Update all uses.
30084         * lisp/emacs-lisp/checkdoc.el (checkdoc-get-keywords):
30085         Move requiring of finder from here...
30086         (checkdoc-package-keywords): ... to here.
30088         Use 'user-error' in a few calendar files.
30089         * lisp/calendar/appt.el (appt-add):
30090         * lisp/calendar/calendar.el (calendar-absolute-from-gregorian)
30091         (calendar-generate):
30092         * lisp/calendar/diary-lib.el (diary-mail-entries, diary-cyclic):
30093         Replace 'error' with 'user-error'.
30095         * lisp/progmodes/f90.el (f90-backslash-not-special): Use user-error.
30097         * lisp/files-x.el (add-file-local-variable):
30098         Special-case 'lexical-binding'.  (Bug#20641)
30100         * lisp/progmodes/executable.el (executable-self-display): Obsolete.
30101         No longer autoload.
30102         * doc/misc/autotype.texi (Executables):
30103         Undocument executable-self-display.
30105         * lisp/progmodes/executable.el (executable-self-display):
30106         Use non-obsolete tail syntax.  (Bug#20779)
30107         (executable-self-display): Doc update.
30109 2015-06-10  Stefan Monnier  <monnier@iro.umontreal.ca>
30111         * lisp/emacs-lisp/checkdoc.el: Use lexical-binding
30112         (finder-known-keywords): Silence byte-compiler.
30114 2015-06-09  Stefan Monnier  <monnier@iro.umontreal.ca>
30116         * lisp/simple.el (eval-expression): Macroexpand before evaluating
30117         (bug#20730).
30119         * lisp/progmodes/sh-script.el: Better handle nested quotes.
30120         (sh-here-doc-open-re): Don't mis-match the <<< operator (bug#20683).
30121         (sh-font-lock-quoted-subshell): Make sure double quotes within single
30122         quotes don't mistakenly end prematurely the surrounding string.
30124         * lisp/progmodes/elisp-mode.el: Require cl-lib for cl-defstruct.
30126 2015-06-09  Glenn Morris  <rgm@gnu.org>
30128         * test/automated/Makefile.in (ELFILES): Sort.
30130         * Makefile.in (SUBDIR_MAKEFILES):
30131         * lwlib/Makefile.in (WARN_CFLAGS):
30132         Use built-in Make functions rather than echo+sed.
30134 2015-06-09  Eli Zaretskii  <eliz@gnu.org>
30136         Update char-script-table
30137         * lisp/international/characters.el (char-script-table): Update
30138         from Unicode 8.0 Draft.
30140         Improve font selection for punctuation and other symbols
30141         * src/fontset.c (face_for_char): If the character's script is
30142         'symbol', and the font used for ASCII face has a glyph for it, use
30143         the font for the ASCII face instead of searching the fontsets.
30144         This comes instead of NS-specific code that used the current
30145         face's font instead, which is now disabled due to undesirable
30146         consequences.  (Bug#20727)
30148 2015-06-08  Dmitry Gutov  <dgutov@yandex.ru>
30150         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
30151         Skip past `#' to find BEG (bug#20771).
30152         * test/automated/elisp-mode-tests.el
30153         (elisp-completes-functions-after-hash-quote): New test.
30155 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
30157         Fix compilation warning/error in --without-x builds
30158         * src/xdisp.c (append_space_for_newline): Condition GUI-specific
30159         code on HAVE_WINDOW_SYSTEM.
30161         Improve the default fontset wrt symbols
30162         * lisp/international/fontset.el (setup-default-fontset): Better
30163         setup of fontset-default for symbols: use Symbola and FreeMono.
30164         (Bug#20727)
30166 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
30168         Add new command checkdoc-package-keywords
30169         * lisp/emacs-lisp/checkdoc.el (checkdoc-package-keywords-flag):
30170         New defcustom.
30171         (checkdoc-list-of-strings-p): Add doc.
30172         (checkdoc-current-buffer): When `checkdoc-package-keywords-flag' is
30173         non-nil, call `checkdoc-package-keywords'.
30174         (checkdoc-get-keywords): New defun.
30175         (checkdoc-package-keywords): New command.  Warns if the current file
30176         has package.el-style keywords that aren't in `finder-known-keywords'.
30177         * etc/NEWS: Add entry.
30179 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
30181         Avoid crashes when key-binding is called from a timer
30182         * src/keymap.c (Fkey_binding): Don't segfault if called with an
30183         empty vector as KEY.  (Bug#20705)
30185         Fix a thinko in arc-mode.el
30186         * lisp/arc-mode.el (archive-zip-summarize): Fix last change in the
30187         non-Zip64 case.  (Bug#20769)
30189 2015-06-08  Artur Malabarba  <bruce.connor.am@gmail.com>
30191         * lisp/emacs-lisp/package.el (package-delete): Make interactive.
30193 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
30195         * lisp/emacs-lisp/checkdoc.el (checkdoc-file): New function.
30196         (checkdoc-error): When `checkdoc-diagnostic-buffer' is set to
30197         "*warn*", print the warning to the standard output.  (bug#20754)
30199 2015-06-07  Glenn Morris  <rgm@gnu.org>
30201         * admin/update_autogen (changelog_files): Remove gitlog-to-emacslog.
30203         * src/font.c (syms_of_font) <font-log>: Doc fix.
30205         Remove the obsolete leading "*" from some C doc strings.
30206         * src/coding.c (syms_of_coding):
30207         * src/font.c (syms_of_font): Remove leading "*" from docs.
30208         * lisp/cus-start.el (enable-character-translation): Add it.
30210 2015-06-07  Paul Eggert  <eggert@cs.ucla.edu>
30212         Move gen_origin from program to data
30213         That way, 'make change-history' needs to change only ChangeLog.2,
30214         instead of having to change two files.
30215         * ChangeLog.2: Add commit info for range that this file covers.
30216         * Makefile.in (new_commit_regexp): New macro.
30217         (change-history-nocommit): Simplify, by putting what used to be
30218         the gen_origin value into the data (ChangeLog.2) rather than
30219         into the program (gitlog-to-emacslog).
30220         * build-aux/gitlog-to-emacslog (gen_origin): Calculate from
30221         the input file (e.g., ChangeLog.2) rather than by having a
30222         constant in the program.  Substitute it into the output.
30224 2015-06-07  Dmitry Gutov  <dgutov@yandex.ru>
30226         * lisp/help-fns.el (help-fns--signature): Quote any quotes in the
30227         function name (bug#20759).
30229 2015-06-07  Eli Zaretskii  <eliz@gnu.org>
30231         Adapt 'struct timespec' to next release of MinGW runtime
30232         * nt/inc/ms-w32.h (struct timespec): Don't declare if
30233         __struct_timespec_defined is defined.
30235 2015-06-06  Paul Eggert  <eggert@cs.ucla.edu>
30237         Merge from gnulib
30238         This incorporates:
30239         2015-06-06 acl-permissions: pacify -Wsuggest-attribute=const
30240         2015-06-05 stdio: Don't redefine gets when using C++
30241         2015-06-05 acl-permissions: port to AIX, C89 HP-UX
30242         2015-06-02 file-has-acl: fix build on Mac OS X 10
30243         2015-06-01 gnulib-tool: concatenate lib_SOURCES to a single line
30244         2015-06-01 pthread_sigmask: discount system version if a simple macro
30245         2015-05-31 readlinkat: avoid OS X 10.10 trailing slash bug
30246         * doc/misc/texinfo.tex, lib/acl-internal.h, lib/get-permissions.c:
30247         * lib/readlinkat.c, lib/set-permissions.c, lib/stdio.in.h:
30248         * m4/acl.m4, m4/pthread_sigmask.m4, m4/readlinkat.m4: Copy from gnulib.
30249         * lib/gnulib.mk: Regenerate.
30251 2015-06-06  Juri Linkov  <juri@linkov.net>
30253         * lisp/progmodes/grep.el (zrgrep): Let-bind grep-highlight-matches
30254         before calling grep-compute-defaults because now it affects the
30255         command lines computed in grep-compute-defaults.  (Bug#20728)
30257 2015-06-06  Glenn Morris  <rgm@gnu.org>
30259         Address some compilation warnings.
30260         * lisp/international/mule-cmds.el (w32-get-console-codepage)
30261         (w32-get-console-output-codepage):
30262         * lisp/progmodes/elisp-mode.el (xref-collect-references):
30263         * lisp/version.el (cairo-version-string): Declare.
30264         * lisp/erc/erc.el (erc-nickname-in-use): Fix typo.
30266 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
30268         Fix display when a font claims large values of ascent and descent
30269         This fixes bug#20628.
30270         * src/xdisp.c (get_phys_cursor_geometry): Correct the Y
30271         coordinate of a hollow cursor glyph when the original glyph's
30272         ascent is too small.
30273         (get_font_ascent_descent, normal_char_ascent_descent)
30274         (normal_char_height): New functions.
30275         (handle_single_display_spec, append_space_for_newline)
30276         (calc_pixel_width_or_height, produce_stretch_glyph)
30277         (calc_line_height_property): Use normal_char_ascent_descent and
30278         normal_char_height.
30279         (x_produce_glyphs): When font-global values of ascent and descent
30280         are too large, use per-character glyph metrics instead, if
30281         possible.  But don't allow the glyph row's ascent and descent
30282         values become smaller than the values from the metrics of the
30283         font's "normal" character.
30284         * src/xftfont.c (xftfont_draw):
30285         * src/w32font.c (w32font_draw): Correct the values of ascent and
30286         descent used to draw glyphless characters' hex code in a box.
30287         * src/xterm.c (x_draw_glyph_string_background):
30288         * src/xdisp.c (x_produce_glyphs):
30289         * src/w32term.c (x_draw_glyph_string_background):
30290         * src/nsterm.m (ns_maybe_dumpglyphs_background): Use FONT_TOO_HIGH
30291         to detect fonts whose global ascent and descent values are too
30292         large to be used in layout decision, and redraw the background
30293         when that happens.
30294         * src/dispextern.h (FONT_TOO_HIGH): New macro.
30295         (get_font_ascent_descent): Add prototype.
30296         * src/xterm.c (x_new_font):
30297         * src/w32term.c (x_new_font):
30298         * src/nsterm.m (x_new_font):
30299         * src/font.c (font_open_entity):
30300         * src/composite.c (composition_gstring_width):
30301         Use get_font_ascent_descent to obtain reasonable values for ascent
30302         and descent of a font.
30304 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
30306         Add assertion in adjust_point_for_property
30307         * src/keyboard.c (adjust_point_for_property): Add eassert for
30308         current buffer being shown in selected window.
30310 2015-06-06  Dmitry Gutov  <dgutov@yandex.ru>
30312         Replace uses of in-string-p; make it obsolete
30313         * lisp/thingatpt.el (in-string-p): Declare obsolete (bug#20732).
30314         (end-of-sexp, beginning-of-sexp): Use syntax-ppss instead.
30316 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
30318         Fix Dired display of an explicit list of files by ls-lisp.el
30319         * lisp/ls-lisp.el (ls-lisp-uid-d-fmt, ls-lisp-uid-s-fmt)
30320         (ls-lisp-gid-d-fmt, ls-lisp-gid-s-fmt): Make the initial values be
30321         correct for when displaying individual files separately, not as
30322         part of listing a directory, in which case these values are not
30323         recomputed by 'ls-lisp-insert-directory', but used verbatim.
30325         * lisp/dired.el (dired): Doc fix.  (Bug#20739)
30327 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
30329         Do not adjust point in a non-selected window
30330         * src/keyboard.c (command_loop_1): Do not adjust point when
30331         current buffer is not shown in selected window (Bug#20590).
30333         * etc/DEBUG: Mention 'maybe_call_debugger'
30335 2015-06-05  Nicolas Petton  <nicolas@petton.fr>
30337         Fix a unit test for map.el
30338         * test/automated/map-tests.el (test-map-let): Fix the test to work
30339         with the new syntax of `map-let'.
30341         * lisp/emacs-lisp/map.el (map-let): Better docstring.
30343         Better syntax for the map pcase pattern
30344         * lisp/emacs-lisp/map.el: Improves the map pcase pattern to take
30345         bindings of the form (KEY PAT) or SYMBOL.  KEY is not quoted.
30347         * lisp/emacs-lisp/map.el (map--dispatch): Better docstring.
30349         Fix a byte-compiler error in map-put and map-delete
30350         * lisp/emacs-lisp/map.el (map-put, map-delete): Ensure that `setq' is
30351         called with a symbol.
30353 2015-06-05  Glenn Morris  <rgm@gnu.org>
30355         * admin/gitmerge.el (gitmerge-commit-message):
30356         Revert to including "skipped" messages in ChangeLog once again.
30358 2015-06-05  Tassilo Horn  <tsdh@gnu.org>
30360         Use string> instead of equiv lambda with string<
30361         * lisp/help.el (view-emacs-news): Use string> instead of equivalent
30362         lambda with string<.
30364 2015-06-05  Glenn Morris  <rgm@gnu.org>
30366         * lisp/emacs-lisp/map.el (map--dispatch): Move before use.
30367         (map--delete-array): Fix typo.
30369         * test/automated/map-tests.el: Replace "assert" with "should".
30371         * lisp/Makefile.in (SUBDIRS): Rename from SUBDIRS_ABS.
30372         (SUBDIRS_REL): Derive from SUBDIRS.
30374         Tweak some build messages.
30375         * lisp/Makefile.in ($(lisp)/loaddefs.el):
30376         * lisp/cus-dep.el (custom-make-dependencies):
30377         * lisp/finder.el (finder-compile-keywords): Say what we are doing.
30378         * lisp/international/titdic-cnv.el (batch-titdic-convert):
30379         Don't say how to compile.
30381 2015-06-05  Paul Eggert  <eggert@cs.ucla.edu>
30383         Omit U+0332 COMBINING LOW LINE in previous change
30384         It turns out that it does not work on Ubuntu 15.04.
30386         Fix transliteration of Bahá'í months
30387         * lisp/calendar/cal-bahai.el (calendar-bahai-month-name-array):
30388         Improve quality of Latin transliteration of Bahá'í month names.
30390         Fix curved quotes in a few places
30391         * lisp/calc/calc-misc.el (calc-help): Fix quoting.
30392         The strings in question are not doc strings, so this partially
30393         undoes the recent change that assumed they were doc strings.
30394         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
30395         * lisp/info.el (Info-finder-find-node):
30396         Use curved quotes.
30397         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
30398         Also allow curved quotes in doc strings.
30400 2015-06-04  Glenn Morris  <rgm@gnu.org>
30402         * lisp/Makefile.in (AM_V_at): Add missing definition.
30404         * lisp/Makefile.in: Quieten output a bit.
30405         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el):
30406         Don't echo directories, since the commands we invoke print them.
30408         * lisp/Makefile.in: Replace shell fragments in variables with $(shell).
30409         (SUBDIRS_REL, SUBDIRS_ABS, SUBDIRS_ALMOST, SUBDIRS_FINDER)
30410         (SUBDIRS_SUBDIRS): New variables.
30411         (setwins, setwins_almost, setwins_finder, setwins_for_subdirs):
30412         Remove.
30413         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el, $(lisp)/loaddefs.el)
30414         (update-subdirs, compile-main, compile-clean):
30415         Replace "setwins" usage with new "SUBDIRS" variables.
30417         * lisp/vc/compare-w.el (compare-windows-get-window-function):
30418         Fix :version tag.
30420 2015-06-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
30422         * src/ftfont.c (ftfont_open2): Round divisions by upEM.
30424         Undo removal of x_clear_area call on expose for GTK3 or cairo
30425         * src/xterm.c (handle_one_xevent) [HAVE_GTK3 || USE_CAIRO]:
30426         Clear exposed area.  (Bug#20677)
30428 2015-06-04  Glenn Morris  <rgm@gnu.org>
30430         * doc/lispref/hash.texi (Creating Hash): Remove obsolete makehash.
30432         * lisp/Makefile.in (check-defun-dups): Also skip ldefs-boot.
30434         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
30435         Rename from quail-lao-update-translation, since lao.el defines that.
30437 2015-06-04  Dmitry Gutov  <dgutov@yandex.ru>
30439         Handle new-style advice in find-funct
30440         * lisp/emacs-lisp/find-func.el (find-function-advised-original):
30441         Handle new-style advice.  Return the symbol's function definition.
30442         (Bug#20718)
30443         (find-function-library): Update accordingly.
30445 2015-06-04  Nicolas Petton  <nicolas@petton.fr>
30447         Merge branch 'map'
30449         * lisp/emacs-lisp/map.el: Better docstring for the map pcase macro.
30451         Add new function string-greaterp
30452         * lisp/subr.el (string-greaterp): New function.  Also aliased to
30453         `string>'.
30454         * test/automated/subr-tests.el (string-comparison-test): Add unit
30455         tests for `string>'and `string<'.
30456         * src/fns.c (string-lessp): Better docstring.
30458 2015-06-04  Eli Zaretskii  <eliz@gnu.org>
30460         Fix timezone-related functions on MS-Windows
30461         * src/editfns.c (set_time_zone_rule) [WINDOWSNT]: Always call
30462         'xputenv', even if no reallocation of tzvalbuf was necessary.
30463         This fixes a bug in timezone-related functions on MS-Windows.
30464         Reported by Fabrice Popineau <fabrice.popineau@gmail.com>.
30466 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
30468         Don't pass raw directory name to 'error'
30469         * lisp/files.el (basic-save-buffer-2): Avoid format error if
30470         a directory name contains a string like "%s".
30472 2015-06-03  Dmitry Gutov  <dgutov@yandex.ru>
30474         Override 'grep --color=always'
30475         * lisp/progmodes/xref.el (xref-collect-matches):
30476         Override --color=always in grep-find-template.
30478 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
30480         Fix error introduced recently in file-notify-tests.el
30481         * test/automated/file-notify-tests.el
30482         (file-notify--test-remote-enabled): Do not use `file-notify--test-desc'.
30483         (file-notify--deftest-remote): Revert previous patch, not
30484         necessary anymore.
30486 2015-06-03  Wolfgang Jenkner  <wjenkner@inode.at>
30488         * src/indent.c (Fvertical_motion): Amend motion by 0 lines.
30489         Starting from a display string after a newline, point went to the
30490         previous line.  Also, fix an inadvertent use of a buffer position
30491         with FETCH_BYTE.  (Bug#20701)
30493 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
30495         Instrument file-notify-test.el in order to catch hydra error
30496         * test/automated/file-notify-tests.el (file-notify--deftest-remote):
30497         Wrap body by `ignore-case', in order to trap non-local errors.
30499 2015-06-03  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
30501         Undo previous changes in non-toolkit scroll bar drawing
30502         * src/xterm.c (x_scroll_bar_set_handle, x_scroll_bar_expose)
30503         [!USE_TOOLKIT_SCROLL_BARS]: Draw into scroll bar window.  (Bug#20668)
30505 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
30507         * .gitignore: Also ignore doc/*/*/*.html and .ps.
30509         Support quotes 'like this' in info files
30510         This is possible when 'makeinfo --disable-encoding' is used
30511         in Texinfo 5.
30512         * lisp/calc/calc-help.el (calc-describe-thing):
30513         * lisp/gnus/gnus-art.el (gnus-button-alist):
30514         * lisp/info.el (Info-find-index-name):
30515         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
30516         Also support quotes 'like this'.
30517         * lisp/calc/calc-help.el (calc-describe-thing): Simplify.
30518         * lisp/finder.el (finder-font-lock-keywords): Remove var that
30519         hasn't been used in years, instead of bothering to fix its quoting.
30521 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
30523         * .gitignore: Remove !test/etags/html-src/*.html.
30524         It's no longer needed, since *.html was removed.  Sort.
30526 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
30528         Restore <D> instead of '.' in grep-find-template
30529         * lisp/cedet/semantic/symref/grep.el
30530         (semantic-symref-grep-use-template): Update a comment.
30531         * lisp/progmodes/grep.el (grep-compute-defaults): Restore <D>
30532         instead of '.' in grep-find-template (bug#20719).
30533         (rgrep): Pass nil as the directory to rgrep-default-command.
30534         * lisp/progmodes/grep.el (grep-expand-keywords): Use '.' as the
30535         default value for DIR.
30536         * lisp/progmodes/xref.el (xref-collect-matches): Drop the
30537         workaround.
30539 2015-06-02  Glenn Morris  <rgm@gnu.org>
30541         * configure.ac (emacs_config_features): Add X toolkit and scroll-bars.
30543         * configure.ac (emacs_config_features): Add Cairo.
30545         * configure.ac [HAVE_GTK3]: Remove USE_CAIRO that gets reset later.
30547 2015-06-02  Michael Albinus  <michael.albinus@gmx.de>
30549         Ensure that autorevert works for remote files in file-notify-tests.el
30550         * test/automated/file-notify-tests.el (file-notify--test-desc):
30551         New defvar.
30552         (file-notify--test-remote-enabled)
30553         (file-notify-test00-availability, file-notify-test01-add-watch)
30554         (file-notify-test02-events): Use it.
30555         (file-notify--test-event-test): Check proper descriptor.
30556         (file-notify-test03-autorevert): Ensure that
30557         `visited-file-modtime' has changed.  (Bug#20392)
30559 2015-06-02  Nicolas Petton  <nicolas@petton.fr>
30561         Add a pcase pattern for maps and `map-let' based on it
30562         * lisp/emacs-lisp/map.el (map-let): New macro.
30563         (map--make-pcase-bindings, map--make-pcase-patterns): New functions.
30564         * test/automated/map-tests.el: New test for `map-let'.
30566 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
30568         Reuse rgrep mechanics in xref-find-regexp
30569         * lisp/progmodes/grep.el (rgrep-default-command):
30570         Extract from `rgrep'.
30571         * lisp/progmodes/xref.el (xref-collect-references): Split from
30572         `xref-collect-matches'.  Only handle the case of symbol search.
30573         (xref-collect-matches): Instead of Semantic Symref, use
30574         `rgrep-default-command', to take advantage of its directory and
30575         file ignore settings.
30576         (xref--collect-match): Remove the last argument, leaving the
30577         regexp construction up to the caller.
30578         * lisp/progmodes/elisp-mode.el (elisp--xref-find-matches):
30579         Change to take the xref-collect- function to use as an argument.
30580         (elisp-xref-find): Update accordingly.
30581         * lisp/progmodes/etags.el (etags--xref-find-matches)
30582         (etags-xref-find): Same.
30584         Move xref-elisp-location to elisp-mode.el
30585         * lisp/progmodes/xref.el (xref-elisp-location)
30586         (xref-make-elisp-location, xref-location-marker): Remove here.
30587         (xref--xref): Don't limit the type of the location slot.
30588         * lisp/progmodes/elisp-mode.el (xref-elisp-location):
30589         Define as a cl-struct here.
30590         (xref-location-marker): Move here.
30592 2015-06-02  Eli Zaretskii  <eliz@gnu.org>
30594         Minor tweaks for .gitignore
30595         * .gitignore: Don't ignore versioned *.html and *.ps files.
30596         Don't ignore admin/notes/tags that might be ignored as TAGS
30597         on case-insensitive filesystems.  (Bug#20710)
30599 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
30601         Generate curved quotes in ert doc
30602         * lisp/emacs-lisp/ert.el (ert--print-test-for-ewoc)
30603         (ert-results-mode-menu)
30604         (ert-results-pop-to-backtrace-for-test-at-point)
30605         (ert-results-pop-to-messages-for-test-at-point)
30606         (ert-results-pop-to-should-forms-for-test-at-point)
30607         (ert-describe-test):
30608         Quote ‘like this’, not `like this', when generating doc strings
30609         and the like.
30610         * test/automated/ert-x-tests.el (ert-test-describe-test):
30611         Allow quoting ‘like this’.
30613 2015-06-02  Nicolas Richard  <youngfrog@members.fsf.org>
30615         Add test for previous commit
30616         * test/automated/replace-tests.el: New file.
30617         (query-replace--split-string-tests): Add test for previous commit.
30619         Avoid confusion in query-replace history when replacing NUL chars
30620         * lisp/replace.el (query-replace--split-string): New function.
30621         (query-replace-read-from): Rely on the 'separator' property
30622         instead of searching for the NUL character (Bug#20690).
30624 2015-06-02  Glenn Morris  <rgm@gnu.org>
30626         Merge from origin/emacs-24
30627         8b5f2f4 * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
30629         * admin/gitmerge.el (gitmerge-commit-message):
30630         Exclude "skipped" messages from ChangeLog.
30632 2015-06-01  Michael Albinus  <michael.albinus@gmx.de>
30634         Sync with Tramp repository
30635         * lisp/net/tramp.el (tramp-message): Dump connection buffer error
30636         messages.
30637         (tramp-handle-make-auto-save-file-name): When calling
30638         `make-auto-save-file-name' internally, make sure it uses Unix-like
30639         behavior, not Windows-like behavior.
30640         * lisp/net/tramp-sh.el (tramp-set-file-uid-gid): Add a timeout for
30641         the local case, because "chown" might fail on w32.
30642         * lisp/net/trampver.el (tramp-repository-get-version): Don't run
30643         for XEmacs.
30645 2015-06-01  Eli Zaretskii  <eliz@gnu.org>
30647         MS-Windows followup for batch stdout/stderr output changes
30648         * lisp/international/mule-cmds.el (set-locale-environment):
30649         In batch mode, use console codepages for keyboard and terminal
30650         encoding.  (Bug#20545)
30652         Update .gitattributes for DOS EOL files
30653         * .gitattributes: Use "whitespace=cr-at-eol" for files with DOS
30654         CRLF end-of-line format.
30656         NS equivalents of xterm.c and w32term.c changes
30657         * src/nsterm.m (ns_maybe_dumpglyphs_background): Force redraw of
30658         glyph string background also when the font in use claims
30659         preposterously large global height value.  Helps to remove
30660         artifacts left from previous displays when glyphless characters
30661         are displayed as hex code in a box.
30662         (x_new_font): Call get_font_ascent_descent to obtain a reasonable
30663         value for FRAME_LINE_HEIGHT, even when a font claims very large
30664         value for its height.
30666 2015-06-01  Paul Eggert  <eggert@cs.ucla.edu>
30668         Avoid grave accent quoting in stderr diagnostics
30669         A few Emacs diagnostics go directly to stderr, and so can't easily
30670         contain curved quotes (as non-UTF-8 locales might mishandle them).
30671         Instead of bothering to add support for this rarity, reword the
30672         diagnostics so that they don't use grave accent to quote.
30673         * src/alloc.c (mark_memory): Fix comment.
30674         * src/buffer.c (init_buffer):
30675         * src/dispnew.c (init_display):
30676         * src/emacs.c (main, sort_args):
30677         * src/lread.c (dir_warning):
30678         * src/term.c (init_tty):
30679         * src/unexmacosx.c (unexec):
30680         * src/xfns.c (select_visual):
30681         * src/xterm.c (cvt_string_to_pixel, x_io_error_quitter):
30682         Reword stderr diagnostics to avoid quoting `like this'.
30683         * src/unexmacosx.c: Include errno.h.
30684         * src/xfns.c (select_visual): Encode value for locale.
30686 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
30688         Treat batch stdout/stderr like standard display
30689         Calls like (print FOO) could generate improperly encoded or
30690         hard-to-read output if FOO contains characters outside the system
30691         locale.  Fix this by treating batch stdout and stderr like
30692         interactive standard display, when it comes to transliterating and
30693         encoding characters (Bug#20545).
30694         * doc/emacs/mule.texi (Communication Coding):
30695         * doc/lispref/display.texi (Active Display Table):
30696         * doc/lispref/nonascii.texi (Locales):
30697         * etc/NEWS:
30698         * src/coding.c (syms_of_coding):
30699         * src/dispnew.c (syms_of_display):
30700         Document this.
30701         * src/print.c: Include disptab.h.
30702         (printchar_to_stream): New function, with much of the guts of the
30703         old Fexternal_debugging_output, except this one also uses the
30704         standard display table.
30705         (printchar, strout, Fexternal_debugging_output): Use it.
30707 2015-05-31  Glenn Morris  <rgm@gnu.org>
30709         * src/emacs.c (syms_of_emacs) <system-configuration-features>: Doc fix.
30711 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
30713         Remove DEFSYMs that aren't used at the C level.  Also:
30714         * src/decompress.c (Qzlib_dll):
30715         * src/font.c (Qunicode_sip):
30716         * src/frame.c (Qtip_frame):
30717         * src/ftfont.c (Qserif):
30718         * src/gnutls.c (Qgnutls_dll):
30719         * src/xml.c (Qlibxml2_dll):
30720         Move from here ...
30721         * src/w32fns.c (syms_of_w32fns): ... to here,
30722         as these are used only on MS-Windows.
30724 2015-05-31  Michael Albinus  <michael.albinus@gmx.de>
30726         Use another default value for tramp-histfile-override
30727         * lisp/net/tramp-sh.el (tramp-histfile-override):
30728         Use ".tramp_history" as default.
30729         Fixes bug#20446
30731 2015-05-29  Nicolas Petton  <nicolas@petton.fr>
30733         * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
30735 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
30737         * etc/NEWS: Add an entry about map.el.
30739         Improve the docstring of functions in map.el
30740         Since a map is not a data structure but a concept, adding information
30741         about the possible types of maps can be useful information.
30742         * lisp/emacs-lisp/map.el: Add documentation about the type of MAP to
30743         each public function.
30745 2015-04-29  Nicolas Petton  <nicolas@petton.fr>
30747         * lisp/emacs-lisp/map.el (map-empty-p): Faster implementation using
30748         specific tests depending on the type of the map.
30750         * lisp/emacs-lisp/map.el: Better docstrings.
30752 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
30754         * lisp/emacs-lisp/map.el (map-pairs): Dump redundant lambda.
30756 2015-04-25  Nicolas Petton  <nicolas@petton.fr>
30758         * lisp/emacs-lisp/map.el (map--elt-list): Better docstring.
30760         * lisp/emacs-lisp/map.el (map--elt-list): Minor refactoring.
30762         Fix a false negative in `map-elt' with alists and values being nil
30763         * lisp/emacs-lisp/map.el (map-elt): If map is an alist and key is
30764         found but its associated value is nil, do not return the default
30765         value.
30766         * test/automated/map-tests.el: Add a regression test.
30768 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
30770         * lisp/emacs-lisp/map.el (map--dispatch): Improve the docstring.
30772         Do not signal an error when trying to delete a key from an array
30773         * lisp/emacs-lisp/map.el (map-delete): When map is an array, check if
30774         the key is present to avoid signaling an error.
30775         * test/automated/map-tests.el: Add a test for deleting non-existing
30776         keys from maps.
30778         * lisp/emacs-lisp/map.el: Better docstring.
30780         Minor improvement in map-elt
30781         * lisp/emacs-lisp/map.el (map-elt): Do not use `ignore-errors' when
30782         doing a lookup in arrays, but check the boundaries of the array
30783         instead.
30784         * test/automated/map-tests.el: Adds a test for `map-elt' with arrays
30785         and a negative integer as key.
30787 2015-04-21  Nicolas Petton  <nicolas@petton.fr>
30789         * test/automated/map-tests.el: Refactoring of test methods.
30791         * test/automated/map-tests.el: Renamed from map-test.el.
30793 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
30795         * lisp/emacs-lisp/map.el (map-into): Better error message.
30797         * lisp/emacs-lisp/map.el: Remove byte-compilation warnings.
30799         Throw an error when converting a map into an unknown map type
30800         * lisp/emacs-lisp/map.el (map-into): Throw an error if type is
30801         not valid.
30802         * test/automated/map-tests.el: Add a regression test.
30804         New library map.el similar to seq.el but for mapping data structures.
30805         * test/automated/map-tests.el: New file.
30806         * lisp/emacs-lisp/map.el: New file.
30808 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
30810         * lisp/progmodes/etags.el (tag-implicit-name-match-p): Make sure
30811         there's no explicit tag name (bug#20629).
30813 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
30815         Remove format2
30816         * src/editfns.c, src/lisp.h (format2): Remove.
30817         It is more trouble than it's worth, now that we have CALLN.
30818         This is just a minor refactoring.
30819         * src/buffer.c (Fkill_buffer):
30820         * src/dbusbind.c (XD_OBJECT_TO_STRING):
30821         * src/fileio.c (barf_or_query_if_file_exists):
30822         Adjust to format2 going away.
30824         Don't misencode C-generated messages
30825         Also, be more consistent about calls to 'Fmessage' vs 'message'.
30826         * src/alloc.c (Fgc_status):
30827         Prefer AUTO_STRING to build_string for Fmessage call.
30828         * src/data.c (Fmake_variable_buffer_local)
30829         (Fmake_local_variable, Fmake_variable_frame_local):
30830         * src/doc.c (store_function_docstring):
30831         Use Fmessage, not message, since the argument can contain
30832         non-ASCII characters, and this can cause the resulting message
30833         to be incorrectly encoded for the current environment.
30834         * src/fns.c (maybe_resize_hash_table):
30835         * src/xselect.c (x_clipboard_manager_save_all):
30836         Use message, not Fmessage, since Fmessage's power isn't needed here.
30837         * src/process.c (Fmake_network_process): Reword message to avoid %s.
30838         * src/xdisp.c (vmessage): Document restrictions on message contents.
30839         (message_nolog) [false]: Remove unused code.
30841         Use \r rather than ^M in string literals
30842         This is less likely to cause problems on platforms that
30843         use CRLF (or CR!) termination for lines.
30845         Update .gitattributes to match current sources
30846         https://lists.gnu.org/r/emacs-devel/2015-05/msg00879.html
30847         * .gitattributes: Accommodate tests that insist on DOS format.
30848         Remove test/automated/data/decompress/foo-gzipped.
30849         Add etc/e/eterm-color.
30851 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
30853         * doc/emacs/mule.texi (Modifying Fontsets):
30854         Document face-ignored-fonts.  (Bug#20628)
30856         Add etags test for the new -Q option
30857         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
30858         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
30859         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
30860         test-case changes below.
30861         * test/etags/ETAGS.good_6: New file.
30862         * test/etags/cp-src/x.cc: New file.
30863         * test/etags/Makefile (CPSRC): Add x.cc.
30864         (check): Add one more test, for -Q.
30866 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
30868         Use list for the tags completion table, not obarray
30869         * lisp/progmodes/etags.el (etags-tags-completion-table): Return a
30870         list instead of an obarray
30871         (https://lists.gnu.org/r/emacs-devel/2015-05/msg00876.html).
30872         (tags-completion-table): Combine those lists.
30873         (tags-completion-table): Update the docstring.
30875 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
30877         Restore EOL format testing in etags
30878         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
30879         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
30880         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
30881         test-case changes below.
30882         * test/etags/html-src/algrthms.html: Convert back to DOS EOL format.
30883         * test/etags/cp-src/c.C (B): Add back stray CR character.
30884         * test/etags/c-src/dostorture.c: Add back.
30885         * test/etags/Makefile (CSRC): Add back c-src/dostorture.c.
30887 2015-05-30  Vitaly Takmazov  <vitalyster@gmail.com>  (tiny change)
30889         Declare Emacs on MS-Windows to be DPI-aware
30890         * nt/emacs-x86.manifest (asmv3:windowsSettings): Add dpiAware.
30891         * nt/emacs-x64.manifest (asmv3:windowsSettings): Add dpiAware.
30892         This avoids Windows entering compatibility mode for Emacs,
30893         which causes fonts to look less nice.
30895 2015-05-30  Michael Albinus  <michael.albinus@gmx.de>
30897         Improve Tramp traces
30898         * lisp/net/trampver.el (tramp-repository-get-version): New defun.
30899         * lisp/net/tramp.el (tramp-debug-message): Use it.
30901 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
30903         backup-buffer minor reworking of internals
30904         * lisp/files.el (backup-buffer): Rework to avoid a couple of
30905         unused locals inadvertently introduced in the previous change.
30907         backup-buffer now reports .emacs.d/%backup% ills
30908         * lisp/files.el (backup-buffer): If the write to .emacs.d/%backup%
30909         fails due to disk space exhaustion or whatever, do not pretend
30910         that it succeeded.  More generally, do a better job of checking
30911         for I/O failures, and limit the scope of the condition-case to
30912         just the operations where file errors should be caught and ignored
30913         (Bug#20595).  Also, don't bother trying to delete later backups if
30914         an earlier deletion fails, as this is a sign of trouble and it's
30915         better to stop when there's trouble.
30917         copy-file now truncates output after writing
30918         * src/fileio.c (Fcopy_file): Truncate output after writing rather
30919         than before.  This is more likely to work than truncation before
30920         writing, if the file system is out of space or the user is over
30921         disk quota (Bug#20595).  Also, check for read errors.
30923 2015-05-29  Artur Malabarba  <bruce.connor.am@gmail.com>
30925         * lisp/emacs-lisp/package.el (package-load-all-descriptors):
30926         Don't load descriptors from directories above the package directories.
30928 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
30930         Merge from gnulib
30931         This incorporates the following (Bug#20681):
30932         2015-05-29 acl-permissions: Fix build on Mac OS X and older AIX
30933         2015-05-29 acl-permissions: Fix build on Solaris and Cygwin
30934         * lib/set-permissions.c: Copy from gnulib.
30936 2015-05-29  Michael Albinus  <michael.albinus@gmx.de>
30938         Improve Tramp traces
30939         * lisp/net/tramp.el (tramp-call-process-region): New defun.
30940         * lisp/net/tramp-sh.el (tramp-get-inline-coding): Use it.
30942 2015-05-29  Glenn Morris  <rgm@gnu.org>
30944         * test/automated/vc-tests.el: Try enabling tests on hydra.nixos.org.
30946 2015-05-29  Wolfgang Jenkner  <wjenkner@inode.at>
30948         * src/xfns.c (x_set_menu_bar_lines): Fix calls to x_clear_area.
30949         The signature was changed in the cairo branch, merged on 2015-05-23.
30950         This oversight broke compiling only the non-toolkit X version.
30952 2015-05-29  Samer Masterson  <samer@samertm.com>
30954         * doc/lispref/os.texi: Update initial-buffer-choice docs.
30956 2015-05-29  Glenn Morris  <rgm@gnu.org>
30958         * test/automated/vc-tests.el (vc-test-rcs04-checkout-model):
30959         Mark as an expected failure.
30961 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
30963         Change package test to look for curved quotes
30964         * test/automated/package-test.el (package-test-describe-package)
30965         (package-test-signed): Search for curved single quotes as well as
30966         for grave accent and apostrophe.
30968 2015-05-28  Katsumi Yamaoka  <yamaoka@jpl.org>
30970         * lisp/gnus/gnus-art.el (gnus-button-alist): Re-revert last change.
30971         cf. <http://news.gmane.org/group/gmane.emacs.devel/thread=186896>
30973 2015-05-28  Samer Masterson  <samer@samertm.com>
30975         Show files when `initial-buffer-choice' is non-nil
30976         * lisp/startup.el (command-line-1): When Emacs is given a file as an
30977         argument and `initial-buffer-choice' is non-nil, display both the file
30978         and `initial-buffer-choice'.  For more than one file, show
30979         `initial-buffer-choice' and *Buffer List*.  Refactor display-changing
30980         commands out of the command line arg parser.
30981         (initial-buffer-choice): Clarify docstring.
30983 2015-05-28  Eli Zaretskii  <eliz@gnu.org>
30985         Fix last commit
30986         * nt/gnulib.mk (libgnu_a_SOURCES): Add get-permissions.c back.
30987         (gnulib module qcopy-acl): Add back, as it is harmless.  This
30988         minimizes differences wrt lib/gnulib.mk.
30990         Fix the MS-Windows build as followup to gnulib update
30991         * nt/gnulib.mk (libgnu_a_SOURCES): Remove get-permissions.c and
30992         set-permissions.c, as they don't compile on MinGW.
30993         (gnulib module qcopy-acl): Remove, as it needs set-permissions.c.
30995 2015-05-28  Paul Eggert  <eggert@cs.ucla.edu>
30997         Revert my change to gnus-art.el
30998         * lisp/gnus/gnus-art.el (gnus-button-alist): Revert last change.
30999         It wasn't that important, and it caused a Gnus build to fail.  See:
31000         http://www.randomsample.de:4456/builders/emacs-devel/builds/734
31002         New minor mode Electric Quote
31003         This lets you easily insert quotes ‘like this’ by typing
31004         quotes `like this', and similarly you can easily insert
31005         quotes “like this” by typing quotes ``like this'' (Bug#20545).
31006         * doc/emacs/basic.texi (Inserting Text):
31007         * doc/emacs/modes.texi (Minor Modes):
31008         * etc/NEWS: Document it.
31009         * doc/emacs/text.texi (Quotation Marks): New section.
31010         * lisp/electric.el (electric-quote-comment)
31011         (electric-quote-string, electric-quote-paragraph):
31012         New custom vars.
31013         (electric--insertable-p)
31014         (electric-quote-post-self-insert-function): New functions.
31015         (electric-quote-mode, electric-quote-local-mode): New minor modes.
31016         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
31017         Add curved single quotes to electric-pair-text-pairs.
31018         Set electric-quote-string in this buffer.
31020         A few more doc string fixes (Bug#20385)
31022         Accept curved quotes in doc strings
31023         * lisp/info-look.el (info-lookup-guess-custom-symbol):
31024         (info-lookup-alist): Treat ‘’ like `' when parsing help buffers etc.
31026         Generate curved quotes in pseudo-info nodes
31027         * lisp/info.el (Info-virtual-index-find-node)
31028         (Info-virtual-index, Info-apropos-find-node, info-apropos):
31029         Quote ‘like this’, not `like this', when generating pseudo-info nodes.
31031         Fix minor quoting problems in doc strings
31032         Most of these fixes involve escaping grave accents that are
31033         actually intended to be grave accents, not left quotes.
31034         (Bug#20385)
31036         Support curved quotes in doc strings
31037         Emacs's traditional doc string style has been to quote symbols
31038         `like this'.  This worked well on now-obsolete terminals where
31039         ` and ' were symmetric quotes, but nowadays curved quotes
31040         ‘like this’ look better.  Support quoting the new way too.
31041         (Bug#20385)
31042         * doc/lispref/tips.texi (Documentation Tips): Symbols can be quoted
31043         ‘like-this’ as well as `like-this'.
31044         * etc/NEWS: Mention this.
31045         * lisp/cedet/mode-local.el (overload-docstring-extension)
31046         (mode-local-print-binding, mode-local-describe-bindings-2):
31047         * lisp/cus-theme.el (describe-theme-1):
31048         * lisp/descr-text.el (describe-text-properties-1, describe-char):
31049         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
31050         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
31051         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
31052         (eieio-help-constructor):
31053         * lisp/emacs-lisp/package.el (describe-package-1):
31054         * lisp/faces.el (describe-face):
31055         * lisp/help-fns.el (help-fns--key-bindings)
31056         (help-fns--compiler-macro, help-fns--parent-mode, help-fns--obsolete):
31057         (help-fns--interactive-only, describe-function-1):
31058         (describe-variable):
31059         * lisp/help.el (describe-mode):
31060         * lisp/international/mule-cmds.el (describe-input-method)
31061         (describe-language-environment):
31062         * lisp/international/mule-diag.el (describe-character-set)
31063         (print-coding-system-briefly, list-input-methods)
31064         (list-input-methods-1):
31065         Insert curved quotes rather than grave accent and apostrophe.
31066         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
31067         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
31068         (checkdoc-proper-noun-region-engine):
31069         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2)
31070         (lisp-cl-font-lock-keywords-2):
31071         * lisp/finder.el (finder-font-lock-keywords):
31072         * lisp/gnus/gnus-art.el (gnus-button-alist):
31073         * lisp/help-fns.el (help-do-arg-highlight)
31074         (describe-function-1, describe-variable):
31075         * lisp/help-mode.el (help-xref-symbol-regexp)
31076         (help-xref-info-regexp, help-xref-url-regexp):
31077         * lisp/help.el (describe-mode):
31078         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
31079         * lisp/wid-edit.el (widget-documentation-link-regexp):
31080         Parse symbols quoted ‘like-this’ as well as `like-this'.
31081         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
31082         Add "‘" and "’" to electric-pair-text-pairs.
31083         (elisp--form-quoted-p): Also allow "‘" as a quoting char.
31084         (elisp-completion-at-point, elisp--preceding-sexp):
31085         Also treat "‘" and "’" as quoting chars.
31087         substitute-command-keys now curves quotes
31088         So, for example, it turns "`abc'" into "‘abc’" (Bug#20385).
31089         * doc/lispref/help.texi (Keys in Documentation):
31090         * etc/NEWS: Document this.
31091         * src/doc.c (Fsubstitute_command_keys): Implement it.
31093 2015-05-28  Glenn Morris  <rgm@gnu.org>
31095         * lisp/mail/rmailsum.el (rmail-summary-by-recipients)
31096         (rmail-summary-by-topic, rmail-summary-by-senders):
31097         No longer strip leading/trailing whitespace.
31099         * lisp/progmodes/f90.el (f90-type-def-re): Add "type, extends".
31100         (f90-no-block-limit): Add "enum".  (Bug#20680)
31101         * test/automated/f90.el (f90-test-bug20680, f90-test-bug20680b):
31102         New tests.
31104 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
31106         * lisp/isearch.el (isearch--current-buffer): Give a default value.
31107         Un-revert changes mistakenly dropped by f9fabb2b.
31109 2015-05-27  Paul Eggert  <eggert@cs.ucla.edu>
31111         Merge from gnulib
31112         This incorporates:
31113         2015-05-27 qacl: Reimplement qset_acl and qcopy_acl (Bug#20666)
31114         2015-05-27 file-has-acl: Split feature tests again (Bug#20667)
31115         2015-05-27 string: fix build failure on BSD/OSX with FORTIFY_SOURCE
31116         2015-05-26 stdio: limit __gnu_printf__ witness to gcc 4.4+
31117         2015-05-26 inttypes: force correct mingw PRIdMAX even without <stdio.h>
31118         2015-05-26 stdio: fix probe on mingw under gcc 5.1
31119         * admin/merge-gnulib (GNULIB_MODULES):
31120         Replace qacl with qcopy-acl, since we don't need the rest of qacl.
31121         * doc/misc/texinfo.tex, lib/acl-internal.c, lib/acl-internal.h:
31122         * lib/inttypes.in.h, lib/qcopy-acl.c, lib/qset-acl.c:
31123         * lib/string.in.h, m4/acl.m4, m4/stdio_h.m4:
31124         Get latest versions from gnulib.
31125         * lib/get-permissions.c, lib/set-permissions.c: New files.
31126         * lib/gnulib.mk, m4/gnulib-comp.m4:
31127         Regenerate.
31128         * nt/gnulib.mk: Merge lib/gnulib.mk changes by hand.
31130 2015-05-27  Dmitry Gutov  <dgutov@yandex.ru>
31132         * lisp/vc/vc-dispatcher.el (vc-setup-buffer): Delete the old
31133         process here.
31134         (vc-do-command): Rather than here (bug#20608).
31136 2015-05-27  Ivan Shmakov  <ivan@siamics.net>
31138         Avoid gratuitous delete-dups in face-at-point
31139         * lisp/faces.el (face-at-point): Do not compute the properly
31140         ordered, duplicate-free list if only a single value is
31141         requested anyway.  (Bug#20519)
31143         Show the exact C-x 8 RET invocation in describe-char
31144         * lisp/descr-text.el (describe-char): Show the exact C-x 8 RET
31145         invocation instead of a template.  (Bug#20522)
31147 2015-05-27  Artur Malabarba  <bruce.connor.am@gmail.com>
31149         * lisp/emacs-lisp/package.el: Don't erase tags on refresh.
31150         (package-menu--post-refresh): Call `tabulated-list-print' with the
31151         UPDATE argument.  This only affects the refresh action, the revert
31152         action still erases tags.
31153         (package-menu-get-status): Change `assq' to `assoc'.
31154         (package-menu--mark-upgrades-1): New function.
31155         (package-menu--mark-upgrades-pending): New variable.
31156         (package-menu-mark-upgrades): Use them to delay marking until
31157         after refresh is done.
31158         (package-menu--post-refresh): Call mark-upgrades-1 if
31159         mark-upgrades-pending is non-nil.
31161 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
31163         * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
31164         Fix typo in "Improve tramp-handle-make-auto-save-file-name"
31165         (commit 3953c4be2816537be95520605d45b866dc731f4b).
31167 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
31169         * lisp/isearch.el (isearch--current-buffer): New var.
31170         (isearch-update): Set cursor-sensor-inhibit here.
31171         (isearch-done): Unset cursor-sensor-inhibit in the right buffer
31172         (bug#20532).
31174         Change inhibit-point-motion-hooks to t
31175         * src/textprop.c (syms_of_textprop): Default Vinhibit_point_motion_hooks
31176         to t and document it as obsolete.
31178 2015-05-27  Eli Zaretskii  <eliz@gnu.org>
31180         Support ZIP files that use Zip64 extensions
31181         * lisp/arc-mode.el (archive-zip-summarize): Handle the new ZIP
31182         format of central directory offsets used by Zip64 extensions.
31183         (Bug#20665)
31185 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
31187         New test tramp-test30-make-auto-save-file-name
31188         * test/automated/tramp-tests.el
31189         (tramp-test30-make-auto-save-file-name): New test.
31190         (tramp-test31-special-characters)
31191         (tramp-test31-special-characters-with-stat)
31192         (tramp-test31-special-characters-with-perl)
31193         (tramp-test31-special-characters-with-ls, tramp-test32-utf8)
31194         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
31195         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
31196         (tramp-test34-recursive-load, tramp-test35-unload): Rename.
31198         Improve tramp-handle-make-auto-save-file-name
31199         * lisp/net/tramp.el (tramp-auto-save-directory): Add :tags.
31200         (tramp-handle-make-auto-save-file-name): Let native
31201         `make-auto-save-file-name' use `auto-save-file-name-transforms',
31202         if `tramp-auto-save-directory' is not set.
31204 2015-05-27  Glenn Morris  <rgm@gnu.org>
31206         No longer set dired-directory in eshell.  (Bug#16477)
31207         * lisp/eshell/esh-mode.el (eshell-mode):
31208         * lisp/eshell/em-dirs.el (eshell/cd): No longer set dired-directory.
31210         * lisp/mail/sendmail.el (mail-position-on-field): Doc fix.
31212         Make c-submit-bug-report file reports at debbugs.gnu.org.  (Bug#15784)
31213         * lisp/progmodes/cc-mode.el (c-mode-help-address):
31214         Change to submit@debbugs.
31215         (c-mode-bug-package): New constant.
31216         (mail-position-on-field): Declare.
31217         (c-submit-bug-report): Insert X-Debbugs-Package header.
31218         * doc/misc/cc-mode.texi (Mailing Lists and Bug Reports):
31219         Mention debbugs.gnu.org.
31221 2015-05-26  Glenn Morris  <rgm@gnu.org>
31223         * lisp/mail/rmailsum.el: Commas no longer separate regexps.  (Bug#19026)
31224         (rmail-summary-by-recipients, rmail-summary-by-topic)
31225         (rmail-summary-by-senders): No longer use mail-comma-list-regexp.
31226         * doc/emacs/rmail.texi (Rmail Make Summary): Update for this change.
31228 2015-05-26  Paul Eggert  <eggert@cs.ucla.edu>
31230         Handle curved quotes in info files
31231         * lisp/calc/calc-help.el (calc-describe-thing):
31232         * lisp/info.el (Info-find-index-name)
31233         (Info-try-follow-nearest-node, Info-fontify-node):
31234         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
31235         In info files, process quotes ‘like this’ the same way we process
31236         quotes `like this'.  This catches a few places we missed earlier.
31238 2015-05-26  Dmitry Gutov  <dgutov@yandex.ru>
31240         xref-prompt-for-identifier: Use a list value
31241         * lisp/progmodes/xref.el (xref-prompt-for-identifier): Allow list
31242         value, to be interpreted as a list of commands.
31243         (xref--prompt-p): New function.
31244         (xref--read-identifier): Use it.
31246 2015-05-26  Eli Zaretskii  <eliz@gnu.org>
31248         Teach MS-Windows font back-end return per-glyph ascent/descent
31249         * src/w32font.h (struct w32_metric_cache): Add ascent and descent
31250         values.
31251         * src/w32font.c (w32font_text_extents): Compute, cache, and
31252         accumulate per-glyph ascent and descent values, instead of copying
31253         global values from the font.  If the values are not available from
31254         the font data, i.e., non-TTF fonts, fall back on font-global values.
31255         (compute_metrics): Compute and return per-glyph ascent and descent
31256         values, if returned by GetGlyphOutlineW, falling back on
31257         font-global values.  (Bug#20628)
31258         * src/w32term.c (w32_draw_rectangle): Add 1 pixel to width and
31259         height of rectangle to be drawn, to be compatible with
31260         XDrawRectangle.  Fixes glyphless-char display as hex codes in a
31261         box, when per-glyph ascent/descent values are used.
31263 2015-05-26  Artur Malabarba  <bruce.connor.am@gmail.com>
31265         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
31266         Don't sort if sorter is nil.
31268 2015-05-26  Michael Albinus  <michael.albinus@gmx.de>
31270         Fix Bug#20621
31271         * lisp/net/tramp-sh.el (tramp-set-auto-save): Remove it.  There
31272         are major modes which set `auto-save-mode' on their own rules;
31273         Tramp shall not overwrite such settings.
31275 2015-05-26  Glenn Morris  <rgm@gnu.org>
31277         * lisp/desktop.el: If modes aren't autoloaded, try simple guesswork.
31278         (desktop-load-file): Guess that "foobar" defines "foobar-mode".
31279         (desktop-buffer-mode-handlers, desktop-minor-mode-handlers):
31280         Doc updates.
31281         (vc-dir-mode): Remove unnecessary autoload.
31283 2015-05-25  Philipp Stephani  <phst@google.com>
31285         * lisp/term/xterm.el: Add gui-get-selection support via OSC-52.
31286         (xterm--extra-capabilities-type): Add `getSelection'.
31287         (xterm--query): Add `no-async' argument.
31288         (xterm--init-activate-get-selection): New function.
31289         (terminal-init-xterm): Use it.
31290         (xterm--init-modify-other-keys): Rename from
31291         terminal-init-xterm-modify-other-keys.
31292         (xterm--init-bracketed-paste-mode): Rename from
31293         terminal-init-xterm-bracketed-paste-mode.
31294         (xterm--init-activate-set-selection): Rename from
31295         terminal-init-xterm-activate-set-selection.
31296         (xterm--selection-char): New function.
31297         (gui-backend-set-selection): Use it.  Use the &context to only apply
31298         this method in terminals where we enabled the feature.
31299         (gui-backend-get-selection): New method.
31301 2015-05-25  Daniel Colascione  <dancol@dancol.org>
31303         * lisp/progmodes/cc-langs.el (c-constant-kwds): Add C-language
31304         keyword constants to C++.
31306 2015-05-25  Paul Eggert  <eggert@cs.ucla.edu>
31308         Make TAGS files more portable to MS-Windows
31309         * etc/NEWS: Document this.
31310         * lib-src/etags.c (readline_internal) [DOS_NT]:
31311         Don't treat CRs differently from GNUish hosts.
31312         * lisp/progmodes/etags.el (etags-goto-tag-location):
31313         Adjust STARTPOS to account for the skipped CRs in dos-style files.
31315 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
31317         Improve fix of bug#20634 in tramp-sh.el
31319 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
31321         Fix a typo in last commit
31322         * lib-src/etags.c (C_entries): Fix a typo.
31323         * test/etags/ETAGS.good_1:
31324         * test/etags/ETAGS.good_2:
31325         * test/etags/ETAGS.good_3:
31326         * test/etags/ETAGS.good_4:
31327         * test/etags/ETAGS.good_5:
31328         * test/etags/CTAGS.good: Update due to the change in etags.c.
31330         Fix tagging of class members in C-like OO languages
31331         * lib-src/etags.c (longopts): Add new option --class-qualify and
31332         its shorthand -Q.
31333         (print_help): Add help text for --class-qualify.
31334         (main): Add handling of -Q.
31335         (consider_token, C_entries) <omethodparm>: Append argument types
31336         to Objective C methods only if --class-qualify was specified.
31337         Qualify C++, Objective C, and Java class members with their class
31338         names only if --class-qualify was specified.
31339         (C_entries): If --class-qualify was not specified, remove the
31340         namespace and class qualifiers from tag names of C++ methods.
31341         This allows to use etags.el as xref back-end without the
31342         tag-symbol-match-p method, which greatly increases the number of
31343         potentially false positives.  (Bug#20629)
31344         * doc/man/etags.1: Update to document the new --class-qualify
31345         option.
31346         * test/etags/ETAGS.good_1:
31347         * test/etags/ETAGS.good_2:
31348         * test/etags/ETAGS.good_3:
31349         * test/etags/ETAGS.good_4:
31350         * test/etags/ETAGS.good_5:
31351         * test/etags/CTAGS.good: Update due to changes in etags.c.
31353 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
31355         (cl-generic-define-method): Side effects are evil (bug#20644)
31356         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method): Don't reuse
31357         cons-cells that might be used as keys in an `equal' hash-table.
31359 2015-05-25  Lars Magne Ingebrigtsen  <larsi@gnus.org>
31361         Make erc timestamps visible again
31362         * lisp/erc/erc-stamp.el (erc-munge-invisibility-spec):
31363         Make timestamps visible again (if requested).
31365 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
31367         Fix last change in etags.c that broke tagging compresed files
31368         * lib-src/etags.c (process_file_name) [MSDOS || DOS_NT]: Fix
31369         quoting of decompression shell command for MS-Windows/MS-DOS.
31371 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
31373         * lisp/emacs-lisp/cl-macs.el (cl-tagbody): Scope cl--tagbody-alist.
31374         (Bug#20639)
31376 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
31378         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer):
31379         Fix typo in "Inhibit `epa-file-handler' in Tramp"
31380         (commit 89035e247591c8d688fce922b7079881aa110f33).
31382 2015-05-25  Orivej Desh  <orivej@gmx.fr>  (tiny change)
31384         Fix IPv6 addresses in Tramp
31385         * lisp/net/tramp-sh.el (tramp-make-copy-program-file-name):
31386         Add square brackets around host name.
31388 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
31390         Inhibit `epa-file-handler' in Tramp (Bug#20634)
31391         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer)
31392         (tramp-sh-handle-insert-file-contents-literally): Inhibit also
31393         `epa-file-handler'.
31395 2015-05-24  Stefan Monnier  <monnier@iro.umontreal.ca>
31397         * lisp/emacs-lisp/pcase.el: Use PAT rather than UPAT in docstring.
31398         (pcase-let): Document the behavior in case the pattern doesn't match.
31400 2015-05-24  Artur Malabarba  <bruce.connor.am@gmail.com>
31402         * lisp/emacs-lisp/tabulated-list.el: New optional print method.
31403         (tabulated-list-print): New optional argument, UPDATE.  If
31404         non-nil, the list is printed by only adding and deleting the
31405         changed entries, instead of erasing the whole buffer.  This method
31406         is much faster when few or no entries have changed.
31407         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
31408         * etc/NEWS: Document it.
31410         * lisp/emacs-lisp/tabulated-list.el: Improve printing.
31411         (tabulated-list--get-sorter): New function.
31412         (tabulated-list-print): Restore window-line when remember-pos is
31413         passed and optimize away the `nreverse'.
31415 2015-05-24  Paul Eggert  <eggert@cs.ucla.edu>
31417         Simpilify etags TEX mode scanning
31418         * lib-src/etags.c (TEX_mode, TEX_esc, TEX_opgrp, TEX_clgrp):
31419         Remove static vars.
31420         (TeX_commands): Deduce escapes here instead.
31421         (TEX_LESC, TEX_SESC, TEX_mode): Remove; all uses removed.
31422         This removes the need for a reset_input call.
31424         Improve etags I/O error reporting
31425         * lib-src/etags.c:
31426         Don't include sys/types.h and sys/stat.h; no longer needed.
31427         (infilename): New static var.
31428         (process_file_name): Don't call 'stat'.  Instead, just open the
31429         file for reading and report any errors.  Don't bother making
31430         a copy of the file argument; it's not needed.  Be more careful to
31431         use the failing errno when reporting an error.
31432         Quote the real name better (though no perfectly)
31433         when passing it to the shell.
31434         (reset_input): New function, which reports I/O errors.
31435         All uses of 'rewind' changed to use this function.
31436         (perhaps_more_input): New function, which also checks for
31437         I/O errors.  All uses of 'feof' changed to use this function.
31438         (analyze_regex): Report an error if fclose fails.
31439         (readline_internal): Report an error if getc fails.
31440         (etags_mktmp): Return an error if close fails.
31442         etags.c: avoid side effects in 'if'
31443         * lib-src/etags.c (process_file_name, Perl_functions)
31444         (TEX_decode_env): Hoist side effects into previous statement.
31446         .gitignore tweaks
31447         * .gitignore: Ignore all *.stamp files.  Sort.
31448         Ignore [0-9]*.txt (commonly used name for git patches)
31449         and /vc-dwim-log-* (vc-dwim temporary).
31451 2015-05-24  Eli Zaretskii  <eliz@gnu.org>
31453         Fix last change in etags.c, which failed the test suite
31454         * lib-src/etags.c (intoken): Add '$' to the set, as it was there
31455         before the last change.
31457 2015-05-23  Glenn Morris  <rgm@gnu.org>
31459         Remove charset map files from repository, generate in first bootstrap
31460         * admin/charsets/Makefile.in (${srcdir}/charsets.stamp): New.
31461         (all): Create the stamp file.
31462         (extraclean): Delete the stamp file.
31463         * src/Makefile.in (lispintdir, charsets): New variables.
31464         (${lispintdir}/cp51932.el, ${lispintdir}/eucjp-ms.el, ${charsets}):
31465         New rules.
31466         (emacs$(EXEEXT), temacs$(EXEEXT)): Depend on $charsets.
31467         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
31468         * etc/charsets/*.map: Remove from repository.
31470 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
31472         Cleanup etags.c to use locale-independent code
31473         Although this doesn't alter behavior (as etags doesn't use
31474         setlocale), the new version is more clearly locale-independent and
31475         the executable is a bit smaller on my platform.
31476         * lib-src/etags.c: Include <limits.h>, for UCHAR_MAX.
31477         Include <c-ctype.h> instead of <ctype.h>.
31478         (CHARS, CHAR, init, _wht, _nin, _itk, _btk, _etk, white, nonam, endtk)
31479         (begtk, midtk):
31480         Remove; no longer needed.
31481         (iswhite, ISALNUM, ISALPHA, ISDIGIT, ISLOWER, lowcase): Remove.
31482         All callers changed to use c_isspace, c_isalnum, c_isalpha, c_isdigit,
31483         c_islower, c_tolower, respectively.
31484         (notinname, begtoken, intoken, endtoken): Rewrite as functions
31485         instead of macros, and initialize the tables at compile-time
31486         rather than at run-time.
31488         Put default action first in src/Makefile
31489         * src/Makefile.in (all): Put this rule before lisp.mk.
31490         That way, plain 'make' works in the src directory again.
31492 2015-05-23  Glenn Morris  <rgm@gnu.org>
31494         * Makefile.in: Fix extraclean rule.
31495         (extraclean_dirs): New.
31496         (extraclean): Use it.
31498 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
31500         Avoid compiler warning in image.c on MS-Windows
31501         * src/w32term.h (x_query_color): Add prototype, to avoid compiler
31502         warning in image.c.
31504 2015-05-23  Glenn Morris  <rgm@gnu.org>
31506         Fix --without-toolkit-scroll-bars builds.
31507         * src/xterm.c (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]:
31508         Add new argument to x_clear_area1.
31509         (XTset_horizontal_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
31510         Update x_clear_area arguments.
31512         * admin/charsets/glibc/: New directory, imported from glibc 2.21.
31513         * admin/charsets/Makefile.in (GLIBC_CHARMAPS):
31514         Change to included version.
31515         (LOCAL, local, totalclean): Remove.
31516         (extraclean): Delete all generated files.
31518 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
31520         * lisp/pcmpl-cvs.el (pcmpl-cvs-entries): Don't assume
31521         CVS/Entries exists.
31523         * lisp/progmodes/xref.el (xref-find-apropos): Use read-string.
31525         * lisp/progmodes/etags.el (tags-completion-at-point-function):
31526         Don't trust the find-tag function.
31528 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
31530         Pacify --enable-gcc-warnings
31531         * src/frame.h (x_query_color): Remove redundant extern decl.
31532         * src/ftcrfont.c (ftcrfont_glyph_extents, ftcrfont_list)
31533         (ftcrfont_match, ftcrfont_open, ftcrfont_close)
31534         (ftcrfont_text_extents, ftcrfont_draw):
31535         * src/xterm.c (x_set_window_size_1, *x_color_cells, x_update_end)
31536         (XTframe_up_to_date, x_clear_area1, x_clear_frame)
31537         (x_ins_del_lines, frame_highlight, frame_unhighlight)
31538         (x_new_focus_frame, x_focus_changed, XTframe_rehighlight)
31539         (x_draw_hollow_cursor, x_draw_bar_cursor, x_flush, x_update_begin)
31540         (x_update_window_begin, x_connection_closed)
31541         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
31542         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
31543         (*x_gc_get_ext_data, x_extension_initialize)
31544         (x_cr_accumulate_data):
31545         Remove redundant static decl.  Many of these GCC doesn't complain
31546         about, but we might as well clean out the duplication while we're
31547         in the neighborhood.
31548         * src/xterm.c (x_fill_trapezoid_for_relief):
31549         Remove decl of nonexistent function.
31551 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
31553         Replace gui-method macros with cl-generic with &context
31554         * lisp/frame.el (gui-method--name, gui-method, gui-method-define)
31555         (gui-method-declare, gui-call): Remove.
31556         (frame-creation-function): Use cl-defgeneric.
31557         (make-frame): Adjust callers.
31558         * lisp/menu-bar.el (menu-bar-edit-menu):
31559         Use gui-backend-selection-exists-p.
31560         * lisp/select.el (x-get-clipboard): Use gui-backend-get-selection.
31561         (gui-backend-get-selection): New cl-generic to replace
31562         gui-get-selection method.
31563         (gui-backend-set-selection): New cl-generic to replace
31564         gui-set-selection method.
31565         (gui-selection-owner-p): New cl-generic to replace
31566         gui-selection-owner-p method.
31567         (gui-backend-selection-exists-p): New cl-generic to replace
31568         gui-selection-exists-p method.  Adjust all callers.
31569         * lisp/server.el (server-create-window-system-frame): Don't ignore
31570         window-system spec even when unsupported.
31571         * lisp/simple.el (deactivate-mark): Use new gui-backend-* functions.
31572         * lisp/startup.el (handle-args-function, window-system-initialization):
31573         Use cl-defgeneric.
31574         (command-line): Adjust calls accordingly.
31575         * lisp/term/ns-win.el (ns-window-system-initialization): Turn into
31576         a window-system-initialization method.
31577         (handle-args-function, frame-creation-function): Use cl-defmethod.
31578         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
31579         (gui-get-selection): Use cl-defmethod on the new functions instead.
31580         * lisp/term/pc-win.el (w16-get-selection-value): Turn into
31581         a gui-backend-get-selection method.
31582         (gui-selection-exists-p, gui-selection-owner-p, gui-set-selection):
31583         Use cl-defmethod on the new functions instead.
31584         (msdos-window-system-initialization): Turn into
31585         a window-system-initialization method.
31586         (frame-creation-function, handle-args-function): Use cl-defmethod.
31587         * lisp/term/w32-win.el (w32-window-system-initialization): Turn into
31588         a window-system-initialization method.
31589         (handle-args-function, frame-creation-function): Use cl-defmethod.
31590         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
31591         (gui-get-selection): Use cl-defmethod on the new functions instead.
31592         * lisp/term/x-win.el (x-window-system-initialization): Turn into
31593         a window-system-initialization method.
31594         (handle-args-function, frame-creation-function): Use cl-defmethod.
31595         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
31596         (gui-get-selection): Use cl-defmethod on the new functions instead.
31597         * lisp/term/xterm.el (xterm--set-selection): Turn into
31598         a gui-backend-set-selection method.
31599         * src/nsselect.m (Fns_selection_exists_p): Remove unused arg `terminal'.
31600         (Fns_selection_owner_p): Remove unused arg `terminal'.
31601         (Fns_get_selection): Remove unused args `time_stamp' and `terminal'.
31603 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
31605         Revert "Fix etags Bug#20629 that broke C++ support"
31606         This reverts commit 13dd9d4f7e75d2c78aa5537cef09de03663e9748.
31608 2015-05-23  Jan D  <jan.h.d@swipnet.se>
31610         Fix etags Bug#20629 that broke C++ support
31611         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
31612         Revert commit from Sun May 10 (Bug#20629).
31614         Merge branch 'cairo'.
31615         Main work done by YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>.
31616         Small fixes and image work by Jan D. <jan.h.d@swipnet.se>.
31618         Merge branch 'master' into cairo
31620         Fixes to compile cairo branch without cairo
31621         * src/gtkutil.c (xg_update_scrollbar_pos): x_clear_area takes frame as
31622         first argument.
31623         * src/xterm.c (handle_one_xevent): Surround x_cr_destroy_surface with
31624         USE_CAIRO.
31626 2015-05-23  Artur Malabarba  <bruce.connor.am@gmail.com>
31628         * lisp/emacs-lisp/package.el: Always update selected-packages.
31629         (package--update-selected-packages): New function.
31630         (package-menu-execute): Use it before starting the transaction,
31631         this way the list of selected packages is updated even when the
31632         transaction fails.
31633         (package-menu--perform-transaction): Don't edit selected-packages.
31635 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
31637         Fix etags reading of compressed files
31638         * lib-src/etags.c (O_CLOEXEC) [WINDOWSNT]: Define.
31639         Include fcntl.h, for O_CLOEXEC.
31640         (process_file_name): Don't use 'popen', whose streams cannot be
31641         rewound.  Instead, uncompress the file to a temporary file,
31642         created by 'etags_mktmp', and read from that as usual.
31643         (etags_mktmp): New function.
31644         * test/etags/ETAGS.good_1:
31645         * test/etags/ETAGS.good_2:
31646         * test/etags/ETAGS.good_3:
31647         * test/etags/ETAGS.good_4:
31648         * test/etags/ETAGS.good_5: Update to be consistent with latest
31649         changes in etags.c regarding reading compressed files.
31651         Improve documentation of 'set-fontset-font'
31652         * doc/lispref/display.texi (Fontsets): Document the value of nil
31653         for the 3rd argument of 'set-fontset-font'.
31655         Fix documentation of forward-line
31656         * src/cmds.c (Fforward_line): Clarify the return value if the line
31657         at end of accessible portion of the buffer has no newline.
31658         * doc/lispref/positions.texi (Text Lines): Document what happens
31659         if the line at end of accessible portion of buffer has no newline.
31660         (Bug#20587)
31662 2015-05-22  Glenn Morris  <rgm@gnu.org>
31664         * admin/charsets/Makefile.in (TRANS_TABLE): Add short aliases.
31666         * admin/charsets/mapconv (LC_ALL): Set to C.
31668         * Makefile.in: Add admin/charsets into top-level clean rules.
31669         (clean): Add admin/charsets.
31670         (maybeclean_dirs): New variable.
31671         (distclean, bootstrap-clean, maintainer-clean): Use $maybeclean_dirs.
31673         * admin/charsets/Makefile.in (LOCAL, local): Fix members.
31675 2015-05-22  Artur Malabarba  <bruce.connor.am@gmail.com>
31677         * lisp/emacs-lisp/package.el (package-selected-packages): Fix doc.
31679 2015-05-22  Glenn Morris  <rgm@gnu.org>
31681         Generate admin/charsets Makefile via configure, and make more portable
31682         * configure.ac (SUBDIR_MAKEFILES): Add admin/charsets/Makefile.
31683         (admin/charsets/Makefile): Generate it.
31684         * admin/charsets/Makefile.in: Rename from Makefile.
31685         (AWK, srcdir, top_srcdir, AM_DEFAULT_VERBOSITY):
31686         New variables, set by configure.
31687         (charsetdir, lispintdir, mapfiledir, AM_V_GEN, am__v_GEN_)
31688         (am__v_GEN_0, am__v_GEN_1, AM_V_at, am__v_at_, am__v_at_0)
31689         (am__v_at_1, LOCAL, mapconv, run_mapconv, big5, compact, cp51932)
31690         (cp932, eucjp_ms, gb180302, gb180304, kuten): New variables.
31691         (TRANS_TABLE, CHARSETS): Add directory prefix to value.
31692         (all): Declare PHONY.
31693         (local): New PHONY target.
31694         (map_template): New template.  Use to define short PHONY aliases.
31695         (*.map): Add directory prefixes to targets and prerequisites.
31696         Respect make verbosity.
31697         (JISC6226.map): Replace non-portable sed append without newline.
31698         (install): Remove rule.
31699         (clean): Only delete temporary sedscript.
31700         (bootstrap-clean, distclean, maintainer-clean, extraclean)
31701         (totalclean): New PHONY rules.
31702         * admin/charsets/mapconv (BASE): Replace basename with expr.
31703         (FILE): Add "mapfiles" subdirectory.
31704         (AWK): New variable.  Use throughout in place of "awk".
31705         (main): Use "gunzip -c" in place of "zcat".
31706         Don't leave whitespace before "p", for older sed.
31707         * admin/charsets/mapfiles/PTCP154: Add final newline,
31708         to make older sed versions happy.
31710 2015-05-22  Stefan Monnier  <monnier@iro.umontreal.ca>
31712         * lisp/autorevert.el: Use lexical-binding.  Fix hook usage.
31713         (global-auto-revert-ignore-buffer, auto-revert-notify-modified-p)
31714         (auto-revert-notify-watch-descriptor): Use defvar-local.
31715         (find-file-hook, auto-revert-tail-mode)
31716         (auto-revert-notify-add-watch): Use setq-local.
31717         (auto-revert-notify-add-watch): Don't call make-local-variable on
31718         kill-buffer-hook (bug#20601).
31720 2015-05-21  Stefan Monnier  <monnier@iro.umontreal.ca>
31722         Change defgeneric so it doesn't completely redefine the function
31723         * lisp/emacs-lisp/cl-generic.el (cl-generic-define): Don't throw away
31724         previously defined methods.
31725         (cl-generic-define-method): Let-bind purify-flag instead of
31726         using `fset'.
31727         (cl--generic-prefill-dispatchers): Only define during compilation.
31728         (cl-method-qualifiers): Remove redundant alias.
31729         (help-fns-short-filename): Silence byte-compiler.
31730         * test/automated/cl-generic-tests.el:
31731         Adjust to new defgeneric semantics.
31733 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
31735         * lisp/emacs-lisp/package.el (package-menu-execute):
31736         Remove reference to remove-dups.
31738 2015-05-21  Kelvin White  <kwhite@gnu.org>
31740         * lisp/erc/erc.el: Hide network/channel messages.
31741         (erc-network-hide-list, erc-channel-hide-list): New lists to define
31742         message types per network/channel.
31743         (erc-add-targets): New function to parse list of targets.
31744         (erc-hide-current-message-p): Modify to check for new targets.
31746 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
31748         Don't quote nil and t in doc strings
31749         This is as per "Tips for Documentation Strings" in the elisp manual.
31750         For consistency, do the same in diagnostics and comments.
31752 2015-05-21  Eli Zaretskii  <eliz@gnu.org>
31754         Fix a minor problem with mouse-face on mode line
31755         * src/xdisp.c (note_mode_line_or_margin_highlight): Reset the
31756         mouse face also if the mouse pointer hovers above mode-line glyphs
31757         that don't come from any Lisp string.  (Bug#20620)
31759 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
31761         * lisp/emacs-lisp/package.el: Fix selected-package logic.
31762         (package-menu-execute): Mark as selected all non-upgrade packages
31763         being installed.
31764         (package-menu--perform-transaction): Don't mark anything.
31766         * lisp/emacs-lisp/package.el: Mode-line progress report.
31767         (package-menu--transaction-status): New variable.
31768         (package-menu-mode, package-menu--perform-transaction): Use it.
31770         * lisp/emacs-lisp/package.el: Better transaction messages.
31771         (package-menu--partition-transaction): New function.
31772         (package-menu--prompt-transaction-p, package-menu-execute):
31773         Use it.
31774         (package-menu--perform-transaction): Don't do any messaging.
31776         * lisp/emacs-lisp/package.el: Revert async package transactions.
31777         (package-menu-async): Update doc.
31778         (package-install-from-archive, package-download-transaction)
31779         (package-install, package-menu--perform-transaction)
31780         (package-menu-execute): Remove asynchronous functionality.
31782 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
31784         Revert doc string changes to f90.el
31785         Problem reported by Glenn Morris in:
31786         https://lists.gnu.org/r/emacs-devel/2015-05/msg00596.html
31787         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
31788         Revert recent changes to doc strings, as it's intended that they
31789         use grave accent, not quote.
31791 2015-05-20  Bozhidar Batsov  <bozhidar@batsov.com>
31793         * lisp/emacs-lisp/subr-x.el (hash-table-empty-p):
31794         Improve parameter name.
31796         * lisp/emacs-lisp/subr-x.el (hash-table-empty-p): New inline function.
31798 2015-05-20  Paul Eggert  <eggert@cs.ucla.edu>
31800         Don't require help-fns when not needed
31801         * lisp/emacs-lisp/autoload.el, lisp/emacs-lisp/advice.el:
31802         * lisp/emacs-lisp/elint.el:
31803         Don't require help-fns at the top level
31804         * lisp/emacs-lisp/advice.el (ad-arglist):
31805         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
31806         Don't require help-fns.  (Bug#17001)
31808 2015-05-20  Eli Zaretskii  <eliz@gnu.org>
31810         Fix slash collapsing in etags on MS-Windows
31811         * lib-src/etags.c (canonicalize_filename) [DOS_NT]: Separate the
31812         MS-Windows code from the Posix code, and support collapsing both
31813         forward- and back-slashes on MS-Windows.  Fixes a regression found
31814         by the test suite.
31816         Improve documentation of glyphless-char-display
31817         * doc/lispref/display.texi (Glyphless Chars): Improve
31818         documentation of glyphless character display.
31820         Fix "acronym" display of glyphless characters on w32
31821         * src/w32term.c (x_draw_glyphless_glyph_string_foreground): Don't
31822         ignore "acronym" substitutes of 1 character for glyphless characters.
31824 2015-05-20  Oleh Krehel  <ohwoeowho@gmail.com>
31826         Add an automated test for let-when-compile
31827         * test/automated/subr-tests.el (let-when-compile): New test.
31829         Add let-when-compile macro instead of using pcase-let
31830         * lisp/subr.el (let-when-compile): New let-like macro that makes its
31831         bindings known to macros like `eval-when-compile' in the body.
31832         * lisp/emacs-lisp/lisp-mode.el: Change the top-level `pcase-let' to
31833         a `let-when-compile'.  Also comment out the unused lexical var
31834         `el-kws-re'.
31835         The change greatly improves readability, while providing almost the
31836         same (even shorter) byte code: instead of pre-evaluating 10 variables,
31837         tossing them into a list, and destructuring that list a full screen
31838         page later, the variables are simply bound as they are evaluated,
31839         wrapped individually in `eval-when-compile'.
31841 2015-05-20  Artur Malabarba  <bruce.connor.am@gmail.com>
31843         * lisp/emacs-lisp/package.el: "Delete" button in Help buffer.
31844         (package-delete-button-action): New function.
31845         (describe-package-1): Add Delete button.
31847         * lisp/emacs-lisp/package.el: Better dependency description.
31848         (package--used-elsewhere-p): New optional arg, ALL, and return
31849         package-desc objects instead of names.
31850         (package-delete): Update accordingly.
31851         (describe-package-1): Describe which packages require the package.
31853 2015-05-20  Martin Rudalics  <rudalics@gmx.at>
31855         Fix handling and doc-string of FRAME arg of `other-buffer' (Bug#20533)
31856         * src/buffer.c (Fother_buffer): Argument FRAME must denote a live frame.
31857         Fix doc-string.
31859         Improve `switch-to-buffer' in strongly dedicated windows (Bug#20472)
31860         * lisp/window.el (switch-to-buffer-in-dedicated-window): New option.
31861         (switch-to-buffer): If the selected window is strongly dedicated
31862         to its buffer, signal error before prompting for buffer name.
31863         Handle `switch-to-buffer-in-dedicated-window'.
31864         * doc/lispref/windows.texi (Switching Buffers):
31865         Document `switch-to-buffer-in-dedicated-window'.
31867 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
31869         Prefer "this" to “this” in doc strings
31870         This mostly just straightens quotes introduced in my previous patch.
31871         Suggested by Dmitry Gutov in:
31872         https://lists.gnu.org/r/emacs-devel/2015-05/msg00565.html
31873         * lisp/faces.el, lisp/gnus/gnus-group.el, lisp/ldefs-boot.el:
31874         * lisp/mail/supercite.el, lisp/net/tramp.el, lisp/recentf.el:
31875         * lisp/textmodes/artist.el, lisp/textmodes/rst.el:
31876         * lisp/textmodes/tildify.el, lisp/vc/ediff-util.el:
31877         * lisp/vc/log-edit.el, lisp/xt-mouse.el:
31878         Prefer straight double quotes to curved double quotes in doc strings.
31880         Fix minor quoting problems in doc strings
31881         These were glitches regardless of how or whether we tackle the
31882         problem of grave accent in doc strings.
31883         * lisp/calc/calc-aent.el (math-restore-placeholders):
31884         * lisp/ido.el (ido-ignore-buffers, ido-ignore-files):
31885         * lisp/leim/quail/cyrillic.el ("bulgarian-alt-phonetic"):
31886         * lisp/leim/quail/hebrew.el ("hebrew-new")
31887         ("hebrew-biblical-sil"):
31888         * lisp/leim/quail/thai.el ("thai-kesmanee"):
31889         * lisp/progmodes/idlw-shell.el (idlwave-shell-file-name-chars):
31890         Used curved quotes to avoid ambiguities like ‘`''’ in doc strings.
31891         * lisp/calendar/calendar.el (calendar-month-abbrev-array):
31892         * lisp/cedet/semantic/mru-bookmark.el (semantic-mrub-cache-flush-fcn):
31893         * lisp/cedet/semantic/symref.el (semantic-symref-tool-baseclass):
31894         * lisp/cedet/semantic/tag.el (semantic-tag-copy)
31895         (semantic-tag-components):
31896         * lisp/cedet/srecode/cpp.el (srecode-semantic-handle-:cpp):
31897         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
31898         * lisp/emacs-lisp/byte-opt.el (byte-optimize-all-constp):
31899         * lisp/emacs-lisp/checkdoc.el (checkdoc-message-text-engine):
31900         * lisp/emacs-lisp/generator.el (iter-next):
31901         * lisp/gnus/gnus-art.el (gnus-treat-strip-list-identifiers)
31902         (gnus-article-mode-syntax-table):
31903         * lisp/net/rlogin.el (rlogin-directory-tracking-mode):
31904         * lisp/net/soap-client.el (soap-wsdl-get):
31905         * lisp/net/telnet.el (telnet-mode):
31906         * lisp/org/org-compat.el (org-number-sequence):
31907         * lisp/org/org.el (org-remove-highlights-with-change)
31908         (org-structure-template-alist):
31909         * lisp/org/ox-html.el (org-html-link-org-files-as-html):
31910         * lisp/play/handwrite.el (handwrite-10pt, handwrite-11pt)
31911         (handwrite-12pt, handwrite-13pt):
31912         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
31913         * lisp/progmodes/idlwave.el (idlwave-mode, idlwave-check-abbrev):
31914         * lisp/progmodes/verilog-mode.el (verilog-tool)
31915         (verilog-string-replace-matches, verilog-preprocess)
31916         (verilog-auto-insert-lisp, verilog-auto-insert-last):
31917         * lisp/textmodes/makeinfo.el (makeinfo-options):
31918         * src/font.c (Ffont_spec):
31919         Fix minor quoting problems in doc strings, e.g., missing quote,
31920         ``x'' where `x' was meant, etc.
31921         * lisp/erc/erc-backend.el (erc-process-sentinel-2):
31922         Fix minor quoting problem in other string.
31923         * lisp/leim/quail/ethiopic.el ("ethiopic"):
31924         * lisp/term/tvi970.el (tvi970-set-keypad-mode):
31925         Omit unnecessary quotes.
31926         * lisp/faces.el (set-face-attribute, set-face-underline)
31927         (set-face-inverse-video, x-create-frame-with-faces):
31928         * lisp/gnus/gnus-group.el (gnus-group-nnimap-edit-acl):
31929         * lisp/mail/supercite.el (sc-attribs-%@-addresses)
31930         (sc-attribs-!-addresses, sc-attribs-<>-addresses):
31931         * lisp/net/tramp.el (tramp-methods):
31932         * lisp/recentf.el (recentf-show-file-shortcuts-flag):
31933         * lisp/textmodes/artist.el (artist-ellipse-right-char)
31934         (artist-ellipse-left-char, artist-vaporize-fuzziness)
31935         (artist-spray-chars, artist-mode, artist-replace-string)
31936         (artist-put-pixel, artist-text-see-thru):
31937         * lisp/vc/ediff-util.el (ediff-submit-report):
31938         * lisp/vc/log-edit.el (log-edit-changelog-full-paragraphs):
31939         Use double-quotes rather than TeX markup in doc strings.
31940         * lisp/skeleton.el (skeleton-pair-insert-maybe):
31941         Reword to avoid the need for grave accent and apostrophe.
31942         * lisp/xt-mouse.el (xterm-mouse-tracking-enable-sequence):
31943         Don't use grave and acute accents to quote.
31945 2015-05-19  Stefan Monnier  <monnier@iro.umontreal.ca>
31947         * lisp/emacs-lisp/generator.el (cps--gensym, cps--transform-1):
31948         Silence compiler.
31950 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
31952         Try to port new etags tests to MS-Windows
31953         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
31954         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
31955         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
31956         Adjust to test-case changes below.
31957         * test/etags/Makefile (CSRC): Remove dostorture.c.
31958         Whatever it was trying to test, wasn't working portably.
31959         (LC_ALL): Remove.  Apparently there wasn't an encoding problem,
31960         just a line-ending problem.
31961         * test/etags/c-src/dostorture.c: Remove.
31962         * test/etags/cp-src/c.C: Remove stray CR.
31963         * test/etags/html-src/algrthms.html: Remove trailing CRs.
31964         State UTF-8 as the encoding.  The file is ASCII so it doesn't matter,
31965         but if someone edits it later it should stay UTF-8-compatible.
31967 2015-05-19  Eli Zaretskii  <eliz@gnu.org>
31969         Fix display of overlapping window-specific overlays
31970         * src/keyboard.c (adjust_point_for_property): When adjusting point
31971         due to display strings, ignore overlays that are specific to
31972         windows other than the currently selected one.
31973         * src/xdisp.c (handle_single_display_spec): If the display
31974         property comes from an overlay, arrange for buffer iteration to
31975         resume only after the end of that overlay.  (Bug#20607)
31977 2015-05-19  Dmitry Gutov  <dgutov@yandex.ru>
31979         New command icomplete-force-complete-and-exit
31980         * lisp/icomplete.el (icomplete-force-complete-and-exit):
31981         New command
31982         (https://lists.gnu.org/r/emacs-devel/2015-05/msg00461.html)
31983         (https://lists.gnu.org/r/emacs-devel/2015-05/msg00516.html).
31984         (icomplete-minibuffer-map): Bind C-j to it.
31985         (icomplete-forward-completions, icomplete-backward-completions):
31986         Mention the new command in the docstring.
31987         * lisp/minibuffer.el (minibuffer-force-complete-and-exit):
31988         Revert the previous fix for bug#17545.
31990 2015-05-19  Martin Rudalics  <rudalics@gmx.at>
31992         Fix last commit
31994         In Elisp manual explain how to override window manager positioning
31995         (Bug#20552)
31996         * doc/lispref/frames.texi (Position Parameters): Give example of
31997         how to override a window manager positioning decision.
31999         Clarify concept of "surrogate minibuffer frames" (Bug#20538)
32000         * src/frame.c (Fdelete_frame): In doc-string mention that frame
32001         can't be deleted if it has a surrogate minibuffer.
32002         * doc/lispref/frames.texi (Minibuffers and Frames)
32003         (Deleting Frames): Explain "surrogate minibuffer frames".
32005         * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 19/12 MB.
32007 2015-05-18  Glenn Morris  <rgm@gnu.org>
32009         Add option to ignore commit lines matching a pattern in ChangeLog
32010         * build-aux/gitlog-to-changelog: Add --ignore-line option.
32011         * build-aux/gitlog-to-emacslog: Ignore lines matching '^; '.
32013 2015-05-18  Paul Eggert  <eggert@cs.ucla.edu>
32015         Don't skip new etags tests on non-UTF-8 hosts
32016         Problem reported by Eli Zaretskii for MS-Windows.
32017         * test/etags/Makefile (UTF8_LOCALE, UTF8_ENCODING): Remove.
32018         (LC_ALL): Set to C if the current locale isn't UTF-8.
32019         (.PHONY): Remove ediff_1 thru ediff_5.
32020         (check): Always run.
32022 2015-05-18  Glenn Morris  <rgm@gnu.org>
32024         * lisp/calculator.el (calculator-funcall):
32025         * lisp/textmodes/artist.el (artist-spray-random-points):
32026         Use standard degree/radian conversion utilities.
32028         Further lisp-complete-symbol related cleanup.
32029         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol):
32030         Unadvertise non-functional argument.  Replace obsolete alias.
32032 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
32034         Add a test case for Maven warning output
32035         * test/automated/compile-tests.el
32036         (compile-tests--test-regexps-data): Add a case for Maven warning
32037         output.
32038         (compile--test-error-line): Check the compilation message type, if
32039         it's specified in the test data.
32041 2015-05-18  Paul Pogonyshev  <pogonyshev@gmail.com>
32043         Update Maven compilation-mode entry to distinguish warnings
32044         * lisp/progmodes/compile.el
32045         (compilation-error-regexp-alist-alist): Update Maven entry to
32046         distinguish warnings (bug#20556).
32048 2015-05-18  Przemysław Wojnowski  <esperanto@cumego.com>
32050         * test/automated/sgml-mode-tests.el: New file.
32052 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
32054         Improve handling of the first Git revision
32055         * lisp/vc/log-view.el (log-view-toggle-entry-display): When
32056         there's no next entry, delete until the end of the buffer.
32057         (log-view-end-of-defun-1): Stop at eob.
32058         * lisp/vc/vc-annotate.el
32059         (vc-annotate-show-diff-revision-at-line-internal): Don't give up
32060         when previous-revision is nil.
32061         * lisp/vc/vc-git.el (vc-git-expanded-log-entry): End the arguments
32062         with `--' to avoid ambiguity.
32063         (vc-git-annotate-extract-revision-at-line): Exclude `^' from the
32064         returned revision string.
32065         (vc-git-annotate-time): Expect `^' before the first revision.
32066         * lisp/vc/vc-git.el (vc-git-diff): Diff against an empty tree if
32067         REV1 is nil, and REV2 is not.
32068         * lisp/vc/vc.el: Update the description of the `diff' function.
32070 2015-05-18  Oleh Krehel  <ohwoeowho@gmail.com>
32072         Allow checkdoc to be called in batch
32073         * lisp/emacs-lisp/checkdoc.el (checkdoc-error): When `noninteractive'
32074         is non-nil, echo the error with `warn'.
32075         How it can be used in -batch:
32076         (with-current-buffer (find-file "checkdoc.el")
32077           (checkdoc-current-buffer t))
32079 2015-05-18  Glenn Morris  <rgm@gnu.org>
32081         * lisp/calendar/solar.el (solar-ecliptic-coordinates): Use float-pi.
32083 2015-05-17  Paul Eggert  <eggert@cs.ucla.edu>
32085         * admin/notes/unicode: New section "binary files".
32087         Change new etags test to use UTF-8 encoding
32088         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
32089         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
32090         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
32091         * test/etags/html-src/index.shtml, test/etags/html-src/software.html:
32092         * test/etags/html-src/softwarelibero.html:
32093         Switch to UTF-8 encoding.
32094         * test/etags/Makefile (SRCS): Adjust to switch to UTF-8.
32095         Remove Makefile, as it's too incestuous to have the test input
32096         include the build procedure.
32097         (UTF8_LOCALE, UTF_ENCODING): New macros.
32098         (LC_ALL): If possible, set to a UTF-8 encoding if not already UTF-8.
32099         (check): Skip if not UTF-8.
32100         (.PHONY): New rule.
32101         (FRC): Remove, as superseded by .PHONY.  All uses removed.
32102         (regexfile): Prefer printf to echo when outputting oddball chars.
32103         (.PRECIOUS): Remove, as these files are not built.
32105         Rename 'foo-gzipped' to 'foo.gz'
32106         * test/automated/data/decompress/foo.gz:
32107         Rename from test/automated/data/decompress/foo-gzipped,
32108         to make it easier for other tools to tell that it's compressed.
32109         * test/automated/zlib-tests.el (zlib--decompress):
32110         Adjust to renamed file.
32112 2015-05-17  Dmitry Gutov  <dgutov@yandex.ru>
32114         Set up default-directory
32115         * lisp/vc/vc-annotate.el (vc-annotate-mode-map): Remove duplicate
32116         binding for `v'.
32117         (vc-annotate-show-changeset-diff-revision-at-line): Set up an
32118         appropriate value for default-directory.
32120 2015-05-17  Samer Masterson  <samer@samertm.com>
32122         * lisp/eshell/em-term.el (eshell-term-sentinel):
32123         No-op by default, only kills term buffer if
32124         `eshell-destroy-buffer-when-process-dies' is non-nil.  (Bug#18108)
32125         (eshell-destroy-buffer-when-process-dies): New custom to preserve
32126         previous behavior.
32128         eshell: Introduce new buffer syntax
32129         The new buffer syntax '#<buffer-name>' is equivalent to '#<buffer
32130         buffer-name>'.  Remove `eshell-buffer-shorthand', as it is no longer
32131         needed (Bug#19391).
32132         * lisp/eshell/esh-io.el (eshell-buffer-shorthand): Remove.
32133         (eshell-get-target): Remove shorthand-specific code.
32134         * lisp/eshell/esh-arg.el (eshell-parse-special-reference): Parse
32135         '#<buffer-name>'.
32137 2015-04-26  Jan D  <jan.h.d@swipnet.se>
32139         Add PBM support for cairo
32140         * src/image.c (xcolor_to_argb32): New function.
32141         (get_spec_bg_or_alpha_as_argb): Call xcolor_to_argb32.
32142         (pbm_load, png_load_body, jpeg_load_body, gif_load): Only use
32143         XImagePtr if ! USE_CAIRO.
32144         (pbm_load): Add cairo support.
32146 2015-04-12  Jan D  <jan.h.d@swipnet.se>
32148         * src/xterm.c (x_free_cr_resources): Rename from x_prepare_for_xlibdraw.
32149         (x_cr_draw_frame, x_cr_export_frames, x_shift_glyphs_for_insert)
32150         (x_free_frame_resources): Rename x_prepare_for_xlibdraw to
32151         x_free_cr_resources.
32153         Handle specified bg in images.  Use generic libpng code for PNGs.
32154         * src/image.c (get_spec_bg_or_alpha_as_argb)
32155         (create_cairo_image_surface): New functions when USE_CAIRO.
32156         (xpm_load): Call the above functions.  Handle XPM without mask
32157         when USE_CAIRO.
32158         (png_load_body): Handle USE_CAIRO case.
32159         (png_load): Remove USE_CAIRO specific function, modify png_load_body
32160         instead.
32161         (jpeg_load_body): Call create_cairo_image_surface.
32162         (gif_load, svg_load_image): Handle specified background, call
32163         create_cairo_image_surface.
32164         * src/xterm.c (x_draw_image_glyph_string): Add missing USE_CAIRO.
32166 2015-04-11  Jan D  <jan.h.d@swipnet.se>
32168         Support GIF and TIFF with cairo
32169         * configure.ac: Allow jpeg with cairo.
32170         Allow tiff and gif with cairo.
32171         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
32172         (tiff_load): Create cairo image surface if USE_CAIRO.
32173         (gif_load): Ditto.
32175         Support JPEG with USE_CAIRO
32176         * configure.ac: Allow jpeg with cairo.
32177         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
32179 2015-04-05  Jan D  <jan.h.d@swipnet.se>
32181         Support RSVG and cairo
32182         * configure.ac: Allow rsvg with cairo.  Move back HAVE_RSVG.
32183         * src/dispextern.h (struct image): Add cr_data2 if cairo.
32184         * src/image.c: #undef COLOR_TABLE_SUPPORT when USE_CAIRO.
32185         (x_clear_image): Free cr_data and cr_data2 if set.
32186         (xpm_load): Assign data to cr_data2.
32187         (svg_load_image): Convert from GdkPixbuf to CAIRO_FORMAT_ARGB32.
32189 2015-04-03  Jan D  <jan.h.d@swipnet.se>
32191         Introduce limited Xpm support (32 bit ZPixmap) for Cairo
32192         * configure.ac (HAVE_RSVG): Move after cairo.
32193         (USE_CAIRO): Disable rsvg, don't disable Xpm.
32194         * src/image.c (prepare_image_for_display): Don't load if USE_CAIRO.
32195         (x_clear_image): If USE_CAIRO, also free possible img->ximg->obdata and
32196         don't return early.
32197         (ALLOC_XPM_COLORS): Don't define when USE_CAIRO.
32198         (xpm_load): Convert simple Xpms (32 bit ZPixmap) to CAIRO_FORMAT_ARGB32
32199         and create a surface.
32201         Tool tips for menus did not show any text.
32202         * src/xterm.c (x_update_begin): Don't create any surface for non-visible
32203         tip frames, the geometry may be wrong.
32205         Add CAIRO_CFLAGS to lwlib/Makefile.in
32206         * Makefile.in (CAIRO_CFLAGS): Add.
32208 2015-02-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
32210         * src/ftcrfont.c (ftcrfont_draw): Don't flush when drawing to screen.
32212 2015-02-16  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
32214         Draw outermost line using black relief and erase corners also for cairo.
32215         * src/xterm.c [USE_CAIRO]: Include math.h.
32216         (enum corners) [USE_CAIRO]: New enum.
32217         (x_erase_corners_for_relief) [USE_CAIRO]: New function.
32218         (x_draw_relief_rect) [USE_CAIRO]: Use it.  If box width is larger
32219         than 1, draw the outermost line using the black relief.
32221         * src/xterm.c (x_fill_trapezoid_for_relief):
32222         Remove unnecessary cairo_close_path.
32224 2015-02-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
32226         * src/xterm.c (x_draw_relief_rect) [USE_CAIRO]: Reset clipping.
32228         * src/xterm.c (x_draw_stretch_glyph_string):
32229         Call x_reset_clip_rectangles instead of XSetClipMask.
32231         Use int instead of unsigned int for width and height args.
32232         * src/xterm.c (x_cr_draw_image, x_fill_rectangle, x_draw_rectangle)
32233         (x_fill_trapezoid_for_relief): Use int instead of unsigned int for
32234         width and height args.
32236         Modernize k&r cairo-related function declarations.
32237         * src/gtkutil.c (xg_page_setup_dialog, xg_get_page_setup, draw_page)
32238         (xg_print_frames_dialog): Modernize k&r declarations.
32239         * src/xfns.c (Fx_export_frames, Fx_page_setup_dialog, Fx_get_page_setup)
32240         (Fx_print_frames_dialog): Modernize k&r declarations.
32241         * src/xterm.c (x_gc_get_ext_data, x_extension_initialize)
32242         (x_begin_cr_clip, x_end_cr_clip, x_set_cr_source_with_gc_foreground)
32243         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
32244         (x_cr_destroy_fringe_bitmap, x_cr_draw_frame, x_cr_accumulate_data)
32245         (x_cr_destroy, x_cr_export_frames, x_prepare_for_xlibdraw)
32246         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
32247         (x_draw_rectangle, x_clear_window, x_fill_trapezoid_for_relief)
32248         (x_clear_area): Modernize k&r declarations.
32250         Implement wave-style variant of underlining for cairo.
32251         * src/xterm.c (x_draw_horizontal_wave) [USE_CAIRO]: New function.
32252         (x_draw_underwave) [USE_CAIRO]: Use it.
32254         * src/xterm.c (x_draw_window_divider): Use x_fill_rectangle
32255         instead of XFillRectangle.
32257 2015-02-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
32259         Fix fringe bitmap initialization for cairo
32260         * src/fringe.c (init_fringe_bitmap) [USE_CAIRO]: Adjust bitmap
32261         data for cairo image surface.
32262         * src/xterm.c (x_cr_define_fringe_bitmap):
32263         Call cairo_surface_mark_dirty.
32265 2015-02-11  Jan D  <jan.h.d@swipnet.se>
32267         Add cairo drawing
32268         * configure.ac (with-cairo): New option.
32269         (USE_CAIRO): Default to yes for Gtk+ 3.  Add code to test for cairo,
32270         set CAIRO_CFLAGS, CAIRO_LIBS.  Add ftcrfonto to FONT_OBJ if cairo.
32271         Output "Does Emacs use cairo?".
32272         * lisp/version.el (emacs-version): Add cairo version.
32273         * src/Makefile.in (CAIRO_CFLAGS, CAIRO_LIBS): New variables.
32274         (FONT_OBJ): Add comment about ftcrfont.
32275         (ALL_CFLAGS): Add CAIRO_CFLAGS.
32276         (LIBES): Add CAIRO_LIBS.
32277         * src/dispextern.h (struct image): Add cr_data for cairo.
32278         (x_cr_init_fringe): Declare.
32279         * src/font.c (syms_of_font): Call syms_of_ftcrfont for cairo.
32280         * src/font.h (ftcrfont_driver, syms_of_ftcrfont): Declare
32281         * src/fringe.c (x_cr_init_fringe): New function name that shares code
32282         with w32_init_fringe.
32283         * src/ftcrfont.c: New font driver for cairo, based on the ftfont driver.
32284         * src/ftfont.c (ftfont_info_size); New global variable.
32285         (ftfont_open2): New extern function almost the same as old ftfont_open,
32286         but takes the font_object as argument.
32287         (ftfont_open): Build font object and call ftfont_open2.
32288         * src/ftfont.h (ftfont_open2, ftfont_info_size): Declare.
32289         * src/gtkutil.c (xg_clear_under_internal_border)
32290         (xg_update_scrollbar_pos, xg_update_horizontal_scrollbar_pos):
32291         Only queue_draw if not cairo.  Change args to x_clear_area.
32292         (xg_get_font): Use Qftcr when using cairo, Qxft otherwise.
32293         (xg_page_setup_dialog, xg_get_page_setup, draw_page)
32294         (xg_print_frames_dialog): New functions for printing.
32295         * src/gtkutil.h (xg_page_setup_dialog, xg_get_page_setup)
32296         (xg_print_frames_dialog): Declare.
32297         * src/image.c: Add defined (USE_CAIRO) for PNG.
32298         Add !defined USE_CAIRO for W32 PNG code.
32299         (x_clear_image): If cairo, destroy the surface in cr_data.
32300         (png_load): Add new cairo compatible implementation.
32301         (lookup_image_type): Add defined (USE_CAIRO) for define png_type.
32302         * src/xfns.c: New section Printing.
32303         (x-export-frames, x-page-setup-dialog, x-get-page-setup)
32304         (x-print-frames-dialog): New printing functions.
32305         (Fx_create_frame, x_create_tip_frame): Register ftcrfont if cairo.
32306         (syms_of_xfns): Defsym Qorientation, Qtop_margin, Qbottom_margin,
32307         Qportrait, Qlandscape, Qreverse_portrait, Qreverse_landscape).
32308         (syms_of_xfns): Provide cairo and defvar cairo-version-string.
32309         defsubr Sx_page_setup_dialog, Sx_get_page_setup, Sx_print_frames_dialog.
32310         * src/xterm.c (x_clear_area1, x_prepare_for_xlibdraw)
32311         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
32312         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
32313         (x_gc_get_ext_data, x_extension_initialize, x_cr_accumulate_data):
32314         Declare.
32315         (FRAME_CR_CONTEXT, FRAME_CR_SURFACE): New macros.
32316         (max_fringe_bmp, fringe_bmp): New variables.
32317         (x_gc_get_ext_data, x_extension_initialize)
32318         (x_cr_destroy_surface, x_begin_cr_clip, x_end_cr_clip)
32319         (x_set_cr_source_with_gc_foreground)
32320         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
32321         (x_cr_destroy_fringe_bitmap, x_cr_draw_image, x_cr_draw_frame)
32322         (x_cr_accumulate_data, x_cr_destroy, x_cr_export_frames)
32323         (x_prepare_for_xlibdraw, x_set_clip_rectangles)
32324         (x_reset_clip_rectangles, x_fill_rectangle, x_draw_rectangle)
32325         (x_clear_window, x_fill_trapezoid_for_relief): New functions.
32326         (x_update_begin): Create cairo surface if needed.
32327         (x_draw_vertical_window_border): Call x_fill_rectangle for cairo.
32328         (x_update_end): Paint cairo drawing surface to xlib surface.
32329         (x_clear_under_internal_border, x_after_update_window_line): Adjust
32330         arguments to x_clear_area.
32331         (x_draw_fringe_bitmap): Call x_fill_rectangle.  Get GC values and
32332         call x_cr_draw_image for cairo.  Call x_reset_clip_rectangles instead
32333         of XSetClipMask.
32334         (x_set_glyph_string_clipping)
32335         (x_set_glyph_string_clipping_exactly): Use x_set_clip_rectangles
32336         instead of XSetClipRectangles.
32337         (x_clear_glyph_string_rect, x_draw_glyph_string_background):
32338         Use x_fill_rectangle instead of XFillRectangle.
32339         (x_draw_glyph_string_foreground)
32340         (x_draw_composite_glyph_string_foreground)
32341         (x_draw_glyphless_glyph_string_foreground): Use x_draw_rectangle
32342         instead of XDrawRectangle.
32343         (x_draw_relief_rect): Add code for USE_CAIRO.
32344         Call x_reset_clip_rectangles instead of XSetClipMask.
32345         (x_draw_box_rect): x_set_clip_rectangles instead of XSetClipRectangles,
32346         x_fill_rectangle instead of XFillRectangle, x_reset_clip_rectangles
32347         instead of XSetClipMask.
32348         (x_draw_image_foreground, x_draw_image_foreground_1):
32349         x_draw_rectangle instead of XDrawRectangle.
32350         (x_draw_glyph_string_bg_rect): x_fill_rectangle instead of
32351         XFillRectangle.
32352         (x_draw_image_glyph_string): If img has cr_data, use it as
32353         a cairo surface.
32354         (x_draw_stretch_glyph_string): x_set_clip_rectangles instead of
32355         XSetClipRectangles, x_fill_rectangle instead of XFillRectangle.
32356         (x_draw_glyph_string): x_fill_rectangle instead of XFillRectangle.,
32357         x_reset_clip_rectangles instead of XSetClipMask.
32358         (x_shift_glyphs_for_insert): Call x_prepare_for_xlibdraw.
32359         (x_clear_area1): New function that calls XClearArea.
32360         (x_clear_area): Takes frame as parameter, calls x_clear_area1 for
32361         non-cairo.
32362         (x_clear_frame): x_clear_window instead of XClearWindow.
32363         (x_scroll_run): Set frame garbaged if cairo.
32364         (XTmouse_position): Initialize *part to 0.
32365         (x_scroll_bar_create): Adjust arguments to x_clear_area.
32366         (x_scroll_bar_set_handle): x_clear_area1 instead of x_clear_area,
32367         x_fill_rectangle instead of XFillRectangle.
32368         (XTset_vertical_scroll_bar, XTset_horizontal_scroll_bar): Adjust
32369         arguments to x_clear_area.
32370         (x_scroll_bar_expose): x_draw_rectangle instead of XDrawRectangle.
32371         (handle_one_xevent): Adjust arguments to x_clear_area.
32372         Destroy cairo surface for frame if ConfigureNotify.
32373         (x_clip_to_row): x_set_clip_rectangles instead of XSetClipRectangles.
32374         (x_draw_hollow_cursor): x_draw_rectangle instead of XDrawRectangle,
32375         x_reset_clip_rectangles instead of XSetClipMask.
32376         (x_draw_bar_cursor): x_fill_rectangle instead of XFillRectangle,
32377         x_reset_clip_rectangles instead of XSetClipMask.
32378         (x_clear_frame_area): Adjust arguments to x_clear_area.
32379         (x_free_frame_resources): Call x_prepare_for_xlibdraw.
32380         (x_term_init): Call x_extension_initialize if cairo.
32381         (x_redisplay_interface): Add x_cr_define_fringe_bitmap,
32382         x_cr_destroy_fringe_bitmap for cairo.
32383         (x_initialize): Call x_cr_init_fringe for cairo.
32384         * src/xterm.h: Add include of cairo header files.
32385         (x_bitmap_record): Add img if cairo.
32386         (x_gc_ext_data): New struct for cairo.
32387         (x_display_info): Add ext_codes for cairo.
32388         (x_output): Add cr_context and cr_surface for cairo.
32389         (x_clear_area): Change arguments from Display*/Window to frame pointer.
32390         (x_query_color, x_begin_cr_clip, x_end_cr_clip)
32391         (x_set_cr_source_with_gc_foreground, x_set_cr_source_with_gc_background)
32392         (x_cr_draw_frame, x_cr_export_frames): Declare.
32394 2015-05-17  Johan Bockgård  <bojohan@gnu.org>
32396         Fix integer-valued `mouse-highlight' (Bug#20590)
32397         * src/xterm.c (handle_one_xevent) [USE_GTK]: Fix ifdef scope.
32399 2015-05-17  Eli Zaretskii  <eliz@gnu.org>
32401         MS-Windows followup for ASCIIfication of curved quotes
32402         * lisp/term/w32console.el (terminal-init-w32console): Repeat the
32403         test for curved quotes being displayable, after switching the
32404         terminal encoding.  (Bug#20545)
32406 2015-05-17  Jan D  <jan.h.d@swipnet.se>
32408         Add comment that x_shift_glyphs_for_insert is never called
32409         * src/xterm.c (x_shift_glyphs_for_insert, x_redisplay_interface):
32410         Add comment that this function is never called.
32412 2015-05-16  Glenn Morris  <rgm@gnu.org>
32414         * src/lisp.mk: Remove from repository and generate at build-time.
32415         * src/Makefile.in (lisp.mk): New rule to generate from loadup.el.
32416         (shortlisp_filter): New variable.
32417         (emacs$(EXEEXT), $(etc)/DOC): Depend on lisp.mk.
32418         (distclean): Remove lisp.mk.
32419         * Makefile.in ($(MAKEFILE_NAME)): No longer depend on src/lisp.mk.
32420         * lisp/loadup.el: Tweak layout to make it easier to parse.
32421         * make-dist: Do not distribute src/lisp.mk.
32423 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
32425         Display shorter dates in Git annotate output
32426         * lisp/vc/vc-git.el (vc-git-annotate-command): Use the short date
32427         format (when not overridden with vc-git-annotate-switches).
32428         (vc-git-annotate-time): Support the short format, as well as ISO
32429         8601 that has been used until now (bug#5428).
32431 2015-05-16  Paul Eggert  <eggert@cs.ucla.edu>
32433         ASCIIfy curved quotes on displays lacking them
32434         * lisp/international/mule-cmds.el (set-locale-environment):
32435         If curved quotes don't work, display straight ASCII approximations
32436         (Bug#20545).
32438 2015-05-16  Glenn Morris  <rgm@gnu.org>
32440         Small src/Makefile simplification
32441         * src/lisp.mk (shortlisp): Rename from lisp, remove $lispsource prefix.
32442         * src/Makefile.in (lisp): Derive from shortlisp.
32443         ($(etc)/DOC): Use $shortlisp rather than parsing lisp.mk.
32445 2015-05-16  Eli Zaretskii  <eliz@gnu.org>
32447         * lisp/help-mode.el (help-go-forward): Doc fix.
32448         (Bug#20577)
32450         * doc/lispref/debugging.texi (Profiling): Improve indexing.
32451         (Bug#20576)
32453 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
32455         * lisp/vc/vc-git.el (vc-git-resolve-when-done): Use `unless' to
32456         have one fewer `not'.
32458         * lisp/vc/vc-git.el (vc-git-diff-switches)
32459         (vc-git-annotate-switches, vc-git-resolve-conflicts)
32460         (vc-git-program, vc-git-root-log-format): Remove the redundant
32461         :group declarations.
32463 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
32465         Removes the predicate from lisp-complete-symbol (Bug#20456)
32466         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol): Do not use predicate
32467         and remove it from the docstring.
32469 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
32471         Add new option vc-git-resolve-conflicts
32472         * lisp/vc/vc-git.el (vc-git-resolve-conflicts): New variable.
32473         (vc-git-find-file-hook): Add to after-save-hook only when the
32474         above is non-nil.
32475         (vc-git-resolve-when-done): Update to honor the new variable.
32476         (Bug#20292)
32478 2015-05-16  Artur Malabarba  <bruce.connor.am@gmail.com>
32480         * lisp/emacs-lisp/tabulated-list.el: Don't error on null header-string.
32481         (tabulated-list-init-header): Document new behavior.
32482         (tabulated-list-print-fake-header): Do nothing if
32483         `tabulated-list--header-string' is nil.
32484         (tabulated-list--header-string): Add a docstring.
32485         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
32486         * etc/NEWS: Document it.
32488 2015-05-15  Leo Liu  <sdl.web@gmail.com>
32490         Revert "Fix cps--gensym"
32491         * lisp/emacs-lisp/generator.el (cps--gensym): Revert commit
32492         fbda511ab8069d0115eafca411a43353b85431b1 on 2015-05-14.
32494 2015-05-15  Glenn Morris  <rgm@gnu.org>
32496         Replace AC_SUBST_FILE in configure with include in Makefiles
32497         * configure.ac (DEPDIR, MKDEPDIR, deps_frag, lwlib_deps_frag)
32498         (oldxmenu_deps_frag, lisp_frag): Remove output variables/files.
32499         (AUTO_DEPEND): New output variable.
32500         * lwlib/Makefile.in (AUTO_DEPEND): New, set by configure.
32501         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
32502         (lwlib_deps_frag): Replace by conditional include.
32503         * lwlib/autodeps.mk: Remove file.
32504         * oldXMenu/Makefile.in (AUTO_DEPEND): New, set by configure.
32505         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
32506         (oldxmenu_deps_frag): Replace by conditional include.
32507         * oldXMenu/autodeps.mk: Remove file.
32508         * src/Makefile.in (AUTO_DEPEND): New, set by configure.
32509         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
32510         (lisp_frag): Replace by an include.
32511         (deps_frag): Replace by conditional include.
32512         * src/autodeps.mk: Remove file.
32514         Tweak japanese.el's loading of dependencies
32515         * lisp/loadup.el: Explicitly load cp51932 and eucjp-ms.
32516         * lisp/language/japanese.el: Use require rather than load.
32517         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
32518         Provide a feature.
32519         * admin/charsets/eucjp-ms.awk, admin/charsets/cp51932.awk:
32520         Provide a feature in the generated file.
32522 2015-05-15  Jan D  <jan.h.d@swipnet.se>
32524         Fix NS warnings
32525         * src/nsmenu.m (ns_popup_dialog)
32526         * src/nsimage.m (initFromXBM:width:height:fg:bg:)
32527         * src/nsfns.m (Fx_create_frame): Remove unused variables.
32528         (Fns_read_file_name): Initialize fname, remove ret.
32529         * src/nsterm.m (ns_draw_window_cursor): Handle DEFAULT_CURSOR in switch.
32530         (ns_get_color, ns_set_horizontal_scroll_bar, keyDown):
32531         Remove unused variable.
32532         (init): Add parantesis in if.
32533         (ns_create_terminal): Assign set_horizontal_scroll_bar_hook.
32535 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
32537         Fix a enum conversion warning in macfont.m
32538         * src/macfont.h (CharacterCollection): Typedef to NSCharacterCollection.
32539         (MAC_CHARACTER_COLLECTION_*): Use the NS variants.
32541 2015-05-15  Eli Zaretskii  <eliz@gnu.org>
32543         * lisp/textmodes/ispell.el (ispell-aspell-find-dictionary):
32544         Support Aspell dictionaries with names like "de-alt".  (Bug#20581)
32546 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
32548         * lisp/cus-start.el: Add ns-confirm-quit.
32550         Fix warnings on OSX 10.10
32551         * src/nsfns.m (MODAL_OK_RESPONSE): New define for different
32552         OSX versions.
32553         (Fns_read_file_name): Check against MODAL_OK_RESPONSE.
32554         (compute_tip_xy): Use convertRectToScreen for OSX >= 10.7
32555         * src/nsmenu.m (initWithContentRect:styleMask:backing:defer:)
32556         * src/nsimage.m (allocInitFromFile, setPixmapData): Only call
32557         setScalesWhenResized for OSX < 10.6.
32558         * src/nsterm.h (EmacsScroller): Declare scrollerWidth.
32559         * src/nsterm.m (ns_copy_bits): New function that does not use
32560         deprecated NSCopyBits.
32561         (ns_scroll_run, ns_shift_glyphs_for_insert): Call ns_copy_bits.
32562         (runAlertPanel): New function.
32563         (applicationShouldTerminate:): Call runAlertPanel.
32564         (initFrameFromEmacs, toggleFullScreen:): Only call
32565         useOptimizedDrawing for OSX < 10.10.
32566         (initFrameFromEmacs:): Only call allocateGState for OSX < 10.10.
32567         (windowWillUseStandardFrame:defaultFrame:): Cast arg to abs to int.
32568         (draggingEntered:): Returns NSDragOperation.
32569         (scrollerWidth): Use scrollerWidthForControlSize for OSX >= 10.7.
32571 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
32573         * lisp/emacs-lisp/package.el: Don't ensure-init during startup.
32574         (package--init-file-ensured): New variable.
32575         (package-initialize, package--ensure-init-file): Use it.
32577 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
32579         Honor :fore/background for XBM on NS (Bug#14969)
32580         * src/nsterm.h (EmacsImage): Add xbm_fg, remove initFromSkipXBM,
32581         initFromXBM takes bg, fg args, remove flip arg.
32582         (ns_image_from_XBM): Add bg, fg args.
32583         * src/image.c (x_create_bitmap_from_data)
32584         (Create_Pixmap_From_Bitmap_Data): ns_image_from_XBM takes bg, fg args.
32585         * src/nsimage.m (ns_image_from_XBM): Add fg, bg args, pass to
32586         initFromXBM.  Remove flip arg.
32587         (initFromSkipXBM): Move code to initFromXBM.
32588         (initFromXBM): Actually set fg and bg, instead of playing alpha games.
32589         Use fg, bg from args (Bug#14969).  Remove if (length) section, was
32590         always false.
32591         Remove bit flipping (bitPat, swt), generated incorrect images when
32592         width/height wasn't a multiple of 8.
32593         (setXBMColor:): Modify planes by comparing to saved xbm_fg.
32594         * src/nsterm.m (ns_draw_fringe_bitmap): initFromXBM takes fg, bg args,
32595         remove flip arg.
32597 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
32599         * lisp/emacs-lisp/package.el: Be more careful with the init file.
32600         (package--ensure-init-file): Check that user-init-file is set,
32601         exists, is readable, and is writable.  (Bug#20584)
32602         Also expand the docstring.
32604 2015-05-14  Wilson Snyder  <wsnyder@wsnyder.org>
32606         Sync with upstream verilog-mode revision 6232468
32607         * lisp/progmodes/verilog-mode.el
32608         (verilog-font-lock-grouping-keywords-face)
32609         (verilog-highlight-grouping-keywords): Fix use of face when
32610         `verilog-highlight-grouping-keywords' set.  Reported by Jeff Pompa.
32611         (verilog-auto-reset): Fix AUTORESET to ignore member resets if
32612         parent is reset, bug906.  Reported by Ken Schmidt.
32613         (verilog-auto-inout-module): Add fourth regexp argument to
32614         AUTOINOUTMODULE and AUTOINOUTCOMP for signals to not match, bug856.
32615         Reported by John Tillema.
32616         (verilog-auto-inst-port): Fix AUTOINST interfaces to not show
32617         modport if signal attachment is itself a modport.  Reported by
32618         Matthew Lovell.
32619         (verilog-auto-reset, verilog-auto-sense-sigs): Fix AUTORESET with
32620         always_comb and always_latch, bug844.  Reported by Greg Hilton.
32621         (verilog-at-constraint-p, verilog-beg-of-statement-1): Fix hanging
32622         with many curly-bracket pairs, bug663.
32623         (verilog-set-auto-endcomments): Fix end comments for functions of
32624         type void, etc.  Reported by Alex Reed.
32625         (verilog-do-indent): Fix electric tab deleting form-feeds.  Note
32626         caused by indent-line-to deleting tabls pre 24.5.
32627         (verilog-nameable-item-re): Fix nameable items that can have an
32628         end-identifier to include endchecker, endgroup, endprogram,
32629         endproperty, and endsequence.  Reported by Alex Reed.
32630         (verilog-label-be): When auto-commenting a buffer, consider
32631         auto-comments on all known keywords (not just a subset thereof).
32632         Reported by Alex Reed.
32633         (verilog-auto-end-comment-lines-re)
32634         (verilog-end-block-ordered-re, verilog-set-auto-endcomments):
32635         Automatically comment property/endproperty blocks to match other
32636         similar blocks like sequence/endsequence, function/endfunction, etc.
32637         Reported by Alex Reed.
32638         (verilog-set-auto-endcomments): Detect the function- or task-name
32639         when auto-commenting blocks that lack an explicit portlist.
32640         Reported by Alex Reed.
32641         (verilog-auto, verilog-auto-insert-last): Add AUTOINSERTLAST to
32642         allow post-AUTO user fixups, bug826.  Reported by Dennis Muhlestein.
32643         (verilog-no-indent-begin-re): When `verilog-indent-begin-after-if'
32644         is nil, fix indenting initial/final to match always statements,
32645         bug825.  Reported by Tim Clapp.
32646         (verilog-extended-complete-re): Fix indentation of DPI-C imports
32647         with c_identifiers, and DPI-C imports, bug557.  Reported by ZeDong
32648         Mao and Jason Forkey.
32649         (verilog-read-decls): Fix parsing typed interfaces.  Fix
32650         AUTOINOUTMODPORT missing types.  Reported by Stephan Bourduas.
32651         Fix localparam not being ignored in AUTOINSTPARAM,
32652         bug889.  Reported by Shannon Hill.
32653         (verilog-auto-output-every): Add regexp to AUTOOUTPUTEVERY,
32654         bug793.  Reported by Pierre-David Pfister.
32655         (verilog-auto-arg-format, verilog-auto-arg-ports):
32656         Add verilog-auto-arg-format to support newlines in AUTOARG.
32657         Reported by Jie Xiao.
32658         (verilog-batch-execute-func): Do not batch re-auto files loaded by
32659         Local Variables.  Fix printing "no changes to be saved" with
32660         verilog-batch.  Reported by Dan Dever.
32661         (verilog-auto-inout-module): Fix AUTOINOUTMODULE not inserting
32662         interface-only modules, bug721.  Reported by Dean Hoyt.
32663         Author: Alex Reed <acreed4@gmail.com>
32664         * lisp/progmodes/verilog-mode.el (verilog-beg-of-statement):
32665         Don't treat '<keyword>:<identifier>' as the start of a labeled
32666         statement, bug905.  Reported by Enzo Chi.
32667         (verilog-directive-re, verilog-compiler-directives)
32668         (verilog-keywords): Match full set of IEEE 2012-1800 compiler
32669         directives (plus some extras) when determining indentation, bug
32670         901.  Reported by Bernd Beuster.
32671         (verilog-at-constraint-p): Fix indentation of coverpoint bins if
32672         iff expression doesn't start with word-character, bug900.
32673         (verilog-optional-signed-range-re, verilog-optional-signed-re):
32674         Fix incorrect indentation/alignment of unsigned declarations,
32675         bug897.
32676         (verilog-looking-back, verilog-in-attribute-p): Fix labeling of
32677         always constructs, bug895.
32678         (verilog-calc-1): Fix verilog-mode constraint indentation, bug324.
32679         Reported by Eric Mastromarchi.
32680         (verilog-beg-of-statement): Fix indenting for some forms of
32681         constraintsm bug433.  Reported by Brad Parker.  Fix indentation of
32682         continued assignment incorrect if first line ends with ']', bug437.
32683         Reported by Dan Dever.  Fix indention of cover inside an
32684         ifdef, bug 862.  Reported by Bernd Beuster.  Fix labeling do-while
32685         blocks, bug842.
32686         (verilog-preprocessor-re): Fix fork/end UNMATCHED warning, bug859.
32687         Reported by Kaushal Modi.
32688         (verilog-set-auto-endcomments): Fix endlabel end comments, bug888.
32689         (verilog-backward-token): Fix indenting sensitivity lists with
32690         named events, bug840.  Reed.
32691         (verilog-no-indent-begin-re): Fix `verilog-indent-begin-after-if'
32692         nil not honoring 'forever', 'foreach', and 'do' keywords.
32694 2015-05-14  Paul Eggert  <eggert@cs.ucla.edu>
32696         Check for invalid GTK+ monitor scales
32697         * src/gtkutil.c (xg_get_gdk_scale): Return 1 for invalid scales,
32698         INT_MAX for too-large scales.  All callers changed to assume the
32699         result is valid (Bug#20432).
32700         (xg_frame_set_char_size, xg_update_scrollbar_pos):
32701         Calculate scale only if needed.
32702         Show ASCII approximations instead.
32704 2015-05-14  Eli Zaretskii  <eliz@gnu.org>
32706         Fix daemon crashes when linum-mode is turned on early on
32707         * src/window.c (Fwindow_end): Don't try calling display engine
32708         functions on initial-frame frame.  (Bug#20565)
32710         Fix selective diff browsing in Ediff
32711         * lisp/vc/ediff-util.el (ediff-focus-on-regexp-matches):
32712         Go to the beginning of the region before searching for the
32713         ediff-regexp-focus-* regexps.  (Bug#20568)
32715 2015-05-14  Jan D  <jan.h.d@swipnet.se>
32717         Fixes bug#20142
32718         * src/gtkutil.c (delete_cb): Don't send delete event here, it does
32719         arrive in the main loop, even for Gtk 3 (Bug#20142).
32721         Don't access display after i/o error (Bug#19147).
32722         * src/xterm.c (x_connection_closed): Add third arg ioerror.
32723         If ioerror, set display to 0 (Bug#19147).
32724         (x_error_quitter): Call x_connection_closed with third arg false.
32725         (x_io_error_quitter): Call x_connection_closed with third arg true.
32727         Handle GTK_SCALE, fixes Bug#20432.
32728         * src/gtkutil.c (xg_get_gdk_scale): New function.
32729         (xg_frame_set_char_size)
32730         (x_wm_set_size_hint, xg_get_default_scrollbar_width)
32731         (xg_get_default_scrollbar_height)
32732         (xg_update_horizontal_scrollbar_pos): Take GTK_SCALE in to account
32733         when setting sizes (Bug#20432).
32735 2015-05-13  Leo Liu  <sdl.web@gmail.com>
32737         * lisp/emacs-lisp/generator.el (cps--gensym): Fix.
32739 2015-05-13  Glenn Morris  <rgm@gnu.org>
32741         Fix bootstrap (void function cl-member).
32742         * lisp/emacs-lisp/cl-lib.el: Load cl-seq if no cl-loaddefs file.
32743         * lisp/emacs-lisp/cl-seq.el: Provide a feature.
32745 2015-05-13  Stefan Monnier  <monnier@iro.umontreal.ca>
32747         * lisp/loadup.el ("emacs-lisp/cl-generic"): Preload
32748         * src/lisp.mk (lisp): Add emacs-lisp/cl-generic.elc.
32749         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method):
32750         Avoid defalias for closures which are not immutable.
32751         (cl--generic-prefill-dispatchers): New macro.  Use it to prefill
32752         the dispatchers table with various entries.
32753         * lisp/emacs-lisp/ert.el (emacs-lisp-mode-hook):
32754         * lisp/emacs-lisp/seq.el (emacs-lisp-mode-hook): Use add-hook.
32756 2015-05-13  Eli Zaretskii  <eliz@gnu.org>
32758         Improve tagging of C bindings in DEFVAR_*
32759         * src/Makefile.in (TAGS): Add --regex options to tag the C binding
32760         from DEFVAR_*.
32762 2015-05-13  Paul Eggert  <eggert@cs.ucla.edu>
32764         * src/editfns.c (Fformat): Fix use-after-free bug (Bug#20548).
32766 2015-05-12  Glenn Morris  <rgm@gnu.org>
32768         * lisp/progmodes/tcl.el (tcl-filter):
32769         Handle comint-prompt-read-only like gud.el does.  (Bug#20549)
32771         Add basic VC push support
32772         * lisp/vc/vc.el (vc-push): New autoloaded command.
32773         * lisp/vc/vc-hooks.el (vc-prefix-map, vc-menu-map): Add vc-push.
32774         * lisp/vc/vc-bzr.el (vc-bzr--pushpull): New, factored from vc-bzr-pull.
32775         (vc-bzr-pull): Reimplement using vc-bzr--pushpull.
32776         (vc-bzr-push): New.
32777         * lisp/vc/vc-git.el (vc-git--pushpull): New, factored from vc-git-pull.
32778         (vc-git-pull): Reimplement using vc-git--pushpull.
32779         (vc-git-push): New.
32780         * lisp/vc/vc-hg.el (vc-hg--pushpull): New, factored from vc-hg-pull.
32781         (vc-hg-pull, vc-hg-push): Reimplement using vc-hg--pushpull.
32782         * doc/emacs/maintaining.texi (Pulling / Pushing):
32783         Rename from "VC Pull".  Mention pushing.
32784         (VC With A Merging VCS, VC Change Log): Update xrefs.
32785         (Branches): Update menu.
32786         * doc/emacs/emacs.texi: Update menu.
32787         * etc/NEWS: Mention this.
32789 2015-05-12  Nicolas Petton  <nicolas@petton.fr>
32791         Improve the seq pcase pattern and the `seq-let' macro
32792         * lisp/emacs-lisp/seq.el: The pcase pattern now matches only if the
32793         object is a sequence, and binds each element of ARGS to the
32794         corresponding element of the sequence.
32796 2015-05-12  Eli Zaretskii  <eliz@gnu.org>
32798         Fix tags created from DEFVAR_* declarations in C
32799         * src/Makefile.in (TAGS): Improve the --regex argument to etags,
32800         to make tags extracted from DEFVAR_* declarations more accurate.
32802         Add a test suite for etags
32803         * test/etags/: New test suite, adapted from
32804         http://fly.isti.cnr.it/pub/software/unix/etags-regression-test.tar.bz2,
32805         whose original author is Francesco Potortì <pot@gnu.org>.
32807         Fix tagging of symbols in C enumerations
32808         * lib-src/etags.c (consider_token): Don't tag symbols in
32809         expressions that assign values to enum constants.  See
32810         https://lists.gnu.org/r/emacs-devel/2015-05/msg00291.html
32811         for details.
32812         (C_entries): Reset fvdef to fvnone after processing a preprocessor
32813         conditional and after a comma outside of parentheses.
32815 2015-05-12  Glenn Morris  <rgm@gnu.org>
32817         * lisp/url/url-handlers.el (url-file-name-completion)
32818         (url-file-name-all-completions): Silence compiler.
32820         * lisp/emacs-lisp/chart.el (chart-axis-draw): Replace obsolete alias.
32822         * lisp/play/dunnet.el (dun-dos-boot-msg): Fix time.  (Bug#20554)
32824 2015-05-12  Stefan Monnier  <monnier@iro.umontreal.ca>
32826         * lisp/emacs-lisp/cl-generic.el: Add dispatch on &context arguments
32827         (cl--generic-mandatory-args): Remove.
32828         (cl--generic-split-args): New function.
32829         (cl-generic-define, cl--generic-lambda): Use it.
32830         (cl-generic-define-method): Use it as well, and add support for
32831         context args.
32832         (cl--generic-get-dispatcher): Handle &context dispatch.
32833         (cl--generic-cache-miss): `dispatch-arg' can now be a
32834         context expression.
32835         (cl--generic-dispatchers): Pre-fill.
32836         * test/automated/cl-generic-tests.el (sm-generic-test-12-context):
32837         New test.
32839 2015-05-11  Glenn Morris  <rgm@gnu.org>
32841         * make-dist: Abort if "make ChangeLog" fails.  Add "--no-changelog".
32843 2015-05-11  Stefan Monnier  <monnier@iro.umontreal.ca>
32845         * lisp/term/xterm.el: Fix xterm-paste handling for rxvt
32846         * lisp/term/rxvt.el: Require term/xterm.
32847         (rxvt-function-map): Use xterm-rxvt-function-map.
32848         (rxvt-standard-colors): Move before first use.
32849         (terminal-init-rxvt): Use xterm--push-map and
32850         xterm-register-default-colors.
32851         (rxvt-rgb-convert-to-16bit, rxvt-register-default-colors): Remove.
32852         * lisp/term/xterm.el (xterm-rxvt-function-map): New var.
32853         Move shared bindings between rxvt and xterm to it.
32854         (xterm-function-map): Use it.  Move the xterm-paste binding to
32855         xterm-rxvt-function-map (bug#20444).
32856         (xterm-standard-colors): Move before first use.
32857         (xterm--push-map): New function.
32858         (xterm-register-default-colors): Take standard colors as argument.
32859         (terminal-init-xterm): Use it.  Adjust call to
32860         xterm-register-default-colors.
32862 2015-05-11  Glenn Morris  <rgm@gnu.org>
32864         * lisp/term/x-win.el: Quieten --without-x compilation.
32865         (x-own-selection-internal, x-disown-selection-internal)
32866         (x-selection-owner-p, x-selection-exists-p, x-get-selection-internal):
32867         Declare.
32869         * Makefile.in (emacslog): Remove srcdir.
32870         (ChangeLog): Update for the above.
32872 2015-05-10  Fabián Ezequiel Gallina  <fgallina@gnu.org>
32874         python.el: better limit for looking-back calls
32875         * lisp/progmodes/python.el (python-shell-accept-process-output):
32876         Use last comint prompt start as limit for looking-back.
32878 2015-05-10  Stefan Monnier  <monnier@iro.umontreal.ca>
32880         CEDET (srecode-insert-fcn): Fix use of oref on a class
32881         * lisp/cedet/srecode/insert.el (srecode-insert-fcn): Fix use of oref
32882         on a class.  Reported by Pierre Lorenzon.
32883         (srecode-template-inserter-point): Remove declaration.
32885         CEDET (srecode-create-dictionary): Avoid obsolete object name
32886         * lisp/cedet/srecode/dictionary.el (srecode-create-dictionary):
32887         Don't use a symbol as an object name.  Reported by Pierre Lorenzon.
32889 2015-05-10  Paul Eggert  <eggert@cs.ucla.edu>
32891         C-x 8 shorthands for curved quotes, Euro, etc.
32892         Although C-x 8 lets you insert arbitrary Unicode characters,
32893         it's awkward to use this to insert commonly used symbols such as curved
32894         quotes, the Euro symbol, etc.  This patch adds simpler sequences for
32895         characters commonly found in English text and in basic math.
32896         For example, assuming the Alt key works on your keyboard and iso-transl
32897         is loaded, one can now type "A-[" instead of "A-RET LEFT SIN TAB RET"
32898         to get the character "‘" (U+2018 LEFT SINGLE QUOTATION MARK).
32899         (Bug#20499)
32900         * doc/emacs/mule.texi (Unibyte Mode):
32901         A few other printing characters now work too.
32902         * etc/NEWS: Document this.
32903         * lisp/international/iso-transl.el (iso-transl-char-map):
32904         Also support the following characters:
32905         ‐ ‑ ‒ – — ― ‘ ’ “ ” † ‡ • ′ ″ € № ← → ↔ − ≈ ≠ ≤ ≥
32907 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
32909         Add xref-find-regexp
32910         * lisp/progmodes/xref.el (xref-find-function): Describe the
32911         `matches' action.
32912         (xref-find-regexp): New command, using it.
32913         (xref-collect-references): Rename to xref-collect-matches.
32914         (xref--collect-reference): Rename to xref--collect-match.
32915         (xref-collect-matches, xref--collect-match): Accept new argument,
32916         KIND.  Update accordingly.
32917         (xref--regexp-to-extended): New function.
32918         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Support the
32919         `matches' action.
32920         (elisp--xref-find-matches): Accept new argument.  Resolve a FIXME.
32921         * lisp/progmodes/etags.el (etags-xref-find):
32922         Support the `matches' action.
32923         (etags--xref-find-matches): New function.
32925 2015-05-10  Glenn Morris  <rgm@gnu.org>
32927         * Makefile.in: Fixes for recent change-history changes.
32928         (change-history-nocommit): Update footer regexp.
32929         Ensure output script stays executable.
32931 2015-05-10  Nicolas Petton  <nicolas@petton.fr>
32933         New version of `seq-let' based on a pcase pattern
32934         * lisp/emacs-lisp/seq.el (seq-let): Define the macro in terms of a
32935         pcase pattern if `pcase-defmacro' is defined (Emacs>=25.1).
32937 2015-05-10  Przemysław Wojnowski  <esperanto@cumego.com>
32939         Add basic HTML5 tags and a template
32940         * lisp/textmodes/sgml-mode.el: Basic HTML5 support.
32941         (html-tag-alist): Add HTML5 tags.
32942         (html-tag-help): Add new tags descriptions.
32943         (html-navigational-links): Template for nav links.
32944         (html-html5-template): Template for a HTML5 page.
32946 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
32948         semantic/symref/grep: Don't use word boundaries
32949         * lisp/cedet/semantic/symref/grep.el
32950         (semantic-symref-perform-search): Instead of wrapping input in
32951         word boundaries, check that the characters before and after are
32952         not word constituents.
32954         semantic/symref/grep: Support regexp search
32955         * lisp/cedet/semantic/symref.el
32956         (semantic-symref-hit-to-tag-via-buffer): Don't regexp-quote when
32957         the search type is regexp.
32958         * lisp/cedet/semantic/symref/grep.el
32959         (semantic-symref-perform-search): Support the regexp search type.
32960         Pass -E to Grep when it's used.
32962         semantic-symref-regexp: Allow to input an arbitrary string
32963         * lisp/cedet/semantic/symref/list.el (semantic-symref-regexp):
32964         Allow to input an arbitrary string interactively.
32966         Remove tag-symbol-match-p from etags-xref-find-definitions-tag-order
32967         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
32968         Remove tag-symbol-match-p from the default value
32969         (https://lists.gnu.org/r/emacs-devel/2015-05/msg00292.html).
32971         Declare find-tag obsolete
32972         * lisp/progmodes/etags.el (find-tag): Declare obsolete in favor of
32973         xref-find-definitions.
32975 2015-05-10  Jan D  <jan.h.d@swipnet.se>
32977         Draw composite string correctly (Bug#20537)
32978         * src/nsterm.m (ns_draw_composite_glyph_string_foreground):
32979         New function.
32980         (ns_draw_glyph_string): Call it.
32982 2015-05-09  Eli Zaretskii  <eliz@gnu.org>
32984         Avoid infloop in ERC
32985         * lisp/simple.el (line-move-to-column): Ignore field boundaries
32986         while computing line beginning position.  (Bug#20498)
32988 2015-05-08  Glenn Morris  <rgm@gnu.org>
32990         * Makefile.in (ChangeLog): No longer pass "srcprefix"; cd instead.
32991         * build-aux/gitlog-to-emacslog: Check called from right directory.
32992         (srcprefix): Remove.
32994         * build-aux/gitlog-to-emacslog: Get rid of "distprefix".
32995         * Makefile.in (ChangeLog): No longer pass "distprefix".
32996         * make-dist: Update "make ChangeLog" syntax for the above change.
32998         * build-aux/gitlog-to-emacslog: Don't hard-code "ChangeLog.2".
32999         * Makefile.in (ChangeLog): Pass -n to gitlog-to-emacslog.
33001         * build-aux/gitlog-to-emacslog: Add "for earlier changes" to footer.
33003         Add command-line option-parsing to gitlog-to-emacslog
33004         * build-aux/gitlog-to-emacslog: Add command-line options.
33005         By default, refuse to remove an existing output file.
33006         * Makefile.in (CHANGELOG): Update default.
33007         (ChangeLog): Do not test for existing file.
33008         (change-history-nocommit): Ensure temp file does not exist.
33010         Quieten --without-x compilation
33011         * lisp/term/common-win.el: Provide a feature.
33012         * lisp/term/x-win.el (term/common-win): Require it.
33014         * lisp/dired-aux.el (dired-do-print): Require lpr.
33016         Quieten compilation, eg in --without-x builds
33017         * lisp/dired-aux.el (lpr-printer-switch):
33018         * lisp/frame.el (tool-bar-height):
33019         * lisp/linum.el (font-info):
33020         * lisp/window.el (font-info, overflow-newline-into-fringe)
33021         (tool-bar-height):
33022         * lisp/emacs-lisp/package-x.el (tar-data-buffer):
33023         * lisp/gnus/gnus-util.el (iswitchb-mode):
33024         * lisp/mail/rmailmm.el (libxml-parse-html-region):
33025         * lisp/net/nsm.el (gnutls-peer-status)
33026         (gnutls-peer-status-warning-describe):
33027         * lisp/net/shr.el (libxml-parse-xml-region):
33028         * lisp/url/url-http.el (gnutls-peer-status): Declare.
33030 2015-05-08  Stefan Monnier  <monnier@iro.umontreal.ca>
33032         CEDET (srecode-pop, srecode-peek): Don't use `subclass'
33033         * lisp/cedet/srecode/insert.el (srecode-pop, srecode-peek): Don't use
33034         `subclass' since they're never called with a class.
33035         (srecode-insert-method, srecode-insert-subtemplate): Avoid obsolete
33036         srecode-dictionary-child-p.
33038 2015-05-08  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
33040         * lisp/help.el (help--binding-locus): Document argument POSITION.
33041         (Bug#20530)
33043 2015-05-08  Paul Eggert  <eggert@cs.ucla.edu>
33045         Merge from gnulib
33046         * doc/misc/texinfo.tex: Get latest version.
33048 2015-05-08  Oleh Krehel  <ohwoeowho@gmail.com>
33050         ffap.el (ffap-read-file-or-url): Fix completing-read call
33051         * lisp/ffap.el (ffap-read-file-or-url): The HIST argument of
33052         `completing-read' should be a symbol.
33054 2015-05-08  Eli Zaretskii  <eliz@gnu.org>
33056         Verify file modifications by other programs
33057         * src/filelock.c (lock_file): Check whether the file was modified
33058         since it was visited even if 'create-lockfiles' is nil.  (Bug#18828)
33060         Fix keyboard macros that include function keys
33061         * src/keyboard.c (read_char_minibuf_menu_prompt): Record function
33062         keys in the macro before returning.  (Bug#20454)
33064 2015-05-08  Glenn Morris  <rgm@gnu.org>
33066         * build-aux/gitlog-to-changelog: Treat "Tiny-change" like
33067         "Copyright-paperwork-exempt".  (Bug#20324)
33069         * lisp/vc/log-edit.el: Handle "(tiny change)".  (Bug#20324)
33070         (log-edit-rewrite-tiny-change): New variable.
33071         (log-edit-insert-changelog): Maybe add "Copyright-paperwork-exempt".
33072         (log-edit-changelog-ours-p): Set log-edit-author to a cons.
33073         * etc/NEWS: Mention this.
33075         * lisp/calc/calc.el (math-zerop): Declare.
33077         * lisp/emacs-lisp/eieio-opt.el (help-fns-short-filename): Declare.
33079 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
33081         * lisp/emacs-lisp/subr-x.el (if-let): Fix debug spec.
33082         Support the case when BINDINGS is a single tuple.  (Bug#20525)
33084         * etc/NEWS: Fix typo in previous commit
33085         (14bb519f1034ddb38ce375cbad7095d9b07f8b26).
33087 2015-05-07  Jan D  <jan.h.d@swipnet.se>
33089         * configure.ac: Warn for multiple display crash for all Gtk+ versions.
33090         Output URL to Gtk+ bug (Bug#20452).
33092         * lisp/term/ns-win.el (ns-paste-secondary): Use gui-get-selection.
33094 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
33096         * lisp/emacs-lisp/package.el: New "external" package status.
33097         An external package is any installed package that's not built-in
33098         and not from `package-user-dir', which usually means it's from an
33099         entry in `package-directory-list'.  They are treated much like
33100         built-in packages, in that they cannot be through the Package Menu
33101         deleted and are not considered for upgrades.
33102         (package-desc-status): Identify if a package is installed outside
33103         `package-user-dir'.
33104         (package-menu--print-info-simple)
33105         (package-menu--status-predicate): Add support for it.
33106         * etc/NEWS: Document it.
33108 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
33110         * lisp/mail/rmail.el: Use lexical-binding.
33111         (rmail-bury): Remove unused var `buffer-to-bury'.
33112         (rmail-get-new-mail): Remove unused vars `opoint' and `success'.
33113         (rmail-parse-url): Remove unused var `proto', `user', and `host'.
33114         (rmail-unrmail-new-mail-maybe): Remove unused var `new-file'.
33115         (rmail-insert-inbox-text): Remove unused var `movemail'.
33116         (rmail-add-mbox-headers): Remove unused var `limit'.
33117         (rmail-undelete-previous-message): Remove unused var `value'.
33118         (rmail-reply): Remove unused vars `resent-to', `resent-cc',
33119         `resent-reply-to'.
33120         (rmail-mime-mbox-buffer, rmail-mime-view-buffer): Declare.
33121         (rmail-restore-desktop-buffer): Rename arguments.
33123 2015-05-06  Glenn Morris  <rgm@gnu.org>
33125         * Makefile.in (change-history-commit): Add missing piece of previous.
33127         Avoid unnecessary bumping of Makefile.in's timestamp
33128         * Makefile.in (gen_origin): Move to gitlog-to-emacslog.
33129         (emacslog): New variable.
33130         (ChangeLog): Use $emacslog.  Don't pass $gen_origin.
33131         (unchanged-history-files): Use $emacslog rather than Makefile.in.
33132         (change-history-nocommit): Store hash in $emacslog.
33133         * build-aux/gitlog-to-emacslog (gen_origin): Move default here.
33134         * admin/update_autogen (changelog_files): Update for the above.
33136         * Makefile.in: Don't always insist on removing existing "ChangeLog".
33137         (CHANGELOG): New variable.
33138         (no-ChangeLog): Remove.
33139         (ChangeLog): Replace "no-ChangeLog"; pass output file to script.
33140         (change-history-nocommit): Use a temp file rather than insisting
33141         on deletion of any existing "ChangeLog".
33143         * build-aux/gitlog-to-emacslog: Allow specification of output.
33145         * admin/update_autogen: Add option to update ChangeLog.
33146         (usage): Mention -H.
33147         (changelog_flag, changelog_n, changelog_files): New variables.
33148         (main): Check for -H, and maybe run change-history-nocommit.
33150 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
33152         * lisp/subr.el (delete-dups): Pre-size the hashtable.
33154         * lisp/emacs-lisp/cl.el (define-modify-macro): Make sure
33155         cl--arglist-args is defined (bug#20517).
33157 2015-05-06  Glenn Morris  <rgm@gnu.org>
33159         * Makefile.in (change-history-nocommit): New.
33161 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
33163         * lisp/cedet/pulse.el (pulse-momentary-unhighlight): Only cancel
33164         timer when it is non-nil
33165         (https://lists.gnu.org/r/emacs-devel/2015-05/msg00223.html).
33167 2015-05-06  Glenn Morris  <rgm@gnu.org>
33169         Quieten CEDET compilation
33170         * lisp/cedet/semantic/db-el.el (semanticdb-elisp-sym->tag):
33171         Invert fboundp test to quieten on current Emacs.
33172         * lisp/cedet/ede/config.el (ede-shell-run-something)
33173         (semanticdb-file-table-object, semanticdb-needs-refresh-p)
33174         (semanticdb-refresh-table): Declare.
33175         (ede-preprocessor-map): Require semantic/db.
33177         Quieten cc-mode compilation
33178         * lisp/progmodes/cc-awk.el (c-forward-sws):
33179         * lisp/progmodes/cc-cmds.el (c-forward-subword, c-backward-subword):
33180         Declare.
33182 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
33184         * lisp/subr.el (delete-dups): Avoid nreverse.
33186 2015-05-06  Artur Malabarba  <bruce.connor.am@gmail.com>
33188         * lisp/subr.el (delete-dups): Make it destructive again.
33190 2015-05-06  Paul Eggert  <eggert@cs.ucla.edu>
33192         * doc/lispref/sequences.texi (Sequence Functions): Fix quoting.
33194 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
33196         * lisp/emacs-lisp/testcover.el: Don't use edebug--read (bug#20487).
33197         * lisp/emacs-lisp/testcover.el: Use lexical-binding.
33198         (testcover--read): Rename from testcover-read.  Change calling
33199         convention.  Use edebug-read-and-maybe-wrap-form now that edebug-read
33200         is gone.
33201         (testcover-start): Use add-function.  Move edebug-all-defs binding to
33202         testcover--read.
33203         (testcover-this-defun): Tighten scope of edebug-all-defs binding.
33204         (testcover-mark): Remove unused var `item'.
33205         * src/lread.c (syms_of_lread): Default load-read-function to `read'.
33207 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
33209         * lisp/subr.el (delete-dups): When there are more than 100 candidates,
33210           use a hash table.  This can result in ~500 times speed-up for typical
33211           collections of size 5000, like that of `load-library'.
33213 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
33215         CEDET: Avoid `oref' on classes in a few more cases
33216         * lisp/cedet/ede/generic.el (ede-find-target):
33217         * lisp/cedet/ede.el (ede-project-forms-menu): Avoid `oref' on classes.
33218         * lisp/cedet/semantic/bovine/gcc.el (semantic-gcc-setup): Remove unused
33219         var `prefix'.
33221         * lisp/cedet/semantic/symref/grep.el: Fix unused var warnings.
33222         (grepflags, greppattern): Declare.
33223         (semantic-symref-perform-search): Remove unused var `pat'.
33225         CEDET (srecode-compile-inserter): Avoid `oref' on classes
33226         * lisp/cedet/srecode/compile.el (srecode-compile-inserter):
33227         Avoid `oref' on classes (bug#20491).
33228         (srecode-compile-split-code): Remove unused var `key'.
33230 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
33232         Clean up pulse.el a little
33233         * lisp/cedet/pulse.el (pulse): Remove.
33234         (pulse-momentary-timer): Save instead of the stop time.
33235         (pulse-momentary-highlight-overlay):
33236         Call pulse-momentary-unhighlight first thing.
33237         Treat pulse-momentary-overlay as a single value, not a list.
33238         Save the created timer.  Only pass the stop time to the timer.
33239         (pulse-tick): Update accordingly.
33240         (pulse-momentary-unhighlight): Treat pulse-momentary-overlay as a
33241         single value.  Cancel the timer.
33243 2015-05-06  Tassilo Horn  <tsdh@gnu.org>
33245         * lisp/textmodes/reftex-cite.el (reftex-format-bib-entry):
33246         Support the biblatex journaltitle field.
33248 2015-05-05  Glenn Morris  <rgm@gnu.org>
33250         Minor declare-function improvement
33251         * lisp/emacs-lisp/bytecomp.el
33252         (byte-compile-macroexpand-declare-function):
33253         Handle declarations after calls.  (Bug#20509)
33255         * lisp/progmodes/js.el (js--optimize-arglist): Remove declaration.
33257         * lisp/w32-fns.el (w32-shell-name): Silence compiler.
33259 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
33261         Pulse using a timer
33262         * lisp/cedet/pulse.el (pulse-momentary-stop-time): New variable.
33263         (pulse-momentary-highlight-overlay): Set up the timer instead of
33264         calling `pulse'
33265         (https://lists.gnu.org/r/emacs-devel/2015-05/).
33266         (pulse-tick): New function.
33267         (pulse-momentary-unhighlight): Cut off the stop time.
33268         (pulse-delay): Update the docstring WRT to not using sit-for.
33270         Add semantic/symref/grep file patterns for ruby-mode
33271         * lisp/cedet/semantic/symref/grep.el
33272         (semantic-symref-filepattern-alist): Add patterns for ruby-mode.
33273         Clarify the docstring.
33275         Don't require match
33276         * lisp/progmodes/xref.el (xref--read-identifier): Don't require
33277         match.  That doesn't work for every command, and some identifier
33278         completion tables are bound to be imperfect anyway.
33280 2015-05-05  Stefan Monnier  <monnier@iro.umontreal.ca>
33282         * lisp/cedet/semantic/grammar.el: Fix compiler warnings (bug#20505).
33283         (semantic-grammar--template-expand): New function.
33284         (semantic-grammar-header, semantic-grammar-footer): Use it.
33285         (semantic-grammar--lex-block-specs): Remove unused var `block-spec'.
33286         (semantic-grammar-file-regexp): Refine regexp.
33287         (semantic-grammar-eldoc-get-macro-docstring):
33288         Use elisp-get-fnsym-args-string when available.
33289         (semantic-idle-summary-current-symbol-info): Use new elisp-* names
33290         instead of the old eldoc-* names.
33291         * lisp/emacs-lisp/eldoc.el (eldoc-docstring-format-sym-doc): Move back
33292         from elisp-mode.el.  Tweak calling convention.
33293         * lisp/progmodes/elisp-mode.el (package-user-dir): Declare.
33294         (elisp-get-fnsym-args-string): Add `prefix' argument.  Rename from
33295         elisp--get-fnsym-args-string.
33296         (elisp--highlight-function-argument): Add `prefix' arg.
33297         (elisp-get-var-docstring): Rename from elisp--get-var-docstring.
33298         (elisp--docstring-format-sym-doc): Move back to eldoc.el.
33300 2015-05-05  Glenn Morris  <rgm@gnu.org>
33302         * lisp/help-fns.el (describe-function-1):
33303         Handle builtins with advertised calling conventions.  (Bug#20479)
33305 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
33307         Merge branch 'seq-let'
33309         Update `seq-let' documentation
33310         * doc/lispref/sequences.texi: Update the documentation of `seq-let'
33311         with the support of  `&rest'.
33313         Add support for &rest in `seq-let'
33314         * lisp/emacs-lisp/seq.el (seq--make-bindings): Add support for `&rest'
33315         in the argument list.
33316         * test/automated/seq-tests.el: Add a test for parsing and binding
33317         `&rest' in `seq-let'.
33319 2015-05-05  Pierre Lorenzon  <devel@pollock-nageoire.net>  (tiny change)
33321         * lisp/emacs-lisp/eieio-custom.el (eieio-object-value-get):
33322         Add missing increment (Bug#20467).
33323         (eieio-object-value-create): Adjust to new slots representation
33324         (Bug#20467).
33325         (eieio-object-value-create): Fix missed adjustment to new
33326         representation of slots metadata.
33328 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
33330         * lisp/emacs-lisp/seq.el (seq--make-bindings): Improve the docstring.
33332 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
33334         Work around "Attempt to modify read-only object"
33335         * lisp/progmodes/elisp-mode.el (elisp--xref-format): Extract from
33336         elisp--xref-find-definitions, to work around "Attempt to modify
33337         read-only object" error.
33339         Only skip some variables that have function counterparts
33340         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
33341         Only skip minor-mode-named variable if it's defined in a Lisp
33342         file, and it's in minor-mode-list (bug#20506).
33343         * test/automated/elisp-mode-tests.el
33344         (elisp-xref-finds-both-function-and-variable)
33345         (elisp-xref-finds-only-function-for-minor-mode): New tests.
33347 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
33349         * lisp/progmodes/xref.el (xref--location-at-point): Revert the
33350         previous change.
33351         (xref--insert-xrefs): Buttonize the whole line, including the
33352         number at the beginning.
33354         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
33355         Make sure we're inside the let bindings.
33356         * test/automated/elisp-mode-tests.el
33357         (elisp-completes-functions-after-let-bindings): New test.
33359 2015-05-04  Glenn Morris  <rgm@gnu.org>
33361         * lisp/cedet/semantic/grammar.el (eldoc-function-argstring)
33362         (eldoc-docstring-format-sym-doc, eldoc-last-data-store)
33363         (eldoc-get-fnsym-args-string, eldoc-get-var-docstring):
33364         Remove outdated declarations.
33366         Replace instances of "(eval-when-compile (autoload ...))"
33367         * lisp/gnus/gnus-art.el (nneething-get-file-name):
33368         Declare rather than autoload.
33369         * lisp/gnus/gnus-async.el (gnus-html-prefetch-images):
33370         Remove pointless autoload.
33371         * lisp/gnus/gnus-sync.el (gnus-group-topic): Autoload at run-time.
33372         (gnus-topic-create-topic, gnus-topic-enter-dribble):
33373         Declare rather than autoload.
33374         * lisp/gnus/mm-archive.el (gnus-recursive-directory-files)
33375         (mailcap-extension-to-mime): Autoload at run-time.
33376         * lisp/gnus/mm-util.el (latin-unity-massage-name)
33377         (latin-unity-maybe-remap, latin-unity-representations-feasible-region)
33378         (latin-unity-representations-present-region):
33379         Declare rather than autoload.
33380         * lisp/gnus/mml-smime.el (epg-make-context)
33381         (epg-passphrase-callback-function): Autoload at run-time.
33382         (epg-context-set-signers, epg-context-result-for)
33383         (epg-new-signature-digest-algorithm)
33384         (epg-verify-result-to-string, epg-list-keys, epg-verify-string)
33385         (epg-sign-string, epg-encrypt-string)
33386         (epg-context-set-passphrase-callback, epg-sub-key-fingerprint)
33387         (epg-configuration, epg-expand-group, epa-select-keys):
33388         Declare rather than autoload.
33389         * lisp/gnus/nnir.el (nnimap-change-group, nnimap-make-thread-query):
33390         Autoload at run-time.
33391         (gnus-group-topic-name, nnimap-buffer, nnimap-command)
33392         (gnus-registry-get-id-key, gnus-registry-action):
33393         Declare rather than autoload.
33394         * lisp/gnus/nnmail.el (mail-send-and-exit): Autoload at run-time.
33395         * lisp/gnus/spam.el (spam-stat-buffer-change-to-non-spam)
33396         (spam-stat-buffer-change-to-spam, spam-stat-buffer-is-non-spam)
33397         (spam-stat-buffer-is-spam, spam-stat-load, spam-stat-save)
33398         (spam-stat-split-fancy): Remove pointless autoloads.
33399         * lisp/net/mairix.el: Load gnus-util when compiling.
33400         (gnus-group-read-ephemeral-group, gnus-summary-toggle-header)
33401         (message-field-value): Declare rather than autoload.
33402         (mairix-gnus-ephemeral-nndoc, mairix-gnus-fetch-field):
33403         Check gnus-alive-p is fbound.
33404         (vm-quit, vm-visit-folder, vm-select-folder-buffer)
33405         (vm-check-for-killed-summary, vm-error-if-folder-empty)
33406         (vm-get-header-contents, vm-select-marked-or-prefixed-messages):
33407         Declare rather than autoload.
33409         * lisp/gnus/mm-view.el (epg-decrypt-string): Autoload.
33411         * lisp/gnus/mml-smime.el (epg-key-sub-key-list)
33412         (epg-sub-key-capability, epg-sub-key-validity): Fix declarations.
33414         * lisp/progmodes/elisp-mode.el (xref-collect-references): Declare.
33416         * lisp/emacs-lisp/debug.el (help-xref-interned): Update declaration.
33418         * lisp/allout.el (epg-user-id-string, epg-key-user-id-list):
33419         * lisp/emacs-lisp/package.el (epg-signature-status):
33420         Fix declarations.
33422         * lisp/play/gametree.el (gametree-show-children-and-entry)
33423         (gametree-apply-layout, gametree-mouse-show-subtree)
33424         (gametree-mouse-hide-subtree): Replace obsolete outline aliases.
33426         * lisp/emacs-lisp/check-declare.el (check-declare-verify):
33427         Handle cl-defgeneric, cl-defmethod.
33429 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
33431         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions):
33432         Highlight both type and symbol name.
33434         Insert, highlight and align line numbers in xref output
33435         * lisp/progmodes/etags.el (xref-location-line): Specialize for
33436         xref-etags-location.
33437         * lisp/progmodes/xref.el (xref-location-line): New generic method.
33438         (xref-file-location): Add reader for the line slot.
33439         (xref--location-at-point): Skip to the `xref-location' property.
33440         (xref--collect-reference): Drop the line number from description.
33441         (xref--insert-xrefs): Insert, highlight and align line numbers.
33443 2015-05-04  Daniel Colascione  <dancol@dancol.org>
33445         * lisp/simple.el (save-mark-and-excursion--save)
33446         (save-mark-and-excursion--restore): Fix previous commit
33447         (255a011f0ecf004b31c59945b10154b10fac3af1).
33449 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
33451         Don't pulse the indentation, or the newline
33452         * lisp/cedet/pulse.el (pulse-lighten-highlight)
33453         (pulse-reset-face): Fall back to the inherited background
33454         attribute in FACE.
33455         (pulse-momentary-highlight-region): Add autoload cookie.
33456         * lisp/progmodes/xref.el (xref--maybe-pulse): Don't highlight the
33457         indentation, or the newline, if the line's non-empty
33458         (https://lists.gnu.org/r/emacs-devel/2015-05/msg00118.html).
33460 2015-05-04  Daniel Colascione  <dancol@dancol.org>
33462         Add `save-mark-and-excursion', which has the old
33463         `save-excursion' behavior
33464         * doc/lispref/positions.texi (Excursions):
33465         Document `save-mark-and-excursion'.
33466         * lisp/font-lock.el (font-lock-fontify-block):
33467         Use `save-mark-and-excursion' instead of `save-excursion',
33468         restoring Emacs 24 behavior.
33469         * lisp/simple.el (save-mark-and-excursion--save)
33470         (save-mark-and-excursion--restore): New functions.
33471         (save-mark-and-excursion): New user macro.
33472         * src/editfns.c (Fsave_excursion): Mention `save-mark-and-excursion'
33473         in `save-excursion' documentation.
33475 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
33477         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
33478         Classify lone symbol inside let varlist as variable.
33479         * test/automated/elisp-mode-tests.el
33480         (completest-variables-in-let-bindings): New test.
33482         Add xref-pulse-on-jump
33483         * lisp/cedet/pulse.el (pulse-momentary-highlight-one-line):
33484         Add autoload cookie.
33485         * lisp/progmodes/xref.el (xref-pulse-on-jump): New option.
33486         (xref--maybe-pulse): New function.
33487         (xref-pop-marker-stack, xref--pop-to-location)
33488         (xref--display-position): Use it.
33489         (xref--location-at-point): Use back-to-indentation.
33491 2015-05-04  Stefan Monnier  <monnier@iro.umontreal.ca>
33493         lisp/org/org-{macs,list}.el: Fix lexical warnings
33494         * lisp/org/org-list.el (org-list-struct): Remove unused var `ind'.
33495         (org-list-get-next-item, org-list-get-prev-item)
33496         (org-list-get-children): Mark unused arg `struct'.
33497         (org-list-use-alpha-bul-p): Remove unused var `bul'.
33498         (org-toggle-checkbox): Mark unused var.
33499         (org-update-checkbox-count): Remove unused var `box-num'.
33500         (org-adapt-indentation): Declare.
33501         (org-list-parse-list): Declare var instead of adding a dummy duplicate.
33502         (org-list-send-list): Remove unused var `txt'.
33503         (org-list-to-latex, org-list-to-texinfo): Mark unused arg `params'.
33504         (org-list-to-subtree): Add prefix to dyn-bind var, and declare them.
33505         * lisp/org/org-macs.el: Use `declare'.
33506         (org-with-limited-levels): Declare dyn-bound vars.
33508 2015-05-04  Eli Zaretskii  <eliz@gnu.org>
33510         Fix minor issues with CEDET on MS-Windows
33511         * lisp/cedet/semantic/symref/idutils.el
33512         (semantic-symref-parse-tool-output-one-line): Fix the search
33513         regexp to match MS-Windows file names with drive letters.
33514         (Bug#19468)
33515         * lisp/cedet/semantic/symref/grep.el
33516         (semantic-symref-grep-use-template): Remove "--color=always" from
33517         Grep switches on MS-Windows.
33518         (semantic-symref-grep-shell): Use shell-file-name as the default
33519         value, so this works not only on Posix platforms.
33520         (semantic-symref-perform-search): Use shell-quote-argument instead
33521         of literal '..' for portable quoting of Grep command-line
33522         argument.  Use shell-command-switch instead of a literal "-c".
33523         * lisp/cedet/semantic/bovine/gcc.el
33524         (semantic-gcc-get-include-paths): Use file-name-absolute-p to test
33525         for an absolute file name in a portable way.
33527 2015-05-04  Artur Malabarba  <bruce.connor.am@gmail.com>
33529         * lisp/emacs-lisp/package.el: Remove `package--silence' variable.
33530         (package-import-keyring, package-refresh-contents)
33531         (package-compute-transaction, package--save-selected-packages)
33532         (package-install-from-archive, package-delete)
33533         (package-menu--perform-transaction): Use `inhibit-message' instead.
33534         (package--compile): Set `warning-minimum-level' to :error.
33536 2015-05-03  Stefan Monnier  <monnier@iro.umontreal.ca>
33538         * lisp/term/screen.el (xterm-screen-extra-capabilities): New custom.
33539         (terminal-init-screen): Use it (bug#20356).
33540         * lisp/term/xterm.el: Provide `term/xterm' instead of `xterm'.
33541         (xterm--extra-capabilities-type): New const.
33542         (xterm-extra-capabilities): Use it.
33543         (xterm--version-handler): Lower the pseudo-version for `screen'.
33545 2015-05-03  Dmitry Gutov  <dgutov@yandex.ru>
33547         * lisp/progmodes/xref.el (xref--insert-xrefs): Tweak the faces.
33548         Always insert a newline at the end (to avoid mouse-face background
33549         tail at the last line).
33551         elisp-completion-at-point: Prioritize being quoted over funpos
33552         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
33553         Only consider function position when not inside quoted form
33554         (bug#20425).
33555         * test/automated/elisp-mode-tests.el: New file.
33557         Stop vc-print-log from jumping to the top
33558         * lisp/vc/vc.el (vc-print-log-internal): Pass nil
33559         GOTO-LOCATION-FUNC to vc-log-internal-common when WORKING-REVISION
33560         is not specified.
33561         (vc-incoming-outgoing-internal): Always pass nil.
33562         (vc-log-internal-common): When GOTO-LOCATION-FUNC is nil, don't
33563         call it, and don't set vc-sentinel-movepoint (bug#15322).
33564         (vc-print-root-log): Don't fetch the root working revision, nor
33565         pass it to vc-print-log-internal.
33567 2015-05-02  Michael Vehrs  <Michael.Burschik@gmx.de>
33569         Fix display of keyboard layouts for right-to-left scripts
33570         * lisp/international/quail.el (quail-insert-kbd-layout):
33571         Force left-to-right paragraph direction.
33573 2015-05-02  K. Handa  <handa@gnu.org>
33575         * src/cmds.c (internal_self_insert): When we insert spaces for
33576         padding, set point before the padding spaces, not after them.
33578 2015-05-02  Nicolas Petton  <nicolas@petton.fr>
33580         * lisp/emacs-lisp/seq.el (seq-p): New alias to `sequencep'.
33582 2015-05-02  Dmitry Gutov  <dgutov@yandex.ru>
33584         Fix etags-xref-find for references
33585         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references):
33586         Use `cl-mapcan'.
33587         * lisp/progmodes/etags.el (etags-xref-find): Ditto.  Prompt for
33588         directory if no tags tables are loaded (bug#19468).
33590 2015-05-02  Philipp Stephani  <phst@google.com>
33592         Update the options in whitespace-style defcustom
33593         * lisp/whitespace.el (whitespace-style): Use `set' instead of a
33594         `repeat' because the option is really set-like.  Add missing
33595         options.  Reorder options to match the order in the
33596         documentation.  (Bug#20346)
33598 2015-05-02  Eli Zaretskii  <eliz@gnu.org>
33600         Fix error diagnostics of c-macro-expand
33601         * lisp/progmodes/cmacexp.el (c-macro-expansion): Don't bail out
33602         too early if no start-marker string was found -- that generally
33603         means cpp exited abnormally, and we still want to show its error
33604         messages to the user.
33606         Don't require Texinfo 5.0 for Emacs documentation
33607         * doc/emacs/docstyle.texi: Use "@set txicodequoteundirected" and
33608         "@set txicodequotebacktick" instead of "@codequotebacktick on" and
33609         "@codequoteundirected on", respectively, to avoid requiring
33610         Texinfo 5.x for Emacs documentation.
33612 2015-05-01  Simen Heggestøyl  <simenheg@gmail.com>
33614         * lisp/files.el (pwd):
33615         When called with a prefix argument, insert the current default
33616         directory at point.
33618 2015-05-01  Stefan Monnier  <monnier@iro.umontreal.ca>
33620         * lisp/isearch.el (isearch-mode-map): Allow backspace remapping
33621         * lisp/isearch.el (isearch-mode-map): Don't inhibit
33622         function-key-map remapping for backspace (bug#20466).
33624 2015-05-01  Dmitry Gutov  <dgutov@yandex.ru>
33626         Implement xref-find-references in etags and elisp-mode
33627         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references): New function.
33628         (elisp-xref-find): Use it.
33629         * lisp/progmodes/etags.el (etags-xref-find): Use `xref-collect-references'.
33630         * lisp/progmodes/xref.el (xref-collect-references):
33631         (xref--collect-reference): New functions.
33633 2015-05-01  Paul Eggert  <eggert@cs.ucla.edu>
33635         Prefer plain characters to Texinfo circumlocutions
33636         For example, prefer 'François' to 'Fran\c{c}ois', 'Fran\c cois',
33637         'Fran@,{c}ois' or 'Francois' (all of which were used!) in Texinfo sources.
33639         Fix single-quoting style in PDF manuals
33640         The PDF versions of the GNU manuals used curved single quotes to
33641         represent grave accent and apostrophe, which made it a pain to cut
33642         and paste code examples from them.  Fix the PDF versions to use
33643         grave accent and apostrophe for Lisp source code, keystrokes, etc.
33644         This change does not affect the info files, nor does it affect
33645         ordinary uses of curved single quotes in PDF.
33646         * doc/emacs/docstyle.texi: New file, which specifies treatment for
33647         grave accent and apostrophe, as well as the document encoding.
33648         * doc/emacs/emacs-xtra.texi, doc/emacs/emacs.texi:
33649         * doc/lispintro/emacs-lisp-intro.texi:
33650         * doc/lispref/back.texi, doc/lispref/book-spine.texi:
33651         * doc/lispref/elisp.texi, doc/lispref/lay-flat.texi:
33652         * doc/misc/ada-mode.texi, doc/misc/auth.texi:
33653         * doc/misc/autotype.texi, doc/misc/bovine.texi, doc/misc/calc.texi:
33654         * doc/misc/cc-mode.texi, doc/misc/cl.texi, doc/misc/dbus.texi:
33655         * doc/misc/dired-x.texi, doc/misc/ebrowse.texi, doc/misc/ede.texi:
33656         * doc/misc/ediff.texi, doc/misc/edt.texi, doc/misc/efaq-w32.texi:
33657         * doc/misc/efaq.texi, doc/misc/eieio.texi, doc/misc/emacs-gnutls.texi:
33658         * doc/misc/emacs-mime.texi, doc/misc/epa.texi, doc/misc/erc.texi:
33659         * doc/misc/ert.texi, doc/misc/eshell.texi, doc/misc/eudc.texi:
33660         * doc/misc/eww.texi, doc/misc/flymake.texi, doc/misc/forms.texi:
33661         * doc/misc/gnus-coding.texi, doc/misc/gnus-faq.texi:
33662         * doc/misc/gnus.texi, doc/misc/htmlfontify.texi:
33663         * doc/misc/idlwave.texi, doc/misc/ido.texi, doc/misc/info.texi:
33664         * doc/misc/mairix-el.texi, doc/misc/message.texi, doc/misc/mh-e.texi:
33665         * doc/misc/newsticker.texi, doc/misc/nxml-mode.texi:
33666         * doc/misc/octave-mode.texi, doc/misc/org.texi, doc/misc/pcl-cvs.texi:
33667         * doc/misc/pgg.texi, doc/misc/rcirc.texi, doc/misc/reftex.texi:
33668         * doc/misc/remember.texi, doc/misc/sasl.texi, doc/misc/sc.texi:
33669         * doc/misc/semantic.texi, doc/misc/ses.texi, doc/misc/sieve.texi:
33670         * doc/misc/smtpmail.texi, doc/misc/speedbar.texi:
33671         * doc/misc/srecode.texi, doc/misc/todo-mode.texi, doc/misc/tramp.texi:
33672         * doc/misc/url.texi, doc/misc/vhdl-mode.texi, doc/misc/vip.texi:
33673         * doc/misc/viper.texi, doc/misc/widget.texi, doc/misc/wisent.texi:
33674         * doc/misc/woman.texi:
33675         Use it instead of '@documentencoding UTF-8', to lessen the need for
33676         global changes like this in the future.
33677         * doc/emacs/Makefile.in (EMACS_XTRA):
33678         * doc/lispintro/Makefile.in (srcs):
33679         * doc/lispref/Makefile.in (srcs):
33680         Add dependency on docstyle.texi.
33681         * doc/misc/Makefile.in (style): New macro.
33682         (${buildinfodir}/%.info, %.dvi, %.pdf, %.html)
33683         (${buildinfodir}/ccmode.info, ${buildinfodir}/efaq%.info, gnus_deps):
33684         Use it.
33686 2015-05-01  Glenn Morris  <rgm@gnu.org>
33688         * test/automated/cl-lib-tests.el (cl-lib-adjoin-test): Fix it.
33690         * lisp/emacs-lisp/pcase.el (get-edebug-spec, edebug-match)
33691         (help-fns--signature): Declare.
33693         * lisp/emacs-lisp/pcase.el (pcase--make-docstring): Require help-fns.
33695 2015-05-01  Nicolas Petton  <nicolas@petton.fr>
33697         New macro seq-let, providing destructuring support to seq.el
33698         * lisp/emacs-lisp/seq.el (seq-let): New macro.  `seq-let' is similar
33699         to `cl-destructuring-bind' but works on all sequence types supported
33700         by `seq.el'.  Bump version number to 1.6.
33701         * test/automated/seq-tests.el: Add tests for seq-let.
33702         * doc/lispref/sequences.texi: Add documentation for seq-let.
33704 2015-05-01  Pontus Michael  <m.pontus@gmail.com>
33706         * lisp/simple.el (blink-matching-open): Better behavior in minibuffer.
33708 2015-05-01  Glenn Morris  <rgm@gnu.org>
33710         * lisp/emacs-lisp/ert.el (ert--special-operator-p): Fix previous.
33712 2015-05-01  Artur Malabarba  <bruce.connor.am@gmail.com>
33714         * lisp/emacs-lisp/bytecomp.el: Revert "Silence noninteractive compilations"
33715         This reverts commit 9a7ddde977378cb5276a81476ae458889c403267.
33716         This reverts commit 3c0ea587daf8b17960b90603a70e3ac4057d883d.
33717         With message: "* lisp/emacs-lisp/bytecomp.el: Use `inhibit-message'".
33718         (Bug#20445).
33720 2015-05-01  K. Handa  <handa@gnu.org>
33722         * lisp/international/mule-cmds.el (input-method-use-echo-area):
33723         Change :type to 'boolean.
33725 2015-05-01  Lars Magne Ingebrigtsen  <larsi@gnus.org>
33727         Start using proportional fonts in eww by default
33728         * lisp/net/shr.el (shr-use-fonts): Switch the default to t, since
33729         it seems to work well.
33731         Fix links in tables in shr
33732         * lisp/net/shr.el: Remove `shr-inhibit-decoration', because that
33733         makes (some) links in tables not work.
33735 2015-05-01  Jan D  <jan.h.d@swipnet.se>
33737         * lisp/term/ns-win.el (ns-get-cut-buffer-internal): Remove this alias.
33739 2015-04-30  Glenn Morris  <rgm@gnu.org>
33741         * lisp/emacs-lisp/ert.el (ert--special-operator-p):
33742         Update for 2015-02-08 change to indirect-function.
33744         * lisp/term/ns-win.el (ns-get-selection-internal):
33745         Remove declaration for function deleted 2014-10-21.
33747         * lisp/dom.el: Load subr-x when compiling, for when-let.
33749         Silence some compilation warnings
33750         * lisp/emacs-lisp/check-declare.el (compilation-forget-errors):
33751         * lisp/emulation/cua-base.el (delete-active-region):
33752         * lisp/net/net-utils.el (w32-get-console-output-codepage):
33753         * lisp/term/ns-win.el (ns-own-selection-internal)
33754         (ns-disown-selection-internal, ns-selection-owner-p)
33755         (ns-selection-exists-p, ns-get-selection):
33756         Declare for compiler.
33758         Function declaration updates prompted by 'make check-declare'
33759         * lisp/emacs-lisp/package.el (lm-homepage):
33760         * lisp/gnus/gnus-util.el (iswitchb-read-buffer):
33761         * lisp/gnus/mm-decode.el (libxml-parse-html-region):
33762         * lisp/gnus/mml.el (libxml-parse-html-region):
33763         * lisp/gnus/nnrss.el (libxml-parse-html-region):
33764         * lisp/net/eww.el (libxml-parse-html-region):
33765         * lisp/net/shr.el (libxml-parse-html-region):
33766         * lisp/vc/vc-bzr.el (vc-annotate-convert-time):
33767         * lisp/vc/vc-cvs.el (vc-annotate-convert-time):
33768         * lisp/vc/vc-git.el (vc-annotate-convert-time):
33769         * lisp/vc/vc-hg.el (vc-annotate-convert-time):
33770         * lisp/vc/vc-mtn.el (vc-annotate-convert-time):
33771         * lisp/vc/vc-rcs.el (vc-annotate-convert-time):
33772         Update declaration.
33774         Remove compatibility code for 20-year old function renaming
33775         * lisp/progmodes/idlw-shell.el (idlwave-shell-comint-filter):
33776         Make it an obsolete alias.
33777         (idlwave-shell-filter): Change all uses to comint-output-filter.
33779 2015-04-30  Tassilo Horn  <tsdh@gnu.org>
33781         Add ace-window face config
33782         * etc/themes/tsdh-light-theme.el (tsdh-light): Add ace-window face
33783         configuration.
33785 2015-04-30  Paul Eggert  <eggert@cs.ucla.edu>
33787         Unclutter 'make doc' output a bit
33788         * Makefile.in ($(DOCS), $(INSTALL_DOC), $(UNINSTALL_DOC)):
33789         Use make subst rather than sh IFS to split target string apart.
33790         This makes 'make' output easier to follow.
33792         Merge from gnulib
33793         * doc/misc/texinfo.tex: Update from gnulib.
33795 2015-04-30  Artur Malabarba  <bruce.connor.am@gmail.com>
33797         * lisp/emacs-lisp/package.el: Some speed optimizations on menu refresh.
33798         (package-menu--print-info): Obsolete.
33799         (package-menu--print-info-simple): New function.
33800         (package-menu--refresh): Use it, simplify code, and improve
33801         performance.
33802         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print-entry):
33803         Tiny performance improvement.
33805         * lisp/emacs-lisp/package.el (package--message): inhibit-message.
33807 2015-04-29  Paul Eggert  <eggert@cs.ucla.edu>
33809         Omit -Wstrict-overflow workaround in GCC 5
33810         * src/process.c: Remove workaround for GCC -Wstrict-overflow bug
33811         if it's GCC 5 or later, as the bug appears to be fixed in GCC 5.1.
33813         Merge from gnulib
33814         This incorporates:
33815         2015-04-29 extern-inline: no need for workaround in GCC 5.1
33816         2015-04-26 file-has-acl: port to CentOS 6
33817         * m4/acl.m4, m4/extern-inline.m4: Update from gnulib.
33819 2015-04-29  Helmut Eller  <eller.helmut@gmail.com>
33821         Set next-error-* in xref--xref-buffer-mode
33822         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
33823         Set `next-error-function' and `next-error-last-buffer'.
33824         (xref--next-error-function): New function.
33825         (https://lists.gnu.org/r/emacs-devel/2015-04/msg01311.html)
33827 2015-04-29  Fabián Ezequiel Gallina  <fgallina@gnu.org>
33829         python.el: Fix warnings on looking-back calls missing LIMIT
33830         * lisp/progmodes/python.el (python-shell-accept-process-output):
33831         Pass LIMIT arg to looking-back.
33833 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
33835         * lisp/emacs-lisp/package.el: Use pushnew for downloads in progress.
33836         (package--download-and-read-archives): Use pushnew instead of
33837         append.  If something terrible happened during a previous
33838         download, simply refreshing should now make things work again.
33840 2015-04-29  Dmitry Gutov  <dgutov@yandex.ru>
33842         Introduce etags-xref-find-definitions-tag-order
33843         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
33844         New variable.
33845         (etags--xref-find-definitions): Use it (bug#19468).
33847 2015-04-29  Eli Zaretskii  <eliz@gnu.org>
33849         PATH- and completion-related fixes in Eshell on MS-Windows
33850         * lisp/eshell/esh-ext.el (eshell-search-path): When running on
33851         MS-Windows, prepend "." to list of directories produced from PATH,
33852         as Windows always implicitly searches the current directory first.
33853         (eshell-force-execution): Make it have a non-nil default value on
33854         MS-Windows and MS-DOS.
33855         * lisp/eshell/em-cmpl.el (eshell-complete-commands-list): If
33856         eshell-force-execution is non-nil, complete on readable files and
33857         directories, not only executables.  When running on MS-Windows,
33858         prepend "." to list of directories produced from PATH, as Windows
33859         always implicitly searches the current directory first.
33861 2015-04-29  Sam Steingold  <sds@gnu.org>
33863         Bury RCIRC buffers when there is no activity
33864         * lisp/net/rcirc.el (rcirc-non-irc-buffer): Remove.
33865         (rcirc-bury-buffers): New function.
33866         (rcirc-next-active-buffer): When there is no new activity, use
33867         `rcirc-bury-buffers' to hide all RCIRC buffers.
33869 2015-04-29  Krzysztof Jurewicz  <krzysztof.jurewicz@gmail.com>  (tiny change)
33871         Fix DBUS query result parsing for secrets-search-items
33872         * lisp/net/secrets.el (secrets-search-items): Fix DBUS query result
33873         parsing.  The function assumed that return value of the
33874         SearchItems method called on a collection is a list of two lists,
33875         however this is true only when no collection is specified.  GNOME
33876         had used to incorrectly return a list of two lists in both cases,
33877         but this was already fixed:
33878         https://bugzilla.gnome.org/show_bug.cgi?id=695115 .  Also fix an
33879         incorrect information in the secrets-search-items’ docstring.
33880         (Bug#20449)
33882 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
33884         * lisp/emacs-lisp/bytecomp.el (byte-compile--message):
33885         Use `inhibit-message' instead of hiding the previous message
33886         with (message nil).
33888 2015-04-29  Oleh Krehel  <ohwoeowho@gmail.com>
33890         Remove the deprecated INTERNAL_FIELD macro by expanding it
33891         * src/lisp.h (INTERNAL_FIELD): Remove.
33892         (DEFVAR_KBOARD): Modify accordingly.
33893         * src/alloc.c, src/buffer.c, src/buffer.h, src/category.c:
33894         * src/keyboard.c, src/keyboard.h, src/syntax.c: Adjust users.
33895         * src/buffer.c (compact_buffer): Use BVAR.
33897 2015-04-29  Glenn Morris  <rgm@gnu.org>
33899         Replace an obsolete function alias
33900         * lisp/isearch.el (isearch-yank-x-selection):
33901         * lisp/mouse-copy.el (mouse-drag-secondary-pasting)
33902         (mouse-drag-secondary-moving):
33903         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
33904         Replace obsolete alias x-get-selection with gui-get-selection.
33906 2015-04-29  Stefan Monnier  <monnier@iro.umontreal.ca>
33908         * lisp/mail/rmailsum.el: Use lexical-binding.
33910 2015-04-29  Glenn Morris  <rgm@gnu.org>
33912         * test/automated/package-test.el (package-test-update-archives-async):
33913         Skip test on hydra.nixos.org.
33915 2015-04-28  Glenn Morris  <rgm@gnu.org>
33917         * lisp/foldout.el: Update for 2015-01-30 outline.el changes.
33918         (foldout-zoom-subtree, foldout-exit-fold, foldout-mouse-show)
33919         (foldout-mouse-hide-or-exit): Use new names for outline functions.
33921         * lisp/cedet/semantic/bovine/c.el (semantic-c-do-lex-if):
33922         Update for 2014-06-26 hideif.el change.
33924         * lisp/mail/rmailsum.el: Fix search for encoded subjects.  (Bug#19088)
33925         (rmail--decode-and-apply): New function.
33926         (rmail-message-regexp-p-1, rmail-message-subject-p): Use it.
33928         * lisp/mail/rmail.el (rmail-highlighted-headers): Fix :type.
33930 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
33932         * lisp/emacs-lisp/package.el: Fix priority-hiding corner case
33933         (package-menu--refresh): Delegate obsolete-hiding to
33934         `package--remove-hidden'.
33935         (package--remove-hidden): Disregard high-priority package if it is
33936         older than the installed one.
33938 2015-04-28  Paul Eggert  <eggert@cs.ucla.edu>
33940         Update source file encoding list
33941         Update admin/notes/unicode, along with coding system cookies in
33942         other files, so that the two match each other better.
33943         * admin/notes/unicode: lisp/language/ethio-util.el and
33944         lisp/language/ethiopic.el also use utf-8-emacs.
33945         * admin/notes/hydra, doc/misc/dbus.texi, doc/misc/org.texi:
33946         * doc/misc/remember.texi, etc/refcards/cs-dired-ref.tex:
33947         * etc/refcards/cs-refcard.tex, etc/refcards/cs-survival.tex:
33948         * etc/refcards/sk-dired-ref.tex, etc/refcards/sk-refcard.tex:
33949         * etc/refcards/sk-survival.tex:
33950         Add "coding: utf-8" so that this file is not mishandled in a
33951         Latin-1 or Big-5 locale.
33952         * lisp/international/robin.el, lisp/org/ox-ascii.el:
33953         Specify utf-8, not utf-8-emacs, as these are plain UTF-8 files.
33954         * lisp/language/ethio-util.el: Fix trailer.
33956 2015-04-28  Eli Zaretskii  <eliz@gnu.org>
33958         Fix synchronous invocation of Ispell
33959         * lisp/textmodes/ispell.el (ispell-init-process): Assign a non-nil
33960         value to ispell-process-directory before calling ispell-init-process.
33961         Don't call set-process-coding-system if ispell-async-processp is nil.
33962         (Bug#20448)
33964 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
33966         * lisp/emacs-lisp/package.el: Skip space and comments in init file
33967         (package--ensure-init-file): Insert snippet at first
33968         non-whitespace non-comments line.  Respects local-vars at the top
33969         of the file.
33971 2015-04-28  Glenn Morris  <rgm@gnu.org>
33973         * lisp/mail/rmail.el (rmail-copy-headers):
33974         Handle rmail-nonignored-headers being nil.  (Bug#18878)
33976         * lisp/subr.el (delay-mode-hooks): Fix doc typo.
33978         * lisp/vc/vc-bzr.el (vc-bzr-after-dir-status):
33979         Don't get confused by a bzrlib version mismatch warning.
33981 2015-04-27  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
33983         Change default location of EUDC options file
33984         * etc/NEWS: Document change to EUDC options file's default location.
33985         * lisp/net/eudc-vars.el (eudc-options-file): Use
33986         `locate-user-emacs-file' to change default options file location.
33988 2015-04-27  Glenn Morris  <rgm@gnu.org>
33990         * test/automated/package-test.el (package-test-update-archives-async):
33991         Try to handle the test server script dying.
33993 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
33995         * lisp/saveplace.el (save-place-mode): New minor mode.
33996         (save-place): Redefine as an obsolete alias.
33998         * lisp/midnight.el: Make it a minor mode.  Allow predicates.
33999         * lisp/midnight.el: Use lexical-binding.
34000         (midnight-mode): Make it a proper minor mode.
34001         (midnight-buffer-display-time): Make arg non-optional.
34002         (midnight-find): Remove.
34003         (clean-buffer-list-kill-never-regexps)
34004         (clean-buffer-list-kill-regexps): Tweak type for new function choice.
34005         (clean-buffer-list-delay): Allow clean-buffer-list-kill-regexps to
34006         contain functions.
34007         (clean-buffer-list): Use cl-find.
34008         Allow clean-buffer-list-kill-never-regexps to contain functions.
34010 2015-04-27  Nicolas Petton  <nicolas@petton.fr>
34012         Bump version of seq.el to 1.5
34013         * lisp/emacs-lisp/seq.el (seq-doseq): Remove undocumented return value
34014         from seq-doseq.  Bump version number of seq.el.
34016 2015-04-27  Glenn Morris  <rgm@gnu.org>
34018         * lisp/mail/rmail.el (rmail-reply):
34019         Decode subject before matching "Re:" prefix.  (Bug#20396)
34021 2015-04-27  Artur Malabarba  <bruce.connor.am@gmail.com>
34023         * lisp/emacs-lisp/package.el: Small improvements
34024         (package--with-work-buffer-async): More informative error.
34025         (package-install-user-selected-packages): Rename to
34026         `package-install-selected-packages'.
34028 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
34030         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last
34031         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last change.
34032         (eieio--class-make): Remove leftover `tag'.
34034 2015-04-27  Glenn Morris  <rgm@gnu.org>
34036         * lisp/gnus/message.el (gnus-extract-address-components):
34037         Remove bogus declaration that was masking previous problem.
34039 2015-04-27  Nicolas Graner  <nicolas.graner@u-psud.fr>  (tiny change)
34041         * lisp/gnus/message.el (message-insert-formatted-citation-line):
34042         Fix typo.  (Bug#20318)
34044 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
34046         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Reuse oldc.
34048         * lisp/textmodes/reftex-toc.el: Improve multi-frame behavior
34049         * lisp/textmodes/reftex-toc.el (reftex-toc-revert): Avoid displaying
34050         the buffer in yet another frame.
34051         (reftex-toc-visit-location): Make sure toc-window has focus at the end
34052         when `final' is nil.
34053         (reftex--rebuilding-toc): Defvar to avoid `boundp' and
34054         silence warnings.  Use `--' to clarify that it's internal.
34055         (reftex-toc-next, reftex-toc-previous, reftex-toc-demote)
34056         (reftex-toc-promote): Clarify unused argument.
34057         (reftex--pro-or-de, reftex--start-line, reftex--mark-line):
34058         Add `reftex--' prefix.  Fix all users.
34059         (reftex-toc-promote-prepare): Use _ for dummy variable.
34060         (reftex-toc-restore-region): Rename `m.
34062 2015-04-27  Eli Zaretskii  <eliz@gnu.org>
34064         Fix a typo in bibtex.el
34065         * lisp/textmodes/bibtex.el (bibtex-insert-kill): Fix a typo from
34066         last change.  (Bug#20429)
34068         Fix redisplay of frame after loading new fonts
34069         * src/xdisp.c (redisplay_internal): When retrying redisplay of
34070         a frame because new fonts were loaded, disable all redisplay
34071         optimizations on that frame by calling SET_FRAME_GARBAGED.
34072         (Bug#20410)
34074 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
34076         * lisp/info.el (Info-menu): Properly provide the `default'
34077         (Bug#20391)
34079         * lisp/progmodes/elisp-mode.el (elisp--get-fnsym-args-string):
34080         Catch errors from documentation (bug#20418).
34081         (emacs-lisp-mode-abbrev-table): Remove redundant defvar.
34083 2015-04-26  Stefan Monnier  <monnier@iro.umontreal.ca>
34085         * lisp/emacs-lisp/package.el: Move variables to silence byte-compiler.
34086         Remove redundant ":group 'package".
34088 2015-04-26  Eli Zaretskii  <eliz@gnu.org>
34090         Fix a typo in rmail.el
34091         * lisp/mail/rmail.el (rmail-ensure-blank-line): Fix a typo in the
34092         last commit.  (Bug#20429)
34094 2015-04-26  Dmitry Gutov  <dgutov@yandex.ru>
34096         Introduce xref-prompt-for-identifier
34097         * lisp/progmodes/xref.el (xref-prompt-for-identifier): New option.
34098         (xref--read-identifier): Use it
34099         (https://lists.gnu.org/r/emacs-devel/2015-04/msg01205.html).
34101 2015-04-26  João Távora  <joaotavora@gmail.com>
34103         `tex-insert-quote' after single `'' opens quotes instead of closing
34104         Without this, it's very hard to precede double quotes with the
34105         apostrophe character, i.e. insert the sequence '``
34106         (quote-backquote-backquote), commonly useful in portuguese, for
34107         instance.
34108         * lisp/textmodes/tex-mode.el (tex-insert-quote): Add ?' to the list of
34109         preceding chars making `tex-insert-quote' be in the "opening" context.
34111 2015-04-25  Dmitry Gutov  <dgutov@yandex.ru>
34113         Pass `id' to `completing-read' as def instead of initial input
34114         * lisp/progmodes/xref.el (xref--read-identifier): Pass `id' to
34115         `completing-read' as the default value instead of initial input
34116         (https://lists.gnu.org/r/emacs-devel/2015-04/msg01182.html).
34118 2015-04-25  Paul Eggert  <eggert@cs.ucla.edu>
34120         Don't freeze with unreadable processes
34121         Don't freeze if an exiting process can't be read from.  (Bug#19860).
34122         This fixes a bug I introduced in
34123         2014-07-08T07:24:07Z@eggert@cs.ucla.edu
34124         "* process.c: Add sanity checks for file descriptors."
34125         Dmitry Gutov did most of the legwork in finding the problem.
34126         * src/process.c (wait_reading_process_output):
34127         Treat non-running processes that can't be read from
34128         the same as other non-running processes.
34130 2015-04-25  Alan Mackenzie  <acm@muc.de>
34132         Fix change from 2015-04-22 "On C-y, stop some text property entries ..."
34133         * lisp/subr.el (remove-yank-excluded-properties): Put
34134         `with-silent-modifications' around only the last three lines of code.
34136 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
34138         * lisp/emacs-lisp/package.el (package-all-keywords): Don't cache
34139         (package--all-keywords): Deleted variable.
34141         * etc/NEWS: Document package-hiding functionality.
34143 2015-04-25  Eli Zaretskii  <eliz@gnu.org>
34145         * lisp/window.el (recenter-last-op): Doc fix.  (Bug#20419)
34147         Clarify the doc string of 'replace-regexp-in-string'
34148         * lisp/subr.el (replace-regexp-in-string): Doc fix.  (Bug#20395)
34150         Improve doc string of 'insert-buffer-substring'
34151         * src/editfns.c (Finsert_buffer_substring): Doc fix.  (Bug#20421)
34153         MS-Windows followup for the recent gnulib update
34154         * nt/gnulib.mk (libgnu_a_SOURCES): Replace file-has-acl.c with
34155         acl-internal.c.
34157 2015-04-24  Paul Eggert  <eggert@cs.ucla.edu>
34159         Spelling fixes
34161         Merge from gnulib
34162         This incorporates:
34163         2015-04-24 file-has-acl: new module, split from acl
34164         2015-04-24 manywarnings: add GCC 5.1 warnings
34165         2015-04-21 lstat: fix cross-compilation 'ln -s' problem
34166         2015-04-15 qacl: Simplify HP-UX acl_nontrivial check
34167         2015-04-15 acl: On Linux, check for acls without libacl
34168         2015-04-14 tempname: avoid unused parameter warnings (trivial)
34169         * lib/acl-internal.c: New file, from gnulib.
34170         * lib/file-has-acl.c: Remove; no longer imported from gnulib.
34171         * lib/acl-internal.h, lib/gnulib.mk, lib/qcopy-acl.c, lib/tempname.c:
34172         * m4/acl.m4, m4/gnulib-comp.m4, m4/lstat.m4, m4/manywarnings.m4:
34173         Update from gnulib.
34175         Port --enable-gcc-warnings to GCC 5.1 x86-64
34176         * lib-src/ebrowse.c (dump_sym):
34177         * lib-src/hexl.c (main):
34178         * src/ccl.c (ccl_driver):
34179         * src/character.c (string_escape_byte8):
34180         * src/dbusbind.c (xd_retrieve_arg, xd_add_watch):
34181         * src/gnutls.c (Fgnutls_boot):
34182         * src/gtkutil.c (xg_check_special_colors):
34183         * src/image.c (x_build_heuristic_mask):
34184         * src/print.c (safe_debug_print, print_object):
34185         * src/term.c (produce_glyphless_glyph):
34186         * src/xdisp.c (get_next_display_element)
34187         (produce_glyphless_glyph):
34188         * src/xterm.c (x_draw_glyphless_glyph_string_foreground):
34189         Don't use a signed format to print an unsigned integer, or vice
34190         versa.  GCC 5.1's new -Wformat-signedness option warns about this.
34191         * src/image.c (png_load_body, jpeg_load_body):
34192         Silence a bogus setjump diagnostic from GCC 5.1 (GCC bug 54561).
34194 2015-04-24  Tassilo Horn  <tsdh@gnu.org>
34196         Add new faces to tsdh-light-theme
34197         * etc/themes/tsdh-light-theme.el (tsdh-light): New face
34198         definitions for Info-quoted, ace-jump-face-foreground,
34199         hl-paren-face, show-paren-match, and show-paren-mismatch.
34201 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
34203         * lisp/emacs-lisp/seq.el (seq-doseq): Fix the macro.
34205 2015-04-24  Glenn Morris  <rgm@gnu.org>
34207         * build-aux/gitlog-to-emacslog:
34208         Use raw log format rather than wrapped one.
34210 2015-04-24  Stefan Monnier  <monnier@iro.umontreal.ca>
34212         * lisp/emacs-lisp/seq.el (seq-doseq): Tighten the code.
34213         (seq-doseq): Fix out-of-scope binding.
34214         Don't call `seq-length at every iteration.
34215         Reduce `if's from 3 to 2 per iteration.
34216         (emacs-lisp-mode-hook): Don't tweak in Emacs≥25.
34218 2015-04-24  Glenn Morris  <rgm@gnu.org>
34220         * lisp/textmodes/text-mode.el (text-mode-hook):
34221         Move text-mode-hook-identify to default.
34223         * lisp/mouse.el (minor-mode-menu-from-indicator):
34224         Handle non-function members of minor-mode-map-alist.  (Bug#20201)
34226         * lisp/help-fns.el (describe-function): More type checking.
34227         (describe-function-1): Handle changed symbol-function.  (Bug#20201)
34229         * build-aux/gitlog-to-emacslog: Convert "Fixes:" to "(Bug#)".
34230         (Bug#20325)
34232 2015-04-24  Andreas Schwab  <schwab@linux-m68k.org>
34234         shr: strip leading whitespace when expanding URLs
34235         * lisp/net/shr.el (shr-expand-url): Strip leading whitespace from URL.
34237 2015-04-24  Eli Zaretskii  <eliz@gnu.org>
34239         Clarify "co-authored" some more
34241         * CONTRIBUTE: Clarify "co-authored-by".  (Bug#20400)
34243         Clarify doc strings of functions that search for properties
34244         * src/textprop.c (Fnext_char_property_change)
34245         (Fprevious_char_property_change)
34246         (Fnext_single_char_property_change)
34247         (Fprevious_single_char_property_change, Fnext_property_change)
34248         (Fnext_single_property_change, Fprevious_property_change)
34249         (Fprevious_single_property_change): Clarify doc strings wrt return
34250         value and the optional LIMIT argument.  (Bug#20411)
34252 2015-04-24  Glenn Morris  <rgm@gnu.org>
34254         * test/automated/message-mode-tests.el (message-mode-propertize):
34255         Handle non-writable HOME; eg on hydra.nixos.org.
34257 2015-04-23  Eli Zaretskii  <eliz@gnu.org>
34259         Avoid starting threads by w32-shell-execute
34260         * src/w32fns.c (Fw32_shell_execute): Convert "file:///" URLs into
34261         local file names, before invoking ShellExecute.  (Bug#20220)
34263 2015-04-23  Martin Rudalics  <rudalics@gmx.at>
34265         Fix following doc-links in `widget-documentation-link-action'
34266         * lisp/wid-edit.el (widget-documentation-link-action): Make
34267         following doc-links less simplistic (Bug#20398).
34269 2015-04-22  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
34271         Improve EUDC manual
34272         * doc/misc/eudc.texi (Troubleshooting):
34273         New LDAP troubleshooting subsection.
34275 2015-04-22  Paul Eggert  <eggert@cs.ucla.edu>
34277         Omit needless "\ " after multibyte then newline
34278         * src/print.c: Include <c-ctype.h>, for c_isxdigit.
34279         (print_object): When print-escape-multibyte is non-nil and a
34280         multibyte character is followed by a newline or formfeed, followed
34281         by a hex digit, don't output a needless "\ " before the hex digit.
34282         * test/automated/print-tests.el (print-hex-backslash): New test.
34284 2015-04-22  Oleh Krehel  <ohwoeowho@gmail.com>
34286         Add a new `inhibit-message' variable
34287         * src/xdisp.c (syms_of_xdisp): Define a boolean `inhibit_message'.
34288         (message3): Don't call `message3_nolog' (i.e. use the Echo Area) when
34289         `inhibit_message' is non-zero.
34290         * etc/NEWS: Add an entry.
34291         * doc/lispref/display.texi: Add an entry for `inhibit-message',
34292         mention it in `message'.
34294 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
34296         Fix last fix in `display-buffer-record-window'.
34297         * lisp/window.el (display-buffer-record-window): Fix last fix.
34299 2015-04-22  Eli Zaretskii  <eliz@gnu.org>
34301         Minor edits in CONTRIBUTE
34302         * CONTRIBUTE: Rearrange instructions about log messages.
34303         Use "Git" capitalized all over.
34304         Use 2 spaces between sentences.
34306 2015-04-22  Artur Malabarba  <bruce.connor.am@gmail.com>
34308         * lisp/files.el (basic-save-buffer): Fix argument.
34310         * lisp/cus-edit.el (custom-file): Consider init-file-had-error.
34311         In case `(and (null custom-file) init-file-had-error)' do the same
34312         thing we'd do if `(null user-init-file)', which is to either error out
34313         or return nil.  This is in line with `custom-save-all' which would
34314         throw an error in that situation.  (Bug#20355)
34316         * lisp/emacs-lisp/package.el: Hide lower-priority packages in menu.
34317         (package-menu-hide-low-priority): New variable, see its doc.
34318         (package-archive-priorities): Update doc.
34319         (package-desc-priority): New function.
34320         (package-desc-priority-version): Use it.
34321         (package--remove-hidden): New function.
34322         (package-menu--refresh): Use it.
34324         * lisp/emacs-lisp/package.el: Implement displaying obsolete packages.
34325         (package-menu--hide-obsolete): New variable.
34326         (package--remove-hidden): Use it.
34327         (package-menu-hide-obsolete): New interactive function to toggle
34328         the variable.
34329         (package--quick-help-keys): Document it.
34330         (package-menu-async): Add :version tag.
34331         (package-menu-mode-map): Bind package-menu-hide-obsolete.
34332         (package-desc-status): Indicate non-installed obsolete packages as
34333         avail-obso.
34334         (package-menu-mark-install): Allow installation of avail-obso.
34335         (package-menu--status-predicate): Sort avail-obso with available.
34337 2015-04-22  Alan Mackenzie  <acm@muc.de>
34339         On C-y, stop some text property entries being written into buffer-undo-list
34340         * lisp/subr.el (remove-yank-excluded-properties): Enclose the code in
34341         `with-silent-modifications'.
34343 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
34345         In display-buffer-record-window record selected window if necessary
34346         * lisp/window.el (display-buffer-record-window): Store selected window
34347         if it differs from 3rd element of 'quit-restore' parameter (Bug#20353).
34349 2015-04-22  Tassilo Horn  <tsdh@gnu.org>
34351         Fix reftex-citation bug
34352         * lisp/textmodes/reftex-cite.el (reftex-extract-bib-entries):
34353         Fix `wrong-type-argument stringp nil' error that occurs when AUCTeX
34354         integration is enabled and there are no citations in the document
34355         so far.
34357 2015-04-21  Dmitry Gutov  <dgutov@yandex.ru>
34359         Add or reset based on the presence of MERGE_HEAD
34360         * lisp/vc/vc-git.el (vc-git-find-file-hook): Add
34361         `vc-git-resolve-when-done' to `after-save-hook' in either case.
34362         (vc-git-conflicted-files): Add a TODO.
34363         (vc-git-resolve-when-done): Depending on the presence of
34364         MERGE_HEAD, either update the resolved file in the index, or
34365         remove it from there.  (Bug#20292)
34367 2015-04-21  Glenn Morris  <rgm@gnu.org>
34369         * lisp/custom.el (custom-declare-group): No need to purecopy
34370         custom-current-group-alist members following recent change to set
34371         it to nil before dumping.
34373         * build-aux/gitlog-to-emacslog: Get footer from ChangeLog.2.
34374         (Bug#20399)
34376 2015-04-21  Daniel Colascione  <dancol@dancol.org>
34378         Unbreak no-op buffer save message
34379         * lisp/files.el (basic-save-buffer): Accept called-interactively as
34380         an argument instead of directly invoking called-interactively-p,
34381         which will always yield nil in that context.
34383 2015-04-21  Alan Mackenzie  <acm@muc.de>
34385         CC Mode: Do nothing in before/after-change-functions for text
34386         property changes
34387         Fixes bug#20266.
34388         * lisp/progmodes/cc-mode.el (c-basic-common-init): Make
34389         yank-handled-properties buffer local, and remove 'category from it.
34390         (c-called-from-text-property-change-p): New function.
34391         (c-before-change): Don't do anything if a call of the new function
34392         returns non-nil.
34393         (c-after-change): Don't do much if a call of the new function returns
34394         non-nil.
34395         (c-extend-after-change-region): Put changes to text property 'fontified
34396         inside c-save-buffer-state.
34398 2015-04-20  Stefan Monnier  <monnier@iro.umontreal.ca>
34400         Fix byte-compiler warnings about looking-back
34401         * lisp/vc/log-view.el (log-view-end-of-defun-1):
34402         * lisp/textmodes/tex-mode.el (latex-forward-sexp-1):
34403         * lisp/textmodes/reftex-ref.el (reftex-goto-label):
34404         * lisp/textmodes/bibtex.el (bibtex-insert-kill):
34405         * lisp/progmodes/sh-script.el (sh--maybe-here-document):
34406         * lisp/progmodes/ruby-mode.el (ruby-end-of-defun):
34407         * lisp/progmodes/ada-mode.el (ada-in-numeric-literal-p):
34408         * lisp/org/org.el (org-insert-heading, org-sort-entries):
34409         * lisp/org/org-mouse.el (org-mouse-end-headline)
34410         (org-mouse-context-menu):
34411         * lisp/org/org-clock.el (org-clock-cancel):
34412         * lisp/man.el (Man-default-man-entry):
34413         * lisp/mail/rmail.el (rmail-get-new-mail, rmail-insert-inbox-text)
34414         (rmail-ensure-blank-line):
34415         * lisp/mail/footnote.el (Footnote-delete-footnote):
34416         * lisp/mail/emacsbug.el (report-emacs-bug):
34417         * lisp/info.el (Info-follow-reference, Info-fontify-node):
34418         * lisp/info-look.el (info-lookup-guess-custom-symbol):
34419         * lisp/help-fns.el (help-fns--key-bindings):
34420         * lisp/files.el (hack-local-variables):
34421         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-cmd-complete)
34422         (viper-get-ex-pat, ex-expand-filsyms, viper-get-ex-file)
34423         (viper-complete-filename-or-exit):
34424         * lisp/emulation/viper-cmd.el (viper-backward-indent):
34425         * lisp/emacs-lisp/lisp-mode.el (calculate-lisp-indent):
34426         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
34427         * lisp/cus-edit.el (custom-face-edit-value-create):
34428         * lisp/calendar/todo-mode.el (todo-set-item-priority)
34429         (todo-filter-items-1, todo-convert-legacy-files)
34430         (todo-prefix-overlays): Add explicit second arg to looking-back.
34432 2015-04-20  Glenn Morris  <rgm@gnu.org>
34434         Avoid non-nil current-load-list at startup
34435         * src/process.c (init_process_emacs): Move Fprovide statement...
34436         (syms_of_process): ... to here.
34438         * lisp/loadup.el (custom-current-group-alist): Reset before dumping.
34440         * lisp/startup.el (command-line) <site-run-file>: Avoid rogue value
34441         in emacs -Q.
34443 2015-04-20  Ludovic Courtès  <ludo@gnu.org>
34445         * lisp/loadup.el (exec-path): Avoid storing build-time PATH in binary.
34446         (Bug#20330)
34448 2015-04-20  Glenn Morris  <rgm@gnu.org>
34450         * lisp/cus-start.el (exec-path): Set standard value, to avoid rogue.
34452         Tweak exec-path in uninstalled case
34453         * src/callproc.c (init_callproc): If running uninstalled, do not
34454         include eventual installation libexec directory in exec-path.
34456 2015-04-20  Artur Malabarba  <bruce.connor.am@gmail.com>
34458         * lisp/emacs-lisp/package.el: Filter by multiple keywords and
34459         cache keywords.
34460         (package-menu-filter): Accept a list of keywords.
34461         (package--all-keywords): New variable to cache known keywords.
34462         (package-all-keywords): Populate it if necessary.
34463         (package-refresh-contents): Reset it.
34465         * lisp/emacs-lisp/package.el: Make archive and status pseudo-keywords
34466         (package--has-keyword-p): Understand "arc:xxxx" and "status:xxxx"
34467         as special keywords which match agains package archive and status
34468         respectively.
34469         * etc/NEWS: Document it.
34471 2015-04-20  Eli Zaretskii  <eliz@gnu.org>
34473         Describe and index "empty overlays".
34474         * doc/lispref/display.texi (Overlays): Improve indexing.
34475         (Managing Overlays): Describe "empty" overlays.
34476         (Overlay Properties, Finding Overlays): Add cross-reference to
34477         where empty overlays are described.
34479 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
34481         Spelling fixes
34483         Quote 'like this' in top-level files
34484         * CONTRIBUTE, INSTALL, Makefile.in, README, configure.ac, make-dist:
34485         Prefer to single-quote 'like this' (instead of the older style
34486         `like this').
34487         * configure.ac: Fix some space-before-tab problems that 'git commit'
34488         complained about.
34490         Use bool for boolean in textprop.c, undo.c
34491         * src/textprop.c (soft, hard): Now constants instead of macros.
34492         (validate_plist): Rewrite to avoid need for boolean local.
34493         (interval_has_all_properties, interval_has_some_properties)
34494         (interval_has_some_properties_list, add_properties)
34495         (remove_properties, get_char_property_and_overlay)
34496         (Fnext_single_char_property_change)
34497         (Fprevious_single_char_property_change, add_text_properties_1)
34498         (Fremove_text_properties, Fremove_list_of_text_properties)
34499         (copy_text_properties):
34500         * src/tparam.c (tparam1):
34501         * src/undo.c (record_change, record_property_change)
34502         (syms_of_undo):
34503         Use 'true' and 'false' for booleans.
34505 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
34507         * lisp/vc/vc-git.el (vc-git-find-file-hook):
34508         Call `smerge-start-session' even when dealing with a stash
34509         conflict (bug#20292).
34511 2015-04-19  Vibhav Pant  <vibhavp@gmail.com>
34513         Add option to eshell/clear to clear scrollback.
34514         * lisp/eshell/esh-mode.el (eshell/clear-scrollback): New function.
34515         (eshell/clear): Add an optional SCROLLBACK argument.  If non-nil,
34516         scrollback contents are cleared.
34517         * etc/NEWS: Describe change.
34518         * doc/misc/eshell.texi: Add entry for `clear'.
34520 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
34522         * src/widget.c (set_frame_size): Prefer 'int' to 'unsigned'
34523         where either will do.
34525 2015-04-19  Steve Purcell  <steve@sanityinc.com>
34527         Assume package archive-contents are UTF8-encoded
34528         * lisp/emacs-lisp/package.el (package--read-archive-file):
34529         Set `coding-system-for-read' explicitly to 'utf-8 when reading the
34530         downloaded and cached archive-contents files, so that non-ASCII
34531         characters in package descriptions are displayed correctly in the
34532         `list-packages' menu.  (Bug#20231)
34534 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
34536         Abort when looking at stashed changes
34537         * lisp/vc/vc-git.el (vc-git-find-file-hook): Abort when looking at
34538         stashed changes (bug#20292).
34540 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
34542         Refactor low-level printing for simplicity
34543         * src/print.c (PRINTDECLARE): Remove.  Move its contents into
34544         PRINTPREPARE; doable now that we assume C99.  All callers changed.
34545         (PRINTCHAR): Remove, as it adds more mystery than clarity.
34546         All callers changed.
34547         (strout): Assume that caller computes length.  All callers changed.
34548         (print_c_string): New function.
34549         (write_string, write_string_1): Compute length instead of asking
34550         the caller to compute it.  All callers changed.
34551         (write_string): Simplify by using write_string_1.
34552         (write_string_1): Simplify by using print_c_string.
34553         (Fterpri): Compute default val more clearly.
34554         (Fprin1_to_string, print_object):
34555         Assume C99 to avoid unnecessary nesting.
34556         (print_object): Prefer print_c_string to multiple printchar, or
34557         to calling strout with -1 length.  Coalesce into sprintf when
34558         this is easy.
34560 2015-04-18  Paul Eggert  <eggert@cs.ucla.edu>
34562         Prefer "Bug#1234" in commit messages (Bug#20325)
34563         * .dir-locals.el (log-edit-mode): Don't rewrite Bug#,
34564         as this isn't useful for Git.
34565         * CONTRIBUTE: Suggest "Bug#1234" instead of "Fixes: debbugs:1234".
34567 2015-04-18  Glenn Morris  <rgm@gnu.org>
34569         * lisp/files.el (auto-mode-alist): Use conf mode for gitconfig, hgrc.
34570         (Bug#19506)
34572 2015-04-18  Tom Willemse  <tom@ryuslash.org>  (tiny change)
34574         * lisp/elec-pair.el (electric-pair-post-self-insert-function):
34575         Do not use `chomp' as a function.  (Bug#19505)
34577 2015-04-18  Glenn Morris  <rgm@gnu.org>
34579         * lisp/net/browse-url.el (browse-url, browse-url-at-point): Doc fixes.
34581         * doc/emacs/misc.texi (Sorting): Small edit.
34582         (Bug#19896)
34584         * admin/admin.el (make-manuals): Add emacs-xtra in pdf and ps.
34586 2015-04-18  Simen Heggestøyl  <simenheg@gmail.com>
34588         css-mode.el: Support multi-line comment filling
34589         (Bug#20256)
34590         * lisp/textmodes/css-mode.el (css-fill-paragraph): Support multi-line
34591         comment filling.
34592         (css-adaptive-fill): New function.
34593         (css-mode): Set `adaptive-fill-function'.
34594         (scss-mode): Set `comment-continue'.
34596 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
34598         * lisp/emacs-lisp/seq.el (seq-concatenate, seq-into):
34599         Better error messages.
34601 2015-04-18  Ivan Radanov Ivanov  <ivanradanov@yahoo.co.uk>  (tiny change)
34603         Minor improvements in Bulgarian input methods
34604         * lisp/leim/quail/cyrillic.el (bulgarian-phonetic, bulgarian-bds):
34605         Replace U+042C with U+045D, as the former character is not used in
34606         the modern Bulgarian language.
34607         (Bug#20350)
34609 2015-04-17  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
34611         Improve EUDC manual
34612         * doc/misc/eudc.texi (LDAP Configuration): Mention simple and SASL
34613         authentication schemes.  Add index items.  Shorten example server
34614         name.
34616 2015-04-17  Dmitry Gutov  <dgutov@yandex.ru>
34618         Don't show both feature and function with the same name
34619         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
34620         Don't show both feature and function with the same name.
34622         (elisp--xref-identifier-location): Skip variable, if it's also
34623         a function
34624         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
34625         Avoid returning both the variable and the function for the same
34626         minor mode.
34628 2015-04-17  Wolfgang Jenkner  <wjenkner@inode.at>
34630         Fix fontification of keywords clobbered by the prompt
34631         * lisp/comint.el (comint-output-filter): Remove the uses of
34632         with-silent-modifications I introduced as part of the last change.
34633         This fixes, e.g., erratically missing highlighting when running
34634         ./configure --help; ./configure in a shell-mode buffer with
34635         compilation-shell-minor-mode turned on.
34637 2015-04-17  Glenn Morris  <rgm@gnu.org>
34639         * admin/authors.el (authors-valid-file-names)
34640         (authors-renamed-files-alist): Additions.
34642 2015-04-17  Stefan Monnier  <monnier@iro.umontreal.ca>
34644         * lisp/indent.el (indent-region): Don't deactivate the mark.
34645         (Bug#20357)
34647 2015-04-17  Sam Steingold  <sds@gnu.org>
34649         * lisp/net/rcirc.el (defun-rcirc-command): Mark `target' as ignorable.
34651 2015-04-16  Leo Liu  <sdl.web@gmail.com>
34653         * lisp/progmodes/xref.el (xref-push-marker-stack): Add optional arg.
34655 2015-04-16  Stefan Monnier  <monnier@iro.umontreal.ca>
34657         * lisp/erc/erc-pcomplete.el (erc-pcomplete):
34658         Don't use `pcomplete' any more.
34660 2015-04-16  Glenn Morris  <rgm@gnu.org>
34662         * admin/authors.el (authors-lax-changelogs): Update for erc changes.
34664 2015-04-16  Eli Zaretskii  <eliz@gnu.org>
34666         Don't link with -ljpeg on MS-Windows, to avoid dependency on DLL
34667         * configure.ac (LIBJPEG): Leave it empty for MinGW.
34669 2015-04-16  Glenn Morris  <rgm@gnu.org>
34671         * lisp/replace.el (query-replace-from-to-separator):
34672         Delay initialization to avoid rogue setting after startup.
34674 2015-04-16  Paul Eggert  <eggert@cs.ucla.edu>
34676         Pre-4.6 GCC succeeds with unknown option
34677         * configure.ac (emacs_cv_prog_cc_nopie): Port to pre-4.6 GCC.
34678         (Bug#20338)
34680 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
34682         '[:graph:]' now excludes whitespace, not just ' '
34683         * doc/lispref/searching.texi (Char Classes):
34684         * lisp/emacs-lisp/rx.el (rx): Document [:graph:] to be [:print:]
34685         sans whitespace (not sans space).
34686         * src/character.c (graphicp): Exclude all Unicode whitespace chars,
34687         not just space.
34688         * src/regex.c (ISGRAPH): Exclude U+00A0 (NO-BREAK SPACE).
34690 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
34692         * lisp/subr.el (substitute-key-definition-key, special-form-p)
34693         (macrop): Drop deprecated second arg to indirect-function.
34694         (looking-back): Make the second arg non-optional.
34696         * lisp/org/org-clock.el (org-x11idle-exists-p): Be honest about which
34697         command is actually sent to the shell.
34699 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
34701         Port jpeg configuration to Solaris 10 with Sun C
34702         * configure.ac: Check for jpeglib 6b by trying to link it, instead
34703         of relying on cpp magic that has problems in practice.  Check for
34704         both jpeglib.h and jerror.h features.  Remove special case for
34705         mingw32, which should no longer be needed (and if it were needed,
34706         should now be addressable by hotwiring emacs_cv_jpeglib).
34707         (Bug#20332)
34709 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
34711         Move some Elisp-specific code from lisp-mode.el to elisp-mode.el
34712         * lisp/emacs-lisp/lisp-mode.el (lisp--el-font-lock-flush-elisp-buffers):
34713         Move to elisp-mode.el.
34714         (lisp-mode-variables): (Re)move elisp-specific settings.
34715         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode): Add settings removed
34716         from lisp-mode-variables.
34717         (elisp--font-lock-flush-elisp-buffers): New function, moved from
34718         lisp-mode.el.
34720         * lisp/emacs-lisp/lisp-mode.el (lisp--el-non-funcall-position-p):
34721         Avoid pathological slowdown at top-level in large file.
34723 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
34725         Standardize names of ChangeLog history files
34726         Suggested by Glenn Morris in:
34727         https://lists.gnu.org/r/emacs-devel/2015-04/msg00678.html
34728         * Makefile.in (install-man): Don't treat ChangeLog.1 as a man page.
34729         * doc/man/ChangeLog.1: Rename back from doc/man/ChangeLog.01.
34730         * lisp/erc/ChangeLog.1: New file, containing the old contents of ...
34731         * lisp/erc/ChangeLog.01, lisp/erc/ChangeLog.02, lisp/erc/ChangeLog.03:
34732         * lisp/erc/ChangeLog.04, lisp/erc/ChangeLog.05, lisp/erc/ChangeLog.06:
34733         * lisp/erc/ChangeLog.07, lisp/erc/ChangeLog.08, lisp/erc/ChangeLog.09:
34734         Remove.
34736         Split top-level entries into pre- and post-April 7
34737         This more clearly distingiushes pre-April-7 ChangeLog entries (which
34738         are for top-level files only) from post-April-7 entries (which are
34739         about files at all levels.  Problem reported by Glenn Morris in:
34740         https://lists.gnu.org/r/emacs-devel/2015-04/msg00678.html
34741         * ChangeLog.1: Move post-April-7 entries from here ...
34742         * ChangeLog.2: ... to this new file.
34743         * Makefile.in (CHANGELOG_HISTORY_INDEX_MAX): Bump to 2.
34745 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
34747         Fix recent cus-start changes that added customize-rogues
34748         * lisp/cus-start.el (custom-delayed-init-variables): Initialize the
34749         vars early.
34750         * lisp/loadup.el ("cus-start"): Move to the end to reduce
34751         customize-rogue.
34753 2015-04-15  Nicolas Petton  <nicolas@petton.fr>
34755         Define cl-concatenate as an alias to seq-concatenate
34756         * lisp/emacs-lisp/cl-extra.el (cl-concatenate): Removes duplicated
34757           code by making cl-concatenate an alias to seq-concatenate.
34759 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
34761         * src/lread.c (intern_1): Make sure we'd find the symbol we add
34762         (Bug#20334)
34763         * src/xfaces.c (resolve_face_name): Don't use `intern' with
34764         Lisp_Strings.
34766 2015-04-15  Glenn Morris  <rgm@gnu.org>
34768         * doc/lispref/sequences.texi (Sequence Functions): Fix typo in previous.
34770 2015-04-15  Lars Magne Ingebrigtsen  <larsi@gnus.org>
34772         Clean up gnus-uu saving code slightly
34773         * lisp/gnus/gnus-uu.el (gnus-uu-save-article): Make the
34774         save-restriction/widen calls make more sense.
34776 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
34778         Make [:graph:] act like [:print:] sans space
34779         In POSIX [[:print:]] is equivalent to [ [:graph:]], so change
34780         [:graph:] so that it matches everything that [:print:] does,
34781         except for space.
34782         * doc/lispref/searching.texi (Char Classes):
34783         * etc/NEWS:
34784         * lisp/emacs-lisp/rx.el (rx):
34785         Document [:graph:] to be [:print:] sans ' '.
34786         * src/character.c, src/character.h (graphicp): New function.
34787         * src/regex.c (ISGRAPH) [emacs]: Use it.
34788         (BIT_GRAPH): New macro.
34789         (BIT_PRINT): Increase to 0x200, to make room for BIT_GRAPH.
34790         (re_wctype_to_bit) [! WIDE_CHAR_SUPPORT]:
34791         Return BIT_GRAPH for RECC_GRAPH.
34792         (re_match_2_internal) [emacs]: Use ISGRAPH if BIT_GRAPH,
34793         and ISPRINT if BIT_PRINT.
34795 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
34797         automated/eieio-test-methodinvoke.el (make-instance) <(subclass C)>:
34798         Don't use call-next-method in a cl-defmethod.
34800         * lisp/emacs-lisp/eieio-core.el (eieio--class): Derive from cl--class
34801         (eieio--class-p): Remove, provided by cl-defstruct.
34803 2015-04-14  Nicolas Petton  <nicolas@petton.fr>
34805         Add seq-intersection and seq-difference to the seq library
34806         * lisp/emacs-lisp/seq.el (seq-intersection, seq-difference):
34807         New functions.
34808         * test/automated/seq-tests.el: Add tests for seq-intersection and
34809         seq-difference.
34810         * doc/lispref/sequences.texi: Add documentation for seq-intersection
34811         and seq-difference.
34813 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
34815         * lisp/emacs-lisp/eieio-core.el (class-abstract-p): Don't inline,
34816         to avoid leaking internals.
34818 2015-04-14  Sam Steingold  <sds@gnu.org>
34820         package--ensure-init-file: widen requires save-restriction
34822 2015-04-14  Eli Zaretskii  <eliz@gnu.org>
34824         Improve the commit-msg Git hook for unibyte environments
34825         * build-aux/git-hooks/commit-msg: Set LC_ALL=C, before running Awk
34826         in unibyte environments.  (Suggested by Paul Eggert
34827         <eggert@cs.ucla.edu>.)  Use a more accurate approximation to
34828         [:print:], based on UTF-8 sequences of the unprintable characters.
34830         Describe problems with cursor caused by Windows Magnifier
34831         * etc/PROBLEMS: Describe the problem with cursor shape on
34832         MS-Windows due to Windows Magnifier.
34833         (Bug#20271)
34835         Make [:print:] support non-ASCII characters correctly
34836         * src/regex.c (ISPRINT): Call 'printablep' for multibyte characters.
34837         (BIT_PRINT): New bit mask.
34838         (re_wctype_to_bit): Return BIT_PRINT for RECC_PRINT.
34839         * src/character.c (printablep): New function.
34840         * src/character.h (printablep): Add prototype.
34841         * lisp/emacs-lisp/rx.el (rx): Doc fix: document the new behavior
34842         of 'print', 'alnum', and 'alphabetic'.
34843         * doc/lispref/searching.texi (Char Classes): Document the new
34844         behavior of [:print:].
34845         * etc/NEWS: Mention the new behavior of [:print:].
34847         Assign correct general-category and names to surrogates
34848         * admin/unidata/unidata-gen.el (unidata-setup-list): Don't ignore
34849         surrogates.  This avoids assigning them the default
34850         general-category of 'Cn', i.e. unassigned codepoints.
34851         (unidata-get-name): Give surrogates synthetic names.
34853 2015-04-14  Paul Eggert  <eggert@cs.ucla.edu>
34855         Assume C89 offsetof in xterm.c, xlwmenu.c
34856         * lwlib/xlwmenu.c (offset):
34857         * src/xterm.c (cvt_string_to_pixel_args):
34858         Use offsetof, not XtOffset.
34860 2015-04-14  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
34862         Assume C89 offsetof in widget.c
34863         * src/widget.c (XtOffset): Remove; no longer needed.
34864         (offset): Implement via offsetof instead of via pre-C89 XtOffset hack.
34866         Fix think-o in previous patch
34867         * src/window.c (count_windows, get_leaf_windows):
34868         Don't optimize count_windows incorrectly.
34870 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
34872         Avoid some int overflows in window.c
34873         * src/print.c (print_object):
34874         * src/window.c (sequence_number):
34875         * src/window.h (struct window.sequence_number):
34876         Don't assume window sequence number fits in int.
34877         * src/window.c (window_select_count):
34878         * src/window.h (struct window.use_time, window_select_count):
34879         Don't assume window use time fits in int.
34880         * src/window.c (Fsplit_window_internal):
34881         Don't assume user-supplied integer, or sum, fits in int.
34882         (Fset_window_configuration, count_windows, get_leaf_windows)
34883         (save_window_save, Fcurrent_window_configuration):
34884         Use ptrdiff_t for object counts.
34885         (Fset_window_configuration): Omit unused local 'n'.
34886         (count_windows): Simplify by writing in terms of get_leaf_windows.
34887         (get_leaf_windows): Don't store through FLAT if it's null.
34888         (extract_dimension): New static function.
34889         (set_window_margins, set_window_fringes, set_window_scroll_bars):
34890         Use it to avoid undefined behavior when converting user-supplied
34891         integer to 'int'.
34893 2015-04-13  Glenn Morris  <rgm@gnu.org>
34895         Minor doc copyedits
34896         * doc/emacs/custom.texi (Init Examples): Tweak example, replace typo.
34897         * doc/lispintro/emacs-lisp-intro.texi (condition-case): Typo fix.
34899 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
34901         [Gnus] Catch the invalid-operation that idna.el will issue
34902         * lisp/gnus/gnus-art.el (gnus-use-idna):
34903         * lisp/gnus/gnus-sum.el (gnus-summary-idna-message):
34904         * lisp/gnus/message.el (message-use-idna):
34905         Catch the invalid-operation that idna.el will issue.
34907 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
34909         * doc/lispref/processes.texi (Shell Arguments): Prefer diff -u.
34911 2015-04-13  Sam Steingold  <sds@gnu.org>
34913         package--ensure-init-file: widen before looking for
34914         "(package-initialize)"
34916 2015-04-13  Dmitry Gutov  <dgutov@yandex.ru>
34918         Change diff-switches default to `-u' (Bug#20290)
34919         * doc/emacs/files.texi (Comparing Files): Document the new default
34920         value of `diff-switches'.
34921         * doc/emacs/trouble.texi (Sending Patches): Document the preference
34922         for unified diff format.  Escape the plus in the suggested `-F' regexp
34923         value.
34924         * lisp/vc/diff.el (diff-switches): Change the default to `-u'.
34926 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
34928         (gnus-group--setup-tool-bar-update): Fix last change
34929         * lisp/gnus/gnus-group.el (gnus-group--setup-tool-bar-update):
34930         cursor-sensor-functions should be a list of functions.
34932 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
34934         * lisp/gnus/gnus-topic.el (gnus-topic-mode):
34935         Use gmm-called-interactively-p.
34937 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
34939         * lisp/loadup.el ("cus-start"): Load it after loaddefs.el
34940         (Bug#20321)
34941         * lisp/cus-start.el (read-buffer-function): Don't advertise
34942         iswitchb-read-buffer any more.
34943         (iswitchb): Don't tweak this obsolete group any more.
34945 2015-04-13  Artur Malabarba  <bruce.connor.am@gmail.com>
34947         * lisp/emacs-lisp/package.el: Fix package--ensure-init-file.
34949         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Implement docstrings.
34950         Adding a string after a constructor's argument list will use
34951         that string as the constructor function docstring.  If this string
34952         is absent but the struct itself was given a docstring, use that as
34953         the constructor's docstring.
34954         Fixes bug#17284.
34956 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
34958         Deprecate `intangible' and `point-entered' properties
34959         * lisp/emacs-lisp/cursor-sensor.el: New file.
34960         * lisp/simple.el (pre-redisplay-functions): New hook.
34961         (redisplay--pre-redisplay-functions): New function.
34962         (pre-redisplay-function): Use it.
34963         (minibuffer-avoid-prompt): Mark obsolete.
34964         (redisplay--update-region-highlight): Adapt it to work as a function on
34965         pre-redisplay-functions.
34966         * lisp/cus-start.el (minibuffer-prompt-properties--setter): New fun.
34967         (minibuffer-prompt-properties): Use it.  Use cursor-intangible rather
34968         than point-entered to make the prompt intangible.
34969         * lisp/forms.el: Move `provide' calls to the end.
34970         (forms-mode): Don't use `run-hooks' on a local var.
34971         (forms--make-format, forms--make-format-elt-using-text-properties):
34972         Use cursor-intangible rather than `intangible'.
34973         (forms-mode): Enable cursor-intangible-mode.
34974         * lisp/isearch.el (isearch-mode): Use defvar-local.
34975         (cursor-sensor-inhibit): Declare.
34976         (isearch-mode): Set cursor-sensor-inhibit.
34977         (isearch-done): Set it back.
34978         (isearch-open-overlay-temporary, isearch-open-necessary-overlays)
34979         (isearch-close-unnecessary-overlays): Don't bother with `intangible'
34980         any more.
34981         * lisp/ses.el (ses-localvars): Remove `mode-line-process'.
34982         (ses-sym-rowcol, ses-cell-value, ses-col-width, ses-col-printer):
34983         Add Edebug spec.
34984         (ses-goto-print, ses-print-cell, ses-adjust-print-width)
34985         (ses-goto-data, ses-setup, ses-copy-region): Don't let-bind
34986         inhibit-point-motion-hooks any more.
34987         (ses--cell-at-pos, ses--curcell): New functions, extracted from
34988         ses-set-curcell.
34989         (ses-set-curcell): Use them.
34990         (ses-print-cell, ses-setup): Use cursor-intangible instead of
34991         `intangible'.  Make sure cursor-intangible isn't sticky at BOB.
34992         (ses-print-cell-new-width, ses-reprint-all, ses-recalculate-all):
34993         Use ses--cell-at-pos.
34994         (ses--mode-line-process, ses--cursor-sensor-highlight): New functions,
34995         extracted from ses-command-hook.  Make them work with multiple windows
34996         displaying the same buffer.
34997         (ses-mode): Use them via mode-line-process and pre-redisplay-functions.
34998         Enable cursor-intangible-mode.
34999         (ses-command-hook): Remove cell highlight and mode-line update code.
35000         (ses-forward-or-insert, ses-copy-region-helper, ses-sort-column):
35001         Update for new name of text-property holding the cell name.
35002         (ses-rename-cell): Don't mess with mode-line-process.
35003         * lisp/erc/erc-stamp.el (erc-add-timestamp): Use the new
35004         cursor-sensor-functions property instead of point-entered.
35005         (erc-insert-timestamp-right, erc-format-timestamp):
35006         Use cursor-intangible rather than `intangible'.
35007         (erc-munge-invisibility-spec): Use add-to-invisibility-spec and
35008         remove-from-invisibility-spec.  Enable cursor-intangible-mode and
35009         cursor-sensor-mode if needed.
35010         (erc-echo-timestamp): Adapt to calling convention of
35011         cursor-sensor-functions.
35012         (erc-insert-timestamp-right): Remove unused vars `current-window' and
35013         `indent'.
35014         * lisp/gnus/gnus-group.el (gnus-tmp-*): Declare.
35015         (gnus-update-group-mark-positions): Remove unused `topic' var.
35016         (gnus-group-insert-group-line): Remove unused var `header'.
35017         (gnus-group--setup-tool-bar-update): New function.
35018         (gnus-group-insert-group-line): Use it.
35019         (gnus-group-update-eval-form): Declare local
35020         dynamically-bound variables.
35021         (gnus-group-unsubscribe-group): Use \` and \' to match string bounds.
35022         * lisp/gnus/gnus-topic.el (gnus-topic-jump-to-topic)
35023         (gnus-group-prepare-topics, gnus-topic-update-topic)
35024         (gnus-topic-change-level, gnus-topic-catchup-articles)
35025         (gnus-topic-remove-group, gnus-topic-delete, gnus-topic-indent):
35026         Use inhibit-read-only.
35027         (gnus-topic-prepare-topic): Use gnus-group--setup-tool-bar-update.
35028         (gnus-topic-mode): Use define-minor-mode and derived-mode-p.
35029         * lisp/textmodes/reftex-index.el (reftex-display-index):
35030         Use cursor-intangible-mode if available.
35031         (reftex-index-post-command-hook): Check cursor-intangible.
35032         * lisp/textmodes/reftex-toc.el (reftex-toc):
35033         Use cursor-intangible-mode if available.
35034         (reftex-toc-recenter, reftex-toc-post-command-hook):
35035         Check cursor-intangible.
35036         * lisp/textmodes/sgml-mode.el: Use lexical-binding.
35037         (sgml-tag): Use cursor-sensor-functions instead of point-entered.
35038         (sgml-tags-invisible): Use with-silent-modifications and
35039         inhibit-read-only.  Enable cursor-sensor-mode.
35040         (sgml-cursor-sensor): Rename from sgml-point-entered and adjust to
35041         calling convention of cursor-sensor-functions.
35042         * lisp/textmodes/table.el (table-cell-map-hook, table-load-hook)
35043         (table-point-entered-cell-hook, table-point-left-cell-hook):
35044         Don't autoload.
35045         (table-cell-entered-state): Remove var.
35046         (table--put-cell-point-entered/left-property)
35047         (table--remove-cell-properties):
35048         Use cursor-sensor-functions rather than point-entered/left.
35049         (table--point-entered/left-cell-function): Merge
35050         table--point-entered-cell-function and table--point-left-cell-function
35051         and adjust to calling convention of cursor-sensor-functions.
35053         Update ldef-boots.el
35055         * lisp/emacs-lisp/pcase.el (pcase-dolist): Autoload as well.
35057         * doc/misc/eieio.texi: Don't advertise now obsolete constructs
35059         Collapse successive char deletions in the undo log
35060         * src/cmds.c (remove_excessive_undo_boundaries): New function,
35061         extracted from Fself_insert_command.
35062         (Fdelete_char, Fself_insert_command): Use it.
35063         * src/fileio.c (Fmake_symbolic_link): Rename arg to `target'.
35064         * src/keyboard.c (syms_of_keyboard): `top-level' shouldn't be special.
35066         xterm and OSC 52: Add NEWS entry, and tweak the code
35067         * lisp/term/xterm.el (gui-set-selection) <nil>: Move method definition
35068         to top-level.
35069         (terminal-init-xterm-activate-set-selection): Set a terminal property.
35070         (xterm--set-selection): Use it instead of checking the value of
35071         `terminal-initted'.  Don't use string-bytes.
35073 2015-04-13  Philipp Stephani  <p.stephani2@gmail.com>
35075         xterm.el: Implement OSC-52 functionality for setting the X selection
35076         * lisp/term/xterm.el (xterm-max-cut-length): New var.
35077         (xterm--set-selection, terminal-init-xterm-activate-set-selection):
35078         New funs.
35079         (terminal-init-xterm, xterm--version-handler): Use them.
35081 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
35083         Remove left over code from when we used an obsolete/loaddefs.el file
35084         * lisp/subr.el (do-after-load-evaluation): Remove left over code from
35085         when we used an obsolete/loaddefs.el file.
35087         * lisp/cedet/semantic/fw.el (semantic-exit-on-input)
35088         (semanticdb-without-unloaded-file-searches): Use declare.
35089         (semantic-fw-add-edebug-spec): Remove.
35091         * lisp/completion.el (completion-lisp-mode-hook):
35092         Use completion-separator-chars rather than local key binding.
35094         * src/*.c: Set deactivate_mark buffer-locally
35095         (Bug#20260)
35096         * src/insdel.c (prepare_to_modify_buffer_1):
35097         * src/fileio.c (Finsert_file_contents): Set deactivate_mark
35098         buffer-locally.
35100 2015-04-12  Fabián Ezequiel Gallina  <fgallina@gnu.org>
35102         python.el: Keep symmetry on sexp navigation with parens
35103         (Bug#19954)
35104         * lisp/progmodes/python.el
35105         (python-nav--forward-sexp): Add argument skip-parens-p.
35106         (python-nav-forward-sexp, python-nav-backward-sexp)
35107         (python-nav-forward-sexp-safe)
35108         (python-nav-backward-sexp-safe): Use it.
35109         * test/automated/python-tests.el
35110         (python-nav-forward-sexp-1): Fix test.
35112 2015-04-12  João Távora  <joaotavora@gmail.com>
35114         Don't use `setq-local' in Gnus code
35115         This might break upstream builds with older Emacsen
35116         * lisp/gnus/message.el (message-mode): Use `set' and
35117         `make-local-variable' instead of `setq-local'.
35119 2015-04-12  Paul Eggert  <eggert@cs.ucla.edu>
35121         Update Makefile.in's .PHONY dependencies
35122         * Makefile.in (change-history-commit, master-branch-is-current)
35123         (no-ChangeLog): Now phony.
35125         Remove configure's --with-mmdf option
35126         * configure.ac (MAIL_USE_MMDF): Remove.
35127         * etc/NEWS: Document this.
35128         * lib-src/movemail.c: Assume MAIL_USE_MMDF is not defined.
35129         (Bug#20308)
35131         * doc/man/ChangeLog.01: Rename from doc/man/ChangeLog.1.
35132         That way, 'make install' won't think it's a man page.
35133         Reported by Ashish SHUKLA in:
35134         https://lists.gnu.org/r/emacs-devel/2015-04/msg00656.html
35136         Improve 'make change-history' prereq tests
35137         * Makefile.in (gen_origin): Fix to match what's in the master branch.
35138         (no-ChangeLog, master-branch-is-current): New rules.
35139         (change-history): Depend on them, to avoid similar future problems.
35140         Escape the local-variables string to pacify Emacs when editing
35141         Makefile.in.
35143 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
35145         * test/automated/package-test.el (with-package-test):
35146         Kill Packages buffer.
35148         * lisp/emacs-lisp/package.el: Improve transaction y-or-n prompt.
35149         (package-menu--prompt-transaction-p): Prompt for "Delete" first,
35150         "Upgrade" last, and use capitalized instead of all-caps.
35152         * lisp/emacs-lisp/package.el: Completely silence async operations.
35153         (package--make-autoloads-and-stuff): Silence autoloads.
35154         (package--save-selected-packages): New function, silences
35155         `customize-save-variable'.
35156         (package--user-selected-p, package-install-from-buffer)
35157         (package-delete, package-install): Use it.
35158         (package-install-from-archive)
35159         (package-menu--perform-transaction): Silence.
35160         (package-menu-execute): Feedback when operation starts.
35162         Use delay-mode-hooks when visiting the init-file
35163         * lisp/emacs-lisp/package.el (package--ensure-init-file):
35164         delay-mode-hooks.
35165         * lisp/cus-edit.el (custom-save-all): delay-mode-hooks.
35167         * lisp/files.el: Only message when saving if save-silently is nil.
35168         (save-silently): New variable.
35169         (files--message): New function.
35170         (find-file-noselect, save-buffer, basic-save-buffer)
35171         (basic-save-buffer-2, save-some-buffers, not-modified)
35172         (append-to-file): Use them.
35174 2015-04-12  Johan Bockgård  <bojohan@gnu.org>
35176         Support debug declarations in pcase macros
35177         * lisp/emacs-lisp/pcase.el (pcase-MACRO): New edebug spec.
35178         (pcase-UPAT): Use it.  Remove "`".
35179         (pcase--edebug-match-macro): New function.
35180         (pcase-defmacro): Support debug declarations.
35181         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
35182         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>:
35183         * lisp/emacs-lisp/pcase.el (\`): <pcase-defmacro>:
35184         Add debug declaration.
35186         pcase.el: Edebug support for `app' and vector patterns
35187         * lisp/emacs-lisp/pcase.el (pcase-FUN): New edebug spec.
35188         (pcase-UPAT): Use it.  Support `app' patterns.
35189         (pcase-QPAT): Support vector patterns.
35191         edebug.el: Disambiguate vector specifications
35192         * lisp/emacs-lisp/edebug.el (edebug-match-list): Always treat
35193         `(vector ...)' as a vector specification, not as a sublist.
35195         (gnus-summary-refer-thread): Don't clobber unread articles
35196         This fixes a bug where `A T' causes "random" articles to become marked
35197         as read.
35198         * lisp/gnus/gnus-sum.el (gnus-summary-refer-thread): Make sure
35199         gnus-newsgroup-unreads remains sorted.
35201         mouse-sel.el: Fix mouse-sel-get-selection-function
35202         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
35203         Use gui--last-selected-text-primary instead of no longer existing
35204         gui-last-selected-text.
35206         * lisp/rect.el (delete-whitespace-rectangle-line): Don't cross EOL.
35208         * lisp/net/nsm.el (nsm-query-user): Use cursor-in-echo-area.
35210 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
35212         * lisp/emacs-lisp/package.el (list-packages): Avoid redundant generate.
35214         * lisp/emacs-lisp/package.el (list-packages): Call refresh in
35215         right buffer.
35217         * lisp/emacs-lisp/bytecomp.el: Silence noninteractive compilations.
35218         (byte-compile--interactive): New var.
35219         (byte-compile--message): New function.
35220         (byte-compile-log-1, byte-force-recompile)
35221         (byte-recompile-directory, byte-recompile-file)
35222         (byte-compile-file, compile-defun)
35223         (byte-compile-file-form-defmumble, byte-compile)
35224         (byte-compile-file-form-defalias, display-call-tree): Use it.
35226         * lisp/files.el: Don't message when nothing happened.
35227         (save-some-buffers, basic-save-buffer): Before messaging to say
35228         "nothing was saved" check if (called-interactively-p 'any).
35230 2015-04-12  João Távora  <joaotavora@gmail.com>
35232         Summary: Improve sexp-based movement in message-mode
35233         Works by giving citations and smileys a different syntax.  This helps
35234         modes like `show-paren-mode', `electric-pair-mode', and C-M-*
35235         sexp-based movement.
35236         * lisp/gnus/message.el (message--syntax-propertize): New function.
35237         (message-mode): Set syntax-related vars.
35238         (message-smileys): New variable.
35239         * test/automated/message-mode-tests.el: New file
35241 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
35243         Use bool for boolean in window.c
35244         * src/window.c: Omit unnecessary static function decls.
35245         (adjust_window_count, select_window, Fselect_window)
35246         (window_body_width, Fwindow_body_height, Fwindow_body_width)
35247         (set_window_hscroll, check_window_containing, Fwindow_at)
35248         (Fwindow_end, Fset_window_start, Fpos_visible_in_window_p)
35249         (unshow_buffer, replace_window, recombine_windows)
35250         (add_window_to_list, candidate_window_p, next_window)
35251         (Fnext_window, Fprevious_window, window_loop, check_all_windows)
35252         (Fget_buffer_window, Fdelete_other_windows_internal)
35253         (replace_buffer_in_windows_safely, set_window_buffer)
35254         (Fset_window_buffer, Fforce_window_update)
35255         (temp_output_buffer_show, make_parent_window)
35256         (window_resize_check, window_resize_apply, Fwindow_resize_apply)
35257         (resize_frame_windows, Fsplit_window_internal)
35258         (Fdelete_window_internal, grow_mini_window, shrink_mini_window)
35259         (Fresize_mini_window_internal, mark_window_cursors_off)
35260         (window_scroll, window_scroll_pixel_based)
35261         (window_scroll_line_based, scroll_command, Fscroll_other_window)
35262         (Fscroll_left, Fscroll_right, displayed_window_lines, Frecenter)
35263         (Fmove_to_window_line, Fset_window_configuration)
35264         (delete_all_child_windows, apply_window_adjustment)
35265         (set_window_fringes, set_window_scroll_bars)
35266         (Fset_window_vscroll, foreach_window, foreach_window_1)
35267         (compare_window_configurations, Fcompare_window_configurations):
35268         Prefer 'bool', 'true', and 'false' for booleans.
35269         * src/window.h (WINDOW_MODE_LINE_LINES)
35270         (WINDOW_HEADER_LINE_LINES): Omit unnecessary "!!" on bool value.
35272 2015-04-11  Artur Malabarba  <bruce.connor.am@gmail.com>
35274         Speed up byte-compilation and autoload generation by avoiding mode-hooks
35275         This prevents emacs-lisp-mode-hook from being run everytime an
35276         autoload file is generated, which can account for a fraction of
35277         package installation time depending on the hooks the user has
35278         configured.
35279         * lisp/emacs-lisp/bytecomp.el (byte-compile-file): Use delay-mode-hooks.
35280         * lisp/emacs-lisp/autoload.el (autoload-find-file)
35281         (autoload-find-generated-file): Use delay-mode-hooks.
35283         * lisp/emacs-lisp/package.el: Improve `package-menu-refresh'.
35284         (package-menu-refresh): Respect async and do new package checking.
35285         (list-packages): Use `package-menu-refresh' instead of repeating code.
35287         * lisp/emacs-lisp/package.el: Improve package-menu-quick-help.
35288         (package--quick-help-keys): New variable.
35289         (package--prettify-quick-help-key): New function.
35290         (package-menu-quick-help): Use it.
35292         * lisp/emacs-lisp/package.el: Fix initially wrong compat table.
35293         (package--build-compatibility-table): Require finder.
35295         * test/automated/package-test.el: Fix new test.
35297         * lisp/emacs-lisp/package.el: Silence async operations.
35298         (package--silence): New variable.
35299         (package--message): New function.
35300         (package-import-keyring, package-refresh-contents)
35301         (package-compute-transaction, package-install, package-delete)
35302         (package-menu--perform-transaction, package-menu-execute): Use it.
35304         * test/automated/package-test.el: Test async functionality.
35305         (package-test-update-archives-async): New test.
35307 2015-04-11  Daiki Ueno  <ueno@gnu.org>
35309         Utilize `make-process' in epg.el
35310         * lisp/epg.el (epg-error-output): Abolish.
35311         (epg-context): New slot `error-buffer'.
35312         (epg--start): Use `make-process' and `make-pipe-process'.
35313         (epg--process-filter): Remove code separating stderr from stdout.
35314         (epg-wait-for-completion): Simplify `error-output' handling.
35315         (epg-reset): Dispose error buffer.
35317 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
35319         * .gitignore: Ignore doc temps and outputs.
35321         Port commit-msg to MSYS Bash+Gawk
35322         See Eli Zaretskii in:
35323         https://lists.gnu.org/r/emacs-devel/2015-04/msg00610.html
35324         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format)
35325         (cent_sign, print_at_sign, at_sign): Revert previous change.
35326         (print_at_sign): Prepend "BEGIN".
35327         (at_sign): Redirect from /dev/null to be safer with pre-POSIX awk.
35329         Port commit-msg to broken MS-Windows shell
35330         * build-aux/git-hooks/commit-msg (cent_sign):
35331         Just use UTF-8 here rather than ASCII + printf, as the latter fails
35332         on a broken MS-Windows shell.  Reported by Eli Zaretskii in:
35333         https://lists.gnu.org/r/emacs-devel/2015-04/msg00592.html
35335 2015-04-11  Chris Zheng  <chriszheng99@gmail.com>  (tiny change)
35337         Support GnuTLS v3.4 and later on MS-Windows
35338         * src/gnutls.c (syms_of_gnutls) <libgnutls-version>: New DEFSYM.
35339         * lisp/term/w32-win.el (dynamic-library-alist): Determine which
35340         GnuTLS DLL to load according to value of libgnutls-version.
35341         (Bug#20294)
35343 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
35345         Minor quoting etc. fixes to misc manuals
35346         Fix some minor quoting and spacing issues.  Distinguish more
35347         clearly among grave accent and apostrophe (which are ASCII) and
35348         single quote (which is not).  Prefer the standard terms
35349         "apostrophe" and "grave accent" to alternative names that can be
35350         confusing.  Use apostrophes to single-quote ASCII text.
35351         * doc/misc/remember.texi: Spell the mystic's pseudonym in UTF-8
35352         rather than approximating it in ASCII with grave accent.
35354 2015-04-11  Daiki Ueno  <ueno@gnu.org>
35356         Respect more keyword args in `make-process'
35357         * src/process.c (Fmake_process): Respect `:sentinel' and `:filter'
35358         keywords as documented.
35360 2015-04-10  Dmitry Gutov  <dgutov@yandex.ru>
35362         Extract ChangeLog entries when committing a directory
35363         * lisp/vc/vc-dispatcher.el (vc-log-edit): Update FIXME comment.
35364         * lisp/vc/log-edit.el (log-edit-changelog-insert-entries):
35365         Add a FIXME comment.
35366         (log-edit-changelog-entries): Extract from
35367         `log-edit-changelog-entries', handle FILE being a directory
35368         (https://lists.gnu.org/r/emacs-devel/2015-04/msg00555.html).
35370 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
35372         Fix problems found by --enable-gcc-warnings
35373         * src/process.c (create_process, Fmake_pipe_process)
35374         (Fmake_network_process): Omit unused locals.
35376         Fix commit-msg to handle scissors lines
35377         * build-aux/git-hooks/commit-msg:
35378         Ignore every line after a scissors line, such as a line generated
35379         by 'git commit -v'.  Problem reported by Johan Bockgård in:
35380         https://lists.gnu.org/r/emacs-devel/2015-04/msg00580.html
35382         port commit-msg to Gawk 3.0.4 (1999)
35383         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format, cent_sign)
35384         (print_at_sign, at_sign): New vars.  Use them to avoid problems
35385         Eli Zaretskii encountered with Gawk 3.0.4 (1999) on MSYS.  See:
35386         https://lists.gnu.org/r/emacs-devel/2015-04/msg00566.html
35388         Have commit-msg report commit failure
35389         * build-aux/git-hooks/commit-msg: If the commit is aborted,
35390         say so.  Simplify by doing this at the end.  Problem reported
35391         by Eli Zaretskii in:
35392         https://lists.gnu.org/r/emacs-devel/2015-04/msg00566.html
35394 2015-04-10  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
35396         Clean up LDAP Configuration section of EUDC manual
35397         * doc/misc/eudc.texi: Combine indices.
35398         (LDAP Configuration): Use command markup.  Add index entries.
35399         Change formatting.  Wrap long lines.  Add noindent markup.
35401 2015-04-10  Daiki Ueno  <ueno@gnu.org>
35403         Add facility to collect stderr of async subprocess
35404         * src/w32.h (register_aux_fd): New function declaration.
35405         * src/w32.c (register_aux_fd): New function.
35406         * src/process.h (struct Lisp_Process): New member stderrproc.
35407         * src/process.c (PIPECONN_P): New macro.
35408         (PIPECONN1_P): New macro.
35409         (Fdelete_process, Fprocess_status, Fset_process_buffer)
35410         (Fset_process_filter, Fset_process_sentinel, Fstop_process)
35411         (Fcontinue_process): Handle pipe process specially.
35412         (create_process): Respect p->stderrproc.
35413         (Fmake_pipe_process): New function.
35414         (Fmake_process): Add new keyword argument :stderr.
35415         (wait_reading_process_output): Specially handle a pipe process when
35416         it gets an EOF.
35417         (syms_of_process): Register Qpipe and Smake_pipe_process.
35418         * doc/lispref/processes.texi (Asynchronous Processes): Document
35419         `make-pipe-process' and `:stderr' keyword of `make-process'.
35420         * lisp/subr.el (start-process): Suggest to use `make-process' handle
35421         standard error separately.
35422         * test/automated/process-tests.el (process-test-stderr-buffer)
35423         (process-test-stderr-filter): New tests.
35424         * etc/NEWS: Mention new process type `pipe' and its usage with the
35425         `:stderr' keyword of `make-process'.
35427 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
35429         Minor quoting etc. fixes to lispref manual
35430         * doc/lispref/tips.texi (Documentation Tips):
35431         Distinguish more clearly among grave accent, apostrophe,
35432         and single quote.
35433         * doc/lispref/README, doc/lispref/buffers.texi:
35434         * doc/lispref/commands.texi, doc/lispref/control.texi:
35435         * doc/lispref/customize.texi, doc/lispref/display.texi:
35436         * doc/lispref/elisp.texi, doc/lispref/files.texi:
35437         * doc/lispref/frames.texi, doc/lispref/hash.texi:
35438         * doc/lispref/help.texi, doc/lispref/internals.texi:
35439         * doc/lispref/loading.texi, doc/lispref/makefile.w32-in:
35440         * doc/lispref/markers.texi, doc/lispref/modes.texi:
35441         * doc/lispref/nonascii.texi, doc/lispref/objects.texi:
35442         * doc/lispref/os.texi, doc/lispref/positions.texi:
35443         * doc/lispref/strings.texi, doc/lispref/syntax.texi:
35444         * doc/lispref/text.texi, doc/lispref/tips.texi:
35445         * doc/lispref/two-volume-cross-refs.txt, doc/lispref/windows.texi:
35446         Use American-style double quoting in ordinary text,
35447         and quote 'like this' when single-quoting in ASCII text.
35448         Also, fix some minor spacing issues.
35450 2015-04-10  Michael Albinus  <michael.albinus@gmx.de>
35452         Handle symlinked test directory in tramp-tests.el
35453         * test/automated/tramp-tests.el (tramp-test18-file-attributes)
35454         (tramp--test-check-files): Use `file-truename' for directories.
35456 2015-04-10  Eli Zaretskii  <eliz@gnu.org>
35458         Fix 'recenter' when visual-line-mode is turned on
35459         * src/window.c (Frecenter): Use the same code for GUI and TTY
35460         frames alike; use vmotion only for "initial" frames.  This is
35461         because vmotion doesn't support visual-line-mode.  Rewrite the
35462         'iarg >= 0' case to use move_it_* functions instead of using
35463         vmotion, for the same reason.  Fix the clipping of the argument
35464         value to support scroll-margin in all cases and avoid unwarranted
35465         recentering.  Reported by Milan Stanojević <milanst@gmail.com> in
35466         https://lists.gnu.org/r/help-gnu-emacs/2015-04/msg00092.html,
35467         which see.
35469 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
35471         * lisp/abbrev.el (define-abbrev-table): Refine last change.
35473         * lisp/emacs-lisp/cl-lib.el: Partial revert of "2015-04-05 Rationalize
35474         use of c[ad]+r", so as to keep the "cl-" prefix on all
35475         cl-lib definitions.
35477         * lisp/progmodes/vhdl-mode.el (vhdl-prepare-search-2):
35478         Use inhibit-point-motion-hooks.
35480         * lisp/cedet/semantic: Remove some dead code.
35481         * lisp/cedet/semantic/util-modes.el
35482         (semantic-stickyfunc-header-line-format): Emacs<22 is not supported
35483         any more.
35484         * lisp/cedet/semantic/fw.el (semantic-buffer-local-value): Emacs<21 is
35485         not supported any more.
35486         (semantic-safe): Use `declare'.
35487         * lisp/cedet/semantic/decorate.el (semantic-set-tag-intangible)
35488         (semantic-tag-intangible-p): Remove unused functions.
35489         * lisp/cedet/semantic/complete.el (semantic-displayor-window-edges):
35490         Remove unused function.
35492         * lisp/gnus/gnus-art.el (gnus-hidden-properties): Simplify.
35493         (gnus-article-hide-text, gnus-article-unhide-text)
35494         (gnus-article-unhide-text-type): Remove special handling of
35495         `intangible' since that property is not used any more.
35496         (gnus-article-treat-body-boundary): Use gnus-hidden-properties.
35498 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
35500         Use the VC root in `log-edit-listfun'
35501         * lisp/vc/vc-dispatcher.el (vc-log-edit): Use the VC root in
35502         `log-edit-listfun'.
35504 2015-04-09  Jay Belanger  <jay.p.belanger@gmail.com>
35506         Fix description of Unix time, mention new function.
35507         * lisp/calc/calc-forms.el (calcFunc-unixtime): Fix adjustment for
35508         Unix time.
35509         * doc/misc/calc.texi (Date Forms): Fix description of Unix time.
35510         (Basic Operations on Units): Mention `calc-convert-exact-units'.
35512 2015-04-09  Artur Malabarba  <bruce.connor.am@gmail.com>
35514         * lisp/emacs-lisp/package.el: Use mode-line-process for notification.
35516 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
35518         * lisp/vc/log-edit.el (log-edit-insert-changelog-entries):
35519         Don't add newline after the last entry.
35521 2015-04-09  Simen Heggestøyl  <simenheg@gmail.com>
35523         css-mode.el: Add "not" pseudo-class
35524         (Bug#20267)
35525         * lisp/textmodes/css-mode.el (css-pseudo-class-ids): Add "not" to
35526         list of CSS pseudo-classes.
35528 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
35530         * etc/NEWS: Add missing entry for "Stop messing with the EMACS env var".
35532 2015-04-09  Michael Albinus  <michael.albinus@gmx.de>
35534         Stop messing with the EMACS env var
35535         * doc/emacs/misc.texi (Interactive Shell): Remove description of
35536         EMACS env var.
35538 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
35540         Adapt 'make change-history' to coding cookie
35541         * Makefile.in (change-history): Adjust to change of format of
35542         ChangeLog file, which now has a coding cookie before an indented
35543         copyright notice.
35545 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
35547         Adapt 'make change-history' to coding cookie
35548         * Makefile.in (change-history): Adjust to change of format of
35549         ChangeLog file, which now has a coding cookie before an indented
35550         copyright notice.
35552         gitlog-to-changelog coding cookie and mv -i
35553         * build-aux/gitlog-to-emacslog: Use ChangeLog.1, not Makefile.in,
35554         for copyright notice prototype, so that we get a proper "coding:"
35555         cookie.  Use 'mv -i' to avoid unconditionally overwriting an
35556         existing ChangeLog.  Problems reported by Eli Zaretskii in:
35557         https://lists.gnu.org/r/emacs-devel/2015-04/msg00504.html
35559         Merge from gnulib
35560         * build-aux/gitlog-to-changelog: Update from gnulib, incorporating:
35561         2015-04-09 gitlog-to-changelog: port to MS-Windows
35563 2015-04-09  Boruch Baum  <boruch_baum@gmx.com>  (tiny change)
35565         * lisp/bookmark.el (bookmark-bmenu-goto-bookmark): Don't inf-loop.
35566         (Bug#20212)
35568 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
35570         Stop messing with the EMACS env var
35571         (Bug#20202)
35572         * lisp/net/tramp-sh.el (tramp-remote-process-environment):
35573         * lisp/comint.el (comint-exec-1):
35574         * lisp/term.el (term-exec-1): Don't set EMACS envvar.
35575         * lisp/progmodes/compile.el (compilation-start): Same and bring
35576         INSIDE_EMACS's format in line with other users.
35578         css-mode.el (css-smie-rules): Fix indentation after complex selectors
35579         (Bug#20282)
35580         * lisp/textmodes/css-mode.el (css-smie-rules): Don't get confused by
35581         inner structure of selectors.
35583 2015-04-08  Fabián Ezequiel Gallina  <fgallina@gnu.org>
35585         python.el: Indent docstring lines to base-indent
35586         (Bug#19595)
35587         Thanks to immerrr <immerrr@gmail.com> for reporting and providing
35588         an initial patch.
35589         * lisp/progmodes/python.el
35590         (python-indent-context): Add :inside-docstring context.
35591         (python-indent--calculate-indentation): Handle :inside-docstring.
35592         (python-indent-region): Re-indent docstrings.
35593         * test/automated/python-tests.el (python-indent-region-5)
35594         (python-indent-inside-string-2): Fix tests.
35596         python.el: Increase native completion robustness
35597         (Bug#19755)
35598         Thanks to Carlos Pita <carlosjosepita@gmail.com> for reporting
35599         this and providing useful ideas.
35600         * lisp/progmodes/python.el
35601         (python-shell-completion-native-output-timeout): Increase value.
35602         (python-shell-completion-native-try-output-timeout): New var.
35603         (python-shell-completion-native-try): Use it.
35604         (python-shell-completion-native-setup): New readline setup avoids
35605         polluting current context, ensures output when no-completions are
35606         available and includes output end marker.
35607         (python-shell-completion-native-get-completions): Trigger with one
35608         tab only.  Call accept-process-output until output end is found or
35609         python-shell-completion-native-output-timeout is exceeded.
35611 2015-04-08  Samer Masterson  <samer@samertm.com>
35613         * lisp/eshell: Make backslash a no-op in front of normal chars
35614         (Bug#8531)
35615         * lisp/eshell/esh-arg.el (eshell-parse-argument-hook): Update comment.
35616         (eshell-parse-backslash): Return escaped character after backslash
35617         if it is special.  Otherwise, if the backslash is not in a quoted
35618         string, ignore the backslash and return the character after; if
35619         the backslash is in a quoted string, return the backslash and the
35620         character after.
35621         * test/automated/eshell.el (eshell-test/escape-nonspecial)
35622         (eshell-test/escape-nonspecial-unicode)
35623         (eshell-test/escape-nonspecial-quoted)
35624         (eshell-test/escape-special-quoted): Add tests for new
35625         `eshell-parse-backslash' behavior.
35627 2015-04-08  Gustav Hållberg  <gustav@gmail.com>  (tiny change)
35629         * lisp/vc/diff-mode.el (diff-hunk-file-names): Don't require a TAB
35630         after the file name.
35631         (Bug#20276)
35633 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
35635         Minor quoting etc. fixes to Emacs manual
35636         * doc/emacs/Makefile.in, doc/emacs/ack.texi, doc/emacs/building.texi:
35637         * doc/emacs/calendar.texi, doc/emacs/cmdargs.texi:
35638         * doc/emacs/custom.texi, doc/emacs/dired.texi, doc/emacs/emacs.texi:
35639         * doc/emacs/files.texi, doc/emacs/glossary.texi, doc/emacs/gnu.texi:
35640         * doc/emacs/indent.texi, doc/emacs/macos.texi:
35641         * doc/emacs/maintaining.texi, doc/emacs/makefile.w32-in:
35642         * doc/emacs/programs.texi, doc/emacs/rmail.texi:
35643         * doc/emacs/search.texi, doc/emacs/trouble.texi:
35644         * doc/emacs/vc1-xtra.texi:
35645         Use American-style double quoting in ordinary text,
35646         and quote 'like this' when single-quoting in ASCII text.
35647         Also, fix some minor spacing issues.
35649         Minor quoting etc. fixes to elisp intro
35650         * doc/lispintro/emacs-lisp-intro.texi: Consistently use
35651         American-style double quoting in ordinary text.  In ASCII text,
35652         consistently quote 'like this' instead of `like this', unless
35653         Emacs requires the latter.
35655 2015-04-08  Dmitry Gutov  <dgutov@yandex.ru>
35657         * CONTRIBUTE: Mention log-edit-insert-changelog.
35659         * CONTRIBUTE: Emphasize creating the top-level ChangeLog file manually.
35661 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
35663         * doc/misc/calc.texi (Summary): Avoid '@:' when usurped.
35665 2015-04-08  Stefan Monnier  <monnier@iro.umontreal.ca>
35667         * lisp/emacs-lisp/eieio-core.el (eieio-copy-parents-into-subclass):
35668         Fix inheritance of initargs.  (Bug#20270)
35670 2015-04-08  Artur Malabarba  <bruce.connor.am@gmail.com>
35672         * lisp/emacs-lisp/package.el (package-menu-mode): Mode-line notification
35673         while dowloading information.
35675         * lisp/emacs-lisp/package.el: More conservative `ensure-init-file'
35676         (package--ensure-init-file): Check file contents before visiting.
35677         (package-initialize): Call it.
35678         (package-install-from-buffer, package-install): Don't call it.
35680 2015-04-08  Eli Zaretskii  <eliz@gnu.org>
35682         * src/eval.c (init_eval_once): Bump max_lisp_eval_depth to 800.
35683         (Bug#17517)
35685 2015-04-08  Michael Albinus  <michael.albinus@gmx.de>
35687         * lisp/net/tramp-cache.el (tramp-flush-file-property):
35688         Fix nasty scoping bug.
35690 2015-04-08  Tassilo Horn  <tsdh@gnu.org>
35692         Add notice to visual commands section
35693         * doc/misc/eshell.texi (Input/Output): Add notice that some tools
35694         such as git call less with its -F option which omits pagination if
35695         the contents is less than one page long.  This interferes with
35696         eshell's visual (sub-)commands.
35698 2015-04-07  Dmitry Gutov  <dgutov@yandex.ru>
35700         * lisp/ffap.el (ffap-string-at-point-mode-alist): Support
35701         environment variable expansion in file names.  (Bug#19839)
35703 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
35705         Prefer double-quote to accent-grave in man pages
35707 2015-04-07  Stefan Monnier  <monnier@iro.umontreal.ca>
35709         (Bug#20257)
35710         * lisp/files.el (set-visited-file-name): Clear auto-save if nil.
35712 2015-04-07  Ivan Shmakov  <ivan@siamics.net>
35714         Update etc/PROBLEMS.
35715         * etc/PROBLEMS: Mention visible-cursor; a few more mentions of
35716         ~/.Xresources and xrdb(1); refer to 'GNU Coreutils' and
35717         'X Window System' or 'X' (were: 'GNU Fileutils' and 'X Windows',
35718         respectively); other minor updates and tweaks.  (Bug#20011)
35720 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
35722         Add doc strings for some Isearch state vars
35723         * lisp/misearch.el (multi-isearch-buffer-list)
35724         (multi-isearch-file-list): Add doc strings.
35725         (Bug#20232)
35727 2015-04-07  Alan Mackenzie  <acm@muc.de>
35729         Always mark "<" and ">" in #include directives with text properties.
35730         * lisp/progmodes/cc-fonts.el (c-cpp-matchers): Replace a font-lock
35731         "anchored matcher" with an invocation of
35732         c-make-font-lock-search-function to allow fontification when there's
35733         no trailing space on an "#include <..>" line.
35735 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
35737         Generate a ChangeLog file from commit logs
35738         * .gitignore: Add 'ChangeLog'.
35739         * build-aux/gitlog-to-changelog: New file, from Gnulib.
35740         * build-aux/gitlog-to-emacslog: New file.
35741         * CONTRIBUTE: Document the revised workflow.
35742         * Makefile.in (clean): Remove *.tmp and etc/*.tmp*
35743         instead of just special cases.
35744         (CHANGELOG_HISTORY_INDEX_MAX, CHANGELOG_N, gen_origin): New vars.
35745         (ChangeLog, unchanged-history-files, change-history)
35746         (change-history-commit): New rules.
35747         * admin/admin.el (make-manuals-dist--1):
35748         Don't worry about doc/ChangeLog.
35749         * admin/authors.el: Add a FIXME.
35750         * admin/make-tarball.txt:
35751         * lisp/calendar/icalendar.el:
35752         * lisp/gnus/deuglify.el:
35753         * lisp/obsolete/gulp.el:
35754         * lwlib/README:
35755         Adjust to renamed ChangeLog history files.
35756         * admin/merge-gnulib (GNULIB_MODULES): Add gitlog-to-changelog.
35757         * admin/notes/repo: Call it 'master' a la Git, not 'trunk' a la Bzr.
35758         Remove obsolete discussion of merging ChangeLog files.
35759         New section "Maintaining ChangeLog history".
35760         * build-aux/git-hooks/pre-commit:
35761         Reject attempts to commit files named 'ChangeLog'.
35762         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
35763         * make-dist: Make and distribute top-level ChangeLog if there's a
35764         .git directory.  Distribute the new ChangeLog history files
35765         instead of scattered ChangeLog files.  Distribute the new files
35766         gitlog-to-changelog and gitlog-to-emacslog.
35767         (Bug#19113)
35769         Rename ChangeLogs for gitlog-to-changelog
35770         This patch was implemented via the following shell commands:
35771         find * -name ChangeLog |
35772         sed 's,.*,git mv & &.1,
35773         s, lisp/ChangeLog\.1$, lisp/ChangeLog.17,
35774         s, lisp/erc/ChangeLog\.1$, lisp/erc/ChangeLog.09,
35775         s, lisp/gnus/ChangeLog\.1$, lisp/gnus/ChangeLog.3,
35776         s, lisp/mh-e/ChangeLog\.1$, lisp/mh-e/ChangeLog.2,
35777         s, src/ChangeLog\.1$, src/ChangeLog.13,' |
35778         sh
35779         git commit -am"[this commit message]"
35781 This file records repository revisions from
35782 commit 9d56a21e6a696ad19ac65c4b405aeca44785884a (exclusive) to
35783 commit 3a34412caae002accd0fc7a7fc0b718c2f34159b (inclusive).
35784 See ChangeLog.1 for earlier changes.
35786 ;; Local Variables:
35787 ;; coding: utf-8
35788 ;; End:
35790   Copyright (C) 2015-2018 Free Software Foundation, Inc.
35792   This file is part of GNU Emacs.
35794   GNU Emacs is free software: you can redistribute it and/or modify
35795   it under the terms of the GNU General Public License as published by
35796   the Free Software Foundation, either version 3 of the License, or
35797   (at your option) any later version.
35799   GNU Emacs is distributed in the hope that it will be useful,
35800   but WITHOUT ANY WARRANTY; without even the implied warranty of
35801   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
35802   GNU General Public License for more details.
35804   You should have received a copy of the GNU General Public License
35805   along with GNU Emacs.  If not, see <https://www.gnu.org/licenses/>.